Modbus/TCP — это адаптация последовательного протокола Modbus для обмена данными через TCP/IP. Драйвер Modbus/TCP может использоваться одновременно для Modbus/TCP и UNICOS.
Modbus/TCP используется для чтения или записи блоков данных на ПЛК.
UNICOS — это разработанное CERN расширение протокола Modbus/TCP. Связь через UNICOS возможна только в случае соответствующего программирования ПЛК (см. п. UNICOS, основные сведения).
Обмен информацией происходит с помощью различных функциональных кодов (см. п. Детальная информация о драйвере Modbus/TCP). Функциональные коды являются частью адреса периферии и определяются пользователем.
Адресация
Адрес периферии содержит следующие точки:
- Тип — Modbus/UNICOS
- Количество ПЛК (программируемых логических контроллеров)
- Функциональный код, соответствующий коду подфункции в UNICOS
- Адрес
- Подиндекс
Адрес блока требуется в том случае, если к одному шлюзу ЛВС с заданным IP-адресом подключен ряд ПЛК (например, PLC 2 и PLC 3). Если ПЛК обладает собственным IP-адресом, то в качестве адреса блока, например, PLC 1, необходимо указать 1 (см. п. Панель конфигурации драйвера Modbus/TCP).
Поскольку к одному ПЛК можно обратиться по нескольким подключениям, для одного ПЛК можно задать более одного TCP/IP-подключения. ПЛК поддерживает не более двух подключений. Таким образом, возможны два сетевых маршрута.
Система «ведущий/ведомый» и «клиент/сервер»
Протокол Modbus основан на топологии «ведущий/ведомый». Ведущим называется устройство, инициирующее транзакцию (запрос) по шине подключения. Ведущее устройство отправляет запросы, а ведомое отвечает на них. Ведомое устройство не может отправлять запросы. Оно ни при каких обстоятельствах не может стать активным. В среде TCP/IP клиент TCP должен быть ведущим, т. к. именно клиент устанавливает подключение. Сервер TCP является ведомым устройством. Ведомое устройство имеет «прослушивающий сокет» и может отвечать на запросы на подключение, а затем на обычные запросы через этот сокет.
Драйвер может работать в обоих режимах (как ведущее и ведомое устройство) одновременно. Ведомое устройство необходимо для приема незапрашиваемых данных, а ведущее — для отправки команд и запросов (т. е. подключения к периферии для отправки или приема значений. Кроме того, драйвер одновременно открывает сокет сервера TCP. Это тсокет позволяет периферифным устройствам подключаться к дарйверу и передавать не запрашиваемые им данные).
На следующем рисунке приведена схема потоков данных драйвера Modbus/TCP:
Для отправки данных в ПЛК ведущая часть драйвера должна отправить запрос на запись. Ответ за запрос на запись передается только на уровне протокола. На вышеприведенном рисунке эти ответы изображены пунктирными линиями.
Существуют два способа ввода данных: отправка ведущим устройством запроса на чтение для запроса данных из ПЛК и прием ведущим устройством запроса на запись от ПЛК.
Ведомое устройство отвечает на запрос на чтение «холостыми» данными в целях симуляции. Запрос настоящих данных из драйвера не поддерживается, т. к. в обычном случае система «КАСКАД Цифра» не запрашивает данные ПЛК.
Раздел | Описание |
Драйвер Modbus/TCP, основные сведения | Обзор и ссылки на другие разделы |
UNICOS, основные сведения | Обзор и введение в UNICOS. |
Требования и установка | Требования и установка драйвера Modbus/TCP. |
Файл конфигурации драйвера Modbus/TCP | Файл конфигурации содержит необходимые записи для ПЛК или группы ПЛК. |
панель конфигурации драйвера Modbus/TCP | На этой панели создаются и настраиваются подключения компонентов. |
Ввод адресов периферии для драйвера Modbus/TCP | Панель ввода адресов периферии. |
Пример драйвера Modbus/TCP | Подключение. |
Внутренние точки данных драйвера Modbus/TCP | Элементы внутренних точек данных. |
Детальная информация о драйвере Modbus/TCP | Описание функциональных кодов, записей в файле config, кодов ошибок и сообщений об ошибках. |
Выводы и полезные ссылки | Ссылки на соответствующие разделы справки. |