2482
правки
Admin (обсуждение | вклад) |
Admin (обсуждение | вклад) |
||
Строка 78: | Строка 78: | ||
== Примеры использования с оборудованием Wiren Board == <!--T:15--> | == Примеры использования с оборудованием Wiren Board == <!--T:15--> | ||
===Проверка подключения к устройству и считывание адреса=== | |||
<!--T:21--> | |||
Все устройства Wiren Board с протоколом Modbus RTU хранят адрес в регистре 0x80, поэтому для проверки подключения удобно считывать именно его. | |||
Читаем содержимое регистра 0x80 с устройства с адреса 2 с помощью функции 0x03 (Read Holding Registers): | |||
<!--T:22--> | |||
<syntaxhighlight lang="bash">modbus_client --debug -mrtu -pnone -s2 /dev/ttyRS485-1 -a2 -t0x03 -r0x80</syntaxhighlight> | |||
Ответ: | |||
<syntaxhighlight lang="bash">Opening /dev/ttyRS485-1 at 9600 bauds (N, 8, 2) | |||
[02][03][00][80][00][01][85][D1] | |||
Waiting for a confirmation... | |||
<02><03><02><00><02><7D><85> | |||
SUCCESS: read 1 of elements: | |||
Data: 0x0002</syntaxhighlight> | |||
===Запись нового адреса=== | |||
<!--T:17--> | <!--T:17--> | ||
Записываем новый адреса устройства в регистр 0x80, используя функцию 0x06 (Write Single Register): | |||
<!--T:18--> | <!--T:18--> | ||
Строка 101: | Строка 119: | ||
Здесь не указан адрес, который нужно задать устройству и устройство получит неизвестный адрес. Для исправления, нужно обратиться к устройству по специальному адресу 0x00 (см. первую команду). | Здесь не указан адрес, который нужно задать устройству и устройство получит неизвестный адрес. Для исправления, нужно обратиться к устройству по специальному адресу 0x00 (см. первую команду). | ||
<!--T:23--> | <!--T:23--> |