Modbus-устройства
АСУД-248 позволяет реализовать взаимодействие с устройствами по протоколу Modbus.
Поддерживаются спецификации:
- Modbus-RTU
- Modbus TCP
Чтение данных (одиночное, групповое), запись данных (одиночная).
Тракт передачи данных в общем случае:
Устройство Modbus - (RS-232/485) КЦС-IPM - Компьютерная сеть - ПК (или Пульт АСУД-248)
Требуемое программное обеспечение (АСУД.SCADA версии 1.5.1 и выше):
- kcslogger.exe (Tekon\OPC Server\)
- kcsip.dll (Tekon\OPC Server\extensions)
- mbtcp.dll (Tekon\OPC Server\extensions\drv)
- mbrtu.dll (Tekon\OPC Server\extensions\drv)
- original.gdb (Tekon\OPC Server\)
- asudbase.exe (Tekon\OPC Server\)
Внимание, требуется наличие USB-ключа защиты АСУД.SCADA.
Настройка программного обеспечения АСУД.SCADA заключалается во:
- вводе карты Modbus регистров в программе ASUDBase;
- настройке OPC-сервера: Контейнер оборудования;
- настройка карты АСУД.SCADA - примитивы
- дискретный датчик - сигналы аварии (неисправностей);
- цифровой индикатор - данные температуры, давления;
- текстовое поле - информация о режимах работы оборудования, возможность записи значений в Modbus устройство.
Настройка регистров Modbus-устройства осуществляется с помощью программы ASUDBase (версии 1.6 и выше).
Откройте окно Настройка\Регистрация и введите данные подключения Modbus-устройства
Рисунок - Настройка устройства Modbus
Номер концентратора указать 901...999, 1901...1999, ...
Устройство добавляется с одной системой "Отопление" (по умолчанию) - это (наименование) не имеет существенного значение.
Далее следует выполнить двойной клик на записи Modbus слева и в открывшемся окне указать читаемые регистры.
Рисунок - Настройка карты регистров Modbus
Modbus-настройки (см. описание устройства)
- Регистр - тип регистра, выпадающее меню
- Coils — однобитовый тип, доступен на чтение и на запись. - DiscInp — однобитовый тип, доступен только на чтение. - HoldReg — 16-битовый тип, доступен на чтение и на запись. - InpReg — 16-битовый тип, доступен только на чтение.
- Адрес - адрес регистра в 10-тичной системе
- Тип данных - тип данных в регистре, выпадающее меню
- BIT (1 регистр) - WORD (1 регистр) - FLOAT (2 регистра) - DWORD (2 регистра) - INTEGER (2 регистра)
- Блок/Бит - для типа данных БИТ указывается анализируемый бит в слове.
- Формат - формат представления числа в регистре.
Подробнее см. Формат данных (по умолчанию = 1).
Scada-настройки (для отображения в АСУД.SCADA)
- КДД-RS + 500 - номер КДД-RS плюс число 500.
Выполнить трансляцию данные регистра устройства в дискретный сигнал OPC-сервера Текоn, путем привязки к каналу концентратора Контейнер оборудования \ КДД-RS. Что позволит впоследствии в АСУД.SCADA использовать примитивы типа "Дискретный датчик" с данным сигналом. При этом предполагается что значение регистра может быть только 0 или 1.
Значение 0 - не транслировать данные в КДД-RS
Значение >= 500 - транслировать данные в КДД-RS (номер Значение - 500).
При этом настройка KДД-RS в OPC-сервере должна быть:
Мастер - КЦС-IP(М)
IP 1.1.1.1
Интерфейс RS-485(1)
RS-номер - (Значение - 500).
- Параметр - номер параметра.
Если значение [КДД-RS + 500] >= 500 - указывает номер дискретного входа КДД-RS (1..14). Если значение [КДД-RS + 500] = 0 - должен указывать просто уникальный номер для данного концентратора (номер должен быть > 500).
- Сокращение - сокращенное название параметра
Отображается в окне 2 программы ASUDBase при просмотре полученных значений.
- Название - полное название параметра
Modbus-настройки дополнительные
(в большинстве случаев можно оставить значение по умолчанию).
- Множитель - множитель значения считанного из регистра.
Только для типов DWORD, INTEGER, FLOAT. После чтения значение в SCADA = значение регистра * множитель Перед записью Значение = Значение SCADA / множитель
- Адрес W - адрес записи.
Следует указать, если запись необходимо произвести в регистр по другому адресу отличному от адреса чтения.
- ** - набор параметров, указываемых в случае, если перед записью регистра, следует выполнить запись значения в другой регистр.
Например, если перед изменением параметра следует указать, пароль. (как в контроллерах ОВЕН ТРМ-133М при изменении текущего состояния) ** Адрес - адрес регистра. ** Тип - тип регистра. ** Значение - значение для записи. Формат значения при этом берется из поля Формат основного регистра. Множитель - не используется.
- Sleep - ожидание в мс., указывается в случае если необходима задержка после
записи регистра перед следующей операцией чтения.
Автозаполнение (новой строки таблицы) - при установке флага некоторые поля при добавлении новой записи заполняются на основе предыдущих введенных значений.
Экспорт - экспортировать данные настройки в файл для последующего использования.
Импорт - импортировать данные настройки из файла.
Настройки устройства - следует указать исходя из описания устройства
- Название прибора - название устройства.
- Базовый регистр - как правило = 0 (или 1)
- Читать группу элементов - можно ли читать более 1 регистра за один запрос.
0 - можно читать сколько угодно >0 - максимальное число регистров на чтение в одном запросе
- Разрешить при чтении пропуски в группе - можно ли читать несколько регистров
за один запрос, если они раположены не подряд.
Формат данных - возможные варианты формата представления данных.
1 регистр - типы Byte, Word 2 регистра - типы DWord, Integer, Float
После настройки всех Modbus-устройств можно автоматически сформировать конфигурационный файл OPC-сервера. Для этого следует выбрать меню Настройка \ SCADA \ Конфигурация Modbus.
Созданный файл DBase \ wac.conf следует скопировать в папку Tekon \ OPC Server \ settings. Затем запустить конфигуратор OPC-сервера и по необходимости внести изменения в настройки, как описано ниже.
Для отображения данных в SCADA следует выполнить настройку OPC-сервера Tekon.
В конфигурации добавляется устройство DA Tekon \ Контейнер оборудование.
Для отображения данных регистров со значением поля [КДД-RS + 500] = 0 и со значением параметра >= 500 следует добавить устройство DA Tekon \ Контейнер оборудование \ Прибор учета
Далее выполнить двойной клик на приборе учета, в открывшемся окне слева выбрать требуемое устройство для отображения данных, а справа установить флажки у параметров, которые необходимо отображать в АСУД.SCADA
Рисунок - Настройка отображения данных устройства Modbus
Внимание! При выборе устройства, параметры (справа) будут отображены, только если к этому моменту произошло хотя бы одно успешное чтение данных с Modbus-устройства (с помощью программы kcslogger).
Для запуска опроса зарегистрированных Modbus-устройств следует запустить программу Tekon\OPC Server\kcslogger.exe и нажать кнопку Запуск. При необходимости свернуть программу в трей Windows.
Для каждого Modbus-устройства следует добавить свой DA Tekon \ Контейнер оборудование \ Прибор учета.
Далее для привязки дискретных сигналов (регистры со значением поля [КДД-RS + 500] >= 500) следует добавить устройство DA Tekon \ Контейнер оборудование \ КДД-RS
Выполнить двойной клик на КДД-RS и ввести следующие настройки:
Мастер - КЦС-IPM IP 1.1.1.1 Интерфейс RS-485(1) RS-номер - 0..31 (Значение поля [КДД-RS + 500] - 500).
Далее настроить обычным образов соответствующие дискретные входы КДД-RS с указанием названия сигнала, задержки, инверсии и т.п.
Закрыть конфигуратор OPC-сервера.
Запустить опрос Modbus-устройств (программу kcslogger.exe)
Дополнительно в случае необходимости одновременной записи однотипных значений регистров в несколько устройств, существует возможность объединить Modbus-устройства в группы.
Для определения групп следует отредактировать файл Tekon \ ASUD Scada \ OPC Server \ settings \ modbusgrp.ini
В данном примере ';' - является комментарием
;[1] название группы (уникальное) ;Params=88 99 112 - номера параметров через пробел или пусто если для всех параметров ;Conc= 901 902 903 - номера концентраторов через пробел
Создана группа 1, для концентраторов 901-903. В случае записи, например, значения в регистр 99 концентратора 902, это же значение будет записано в регистры 99 концентраторов 901 и 903.
В АСУД.SCADA для визуализации данных Modbus-устройств можно использовать следующие примитивы:
- Дискретные датчики
Для привязки к тегам КДД-RS
- Цифровой индикатор
Для отображения любых цифровых значений (с возможностью указания граничных значений)
- Текстовое поле
Для отображения любых цифровых значений, а также преобразования цифрового значения в текстовое по заданному правилу с помощью скрипта (см. пример номер 2). Кроме того с помощью данного примитива и скрипта можно выполнить запись значения в регистр Modbus-устройства.
--Alex 10:15, 3 июля 2013 (UTC)