|
|
Строка 128: |
Строка 128: |
| |} | | |} |
|
| |
|
| == Управление == | | === Обмен данными === |
| | На физическом уровне модуль подключается через интерфейс [[RS-485]]. Для управления WB-MR6C используется протокол Modbus RTU. В устройствах Wirenboard данные Modbus передаются по линиям связи RS-485. Подробнее смотрите страницу [[Протокол Modbus]]. Modbus-адрес модуля задается на заводе и нанесен на наклейке на его боковой стороне. Адрес может быть изменен программно. Подробно смотрите в разделе [[#Управление_по_Modbus|Управление по Modbus]]. |
|
| |
|
| === Параметры RS-485 === | | == Монтаж == |
| Скорость 9600 бит/сек, данных - 8 бит, бит чётности – нет, стоповых бит - 2.
| | Релейный модуль монтируется на стандартную DIN-рейку шириной 35 мм и занимает ширину 3 DIN-модуля. |
|
| |
|
| В датчиках с версией прошивки 3.1.0 и позднее эти настройки можно изменить - смотрите таблицу регистров Modbus.
| | Блоки безвинтовых зажимов на плате реле служат для подключения линий питания, управления (RS-485) и входных контактов. При использовании при монтаже наконечников типа НШВИ для установки проводов в безвинтовые зажимы необходимо, чтобы диаметр изолированных манжет не превышал 3,6 мм, сечение провода — 0,75 мм<sup>2</sup>, а длина проводящей втулки — 5—6 мм. Винтовые зажимы принимают провод сечением 2,5—4 мм<sup>2</sup>. Сечение провода должно соответствовать коммутируемой нагрузке. |
|
| |
|
| === Команды Modbus, поддерживаемые устройством ===
| | При подключении коммутируемых устройств к контактам реле K1, K2 и K3 важно не превышать рекомендованный ток — 10 А. |
|
| |
|
| {| border="1" class="wikitable" style="text-align:center"
| | Ток, протекающий при замыкании кнопки или выключателя, невелик, так что тип кнопки или выключателя может быть любым. Несмотря на встроенную защиту от дребезга, выбирайте качественные кнопки и выключатели, чтобы исключить ложные срабатывания из-за плохих контактов. Осторожно — в модификации HV на клеммах присутствует высокое напряжение! |
| !Command | |
| !Dec
| |
| !Hex
| |
| |-
| |
| |READ_COIL || 1 || 0x01
| |
| |-
| |
| |READ_HOLDING_REGISTERS || 3 || 0x03
| |
| |-
| |
| |WRITE_SINGLE_COIL || 5 || 0x05
| |
| |-
| |
| |WRITE_SINGLE_REGISTER || 6 || 0x06
| |
| |-
| |
| |WRITE_MULTI_COILS || 15 || 0x0F
| |
| |-
| |
| |WRITE_MULTI_REGISTERS || 16 || 0x10
| |
| |-
| |
| |}
| |
|
| |
|
| === Функции===
| | Если устройство — последнее на линии RS-485, то между его входами A и B необходимо установить резистор-терминатор сопротивлением 120 Ом. Практика показывает, что в случае стендовых испытаний при небольшой длине линии RS-485 и небольшом количестве устройств терминатор на последнем устройстве в линии можно не устанавливать. |
|
| |
|
| '''Смена адреса''' производится широковещательный (slave_id 0) командой записи (WRITE_SINGLE_REGISTER) в holding register с адресом 128 (0x80).
| | Модуль необходимо устанавливать таким образом, чтобы удовлетворять требованиям электробезопасности и не допускать случайного касания контактов, находящихся под высоким напряжением. Модуль должен эксплуатироваться при рекомендованных условиях окружающей среды. |
|
| |
|
| По адресу 200 лежит '''сигнатура''' длинной 6 байт. Сигнатура уникальна для каждой модели устройства и позволяет идентифицировать модель.
| | [[File:Installation_WBMR6C_+_WB5.png|650px|thumb|center|Образец монтажа и подключения модуля WB-MR6C. Выбор качественного блока питания очень важен для работы модуля. Кнопка с проводами зеленого цвета, подключенная ко входу 0 модуля, отключает все каналы одновременно.]] |
| Для получения сигнатуры нужно выполнить READ_HOLDING_REGISTERS адрес 200 длина 6.
| |
| Запись в эту область памяти не поддерживается, при попытки записи в недопустимое место возвращается ошибка 3.
| |
|
| |
|
| ==== Инфракрасный приёмопередатчик ==== | | == Управление модулем через web-интерфейс Wiren Board == |
| ('''только в модификации I''')
| |
|
| |
|
| [[WB-MSx_Consumer_IR_Manual|Инструкция по работе с ИК-приёмопередатчиком]]
| |
|
| |
|
| === Карта регистров хранения (Holding Registers)===
| |
|
| |
|
| В процессе наполнения.
| |
|
| |
|
| {| border="1" class="wikitable" style="text-align:center"
| | == Управление по Modbus == |
| !Регистр/ адрес
| |
| !тип
| |
| !чтение/ запись
| |
| !значение по умолчанию
| |
| !формат
| |
| !назначение
| |
| !к каким модификациям датчика применимо
| |
| |-
| |
|
| |
|
| | 0 || input || R || 0x7FFF ||°C × 10 (signed)||Температура с встроенного датчика
| | Подробно о работе с модулем по протоколу Modbus написано в разделе [[Relay Module Modbus Management|Управление модулями реле Wirenboard по протоколу Modbus]]. |
| |T
| | Там же можно найти карту регистров устройства. |
| |-
| |
| |1|| input || R || 0xFFFF ||<blockquote>%RH × 10 (signed)</blockquote>||Относительная влажность с встроенного датчика
| |
| |H
| |
| |-
| |
| |2
| |
| |input
| |
| |R
| |
| |<nowiki>-</nowiki>
| |
| |lux
| |
| |Освещённость с встроенного датчика
| |
| |L
| |
| |-
| |
| |3
| |
| |input
| |
| |R
| |
| |<nowiki>-</nowiki>
| |
| |dB
| |
| |Уровень шума
| |
| |S
| |
| |-
| |
| |4
| |
| |input
| |
| |R
| |
| |<nowiki>-</nowiki>
| |
| |<nowiki>-</nowiki>
| |
| |<nowiki>-</nowiki>
| |
| |
| |
| |-
| |
| |5
| |
| |input
| |
| |R
| |
| |<nowiki>-</nowiki>
| |
| |<nowiki>-</nowiki>
| |
| |<nowiki>-</nowiki>
| |
| |
| |
| |-
| |
| |6
| |
| |input
| |
| |R
| |
| |0x7FFF
| |
| |°C × 16 (signed)
| |
| |Температура с внешнего датчика
| |
| |D
| |
| |-
| |
| |7
| |
| |input
| |
| |R
| |
| |0x7FFF
| |
| |°C × 16 (signed)
| |
| |Температура с внешнего датчика
| |
| |D
| |
| |-
| |
| |8
| |
| |input
| |
| |R
| |
| |
| |
| |PPM
| |
| |Концентрация CO2
| |
| |
| |
| |-
| |
| | |
| |||||||||||
| |
| |
| |
| |-
| |
| |||||||||||
| |
| |
| |
| |-
| |
| |||||||||||
| |
| |
| |
| |-
| |
| |90||holding||RW||20 (200 ms)||× 10 ms||Время усреднения освещённости
| |
| |<blockquote>L</blockquote>
| |
| |-
| |
| |91||holding||RW||20 (200 ms)||× 10 ms
| |
| ||Время усреднения шума
| |
| |S
| |
| |-
| |
| |100
| |
| ||input
| |
| ||R||||raw_val * 16||Сырое усреднённое значение с АЦП микрофона
| |
| |S
| |
| |-
| |
| | 110 || holding || RW || 96 || baud rate / 100 || скорость порта RS-485, '''делённая на 100'''. Допустимые скорости: 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200 || все
| |
| |-
| |
| | 111 || holding || RW || 0 || || настройка бита чётности порта RS-485. Допустимые значения: 0 - нет бита чётности (none), 1 - нечётный (odd), 2 - чётный (even) || все
| |
| |-
| |
| | 112 || holding || RW || 2 || || количество стоп-битов порта RS-485. Допустимые значения: 1, 2 || все
| |
| |-
| |
| | 120 (0x78) || holding || RW || 0 || отличное от 0 || запись в регистр вызывает перезагрузку МК без сохранения состояния || все
| |
| |-
| |
| | 121 (0x79) || input || R || - || mV || текущее напряжение питания модуля
| |
| |все
| |
| |-
| |
| | 128 (0x80) || holding || RW || 1 || || Modbus-адрес устройства
| |
| |все
| |
| |-
| |
| | 200-206 || input || R || {'W','B','M','S',0,0} || || сигнатура
| |
| |все
| |
| |-
| |
| | 220-241 || input || R || || __date__ __time__|| дата сборки прошивки
| |
| |все
| |
| |-
| |
| | 250-269 || input || R || || строка, null-terminated || версия прошивки
| |
| |все
| |
| |-
| |
| | 270-271 || input || R || || 32-bit unsigned int || уникальный идентификатор (S/N)
| |
| |все
| |
| |-
| |
| | 2000-2509 || holding || RW || || || Буфер периодов IR-приемопередатчика
| |
| |I
| |
| |-
| |
| |}
| |
| | |
| ===Карта регистров флагов (Coils)===
| |
| | |
| | |
| {| border="1" class="wikitable" style="text-align:center"
| |
| !Начальный адрес || Количество || Назначение
| |
| !В модификациях
| |
| |-
| |
| | 0 || number_of_banks || style="text-align:left" |Воспроизведение ИК-команды из соответствующего банка
| |
| |I
| |
| |-
| |
| | 1000 || number_of_banks|| style="text-align:left" |Чтение и запись в банки команд IR
| |
| |I
| |
| |-
| |
| | 2000 || number_of_banks || style="text-align:left" |Запись в банк команд IR использую IR-приёмник
| |
| |I
| |
| |-
| |
| | 5000 || 1 || style="text-align:left" |Очистка всех банков ИК-команд
| |
| |I
| |
| |-
| |
| | 5001 || 1 || style="text-align:left" |Запись ИК-команды с ИК-приёмника в Modbus регистры хранения (2000-2509), без сохранения в банк команд
| |
| |I
| |
| |-
| |
| | 5002 || 1 || style="text-align:left" |Воспроизведение ИК-команды из Modbus регистров хранения (2000-2509)
| |
| |I
| |
| |-
| |
| | |
| |}
| |