При эксплуатации программы была замечена неприемлемая ошибка, что при переходе из режима в режим, запаздывает либо передача уставки, либо передача отключения регулятора.
Приводит к тому, что либо невыключившийся еще контроллер врубает резко нагрев на другую уставку, а потом выключается, либо еще не дошла в контроллер новая уставка, а он уже включился, а позже доходит новая уставка.
Отключил ПЛК чтобы исключить влияние программы плк, и управлял непосредсвенно HMI->HA400. Сложности остаются.
Передача команд HMI->HA400 реализована через макрос.(прилагаю).
Code: Select all
macro_command main()
unsigned Short temp, ustavka, nagrev, index, failure, condition
GetData(condition, "device 1", 4x, 60, 1)
SetData(condition, "Local HMI", LW, 9201, 1)
GetData(failure, "device 1", 4x, 30 , 1)
SetData(failure, "device 2", D, 21 , 1)
GetData(temp, "device 1", 4x, 2, 1)
SetData(temp, "device 2", D, 200, 1)
GetData(ustavka, "device 2", D, 201, 1)
SetData(ustavka, "device 1", 6x, 80, 1)
GetData(nagrev, "device 2", D, 6, 1)
SetData(nagrev, "device 1", 6x, 60, 1)
GetData(index, "device 2", D, 20, 1)
SetData(index, "Local HMI", LW, 9200, 1)
end macro_command
Подозреваю проблему настройки таймингов в порте HMI->HA400.
Сейчас настроки такие интервал выполнения скрипта 1 х 100мс. Настройки порта
Время ожидания 3.0сек; Мин время команды 20мс; Интервал блоков слов 5; Макс размер команды чтения/записи слов 120/120;
ЧЯДНТ?