Подаёшь этот сигнал на два элемента одновременно, первый r-trig, второй f-trig...
Вид для печати
Ставил я их ) видимо импульс проходит настолько быстро, что не заметно. Поставлю tof и посмотрю. Спасибо
Доброе утро.
Прошу помощи по организации структур и правильному расположению.
есть набор данных:
---- Эти по идее должны быть persistent
rTempSetPoint
rTempHysteresis
rTempAlarmLimitHi
rTempAlarmLimitLo
----- А вот эти меняются
xAlarmOutOfRange
----- причём вот эту структуру очень удобно привязывать к физическому сходу, сразу объявляя 3 поля
ANALOG_SENSOR_VALUE
rValue REAL Измеренное значение
uiCycleTime UINT Циклическое время
eStatus ANALOG_SENSOR_ERRORS Код статуса входа
Сначала демал сделать:
TYPE TEMP_POINT EXTENDS ANALOG_SENSOR_VALUE :
STRUCT
rTempSetPoint
rTempHysteresis
rTempAlarmLimitHi
rTempAlarmLimitLo
xAlarmOutOfRange
END_STRUCT
END_TYPE
1) Но потом не понял можно ли как то из получившейся расширенной структуры вытащить структуру ANALOG_SENSOR_VALUE для привязки к физическим аналоговым входам. Чтобы не каждому каналу прописывать отдельную переменную, а сразу к 3, как это можно сделать если объявлять ANALOG_SENSOR_VALUE
2) Как лучше поступать с уставкой, гистерезисом и верхним/нижним пределом для каждого датчика?
Разделить на 2 отдельные структуры и запихать одну в персист? или объявлять в коде один раз?
Можно ли в персист сразу выдавать элементам структуры изначальные значения?
Откуда вы берёте вообще входы? С какого модуля ? Сколько модулей?
Чтобы потом поместить их в структуру
ANALOG_SENSOR_VALUE
rValue REAL Измеренное значение
uiCycleTime UINT Циклическое время
eStatus ANALOG_SENSOR_ERRORS Код статуса входа
Здравствуйте коллеги, вопрос такой: на ПЛК210 на дискретных входах висят сигналы(у меня аварийные), мне их нужно протестировать, как они в программе работают. Сигналы на TRUE, если я их фиксирую на FALSE, то через случайное время от 2 до 20 секунд они переходят на TRUE и потом опять на FALSE. Подскажите это нормально? Наверное через какое то количество циклов происходит самопроизвольный переход?Вложение 72141
1) Нет, так не получится. В состав TEMP_POINT входят только поля ANALOG_SENSOR_VALUE, а не ее экземпляр.
2) Как вам удобнее. Вы лучше знаете особенности своей задачи - если в целом проект не особо большой, то можно оставить одну структуру и объявлять ее экземпляры как PERSISTENT. Задать начальные значения полям структуры в этом случае можно.
Входы с AI модулей MB210-101. Их в сети этого плк 5 штук. то есть до 40 сигналов. по факту скорее всего 27. Просто вентмашины на разных этажах поэтому отдельные модули.
Евгений, благодарю.
То есть при наличии всего 40 сигналов структуры можно целиком можно объявлять в Persistent, включая оперативные сигналы - заначения датчиков и ошибок?
но объявлять их можно только так
stPoolWaterTempSp: TEMP_POINT_SETTINGS; (*Уставка температуры воды в бассейне*)
stPoolWaterTempSp.rSetPoint: REAL :=28;
stPoolWaterTempSp.rHysteresys: REAL :=0.5;
stPoolWaterTempSp.rAlarmLimitHi: REAL :=30;
stPoolWaterTempSp.rAlarmLimitLo: REAL :=26;
"короткое" объявление работать не будет?