PDA

Просмотр полной версии : Всегда обновлять переменные



BodDen
07.02.2026, 06:04
Здравствуйте.
У меня есть проект. В проекте два POU - PLC_PRG, RTE_SPD. Эти две подпрограммы вызываются в двух разных TASK, циклично.

1. PLC_PRG - 100 мс, с приоритетом 1. Расчет давлений.
2. RTE_SPD - 300 мс, с приоритетом 2. Расчет Скорости вращения контролируемых устройств.

Обе POU записывают значения в регистры Modbus TSP/ IP Slave Device, откуда их забирает HMI.

К PLC_PRG - работает с регистрами без проблем, а вот RTE_SPD интересная ситуация. Сама логика RTE_SPD отрабатывает, но пробовал отправлять подготовленные значения к привязанным регистрам - регистры не обновляются. Я привязал регистры к переменным

87916

Опять не могу обновить данные. Выставляю вкладку "Всегда обновлять переменные" как

87917

И данные на HMI стали обновляться.

OWEN 210 и HMI у меня на столе. OWEN 210 - запускаю через login + start.

Вопрос:

Для чего этот выбор, на что влияет, какие последствия?

87918

Я пытаюсь читать документацию, но картинка упорно не складывается. Если вызывать RTE_SPD без TASK из PLC_PRG то все работает.

Спасибо.

Емельянов Кирилл
07.02.2026, 08:29
"Овен" рекомендует всегда выставлять это значение во "вкл. 2", поэтому оставляйте так и не переживайте. Нет желания особо разбираться, но есть подозрение что проблема связана с обработкой модбас, которая по умолчанию происходит в задаче с наименьшим периодом вызова. Так как у вас несколько задач, то "RTE_SPD" обрабатывается несколько в "рассинхрон" с модбас. © Но это не точно.
Так же рекомендую проверить, что модбас обрабатывается в задаче с периодом вызова 20мс или менее, в противном случае есть риск появления сложноотлавливаемых багов.

Евгений Кислов
07.02.2026, 08:58
Добрый день.


Для чего этот выбор, на что влияет, какие последствия?

См. п. 4:
https://ftp.owen.ru/CoDeSys3/98_Books/CodesysTaskManagment.pdf


Так как у вас несколько задач, то "RTE_SPD" обрабатывается несколько в "рассинхрон" с модбас. ©
На эту тему можно посмотреть здесь, начиная с 03:36:30:
https://owen.ru/media/video/webinar_100625

BodDen
08.02.2026, 14:25
Спасибо за информацию.
В Device - отключил
В Modbus Slave - использую родительскую
Все заработало