master_dcon.py

Пример построения системы опроса с использование master_dcon.py

Утилита master_dcon.py используется в для опроса устройств серии ADAM.
Основное тестирование проводилось на модулях преобразователя Adam-4520 (com - rs485)
и модуле ввода-вывода Adam -4050.
Модуль 4050 имеет 7 дискретных входов DI0,DI1,DI2,DI3,DI4,DI5,DI6
и 8 дискретных выходов DO0,DO1,DO2,DO3,DO4,DO5,DO6,DO7.
Команда опроса состояния устройства $АА6 ( АА -- адрес устройства, 6 -- номер команды )
Ответ на запрос !BBCC00 ( BB -- состояние линий вывода 1 байт, СС -- состояние линий ввода 1 байт).


Описание файла setting.cfg:

server;192.168.0.200;507; #
    # server - идентификатор переменной
    # 192.168.0.200 - IP адрес slave части утилиты modbus.py для входящих подключений
    # 507 - Порт slave части утилиты modbus.py для входящих подключений


cport;COM5; #
    # cport - идентификатор переменной
    # COM5 - адрес СОМ порта для опроса терминальных устройств по протоколу modbusRTU

dcon;4050;01;0;0;0;comment;
    # dcon - идентификатор переменной
    # 4050 - идентификатор модели устройства
    # 01 - адрес устройства
    # 0 - начальный адрес размещение дискретных входов в регистре DISCRETE_INPUTS ( 7 бит)
    # 0 - начальный адрес размещение состояний выходов в регистре READ_COILS (8 бит)
    # 0 - начальный адрес размещение ответных байт-состояний в регистре INPUT_REGISTERS (2 адреса)
    # comment - комментарий


Пример настройки:
Необходимо подключиться к устройству по Adam-4050 адресу 01,
После этого в slave части утилиты расположить в DISCRETE_INPUTS информацию о дискретных входах,
а в READ_COILS информацию о дискретных выходах.

server;192.168.0.200;507;
cport;COM5; dcon;4050;01;0;0;0;comment;


В результате в регистрах будут следующие записи:
DISCRETE_INPUTS:
Адрес 0х00 -- DI 6
Адрес 0х01 -- DI 5
Адрес 0х02 -- DI 4
Адрес 0х03 -- DI 3
Адрес 0х04 -- DI 2
Адрес 0х05 -- DI 1
Адрес 0х06 -- DI 0
READ_COILS:
Адрес 0х00 -- DO 7
Адрес 0х01 -- DO 6
Адрес 0х02 -- DO 5
Адрес 0х03 -- DO 4
Адрес 0х04 -- DO 3
Адрес 0х05 -- DO 2
Адрес 0х06 -- DO 1
Адрес 0х07 -- DO 0
INPUT_REGISTERS:
Адрес 0х00 -- 1 байт DI
Адрес 0х01 -- 1 байт DO
В случае обработки исключения в эти адреса записывается "401".

Для управления используются регистры записи Single Coil (0x05).
При установке 1 по адресу 0х07 регистра Single Coil (0x05), вывод
DO 0 будет переведен в состояние 1, т.е. "Вкл", аналогично при инверсии
будет состояние "Выкл".
Загрузки:

     master_dcon.py
     setting.cfg