UART Communication Settings: различия между версиями

 
(не показано 8 промежуточных версий 2 участников)
Строка 16: Строка 16:


=== Настройка ===
=== Настройка ===
{{YouTube
|link= https://www.youtube.com/watch?v=d_olK15Xhkw
|text= Смена скорости устройства через веб-интерфейс (12:59)
|start=779
}}
[[Image: WebUI Change Baud Rate.png |250px|thumb|right| Выбор желаемой скорости обмена в настройках устройства ]]
[[Image: WebUI Change Baud Rate.png |250px|thumb|right| Выбор желаемой скорости обмена в настройках устройства ]]
Увеличим скорость обмена в Modbus-устройствах Wiren Board со значения по умолчанию до 115 200 бит/с:
Увеличим скорость обмена в Modbus-устройствах Wiren Board со значения по умолчанию до 115 200 бит/с:
Строка 22: Строка 27:
# Откройте [[Wiren_Board_Web_Interface | веб-интерфейс]] контроллера и перейдите '''Settings''' → '''Configs''' → '''Serial Device Driver Configuration'''.
# Откройте [[Wiren_Board_Web_Interface | веб-интерфейс]] контроллера и перейдите '''Settings''' → '''Configs''' → '''Serial Device Driver Configuration'''.
# Выберите нужный порт, в параметрах устройства в группе '''General''' поставьте флажок '''Baud rate''' и выберите желаемую скорость обмена: 115 200 бит/с. Скорость порта пока оставьте прежней.
# Выберите нужный порт, в параметрах устройства в группе '''General''' поставьте флажок '''Baud rate''' и выберите желаемую скорость обмена: 115 200 бит/с. Скорость порта пока оставьте прежней.
# Вверху страницы нажмите на кнопку '''Save''', это запишет новое значение скорости в устройство. Но так как порт работает на старой скорости, то устройства отвечать не будут.
# Вверху страницы нажмите на кнопку '''Save''', это запустит запись нового значения скорости в устройство.  
# Как только новое значение будет записано, каналы устройства на вкладке '''Devices''' станут красными. Если вы меняли настройки нескольких устройств, дождитесь, пока они все не «покраснеют». Драйвер пишет новые значения не моментально, а по очереди во все устройства с соблюдением таймаутов. Если на шине много устройств, для надёжности можно подождать 2-3 минуты перед следующим шагом.
# Укажите в настройках порта ту же скорость, которую вы выбрали в настройках устройства: 115 200 бит/с.
# Укажите в настройках порта ту же скорость, которую вы выбрали в настройках устройства: 115 200 бит/с.
# Снова сохраните настройки. Теперь настройки устройства и порта совпадают, устройство должно начать отвечать.
# Снова сохраните настройки. Теперь настройки устройств и порта совпадают, устройства должны начать отвечать.


== Настройка параметров обмена ==
== Настройка параметров обмена ==
Строка 34: Строка 40:
Подготовка:
Подготовка:
# Подключите устройство по [[RS-485 | шине RS-485]] к контроллеру или другому оборудованию, где будете выполнять команды.
# Подключите устройство по [[RS-485 | шине RS-485]] к контроллеру или другому оборудованию, где будете выполнять команды.
# Если вы выполняете команды на контроллере:
# Если вы выполняете команды на контроллере, вместо '''modbus_client''' можно использовать '''modbus_client_rpc''' — вторая утилита не требует остановки драйвера [[wb-mqtt-serial]]. Синтаксис утилит одинаков, просто добавьте <code>_rpc</code> к командам ниже.
#:* откройте консоль контроллера по [[SSH]],
#:* [[Modbus-client#Подготовка к работе | остановите драйвер wb-mqtt-serial]].
# Можно менять настройки устройств.
# Можно менять настройки устройств.


Строка 48: Строка 52:
Теперь изменим скорость порта устройства с 9600 бит/с на 115 200 бит/с, для этого запишем в регистр <code>110</code> новое значение, формат которого можно посмотреть в таблице общих регистров:
Теперь изменим скорость порта устройства с 9600 бит/с на 115 200 бит/с, для этого запишем в регистр <code>110</code> новое значение, формат которого можно посмотреть в таблице общих регистров:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
modbus_client --debug -mrtu -b9600 -pnone -s2 /dev/ttyRS485-1 -a1 -t0x06 -r110 1152
modbus_client --debug -mrtu -b9600 -pnone -s2 /dev/ttyRS485-1 -a12 -t0x06 -r110 1152
</syntaxhighlight>
</syntaxhighlight>


Строка 58: Строка 62:
{{Anchor|unknown-params}}
{{Anchor|unknown-params}}
<!--T:14-->
<!--T:14-->
Если параметры подключения устройства неизвестны можно узнать их выполнив [[Fast_Modbus#Сканирование_устройств_на_шине |сканирование шины]] в веб-интерфейсе контроллера.


Бывает так, что параметры подключения устройства неизвестны, то можно или [[Wiren_Board_Device_Modbus_Address#Восстановление доступа| сбросить их к заводским]], или узнать перебором, для этого загрузите на контроллер скрипт [[Media:Perebor.sh.tar.gz|Perebor.sh.tar.gz]] и выполните его. Если адрес, к которому подключено устройство отличается от <code>/dev/ttyRS485-1</code>, измените его в теле скрипта.
Крайний случай — [[Wiren_Board_Device_Modbus_Address#Восстановление доступа| сбросить настройки к заводским]].
 
Если вы используете старое ПО контроллера, не поддерживающее сканирование, можно узнать настройки перебором, для этого загрузите на контроллер скрипт [[Media:Perebor.sh.tar.gz|Perebor.sh.tar.gz]] и выполните его. Если адрес, к которому подключено устройство отличается от <code>/dev/ttyRS485-1</code>, измените его в теле скрипта.


<!--T:16-->
<!--T:16-->