WB-MIR v2 - Modbus IR Remote Control: различия между версиями

Материал из Wiren Board
(не показано 288 промежуточных версий 14 участников)
Строка 1: Строка 1:
<languages/>
('''В процессе наполнения!''')
{{DISPLAYTITLE:Устройство ИК-управления WB-MIR v.2}}
[[Файл:M-IR front 2.png |200px|thumb|right| Модуль WB-MIR v.2. IR Learn — ИК-приёмник для записи команд]]
'''[https://wirenboard.com/ru/product/WB-MIR/ Купить в интернет-магазине]'''
{{PDF}}
<!--T:1-->
'''Эта страница описывает устройство WB-MIR v.2, которое выпускается с 11.2017. Описание предыдущей модели: [[WB-MIR v1 - Modbus IR Remote Control|WB-MIR v.1]].'''
== Назначение==
[[File:Wbmir_transmitter_mount.png|300px|thumb|right|Пример монтажа ИК-излучателя модуля WB-MIR v.2 на приемнике кондиционера под декоративной крышкой]]
Обучаемый модуль с ИК-приёмопередатчиком для управления по ИК-каналу различными устройствами, включая кондиционеры, телевизоры и т.п.
Управление производится с контроллера или ПК по шине RS-485 командами по протоколу Modbus RTU.
== Меры безопасности ==
{{Wbincludes:Safety|low_voltage=true}}


== Технические характеристики == <!--T:7-->
 
{| class="wikitable"
[[File:WB-MIR-sample.png |300px|thumb|right| Модуль WB-MIR]]
! style="text-align: center;" | Параметр
[[File:Wb-MIR-sample_internals.png |300px|thumb|right| Внутренее устройство модуля. Видны подписи контактов на разъёмах]]
! style="text-align: center;" | Значение
 
Обучаемый модуль управления по ИК-каналу для различных устройств, включая кондиционеры.
Управление модулем производится с контроллера или ПК по шине RS-485 командами по протоколу MODBUS.
 
==== Технические характеристики ====
 
* Диапазон измерения температуры: –40 ÷ +80 °С
* Диапазон измерения влажности: 0-99.9% RH (рабочий диапазон: 0-98% RH)
* Параметры измерения температуры: разрешение: 0.1°С, повторяемость +/- 0.2°С, дрейф +/- 0.1°С/год.  Максимальная погрешность во всём диапазоне температур: +/- 0.5°С, в диапазоне 0 - 70C: +/- 0.3°С
* Параметры измерения влажности:  разрешение: 0.1% RH, погрешность +/- 3% RH, повторяемость +/- 1% RH
* Диапазон измерения уровня шума (звукового давления): 40-82dB
* Диапазон измерения уровня освещённости: 10-10000 lux
* Диапазон измерения CO2: 0-2000 ppm
* Возможность подключения до двух внешних аналоговых датчиков или цифровых датчиков температуры.
* Коммуникационный протокол Modbus RTU
* Способ подключения – разъёмные винтовые клеммные зажимы
* Напряжение питания: 9-24В  постоянного тока
* Габариты: 65*46*29 mm (для WB-MS)
* Отверстия для крепления
* Возможность установки на DIN-рейку
* Возможность подключения до двух дополнительных цифровых датчиков температуры (опция)
* Возможность подключения внешнего IR-приёмопередатчика для управления бытовой техникой и кондиционерами (опция)
 
==== Условия эксплуатации: ====
 
* Температура воздуха от -40°С до +80°С;
* Относительная влажность воздуха до 98%,без конденсата влаги.
 
==== Модификации ====
 
Характеристики кодируются в артикуле, по следующей схеме:
 
{| border="1" cellpadding="3" cellspacing="0"
!Обозначение
!Поддерживаемая функция
|-
|-
! colspan="2" |Питание
 
| TH || измерение температуры и влажности
|-
|-
|Напряжение питания
| T || измерение температуры
|9 — 28 В постоянного тока
|-
|-
|Потребляемая мощность
| L || измерение освещённости
|
0.1 Вт
|-
|-
|Дальнодействие передатчика
| S || измерение уровня звукового давления
|< 1 м
|-
|-
| Внешние датчики
| C || измерение концентрации CO2
| Можно подключить цифровой датчик температуры DS18B20.
|-
|-
! colspan="2" | ИК-команды
| I || возможность подключение внешнего IR-приёмопередатчика (в комплекте)
|-
|-
| Частота передатчика
| D || возможность подключение внешних датчиков температуры (в комплекте)
| 38 кГц
|-
|-
|Количество запоминаемых команд
|}
| 80
 
Примеры:
 
{| border="1" cellpadding="3" cellspacing="0"
!Маркировка
!Описание
|-
|-
|Длительность команд
 
| Максимальная длина команды — до 1000 символов (508 символов до прошивки 4.22.0).
| WB-MS-THLS || измерение температуры, влажности, освещённости и уровня звукового давления
Каждый регистр кодирует длительность высокого или низкого уровня сигнала (последовательно) в микросекундах.
|-
|-
{{Wbincludes:Control}}
| WB-MS-TH || измерение температуры и влажности
{{Wbincludes:Operating conditions}}
{{Wbincludes:Klemmy. Input}}
! colspan="2" | Габариты
|-
|-
| Д x Ш x В
| WB-MS-T || измерение температуры
|
|-
40x15x11 мм; длина разъема кабеля передатчика добавляет +30 мм к ширине корпуса
| WB-MS-ID || без встроенных датчиков, с внешними IR-приёмопередатчиком и датчиками температуры
|-
|-
{{Wbincludes:Weight}} 25 г
 
|}
|}


== Общий принцип работы ==
==== Порядок подключения ====
Записываете управляющий сигнал с пульта дистанционного управления устройством (ПДУ) в память модуля и потом воспроизво&#x301;дите его.


Для записи сигнала направьте ПДУ на ИК-приёмник модуля, который подписан как '''IR learn'''. Для передачи управляющего сигнала, подключите к входу '''IR out''' (3.5мм) внешний ИК-передатчик, который нужно разместить на ИК-приёмнике управляемого устройства.
В процессе наполнения.


К входу '''1W''' можно подключить внешний датчик температуры [https://wirenboard.com/product/1wire-DS18B20/ DS18B20] или [[#Режим работы цифрового входа |изменить режим входа]] и использовать его как счётный вход. Сигнал с датчика удобно использовать для контроля за состоянием управляемых устройств с помощью правил [[wb-rules]] или сценариев [[Node-Red]]. Например, можно настроить включение/отключение кондиционера в зависимости от температуры с датчика DS18B20.
== Управление ==


Подробнее о записи и воспроизведении сигналов читайте в статье [[WB-MSx_Consumer_IR_Manual|Инструкция по работе с ИК-приёмопередатчиком]].
=== Параметры RS-485 ===
Скорость 9600 бит/сек, данных - 8 бит, бит чётности – нет, стоповых бит - 2.


==Монтаж== <!--T:6-->
В датчиках с версией прошивки 3.1.0 и позднее эти настройки можно изменить - смотрите таблицу регистров Modbus.
[[Image: WM-MIR_1wire.png |250px|thumb|right| Подключение датчика DS18B20 и датчика с выходом «сухой контакт»]]
Модуль устанавливается рядом или внутри корпуса управляемого устройства, например, кондиционера. Если планируется дальнейшее обучение или переобучение WB-MIR v.2, то расположите модуль в доступном месте. ИК-передатчик, вынесенный на проводе длиной ~140 см, крепится рядом с ИК-приемником управляемого устройства на двусторонний скотч (в комплекте). Не загораживайте ИК-приемник устройства полностью, чтобы сохранить управление с пульта. Проверьте устойчивую передачу ИК-команд.


{{Wbincludes:Mount "V+ GND A B"}}
=== Команды Modbus, поддерживаемые устройством ===


Внешний датчик температуры [[1-Wire | DS18B20]] подключается к WB-MIR v.2 по паразитной схеме питания, когда выводы датчика +5В и GND объединены и подключены к клемме GND, вывод данных подключается к клемме 1W.
{| border="1" class="wikitable" style="text-align:center"
 
!Command
Также ко входу 1-Wire можно подключить датчик с выходом типа «сухой контакт». При подключении такого датчика нужно переключить режим [[#Режим работы цифрового входа | работы входа]] 1-Wire на «дискретный».
!Dec
 
!Hex
==Представление в веб-интерфейсе контроллера Wiren Board==
 
=== Выбор шаблона ===
{{WebUIAddDevice
| template=WB-MIR v.2
}}
=== Управление устройством и просмотр значений ===
{{Wbincludes:WebUIControlDevice}}
 
<!--T:22-->
Рассмотрим основные органы управления WB-MIR v.2 и их назначение.
 
<!--T:23-->
{| class="wikitable"
! Название элемента управления
!Назначение
|-
|-
|Input Voltage||Напряжение питания модуля
|READ_COIL || 1 || 0x01
|-
|-
|Learn to RAM||Запись ИК-сигнала в оперативный буфер (см. раздел [[#Оперативный режим|Оперативный режим]]). Для обучения контрол переводится в положение ON, после обучения — OFF. 
|READ_HOLDING_REGISTERS || 3 || 0x03
|-
|-
|Play from RAM||Воспроизведение ИК-сигнала из оперативного буфера (см. раздел [[#Оперативный режим|Оперативный режим]]).
|WRITE_SINGLE_COIL || 5 || 0x05
|-
|-
|Learn to ROMx||Запись ИК-сигнала в соответствующую ячейку ПЗУ (см. раздел [[#Постоянный режим|Постоянный режим]]). Для обучения контрол переводится в положение ON, после обучения — OFF.
|WRITE_SINGLE_REGISTER || 6 || 0x06
|-
|-
|Play from ROMx||Воспроизведение ИК-сигнала из соответствующей ячейки ПЗУ (см. раздел [[#Постоянный режим|Постоянный режим]]). Для обучения контрол переводится в положение ON, после обучения — OFF.
|WRITE_MULTI_COILS || 15 || 0x0F
|-
|-
|ROMx -> RAM||Копирование данных из соответствующей ячейки ПЗУ в оперативный буфер для редактирования (см. раздел [[#Постоянный режим|Постоянный режим]]). Для редактирования контрол переводится в положение ON, после редактирования — OFF.
|WRITE_MULTI_REGISTERS || 16 || 0x10
|-
|Internal/External Temperature Sensor||Температура внутреннего/внешнего цифрового датчика. Если датчик отсутствует или неисправен, его название выделяется красным цветом.
|-
|Serial NO||Серийный номер модуля WB-MIR может потребоваться при обращении в техподдержку.
|-
|Reset all ROM||Сброс содержимого всех ячеек памяти. '''Будьте внимательны, очистка ПЗУ будет выполнена без запроса на подтверждение!'''
|-
|-
|}
|}
[[File:WB-MIR-2-WEB_Cut.png|1039px|thumb|center|Веб-интерфейс WB-MIR v.2]]
== Настройка ==
{{Wbincludes:WebUIDeviceSetUp}}


=== Обучение и использование модуля === <!--T:8-->
=== Функции===


<!--T:9-->
'''Смена адреса''' производится широковещательный (slave_id 0) командой записи (WRITE_SINGLE_REGISTER) в holding register с адресом 128 (0x80).
ИК-приемник для обучения расположен прямо под красным круглым окном на корпусе модуля, подписанным “IR learn”


Подробное описание и использование WB-MIR v.2 приведены в разделе [[WB-MSx_Consumer_IR_Manual|Инструкция по работе с ИК-приёмопередатчиком в устройствах WB-MS, WB-MSW, WB-MIR]].
По адресу 200 лежит '''сигнатура''' длинной 6 байт. Сигнатура уникальна для каждой модели устройства и позволяет идентифицировать модель.
Для получения сигнатуры нужно выполнить READ_HOLDING_REGISTERS адрес 200 длина 6. 
Запись в эту область памяти не поддерживается, при попытки записи в недопустимое место возвращается ошибка 3.


=== Режим работы цифрового входа === <!--T:8-->
==== Инфракрасный приёмопередатчик ====
[[Image: WB-MIR v.2 WebUI Config.png |350px|thumb|right| Выбор режима для входа W1 в веб-интерфейсе контроллера Wiren Board {{SupportedSinceRelease|release=wb-2110|nobanner=true}}]]
('''только в модификации I''')
Вход '''1W''' устройства можно сконфигурировать как счётный вход, для этого нужно изменить режим в параметре '''Inpit x'''.


{{Wbincludes:1-Wire DI mode}}
[[WB-MSx_Consumer_IR_Manual|Инструкция по работе с ИК-приёмопередатчиком]]


{{Wbincludes:Modbus|s_tolerance=true}}
=== Карта регистров хранения (Holding Registers)===


===Расширение Быстрый Modbus===
В процессе наполнения.
{{note|note| Начиная с версии прошивки '''4.23.0''' устройство поддерживает расширение Быстрый Modbus.}}


{{Wbincludes:Fast Modbus Description}}
{|  border="1" class="wikitable" style="text-align:center"
!Регистр/ адрес
!тип
!чтение/ запись
!значение по умолчанию
!формат
!назначение
!к каким модификациям датчика применимо
|-


=== Карта регистров ===
| 0 || input || R || 0x7FFF ||°C × 10 (signed)||Температура с встроенного датчика
|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
|
|-


[[WB-MIR v2 Registers| '''Карта регистров модуля WB-MIR v.2''']]
|||||||||||
|
|-
|||||||||||
|
|-
|||||||||||
|
|-
|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)===
{{Modbus Device Firmware Update
| new-fw=true
| fw-version=4.18.10
| MS=true
| old=true
|changelog=WB-MSW v.3: Changelog}}


==Известные неисправности==
[[WB-MIR v2: Errata | Аппаратные ошибки/особенности WB-MIR v.2]], найденные при эксплуатации устройства.


== Ревизии устройства ==
{|  border="1" class="wikitable" style="text-align:center"
[[WB-MIR_v2_-_Modbus_IR_Remote_Control_Revisions | Список ревизий]]
!Начальный адрес || Количество || Назначение
!В модификациях
|-
| 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
|-


== Изображения и чертежи устройства == <!--T:29-->
|}
 
{{Wbincludes:CDR lib}}
 
'''SVG:''' [[File:WB-MIR.svg.zip]]
 
'''Autocad 2013 DXF:''' [[File:WB-MIR.dxf.zip]]
 
'''Autocad PDF:''' [[File:WB-MIR.pdf]]
 
{{Wbincludes: AutoCAD_base}}

Версия 15:18, 19 апреля 2017

(В процессе наполнения!)


Модуль WB-MIR
Внутренее устройство модуля. Видны подписи контактов на разъёмах

Обучаемый модуль управления по ИК-каналу для различных устройств, включая кондиционеры. Управление модулем производится с контроллера или ПК по шине RS-485 командами по протоколу MODBUS.

Технические характеристики

  • Диапазон измерения температуры: –40 ÷ +80 °С
  • Диапазон измерения влажности: 0-99.9% RH (рабочий диапазон: 0-98% RH)
  • Параметры измерения температуры: разрешение: 0.1°С, повторяемость +/- 0.2°С, дрейф +/- 0.1°С/год. Максимальная погрешность во всём диапазоне температур: +/- 0.5°С, в диапазоне 0 - 70C: +/- 0.3°С
  • Параметры измерения влажности: разрешение: 0.1% RH, погрешность +/- 3% RH, повторяемость +/- 1% RH
  • Диапазон измерения уровня шума (звукового давления): 40-82dB
  • Диапазон измерения уровня освещённости: 10-10000 lux
  • Диапазон измерения CO2: 0-2000 ppm
  • Возможность подключения до двух внешних аналоговых датчиков или цифровых датчиков температуры.
  • Коммуникационный протокол Modbus RTU
  • Способ подключения – разъёмные винтовые клеммные зажимы
  • Напряжение питания: 9-24В постоянного тока
  • Габариты: 65*46*29 mm (для WB-MS)
  • Отверстия для крепления
  • Возможность установки на DIN-рейку
  • Возможность подключения до двух дополнительных цифровых датчиков температуры (опция)
  • Возможность подключения внешнего IR-приёмопередатчика для управления бытовой техникой и кондиционерами (опция)

Условия эксплуатации:

  • Температура воздуха от -40°С до +80°С;
  • Относительная влажность воздуха до 98%,без конденсата влаги.

Модификации

Характеристики кодируются в артикуле, по следующей схеме:

Обозначение Поддерживаемая функция
TH измерение температуры и влажности
T измерение температуры
L измерение освещённости
S измерение уровня звукового давления
C измерение концентрации CO2
I возможность подключение внешнего IR-приёмопередатчика (в комплекте)
D возможность подключение внешних датчиков температуры (в комплекте)

Примеры:

Маркировка Описание
WB-MS-THLS измерение температуры, влажности, освещённости и уровня звукового давления
WB-MS-TH измерение температуры и влажности
WB-MS-T измерение температуры
WB-MS-ID без встроенных датчиков, с внешними IR-приёмопередатчиком и датчиками температуры

Порядок подключения

В процессе наполнения.

Управление

Параметры RS-485

Скорость 9600 бит/сек, данных - 8 бит, бит чётности – нет, стоповых бит - 2.

В датчиках с версией прошивки 3.1.0 и позднее эти настройки можно изменить - смотрите таблицу регистров Modbus.

Команды Modbus, поддерживаемые устройством

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

Функции

Смена адреса производится широковещательный (slave_id 0) командой записи (WRITE_SINGLE_REGISTER) в holding register с адресом 128 (0x80).

По адресу 200 лежит сигнатура длинной 6 байт. Сигнатура уникальна для каждой модели устройства и позволяет идентифицировать модель. Для получения сигнатуры нужно выполнить READ_HOLDING_REGISTERS адрес 200 длина 6. Запись в эту область памяти не поддерживается, при попытки записи в недопустимое место возвращается ошибка 3.

Инфракрасный приёмопередатчик

(только в модификации I)

Инструкция по работе с ИК-приёмопередатчиком

Карта регистров хранения (Holding Registers)

В процессе наполнения.

Регистр/ адрес тип чтение/ запись значение по умолчанию формат назначение к каким модификациям датчика применимо
0 input R 0x7FFF °C × 10 (signed) Температура с встроенного датчика T
1 input R 0xFFFF

%RH × 10 (signed)

Относительная влажность с встроенного датчика H
2 input R - lux Освещённость с встроенного датчика L
3 input R - dB Уровень шума S
4 input R - - -
5 input R - - -
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 Время усреднения освещённости

L

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)

Начальный адрес Количество Назначение В модификациях
0 number_of_banks Воспроизведение ИК-команды из соответствующего банка I
1000 number_of_banks Чтение и запись в банки команд IR I
2000 number_of_banks Запись в банк команд IR использую IR-приёмник I
5000 1 Очистка всех банков ИК-команд I
5001 1 Запись ИК-команды с ИК-приёмника в Modbus регистры хранения (2000-2509), без сохранения в банк команд I
5002 1 Воспроизведение ИК-команды из Modbus регистров хранения (2000-2509) I