Добрый день.
Вам нужен этот пакет:
https://ftp.owen.ru/CoDeSys3/04_Libr...5.11.9.package
Вид для печати
Добрый день.
Вам нужен этот пакет:
https://ftp.owen.ru/CoDeSys3/04_Libr...5.11.9.package
Почему в CFC вместо использования блока MOVE с EN/ENO не сделают присвоение напрямую в элементе вывода? По мне так было бы логичнее и занимало бы меньше места.Вложение 74599
Евгений, доброго дня! Подтвердите мое предположение: счётчики перезагрузок в WatchDog не сразу принимают свои значения, а через некоторое время (цикл, два-три, десять…)?
Почему столь специфичный вопрос: есть задача отслеживать перезагрузку контроллера (и от чего она произошла), для этого я создал дополнительно энергонезависимые переменные, в которые пишутся значения счетчиков. После перезагрузки происходит сравнение, и если какой-то счётчик увеличил значение, выводим сообщение. Но это так, лирика, суть вопроса: при старте ПЛК значения счётчика, которые были не нулевыми (это значение сохраняется в энергонезависимую переменную), генерируют сигнал сообщения, такое может произойти в ситуации, которую я выше описал (происходит сравнение не нулевого значения энергонезависимой переменной с нулевой переменной счётчика). Решил проблему задержкой работы участка кода, который отвечает за сравнение, после этого все заработало как надо.
Скажите пожалуйста, мои предположения верны?
Понял, спасибо, развеяли мои сомнения :)
Здравствуйте коллеги!!! Есть код
IF wPIDTmpr_In_PIDOnOff[nZ] = 16#02 THEN // 16#02 - регулирование включить
xPIDSTD_Zone_Reset[nZ]:= FALSE;
xPWM_Reset[nZ]:= FALSE;
iPIDTmpr_Out_PIDStatus[nZ]:= 1;
Подскажите пожалуйста что означает решетка в этом значении( 16#02 ) и почему после решетки стоит 02
При этом все работает
16# означает шестнадцатиричная система счисления, 2 значение.
Не знаю, кто писал код, но в шестнадцатиричнной системе (HEX) и десятичной (DEC), число 2 так и останется 2.
Перевод систем можно сделать калькулятором в режиме программист.
Точно также переводятся адреса регистров.