WB-MIO Modbus Interface Converters: различия между версиями
(Перенаправление изменено с Центр документации на WB-MIO-E v.2 Modbus Interface Converter) Метка: изменение цели перенаправления |
Ian (обсуждение | вклад) |
||
(не показано 149 промежуточных версий 16 участников) | |||
Строка 1: | Строка 1: | ||
# | {{DISPLAYTITLE:Преобразователь интерфейсов WB-MIO}} | ||
'''Статья в процессе наполнения и редактирования''' | |||
[[Файл:WB-MIO_1.png|мини]] | |||
== Назначение== | |||
Преобразователь интерфейсов WB-MIO предназначен для подключения устройств [[Модули ввода-вывода|'''WBIO''' (Модули ввода-вывода)]] к интерфейсу RS-485. Позволяет, при необходимости, отделить [[Модули ввода-вывода|модули ввода-вывода]] от контроллера Wiren board и перенести на другую дин-рейку или в другой щит. Также позволяет использовать [[Модули ввода-вывода|модули ввода-вывода]] как отдельное устройство c контроллерами других производителей. | |||
== Технические характеристики == | |||
[[File:DIN 2U.png |300px|thumb|right|Габаритные размеры]] | |||
{| class="wikitable" | |||
! style="text-align: center;" | Параметр | |||
! style="text-align: center;" | Значение | |||
|- | |||
! colspan="2" |Питание | |||
|- | |||
|Напряжение питания интерфейсной части | |||
|9 В — 24 В постоянного тока | |||
|- | |||
|Потребляемая мощность | |||
| | |||
0,85 Вт | |||
|- | |||
! colspan="2" |Каналы управления нагрузкой | |||
|- | |||
! colspan="2" |Коммуникация | |||
|- | |||
|Протокол обмена данными | |||
|Modbus RTU, WBIO | |||
|- | |||
|Параметры интерфейса RS-485 | |||
|задаются программно, по умолчанию: | |||
скорость 9600 бит/с; данные — 8 бит; четность N; стоп-биты 2; | |||
*Скорость: 1200, 2400, 4800, 9600 (по умолчанию), 19200, 38400, 57600, 115200 бит/с | |||
*Данные: 8 бит | |||
*Проверка чётности: нет (по умолчанию), 1 - нечётный (odd), 2 - чётный (even) | |||
*Стоповых бит: 2 (по умолчанию), 1 | |||
|- | |||
! colspan="2" |Габариты | |||
|- | |||
| Габариты | |||
| 2 DIN; 36,3x90,2x57,5 мм | |||
|- | |||
! colspan="2" |Условия эксплуатации | |||
|- | |||
| Температура воздуха | |||
| от -40°С до +80°С | |||
|- | |||
| Относительная влажность воздуха | |||
| до 92%, без конденсации влаги | |||
|} | |||
== Обмен данными == | |||
На физическом уровне модуль подключается через интерфейс RS-485. Для управления WB-MIO используется протокол [[Протокол Modbus|'''Modbus RTU''']] . В устройствах Wirenboard данные [[Протокол Modbus|'''Modbus''']] передаются по линиям связи RS-485. Modbus-адрес устройства задается на заводе и нанесен на наклейке. Адрес может быть изменен программно. Подробности смотрите в разделе [[#Управление по Modbus|Управление по Modbus]]. | |||
==Подключение интерфейсной части== | |||
WB-MIO подключается к контроллеру через разъемы A и B RS-485. Питание подается от отдельного источника питания, линии GND контроллера и источника питания рекомендуется объединить. | |||
[[Файл:Installation WB6+mio.png|400px|thumb|center| Подключение WB-MIO]] | |||
==Подключение модулей ввода-вывода== | |||
Модули ввода-вывода подключаются к WB-MIO, пристыковываясь к нему сбоку (входя в боковой разъём). | |||
[[Файл:Connecting_Side_Modules.png|250px|thumb|right| Подключение модуля к WB-MIO]] | |||
[[Файл:Wb-mio 2.png|250px|thumb|right| Подключение модулей к WB-MIO]] | |||
Последовательно можно подключать до 9 модулей: до 4 модулей ввода (типа "I"), до 4-х модуля вывода и ввода-вывода (тип "O" и "IO"), один модуль WBIO-AI-DV-12. Тип модуля определяет тип адресации модуля контроллером на шине бокового разъема. Адреса раздаются последовательно. Подключать до 4 модулей можно в любой последовательности. При большем числе следует подключать сначала один тип, потом другой. | |||
==Настройка в web-интерфейсе== | |||
За работу с подключёнными по RS-485 WB-MIO в Wiren Board отвечает [[Драйвер wb-mqtt-serial]]. Для настройки устройства необходимо отредактировать config файл драйвера. | |||
Для подключения устройств [[Модули ввода-вывода|'''WBIO''' (Модули ввода-вывода)]] через WB-MIO необходимо зайти в web-интерфейс контроллера, перейти в меню во вкладку Configs, выбрать файл /etc/wb-mqtt-serial.conf. Далее нужно добавить к нужному порту новый Serial device. В поле "Slave id of the device" указываем адрес устройства WB-MIO и через двоеточие номер по счету подключенного к WB-MIO [[Модули ввода-вывода|'''модуля ввода-вывода''']], который мы собираемся подключить к web-интерфейсу. На пример если у нас к WB-MIO подключен всего один модуль, то строка "Slave id of the device" для этого модуля будет выглядеть примерно так: 15:1. Где 15 адрес WB-MIO, а 1 это номер по счету модуля ввода-вывода. В поле "Device type" необходимо выбрать тип подключенного [[Модули ввода-вывода|модуля ввода-вывода]]. Названия шаблонов для [[Модули ввода-вывода|модулей ввода-вывода]] начинаются на "WBIO-..." | |||
[[Файл:Mio-conf2.JPG]] [[Файл:Mio-conf3.JPG]] [[Файл:Mio-conf1.png]] | |||
==Управление по Modbus== | |||
Ниже приведена карта Modbus-регистров WB-MIO. Дополнительную информацию о работе с устройствами по протоколу Modbus можно найти в разделе [[Протокол Modbus]] | |||
=== Карта регистров модулей реле === | |||
{| border="1" class="wikitable" style="text-align:center" | |||
!Register/ Address | |||
!Type | |||
!R/ W | |||
!Default value | |||
!Format | |||
!Description | |||
|- | |||
| 110 || holding || RW || 96 (0x60) || baud rate / 100 || style="text-align:left" | baud rate at RS-485, '''divided by 100'''. Possible values: 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200 | |||
|- | |||
| 111 || holding || RW || 0 || || style="text-align:left" | Parity bits at RS-485. Possible values: 0 - none , 1 - odd, 2 - even | |||
|- | |||
| 112 || holding || RW || 2 || || style="text-align:left" | Number of stop bits at RS-485. possible values: 1, 2 | |||
|- | |||
| 120 (0x78) || holding || RW || 0 || style="text-align:left" | 0 or higher than 0 || style="text-align:left" | Reset | |||
|- | |||
| 121 (0x79) || input || R || - || mV || style="text-align:left" | Input voltage | |||
|- | |||
| 128 (0x80) || holding || RW || 1 || || style="text-align:left" | Modbus address | |||
|- | |||
| 200-206 || input || R || {'x','x','x','x','x','x'} || || style="text-align:left" | Model name | |||
|- | |||
| 220-241 || input || R || || __date__ __time__|| style="text-align:left" | Date of firmware build | |||
|- | |||
| 250-269 || input || R || || null-terminated string || style="text-align:left" | Firmware version | |||
|- | |||
| 270-271 || input || R || || 32-bit unsigned int || style="text-align:left" | Serial Number (S/N) | |||
|- | |||
| 990 || holding || R || || || style="text-align:left" | Is output module no. 1 present (0 = not present, 1 = 8 pin module, 2 = 16 pin module) | |||
|- | |||
| 991 || holding || R || || || style="text-align:left" | Is output module no. 2 present (0 = not present, 1 = 8 pin module, 2 = 16 pin module) | |||
|- | |||
| 992 || holding || R || || || style="text-align:left" | Is output module no. 3 present (0 = not present, 1 = 8 pin module, 2 = 16 pin module) | |||
|- | |||
| 993 || holding || R || || || style="text-align:left" | Is input module no. 4 present (0 = not present, 1 = 8 pin module, 2 = 16 pin module) | |||
|- | |||
| 994 || holding || R || || || style="text-align:left" | Is output module no. 4 present (0 = not present, 1 = 8 pin module, 2 = 16 pin module) | |||
|- | |||
| 995 || holding || R || || || style="text-align:left" | Is input module no. 3 present (0 = not present, 1 = 8 pin module, 2 = 16 pin module) | |||
|- | |||
| 996 || holding || R || || || style="text-align:left" | Is input module no. 2 present (0 = not present, 1 = 8 pin module, 2 = 16 pin module) | |||
|- | |||
| 997 || holding || R || || || style="text-align:left" | Is input module no. 1 present (0 = not present, 1 = 8 pin module, 2 = 16 pin module) | |||
|- | |||
| 1250 - 1265 || holding || R || 16 bit unsigned int || || style="text-align:left" | Counter registers of input module no. 1 | |||
|- | |||
| 2250 - 2265 || holding || R || 16 bit unsigned int || || style="text-align:left" | Counter registers of input module no. 2 | |||
|- | |||
| 3250 - 3265 || holding || R || 16 bit unsigned int || || style="text-align:left" | Counter registers of input module no. 4 | |||
|- | |||
| 4250 - 4265 || holding || R || 16 bit unsigned int || || style="text-align:left" | Counter registers of input module no. 5 | |||
|- | |||
| 10999 || holding || RW || 0 || 0 or higher than 0 || style="text-align:left" | Config flag of input module no. 1 | |||
|- | |||
| 11000 - 11010 || holding || RW || || 16 bit unsigned int || style="text-align:left" | Config registers of input module no. 1 | |||
|- | |||
| 11499 || holding || RW || 0 || 0 or higher than 0 || style="text-align:left" | Config flag of output module no. 1 | |||
|- | |||
| 11500 - 11510 || holding || RW || || 16 bit unsigned int || style="text-align:left" | Config registers of output module no. 1 | |||
|- | |||
| 11999 || holding || RW || 0 || 0 or higher than 0 || style="text-align:left" | Config flag of input module no. 2 | |||
|- | |||
| 12000 - 12010 || holding || RW || || 16 bit unsigned int || style="text-align:left" | Config registers of input module no. 2 | |||
|- | |||
| 12499 || holding || RW || 0 || 0 or higher than 0 || style="text-align:left" | Config flag of output module no. 2 | |||
|- | |||
| 12500 - 12510 || holding || RW || || 16 bit unsigned int || style="text-align:left" | Config registers of output module no. 2 | |||
|- | |||
| 12999 || holding || RW || 0 || 0 or higher than 0 || style="text-align:left" | Config flag of input module no. 3 | |||
|- | |||
| 13000 - 13010 || holding || RW || || 16 bit unsigned int || style="text-align:left" | Config registers of input module no. 3 | |||
|- | |||
| 13499 || holding || RW || 0 || 0 or higher than 0 || style="text-align:left" | Config flag of output module no. 3 | |||
|- | |||
| 13500 - 13510 || holding || RW || || 16 bit unsigned int || style="text-align:left" | Config registers of output module no. 3 | |||
|- | |||
| 13999 || holding || RW || 0 || 0 or higher than 0 || style="text-align:left" | Config flag of input module no. 4 | |||
|- | |||
| 14000 - 14010 || holding || RW || || 16 bit unsigned int || style="text-align:left" | Config registers of input module no. 4 | |||
|- | |||
| 14499 || holding || RW || 0 || 0 or higher than 0 || style="text-align:left" | Config flag of output module no. 4 | |||
|- | |||
| 14500 - 14510 || holding || RW || || 16 bit unsigned int || style="text-align:left" | Config registers of output module no. 4 | |||
|- | |||
| 20000 - 20017 || holding || R || || 16 bit signed int multiplied by 100 || style="text-align:left" | Voltage registers of ADC module no. 1 | |||
|- | |||
| 20500 - 20517 || holding || RW || 0 || int in range of: 0 - 7 || style="text-align:left" | Voltage registers of ADC module no. 1 | |||
|- | |||
| 21000 - 21017 || holding || R || || 16 bit signed int multiplied by 100 || style="text-align:left" | Voltage registers of ADC module no. 2 | |||
|- | |||
| 21500 - 21517 || holding || RW || 0 || int in range of: 0 - 7 || style="text-align:left" | Voltage registers of ADC module no. 2 | |||
|- | |||
| 22000 - 22017 || holding || R || || 16 bit signed int multiplied by 100 || style="text-align:left" | Voltage registers of ADC module no. 3 | |||
|- | |||
| 22500 - 22517 || holding || RW || 0 || int in range of: 0 - 7 || style="text-align:left" | Voltage registers of ADC module no. 3 | |||
|- | |||
| 23000 - 23017 || holding || R || || 16 bit signed int multiplied by 100 || style="text-align:left" | Voltage registers of ADC module no. 4 | |||
|- | |||
| 23500 - 23517 || holding || RW || 0 || int in range of: 0 - 7 || style="text-align:left" | Voltage registers of ADC module no. 4 | |||
|- | |||
|} | |||
===Table of Modbus coil registers === | |||
{| border="1" class="wikitable" style="text-align:center" | |||
!Register/ Address | |||
!Description | |||
|- | |||
| 1000 - 1015 || style="text-align:left" | Logical states of input module no. 1 | |||
|- | |||
| 1500 - 1515 || style="text-align:left" | Logical states of output module no. 1 | |||
|- | |||
| 2000 - 2015 || style="text-align:left" | Logical states of input module no. 2 | |||
|- | |||
| 2500 - 2515 || style="text-align:left" | Logical states of output module no. 2 | |||
|- | |||
| 3000 - 3015 || style="text-align:left" | Logical states of input module no. 3 | |||
|- | |||
| 3500 - 3515 || style="text-align:left" | Logical states of output module no. 3 | |||
|- | |||
| 4000 - 4015 || style="text-align:left" | Logical states of input module no. 4 | |||
|- | |||
| 4500 - 4515 || style="text-align:left" | Logical states of output module no. 4 | |||
|- | |||
| 19990 || style="text-align:left" | Is adc module no. 1 present | |||
|- | |||
| 19991 || style="text-align:left" | Is adc module no. 2 present | |||
|- | |||
| 19992 || style="text-align:left" | Is adc module no. 3 present | |||
|- | |||
| 19993 || style="text-align:left" | Is adc module no. 4 present | |||
|- | |||
|} |
Версия 17:48, 16 января 2018
Статья в процессе наполнения и редактирования
Назначение
Преобразователь интерфейсов WB-MIO предназначен для подключения устройств WBIO (Модули ввода-вывода) к интерфейсу RS-485. Позволяет, при необходимости, отделить модули ввода-вывода от контроллера Wiren board и перенести на другую дин-рейку или в другой щит. Также позволяет использовать модули ввода-вывода как отдельное устройство c контроллерами других производителей.
Технические характеристики
Параметр | Значение |
---|---|
Питание | |
Напряжение питания интерфейсной части | 9 В — 24 В постоянного тока |
Потребляемая мощность |
0,85 Вт |
Каналы управления нагрузкой | |
Коммуникация | |
Протокол обмена данными | Modbus RTU, WBIO |
Параметры интерфейса RS-485 | задаются программно, по умолчанию:
скорость 9600 бит/с; данные — 8 бит; четность N; стоп-биты 2;
|
Габариты | |
Габариты | 2 DIN; 36,3x90,2x57,5 мм |
Условия эксплуатации | |
Температура воздуха | от -40°С до +80°С |
Относительная влажность воздуха | до 92%, без конденсации влаги |
Обмен данными
На физическом уровне модуль подключается через интерфейс RS-485. Для управления WB-MIO используется протокол Modbus RTU . В устройствах Wirenboard данные Modbus передаются по линиям связи RS-485. Modbus-адрес устройства задается на заводе и нанесен на наклейке. Адрес может быть изменен программно. Подробности смотрите в разделе Управление по Modbus.
Подключение интерфейсной части
WB-MIO подключается к контроллеру через разъемы A и B RS-485. Питание подается от отдельного источника питания, линии GND контроллера и источника питания рекомендуется объединить.
Подключение модулей ввода-вывода
Модули ввода-вывода подключаются к WB-MIO, пристыковываясь к нему сбоку (входя в боковой разъём).
Последовательно можно подключать до 9 модулей: до 4 модулей ввода (типа "I"), до 4-х модуля вывода и ввода-вывода (тип "O" и "IO"), один модуль WBIO-AI-DV-12. Тип модуля определяет тип адресации модуля контроллером на шине бокового разъема. Адреса раздаются последовательно. Подключать до 4 модулей можно в любой последовательности. При большем числе следует подключать сначала один тип, потом другой.
Настройка в web-интерфейсе
За работу с подключёнными по RS-485 WB-MIO в Wiren Board отвечает Драйвер wb-mqtt-serial. Для настройки устройства необходимо отредактировать config файл драйвера.
Для подключения устройств WBIO (Модули ввода-вывода) через WB-MIO необходимо зайти в web-интерфейс контроллера, перейти в меню во вкладку Configs, выбрать файл /etc/wb-mqtt-serial.conf. Далее нужно добавить к нужному порту новый Serial device. В поле "Slave id of the device" указываем адрес устройства WB-MIO и через двоеточие номер по счету подключенного к WB-MIO модуля ввода-вывода, который мы собираемся подключить к web-интерфейсу. На пример если у нас к WB-MIO подключен всего один модуль, то строка "Slave id of the device" для этого модуля будет выглядеть примерно так: 15:1. Где 15 адрес WB-MIO, а 1 это номер по счету модуля ввода-вывода. В поле "Device type" необходимо выбрать тип подключенного модуля ввода-вывода. Названия шаблонов для модулей ввода-вывода начинаются на "WBIO-..."
Управление по Modbus
Ниже приведена карта Modbus-регистров WB-MIO. Дополнительную информацию о работе с устройствами по протоколу Modbus можно найти в разделе Протокол Modbus
Карта регистров модулей реле
Register/ Address | Type | R/ W | Default value | Format | Description |
---|---|---|---|---|---|
110 | holding | RW | 96 (0x60) | baud rate / 100 | baud rate at RS-485, divided by 100. Possible values: 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200 |
111 | holding | RW | 0 | Parity bits at RS-485. Possible values: 0 - none , 1 - odd, 2 - even | |
112 | holding | RW | 2 | Number of stop bits at RS-485. possible values: 1, 2 | |
120 (0x78) | holding | RW | 0 | 0 or higher than 0 | Reset |
121 (0x79) | input | R | - | mV | Input voltage |
128 (0x80) | holding | RW | 1 | Modbus address | |
200-206 | input | R | {'x','x','x','x','x','x'} | Model name | |
220-241 | input | R | __date__ __time__ | Date of firmware build | |
250-269 | input | R | null-terminated string | Firmware version | |
270-271 | input | R | 32-bit unsigned int | Serial Number (S/N) | |
990 | holding | R | Is output module no. 1 present (0 = not present, 1 = 8 pin module, 2 = 16 pin module) | ||
991 | holding | R | Is output module no. 2 present (0 = not present, 1 = 8 pin module, 2 = 16 pin module) | ||
992 | holding | R | Is output module no. 3 present (0 = not present, 1 = 8 pin module, 2 = 16 pin module) | ||
993 | holding | R | Is input module no. 4 present (0 = not present, 1 = 8 pin module, 2 = 16 pin module) | ||
994 | holding | R | Is output module no. 4 present (0 = not present, 1 = 8 pin module, 2 = 16 pin module) | ||
995 | holding | R | Is input module no. 3 present (0 = not present, 1 = 8 pin module, 2 = 16 pin module) | ||
996 | holding | R | Is input module no. 2 present (0 = not present, 1 = 8 pin module, 2 = 16 pin module) | ||
997 | holding | R | Is input module no. 1 present (0 = not present, 1 = 8 pin module, 2 = 16 pin module) | ||
1250 - 1265 | holding | R | 16 bit unsigned int | Counter registers of input module no. 1 | |
2250 - 2265 | holding | R | 16 bit unsigned int | Counter registers of input module no. 2 | |
3250 - 3265 | holding | R | 16 bit unsigned int | Counter registers of input module no. 4 | |
4250 - 4265 | holding | R | 16 bit unsigned int | Counter registers of input module no. 5 | |
10999 | holding | RW | 0 | 0 or higher than 0 | Config flag of input module no. 1 |
11000 - 11010 | holding | RW | 16 bit unsigned int | Config registers of input module no. 1 | |
11499 | holding | RW | 0 | 0 or higher than 0 | Config flag of output module no. 1 |
11500 - 11510 | holding | RW | 16 bit unsigned int | Config registers of output module no. 1 | |
11999 | holding | RW | 0 | 0 or higher than 0 | Config flag of input module no. 2 |
12000 - 12010 | holding | RW | 16 bit unsigned int | Config registers of input module no. 2 | |
12499 | holding | RW | 0 | 0 or higher than 0 | Config flag of output module no. 2 |
12500 - 12510 | holding | RW | 16 bit unsigned int | Config registers of output module no. 2 | |
12999 | holding | RW | 0 | 0 or higher than 0 | Config flag of input module no. 3 |
13000 - 13010 | holding | RW | 16 bit unsigned int | Config registers of input module no. 3 | |
13499 | holding | RW | 0 | 0 or higher than 0 | Config flag of output module no. 3 |
13500 - 13510 | holding | RW | 16 bit unsigned int | Config registers of output module no. 3 | |
13999 | holding | RW | 0 | 0 or higher than 0 | Config flag of input module no. 4 |
14000 - 14010 | holding | RW | 16 bit unsigned int | Config registers of input module no. 4 | |
14499 | holding | RW | 0 | 0 or higher than 0 | Config flag of output module no. 4 |
14500 - 14510 | holding | RW | 16 bit unsigned int | Config registers of output module no. 4 | |
20000 - 20017 | holding | R | 16 bit signed int multiplied by 100 | Voltage registers of ADC module no. 1 | |
20500 - 20517 | holding | RW | 0 | int in range of: 0 - 7 | Voltage registers of ADC module no. 1 |
21000 - 21017 | holding | R | 16 bit signed int multiplied by 100 | Voltage registers of ADC module no. 2 | |
21500 - 21517 | holding | RW | 0 | int in range of: 0 - 7 | Voltage registers of ADC module no. 2 |
22000 - 22017 | holding | R | 16 bit signed int multiplied by 100 | Voltage registers of ADC module no. 3 | |
22500 - 22517 | holding | RW | 0 | int in range of: 0 - 7 | Voltage registers of ADC module no. 3 |
23000 - 23017 | holding | R | 16 bit signed int multiplied by 100 | Voltage registers of ADC module no. 4 | |
23500 - 23517 | holding | RW | 0 | int in range of: 0 - 7 | Voltage registers of ADC module no. 4 |
Table of Modbus coil registers
Register/ Address | Description |
---|---|
1000 - 1015 | Logical states of input module no. 1 |
1500 - 1515 | Logical states of output module no. 1 |
2000 - 2015 | Logical states of input module no. 2 |
2500 - 2515 | Logical states of output module no. 2 |
3000 - 3015 | Logical states of input module no. 3 |
3500 - 3515 | Logical states of output module no. 3 |
4000 - 4015 | Logical states of input module no. 4 |
4500 - 4515 | Logical states of output module no. 4 |
19990 | Is adc module no. 1 present |
19991 | Is adc module no. 2 present |
19992 | Is adc module no. 3 present |
19993 | Is adc module no. 4 present |