Заглянуть надо. Посмотреть параметр "Безопасное состояние". Вдруг пригодится.
Вид для печати
Добрый день! Подскажите, пожалуйста, как в Codesys можно проверить переменная увеличивается или уменьшается?
делаете генератор импульсов, например через каждые 5 секунд. Когда пришел импульс смотрим, если текущая температура больше предыдущей, то значит температура повышается, если меньше, то понижается. Далее сохраняем текущую температуру, через 5 секунд она нам понадобится как предыдущая для дальнейшего анализа.
Во как все запутано:)
Вспоминаем мат.анализ. В частности поиск интервалов возрастания, убывания и точек экстремума функций с помощью производных.
Как гласит мат.анализ
– если первая производная на интервале больше 0, то функция возрастает на данном интервале;
– если первая производная на интервале меньше 0, то функция убывает на данном интервале.
Нахождение точек максимума и минимума опустим.
Таким образом для решения задачи можно использовать ФБ DERIVATIVE (численное дифференцирование) из стандартной библиотеки Util.
На вход подаем анализируемую переменную. Если на выходе имеем значение >0, то переменная возрастает, если <0, то переменная уменьшается, если =0, то переменная не изменяется во времени.
Удачи:rolleyes:
Попался экземпляр стандарта IEC61131-3 за 2003 год. Офигеть: оказывается, после END_IF, END_CASE, END_FOR и т.п. должна ставиться точка с запятой.Код:IF a THEN
b();
END_IF;
Во все алгоритмических языках операторы заканчиваются ;
Вложение 14236Вложение 14237Вложение 14238Вложение 14239
Кино делать не умею, поэтому выкладываю картинки в порядке очерёдности. Вопрос, почему два одинаковых триггера работают по разному? Почему триггер DD3 не сбрасывается в исходное состояние?