|
|
Строка 23: |
Строка 23: |
|
| |
|
| == Параметры подключения == | | == Параметры подключения == |
| === Параметры порта ===
| | {{Wbincludes:RS485 Dooya Connection parameters}} |
| {{RS485ConnectionParameters | |
| | baud_rate=9600
| |
| | parity=None
| |
| | data_bits=8
| |
| | stop_bits=1
| |
| }} | |
| === Адрес устройства ===
| |
| [[Image: Akko setting address.png |400px|thumb|right| Пример установки адреса электромотора. Красные скобки — введённая команда, зелёные — ответ электромотора]]
| |
| | |
| После того как вы физически подключили электромотор к контроллеру, задайте ему адрес.
| |
| | |
| Адрес задаётся путем записи в микроконтроллер электромотора специальной команды в шестнадцатеричном виде.
| |
| | |
| Например, зададим адрес 1 для шторы, расположенной в зоне 1, для этого запишем команду
| |
| # Откройте консоль контроллера по [[SSH]].
| |
| # [[Wb-mqtt-serial driver#Управление драйвером | Остановите драйвер wb-mqtt-serial]] или иное ПО, которое опрашивает устройство.
| |
| # Переведите электромотор в режим программирования, для этого зажмите кнопку в торце корпуса в течение 5 секунд, индикатор должен моргнуть два раза.
| |
| # Подключитесь к электромотору с помощью serial_tool, для этого выполните команду:
| |
| #:<syntaxhighlight lang="bash">
| |
| serial_tool -b 9600 -p N -d 8 -s 1 -t 1 /dev/ttyRS485-2
| |
| </syntaxhighlight>
| |
| #: где /dev/ttyRS485-2 — порт, к которому подключено устройство.
| |
| # Введите команду
| |
| #:<syntaxhighlight lang="bash">
| |
| 55 00 00 02 00 02 01 01 9D 58
| |
| </syntaxhighlight>
| |
| #:Расшифровка команды:
| |
| #:<syntaxhighlight lang="bash">
| |
| 55 - стартовый байт
| |
| 00 - широковещательный байт для всех зон
| |
| 00 - широковещательный байт для всех штор в зоне
| |
| 02 - байт записи команды
| |
| 00 - data adress
| |
| 02 - data length длина команды
| |
| 01 - новый номер шторы
| |
| 01 - новый номер зоны
| |
| 9D 58 - CRC - Для каждой команды CRC высчитывается индивидуально
| |
| </syntaxhighlight>
| |
| | |
| Если мы всё сделали верно, то в консоли получим ответ от электромотора, обозначенный зелёными скобочками <code><<</code>.
| |
| [[Image: Akko_Dooya_Calc_CRC.png |400px|thumb|right| Расчёт контрольной суммы команды на сервисе [https://crccalc.com crccalc.com]. Результат нужно перевернуть]]
| |
| | |
| Рассчитать контрольную сумму команды можно с помощью сервиса [https://crccalc.com crccalc.com]:
| |
| # Перейдите на страницу сервиса.
| |
| # Введите в поле ввода сформированную команду без пробелов. В нашем случае это <code>5500000200020101</code>.
| |
| # Установите переключатели '''Input type''' и '''Output type''' в положение '''Hex'''.
| |
| # Нажмите кнопку '''Calc CRC-16'''.
| |
| # Результат будет в строке '''CRC-16/MODBUS''', столбец '''Result'''. В нашем случае это будет <code>0x589D</code>.
| |
| # Откиньте <code>0x</code>, добавьте пробел между парами поменяйте их местами, получится <code>9D 58</code>.
| |
| # Запишите полученную контрольную сумму в конец команды.
| |
|
| |
|
| == Представление в веб-интерфейсе == | | == Представление в веб-интерфейсе == |