Если Test_Fan_On - это нечто вроде реле перепада давления на вентиляторе, то поставьте задержку побольше
Еще, так можно
Вложение 78981
Здесь задержка работает только при включении
Вид для печати
Если Test_Fan_On - это нечто вроде реле перепада давления на вентиляторе, то поставьте задержку побольше
Еще, так можно
Вложение 78981
Здесь задержка работает только при включении
xDO6_FUN это изначальный сигнал включения - подает питание на реле вентилятора, его в этой блок схеме не надо включать, он включается в другом месте и отключается с задержкой. Необходимо контролировать, что вентилятор включился TEST_FAN_ON стал TRUE все время пока реле xDO6_FUN:TRUE.
На самом деле я не уверен, пресостат на вентиляторе стоит или сухой контакт с его магнитного пускателя. Факт в том, что после включения xDO6_FUN проходит некоторое непродолжительное время (доли секунды) и появляется TEST_FAN_ON в TRUE. Но этого хватает чтобы на мгновение прошла авария, если не использовать таймер TOF в предложенной мной схеме.
Вложение 78982
Выложенная мной схема работает так как мне надо, задача была избавиться от таймера TOF. Во всем проекте используется таймеров-7 шт. , один из которых исправляет зависание 2х таймеров при изменении их уставки на меньшее значение. На данный момент смирился с еще одним таймером.
Всем спасибо!
Появилась более интересная проблема, этот же контроллер ПЛК110-32 (М2) опрашивает счетчики по Modbus RTU (3 шт. по 25 регистров DINT), часть из них используется в работе ПЛК, но все 75 шт. передаются по Modbus TCP в SCADA. А проблема в том, что опрашивает он их по одному, не пакетно, и похоже после каждого регистра еще и таймаут выжидает, а счетчики итак на скорости 19200 работают. Где-то встречал на форуме такую проблему, но там писался свой блок опроса или сторонняя библиотека. Хотелось бы более оперативно видеть данные в SCADA.
Для реализации группового опроса используйте модуль String в конфигурации мастера ПЛК
Например
https://owen.ru/forum/showthread.php...l=1#post333593
https://owen.ru/forum/showthread.php...l=1#post244022
Спасибо большое, буду разбираться)
Попробовал работает, вроде даже быстрее. Но не правильное чередование байт - значение должно быть 231, а отображает 15138816.
Вложение 78985
По настройкам вроде правильно выставил, если считывать отдельно требуемые параметры они отображаются корректно, тип данных DWORD.
Вложение 78986
электросчётчики или что?Цитата:
опрашивает счетчики по Modbus RTU (3 шт. по 25 регистров DINT), часть из них используется в работе ПЛК, но все 75 шт. передаются по Modbus TCP в SCADA. А проблема в том, что опрашивает он их по одному, не пакетно, и похоже после каждого регистра еще и таймаут выжидает, а счетчики итак на скорости 19200 работают.
самый главный вопрос - а нужно ли быстрее? :D
и как быстро меняются данные в электросчётчике? суточный объём, месячный объём, что там ещё активная, реактивная, ну токи допустим...и что в СКАДА системе за алгоритм, требующий более скоростного опроса и реакции на изменение допустим тока по фазе А?
я к тому, что изменение "загрузки" пары тройки "микросхем" отвечающих за сетевой опрос в ПЛК с допустим условно 30% до 5% никак не скажется на ни на увеличении времени безотказной работы, на на перегреве, ни на что другое
"ускорять" опрос или ещё как-то заморачиваться стоит только для того, имхо, если этого реально требует либо алгоритм, либо сетевые затыки. В большинстве случаев, все ускорения - это просто увеличение энтропии вселенной :D
ну чисто для трени - вай нотЦитата:
спортивный интерес
Заказчику нужно скорее для анализа кратковременных скачков мощности, которые можно вообще не увидеть при опросе в 4-5 сек. На работу ПЛК и его алгоритма это может повлиять если целевая уставка времени будет меньше 10 сек., на практике скорее меньше 20 сек не будет, если только больше. В принципе дальше на каждом потребителе уже нормальные мультиметры стоят по ним можно эти же скачки с точностью до десятых долей секунды видеть. Так что, хотелось бы сделать хорошо))
String это просто контейнер для абстрактных регистров и он всегда нативный относительно слейва (не путать с пакетом) и кладет на настройку порядка регистров, которая за каким-то по дефолту трасемоде, т. е. переставляет регистры для "розничного" обмена
Т..к. в ваших слейвах порядок 3412, просто скопируйте из стринга исходную массив/структуру в нужное место и переставьте там слова в нужных двойных словах