Показать сообщение отдельно
Старый 27.03.2006, 10:29   #7
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 117
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Диспетчеризация и modbus

> Есть ещё вопрос, при управлении контроллера со скады
> необходимо, чтобы при обрыве связи в контролер переключался
> в другой режим управления (местный или таймер) как в
> программе определить что связь оборвалась (можно конечно
> запрограммировать обмен сигналами скады и контроллера и
> аварию при отсутствии ответа в течении времени, может быть
> есть какой то более эффективный способ?)

Нет, в сетях подобной организации не предусмотрено механизма проверки ведомым устройством наличия связи. Это можно осуществить только косвенно. В наших прикладных программах нет никакого детектирования связи с диспетчерской программой. Таймер работает в любом случае, если включен (есть связь или нет), а режим местный/дистанционный переключается как местно (на самом контроллере), так и удалённо (из диспетчерской программы).

Наличие связи можно определять только косвенно или введением протокола обмена (это тот вариант, который вы предложили). Косвенно, это (например): если заранее известно, что скада опрашивает контроллер не реже какого-либо отрезка времени, то можно использовать блок SMH2010(link), настроить на нужный порт и анализировать выход TrmPacket на предмет изменения количества отосланных скаде пакетов. Если пакеты не отсылаются в течении некоторого времени, значит скада не опрашивает, значит связи нет.
Arsie вне форума   Ответить с цитированием