Показано с 1 по 3 из 3

Тема: ПЛК100: таймеры при отладке

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1
    Пользователь Аватар для drvlas
    Регистрация
    30.09.2010
    Адрес
    Киев
    Сообщений
    700

    По умолчанию ПЛК100: таймеры при отладке

    Совершенно я извелся с таймерами КДС.

    Прилагаю простой пример. В чем фишка: этот пример при отладке в режиме эмуляции прекрасно работает, а в железе - нет.

    Кому влом раскручивать, приведу тексты, благо их мало:

    Код:
    VAR_GLOBAL
    	bError_0	: BOOL;
    	bError_1	: BOOL;
    END_VAR
    Код:
    PROGRAM PLC_PRG
    VAR
    	a: WORD;
    END_VAR
    
    a := a + 1;
    
    IF a = 3 THEN ErrorsHandle(0); END_IF
    IF a = 100 THEN ErrorsHandle(1); END_IF
    
    ErrorsHandle(100);
    Код:
    FUNCTION ErrorsHandle : BOOL
    VAR_INPUT
    	byErrNmb:		BYTE;
    END_VAR
    VAR
    	t0,t1:	TON;
    END_VAR
    
    CASE byErrNmb OF
    	0:	bError_0	:=	TRUE;
    	1:	bError_1	:=	TRUE;
    END_CASE
    
    t0( IN:=bError_0	AND NOT t0.Q, PT:=T#5s);
    t1( IN:=bError_1 	AND NOT t1.Q, PT:=T#5s);
    
    IF	t0.Q	THEN	bError_0	:=	FALSE;	END_IF
    IF	t1.Q	THEN	bError_1	:=	FALSE;	END_IF
    То есть, в функции ErrorsHandle() установлены биты, запущены таймеры. В основной программе в каждом цикле вызывается эта же функция с кодом несуществующей ошибки - для проверки состояния таймеров. Какой взвелся - его ошибку сбрасываем.

    И именно так все обстоит при эмуляции. Гружу в живое тело - биты ошибок взводятся и не снимаются через положенные 5 секунд. Наблюдение за функцией ErrorsHandle() показывает, что оба таймера не запускались, или я неверно понимаю прилагаемую картинку.

    Подскажите, что я неправильно делаю?
    Просьба: не надо других способов отработки ошибок. Мне важно понять ситуацию с таймерами. Это же базовый элемент, а я с ним на ножах. Нехорошо...
    Изображения Изображения
    Вложения Вложения
    Последний раз редактировалось Николаев Андрей; 23.04.2011 в 18:17.

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •