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

Нет описания правки
Строка 7: Строка 7:


== Входы ==
== Входы ==
Питание модуля подается на винтовые зажимы V+ и GND, линия RS-485 подключается к входам A и B. Внешний датчик температуры DS18B20 подключается по паразитной схеме питания, когда выводы +5В и GND объединены и подключены к клемме GND, вывод данных подключается к зажиму 1-W (см. рисунок "Модуль WB-MIR").  
Питание модуля подается на винтовые зажимы V+ и GND, линия RS-485 подключается к входам A и B. Внешний датчик температуры DS18B20 подключается по паразитной схеме питания, когда выводы +5В и GND объединены и подключены к клемме GND, вывод данных подключается к зажиму 1-W.  
В некоторых моделях присутствует внутренний датчик температуры DS18B20 в корпусе TO-92, распаянный в верхней левой части платы модуля (на фоотографии представлен модуль без датчика — позиция корпуса датчика нанесена в этом месте платы шелкографией).
D некоторых моделях присутствует внутренний датчик температуры DS18B20 в корпусе TO-92, распаянный в верхней левой части платы модуля (вид сверху корпуса датчика нанесен в этом месте шелкографией).


==Монтаж==
==Монтаж==
Строка 21: Строка 21:
|-
|-
|Напряжение питания
|Напряжение питания
|12 — 24 В постоянного тока
|9 — 24 В постоянного тока
|-
|-
|Потребляемая мощность
|Потребляемая мощность
|
|
0,1 Вт в холостом режиме, 0,2 Вт при передаче ИК-команд  
0,1 Вт в холостом режиме, 0,1 Вт при передаче ИК-команд  
|-
|-
|Дальнодействие передатчика
|Дальнодействие передатчика
Строка 31: Строка 31:
|-
|-
| Внешние датчики
| Внешние датчики
| Возможность подключения внешнего цифрового датчика температуры DS18B20 (диапазон измерения от -55°С до +125°C)
| Возможность подключения цифрового датчика температуры DS18B20.
|-
| Внутренний датчик
| На плате может быть распаян датчик температуры DS18B20 в корпусе TO-92 (диапазон измерения от -40°С до +80°С).
|-
|-
! colspan="2" |Управление
! colspan="2" |Управление
Строка 63: Строка 60:
! colspan="2" |Условия эксплуатации
! colspan="2" |Условия эксплуатации
|-
|-
| Температура окружающей среды
| Температура воздуха
| -40°С до +80°С
| -40°С до +80°С
|-
|-
| Относительная влажность воздуха
| Относительная влажность воздуха
| до 98%,без конденсации влаги
| до 98%,без конденсата влаги
|}
|}


== Обучение и использование модуля ==
== Обучение и использование модуля ==


Подробное описание обучения и использования модуля WB-MIR, а также карта регистров описаны в разделе [[WB-MSx_Consumer_IR_Manual|Инструкция по работе с ИК-приёмопередатчиком в устройствах WB-MS, WB-MSW, WB-MIR]].
Подробное описание и использования модуля, а также карта регистров, описаны в разделе [[WB-MSx_Consumer_IR_Manual|Инструкция по работе с ИК-приёмопередатчиком в устройствах WB-MS, WB-MSW, WB-MIR]].


== Дополнительные Функции==
== Дополнительные Функции==


'''Смена адреса''' производится широковещательной (slave_id 0) командой записи (WRITE_SINGLE_REGISTER) в holding register с адресом 128 (0x80).
'''Смена адреса''' производится широковещательный (slave_id 0) командой записи (WRITE_SINGLE_REGISTER) в holding register с адресом 128 (0x80).
 
По адресу 200 лежит '''сигнатура''' длинной 6 байт. Сигнатура уникальна для каждой модели устройства и позволяет идентифицировать модель.
Для получения сигнатуры нужно выполнить READ_HOLDING_REGISTERS адрес 200 длина 6. 
Запись в эту область памяти не поддерживается, при попытки записи в недопустимое место возвращается ошибка 3.


== Карты Modbus-регистров ==
== Карты регистров ==


Подробно описаны в разделе [[WB-MSx_Consumer_IR_Manual|Инструкция по работе с ИК-приёмопередатчиком в устройствах WB-MS, WB-MSW, WB-MIR]].
Подробно описаны в разделе [[WB-MSx_Consumer_IR_Manual|Инструкция по работе с ИК-приёмопередатчиком в устройствах WB-MS, WB-MSW, WB-MIR]].
Строка 107: Строка 108:




На примере полнофункционального шаблона модуля рассмотрим основные элементы индикации и управления модулем, а также их назначение.
На примере полнофункционального модуля рассмотрим основные органы управления модулем и их назначение.
{| class="wikitable"
{| class="wikitable"
! Название элемента управления
! Название элемента управления
Строка 114: Строка 115:
|Input Voltage||Напряжение питания модуля
|Input Voltage||Напряжение питания модуля
|-
|-
|Learn to RAM||Запись ИК-сигнала в оперативный буфер (см. раздел [[WB-MSx_Consumer_IR_Manual#Оперативный режим|Оперативный режим]]). Для обучения контрол переводится в положение ON, после обучения — OFF.   
|Learn to RAM||Запись ИК-сигнала в оперативный буфер (см. раздел [[#Оперативный режим|Оперативный режим]]). Для обучения контрол переводится в положение ON, после обучения — OFF.   
|-
|-
|Play from RAM||Воспроизведение ИК-сигнала из оперативного буфера (см. раздел [[WB-MSx_Consumer_IR_Manual#Оперативный режим|Оперативный режим]]).
|Play from RAM||Воспроизведение ИК-сигнала из оперативного буфера (см. раздел [[#Оперативный режим|Оперативный режим]]).
|-
|-
|Learn to ROMx||Запись ИК-сигнала в соотв. ячейку ПЗУ (см. раздел [[WB-MSx_Consumer_IR_Manual#Постоянный режим|Постоянный режим]]). Для обучения контрол переводится в положение ON, после обучения — OFF.
|Learn to ROMx||Запись ИК-сигнала в соотв. ячейку ПЗУ (см. раздел [[#Постоянный режим|Постоянный режим]]). Для обучения контрол переводится в положение ON, после обучения — OFF.
|-
|-
|Play from ROMx||Воспроизведение ИК-сигнала из соотв. ячейки ПЗУ (см. раздел [[WB-MSx_Consumer_IR_Manual#Постоянный режим|Постоянный режим]]). Для обучения контрол переводится в положение ON, после обучения — OFF.
|Play from ROMx||Воспроизведение ИК-сигнала из соотв. ячейки ПЗУ (см. раздел [[#Постоянный режим|Постоянный режим]]). Для обучения контрол переводится в положение ON, после обучения — OFF.
|-
|-
|ROMx -> RAM||Копирование данных из соотв. ячейки ПЗУ в оперативный буфер для редактирования (см. раздел [[WB-MSx_Consumer_IR_Manual#Постоянный режим|Постоянный режим]]). Для редактирования контрол переводится в положение ON, после редактирования — OFF.
|ROMx -> RAM||Копирование данных из соотв. ячейки ПЗУ в оперативный буфер для редактирования (см. раздел [[#Постоянный режим|Постоянный режим]]). Для редактирования контрол переводится в положение ON, после редактирования — OFF.
|-
|-
|Internal/External Temperature Sensor||Температура внутреннего/внешнего цифрового датчика. Если датчик отсутствует или неисправен, его название выделяется красным цветом.
|Internal/External Temperature Sensor||Температура внутреннего/внешнего цифрового датчика. Если датчик отсутствует или неисправен, его название выделяется красным цветом.
Строка 128: Строка 129:
|Serial NO||Серийный номер модуля WB-MIR, может потребоваться при обращении в техподдержку.
|Serial NO||Серийный номер модуля WB-MIR, может потребоваться при обращении в техподдержку.
|-
|-
|Reset all ROM||Сброс содержимого всех постоянных ячеек памяти. '''Будьте внимательны, очистка ПЗУ будет выполнена без запроса на подтверждение!'''
|Reset all ROM||Сброс содержимого всех ячеек памяти. '''Будьте внимательны, очистка ПЗУ будет выполнена без запроса на подтверждение!'''
|-
|-
|}
|}
== Управление модулем из командной строки ==
Программное обеспечение контроллера Wiren Board включает в себя утилиту modbus_client для работы с устройствами, подключенными к выходам RS-485, по протоколу Modbus, подробное описание команды находится на странице [[Modbus-client]]. Доступ к командной строке описан в статье [[SSH]].
=== Пример чтения регистров ===
Проверим, верно ли, что мы подключились именно к модулю нужного типа. (Модуль wb-mqtt-serial должен быть предварительно остановлен). По адресу 200 хранится уникальная сигнатура длиной в 6 регистров. Прочтем 6 регистров, начиная с адреса 200, и преобразуем полученный ответ из шестнадцатеричных цифр в символьную строку:
<syntaxhighlight lang="bash">echo  -e `modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 \
-a1 -t0x03 -r200 -c 6 | \
grep Data | sed -e 's/0x00/\\\x/g' -e 's/Data://' -e 's/\s//g'` </syntaxhighlight>
В результате выполнения команды получаем строку, например '''WBMIR'''. В этом примере модуль WB-MIR имеет Modbus-адрес 1.
=== Перезагрузка ===
В ряде случаев может потребоваться перезагрузка модуля. Для этого в регистр 120 (0x78) необходимо записать любое значение, отличное от нуля:
<syntaxhighlight lang="bash">
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a1 -t0x06 -r0x78 100
</syntaxhighlight>
Такая перезагрузка равносильна сбросу по питанию и изменению адреса устройства на 0x01. Предварительно, конечно, необходимо остановить сервис wb-mqtt-serial. Перезагрузку лучше делать с одним устройством на шине.
5813

правок