Цитата Сообщение от Мурат Ахриев Посмотреть сообщение
"... Можно проще, для каждого слейв устройства нужно использовать такой код(меняете только название Modbus_Slave_COM_Port на свои).
Код:
IF Modbus_Slave_COM_Port.xError THEN			//Перезапуск подключения по Modbus
	Blink_01(ENABLE:= TRUE, TIMELOW:= T#1S, TIMEHIGH:= T#10MS);
	Modbus_Slave_COM_Port.xReset:= Blink_01.OUT;
END_IF
Доброго дня, извините, вклинюсь в разговор, так как вопрос на близкую тему.
У меня слейвов четыре. Кстати, все они нормально рестартовались после обрыва линии связи по указанному выше алгоритму. Это я видел и в КДС и по миганию соответствующих индикаторов на слейвах.
После того, как я изменил алгоритм обмена с модулями, надобность в таком рестарте почему-то отпала. Почему - не знаю, но мне это сейчас не важно, потом разберусь.

А вопрос мой в другом: - я хотел бы фиксировать в отдельные переменные ошибки связи, но при этом код типа Var1 := Modbus_Slave_COM_Port.xError; и Var2 := Modbus_Slave_COM_Port.byModbusError; не приводит к желаемой фиксации этих ошибок в Var1 и Var2. Почему?