4.1.1.2.3.2. Опросчик Modbus RTU

 
 
Модуль Modbus RTU Master работает в составе Astra.Server, который является частью системы для сбора, анализа и регулирования параметров технологического процесса.
 
 
Модуль Modbus RTU Master предназначен для последовательного опроса подчиненных станций, подключенных к COM-порту компьютера, в соответствии с протоколом Modbus over Serial Line. Astra.Server поддерживает до 64-х модулей Modbus RTU Master.
 
Основными функциями модуля Modbus RTU Master являются сбор данных и подача управляющих воздействий подчиненным станциям.
 
Работая в составе Astra.Server, модуль Modbus RTU Master опрашивает подчиненные станции, циклически отправляя им запросы. Полученные данные через интерфейсы ядра сохраняются в оперативную базу данных (ОБД). Ядро Astra.Server при получении изменившихся сигналов уведомляет о получении изменений другие модули, которые обслуживают эти сигналы, в том числе и модуль OPC DA Server. Модуль OPC DA Server, в свою очередь, передает данные клиентам, подписанным на изменившиеся сигналы.
 
Отправка управляющих воздействий происходит в обратной последовательности.
 
 
Модуль Modbus RTU Master отправляет запросы подчиненным устройствам по последовательным линиям связи согласно протоколу Modbus RTU. Модуль имеет возможность работать только с одной станцией одновременно. Запросив данные и получив ответ, модуль разрывает соединение с одной станцией и подключается к другой. Подчиненное устройство отвечает на запрос, адресованный именно ему. В случае если через определенный промежуток времени (Время ожидания ответа от станции) ответ модулю от подчиненной станции не приходит, то соединение считается разорванным. При отправке запроса модуль имеет возможность получать сигнал доставки сообщения.
 
Модуль работает только в режиме РАБОТА. В режиме РЕЗЕРВ модуль не работает, исходя из того, что модуль работает по последовательным линиям связи и при резерве тратится большой трафик и замедляется работа модуля.
 
При старте модуля происходит инициализация модуля. Процесс инициализации включает в себя:
чтение конфигурационных данных модуля;
подписка у ядра на получение уведомлений об изменениях сигналов;
проверка корректности настройки адресов сигналов принадлежащих модулю и постановка их на обслуживание;
формирование таблицы поллинга.
 
После вышеперечисленного модуль устанавливает соединение и начинает работу в соответствии со своими настройками.
При установленном соединении модуль начинает опрос станции по заданным адресам.
 
Адресное пространство протокола представляет собой четыре массива данных:
Coils - ячейки. Одиночный бит. Тип доступа на чтение и запись;
Discrete Inputs - дискретные входы. Одиночный бит. Тип доступа только на чтение;
Holding Registers - регистры хранения. 16-битное слово. Тип доступа на чтение и запись;
Input Registers - входные регистры. 16-битное слово. Тип доступа только на чтение.
 
Опрос каждой подчиненной станции ведется по таблице поллинга, сформированной при старте модуля. Формирование таблицы поллинга ведется по использованным при конфигурировании адресам в массивах данных.
В модуле реализовано расширение функций Modbus для передачи времени возникновения данных.