wb_editors
906
правок
Brainroot (обсуждение | вклад) (Поправил) |
Brainroot (обсуждение | вклад) (Соберу сюда все примеры чтения строк и параметров) |
||
Строка 28: | Строка 28: | ||
== Управление устройствами из командной строки == <!--T:10--> | == Управление устройствами из командной строки == <!--T:10--> | ||
Программное обеспечение контроллера Wiren Board включает в себя утилиту modbus_client для работы с устройствами, подключенными к выходам RS-485, по протоколу Modbus, подробное описание команды находится на странице [[Modbus-client]]. Доступ к командной строке описан в статье [[SSH]]. | Программное обеспечение контроллера Wiren Board включает в себя утилиту modbus_client для работы с устройствами, подключенными к выходам RS-485, по протоколу Modbus, подробное описание команды находится на странице [[Modbus-client]]. Доступ к командной строке описан в статье [[SSH]]. | ||
Таблица [[Common_Modbus_Registers | Общие регистры устройств WB]] содержит одинаковые для всех устройств производства компании ''Wirenboard'' регистры. | |||
=== Пример чтения модели устройства === <!--T:11--> | === Пример чтения модели устройства === <!--T:11--> | ||
Строка 45: | Строка 46: | ||
В результате выполнения команды получаем строку, например '''WBMS'''. Модуль WB-MS в примере имеет Modbus-адрес 189. | В результате выполнения команды получаем строку, например '''WBMS'''. Модуль WB-MS в примере имеет Modbus-адрес 189. | ||
</translate> | </translate> | ||
=== Пример чтения версии прошивки === | |||
wb-mqtt-serial должен быть предварительно остановлен. По адресу 250 хранится null-termitated строка максимальнойдлиной в 16 регистров. Прочтем 16 регистров, начиная с адреса 250, и преобразуем полученный шестнадцатеричный ответ в символьную строку: | |||
<!--T:12--> | |||
<syntaxhighlight lang="bash"> | |||
export DEV_PORT=/dev/ttyRS485-1 #Correct this! | |||
export DEV_ADDR=189 #Correct this! | |||
echo -e `modbus_client --debug -mrtu -pnone -s2 $DEV_PORT \ | |||
-a$DEV_ADDR -t0x03 -r250 -c 16 | \ | |||
grep Data | sed -e 's/0x00/\\\x/g' -e 's/Data://' -e 's/\s//g'` </syntaxhighlight> | |||
<!--T:13--> | |||
В результате выполнения команды получаем строку, например '''1.3.1'''. Модуль в примере имеет Modbus-адрес 189. |