Сообщение от
Стас(Ижевск)
Связь СПК207 + МВ110-16ДН + МВ110-8А + МВ110-16Р. Прошивка СПК207 v.3302. Новую еще не пробовал. Мурат обещал релиз на прошлой неделе, но так его пока не вижу. Хотя срочно нужен, так как нет времени самому таблицу алармов реализовывать, а на этой прошивке виснет контроллер. Объект надо сдавать, времени уже нет, один глюк за другим. Причину поймать не удалось. Но контроллер зависает и перестает опрашивать тот модуль, который ушел у него в аварию по ошибке шины.
Если уходят все модули, то вообще никакого запроса повторно нет. Подключался к шине и просто ее слушал. Как только ответа контроллеру от модуля не было он сразу уводит модуль в аварию и больше опроса его не ведет. Хотя не понятно зачем вообще тогда настройка таймера времени ожидания. Логика видимо такова, что он выжидает это время на ответ от модуля. Но модуль возможно дал ответ, который может быть исказился какой-то помехой и не дошел. А регистры и их интервалы считывания здесь не участвуют (не причем, потому-что эта часть работает).
В принципе получилось сбросить его следующим образом:
1. останов шины Device.Application.IoConfig_Globals.Modbus_Master_ COM_Port.xStop:=True
2. сброс аварии модуля (например МВ110-16ДН) Device.Application.IoConfig_Globals.MV110_16DN_Mod bus_Slave_COM_Port.xReset:=True; после сброса :=False
3. переинициализация шины Device.Application.IoConfig_Globals.Modbus_Master_ COM_Port.xResetComPort:=True затем False;
4. снять останов шины Device.Application.IoConfig_Globals.Modbus_Master_ COM_Port.xStop:=False
И оп ля-ля связь восстановилась.