RS-485: различия между версиями
(не показана 151 промежуточная версия 10 участников) | |||
Строка 1: | Строка 1: | ||
'''RS-485''' | <languages/> | ||
<translate> | |||
<!--T:1--> | |||
__NOTOC__ | |||
== Описание == | |||
[[File:Max number WB RS-485 devices.jpg|thumb|right|300 px|Эксперимент, подтверждающий работу контроллера Wiren Board с 247 периферийными устройствами Wiren Board на одной шине]] | |||
'''RS-485''' — стандарт коммуникации по двухпроводной шине. | |||
<!--T:2--> | |||
Устройства Wiren Board используют шину RS-485 и [[Special:MyLanguage/Протокол Modbus|протокол Modbus]] поверх неё. Ограничения стандартов по количеству устройств на одной шине: | |||
* RS-485 — не более 256 устройств, при этом точное количество зависит от самих устройств; | |||
* протокол Modbus — не более 247 ведомых (slave) устройств. | |||
Контроллер Wiren Board может работать с 247 периферийными устройствами Wiren Board на шине, это было проверено опытным путем. | |||
Скорость передачи данных в периферийных устройствах Wiren Board — до 115200 бит/с. | |||
Длина линии RS-485 по стандарту может быть до 1200 метров. При такой длине линии устройства могут работать на скорости 115200 бит/с. Однако при плохом качестве кабеля, отсутствии экранирования и внешних помехах может понадобиться снизить скорость. | |||
==Как правильно проложить шину== | |||
{{PeerTube | |||
| link= https://peertube.wirenboard.com/video-playlists/embed/6623c76e-1abe-4728-959c-f5dde919d80c?playlistPosition=7 | |||
| playlist = true | |||
| text= Подключение Modbus модулей по RS-485 | |||
}} | |||
<!--T:8--> | |||
В статье [[RS-485:Физическое подключение|RS-485:Физическое подключение]] описано, как правильно проложить шину. | |||
==Добавление устройства в веб-интерфейс== <!--T:9--> | |||
<!--T:10--> | |||
[[File:rs-485-setup-configs.png|thumb|right|300 px|Настройка происходит через страницу ''Configs'' [[RS-485:Настройка через веб-интерфейс|веб-интерфейса]]]] | |||
[[RS-485:Настройка через веб-интерфейс|RS-485:Настройка через веб-интерфейс]] - что сделать для появления устройства в веб-интерфейсе контроллера. | |||
==Как ускорить опрос устройств== | |||
{{PeerTube | |||
| link= https://peertube.wirenboard.com/video-playlists/embed/6623c76e-1abe-4728-959c-f5dde919d80c?playlistPosition=8 | |||
| playlist = true | |||
| text= Как ускорить работу Modbus-устройств (30:19) | |||
}} | |||
Для ускорения опроса устройств по шине RS-485 рекомендуем: | |||
# Проверить [[RS-485:Физическое подключение | физическое подключение]] и отсутствие ошибок. | |||
# [[UART Communication Settings | Увеличить скорость обмена до 115200 бит/с]]. На разумных длинах и топологии сети все должно нормально работать. Если на шине есть устройства, не поддерживающие эту скорость, см. пункт 6. | |||
# [[RS-485:Configuration_via_Web_Interface#Отключение каналов, смена режимов и настройка параметров | Отключить]] через веб-интерфейс в настройках устройства ненужные каналы. | |||
# Если канал не поддерживает события, [[RS-485:Configuration_via_Web_Interface#poll-period | настроить период опроса каналов]]. Точная настройка периода опроса может быть полезна, если какие-то каналы нужно опрашивать часто или наоборот — редко. | |||
# Разделить устройства по типам и портам, в контроллере 2 порта RS-485 и еще 3 можно добавить модулями расширения: | |||
#* Устройства, не поддерживающие скорость 115200, подключите отдельно. | |||
#* Счетчики MAP так же подключите отдельно или с оборудованием, не требующим быстрой реакции. В счетчиках очень много параметров, опрос идет медленно. | |||
#* При большом количестве устройств разделите их на несколько портов. При прочих равных скорость вырастет кратно количеству портов. | |||
Также полезно использовать свежие версии прошивок, поддерживающие [[Fast Modbus | Быстрый Modbus]]⚡. В расширении некоторые Modbus-регистры поддерживают события, которые опрашиваются широковещательными командами без очереди. Это позволяет значительно сократить время опроса изменений в регистрах. | |||
=== | == Работа с портом RS-485 контроллера из собственного ПО == <!--T:11--> | ||
<!--T:12--> | |||
*Стандартно в Wiren Board с подключёнными по RS-485 устройствами работает [[Special:MyLanguage/Драйвер wb-mqtt-serial|Драйвер wb-mqtt-serial]] (ранее ''wb-homa-modbus''). Он позволяет работать с подключёнными устройствами RS-485 через систему [[Special:MyLanguage/MQTT|MQTT]]-сообщений. | |||
*Если вы хотите работать с портом RS-485 напрямую, не используя этот драйвер — отключите его, иначе он будет писать в порт RS-485. | |||
*[[Special:MyLanguage/Работа с последовательным портом из Linux|Работа с последовательным портом из Linux]] | |||
Если вы хотите работать с портом RS-485 | *[[Special:MyLanguage/Доступ к порту RS-485 контроллера Wiren Board с компьютера|Доступ к порту RS-485 контроллера Wiren Board с компьютера]] | ||
*[[Special:MyLanguage/UART_Communication_Settings|Настройка параметров обмена данными по RS-485 для modbus-устройств Wiren Board]] | |||
</translate> | |||
Текущая версия на 20:41, 26 августа 2024
Описание
RS-485 — стандарт коммуникации по двухпроводной шине.
Устройства Wiren Board используют шину RS-485 и протокол Modbus поверх неё. Ограничения стандартов по количеству устройств на одной шине:
- RS-485 — не более 256 устройств, при этом точное количество зависит от самих устройств;
- протокол Modbus — не более 247 ведомых (slave) устройств.
Контроллер Wiren Board может работать с 247 периферийными устройствами Wiren Board на шине, это было проверено опытным путем.
Скорость передачи данных в периферийных устройствах Wiren Board — до 115200 бит/с.
Длина линии RS-485 по стандарту может быть до 1200 метров. При такой длине линии устройства могут работать на скорости 115200 бит/с. Однако при плохом качестве кабеля, отсутствии экранирования и внешних помехах может понадобиться снизить скорость.
Как правильно проложить шину
В статье RS-485:Физическое подключение описано, как правильно проложить шину.
Добавление устройства в веб-интерфейс
RS-485:Настройка через веб-интерфейс - что сделать для появления устройства в веб-интерфейсе контроллера.
Как ускорить опрос устройств
Для ускорения опроса устройств по шине RS-485 рекомендуем:
- Проверить физическое подключение и отсутствие ошибок.
- Увеличить скорость обмена до 115200 бит/с. На разумных длинах и топологии сети все должно нормально работать. Если на шине есть устройства, не поддерживающие эту скорость, см. пункт 6.
- Отключить через веб-интерфейс в настройках устройства ненужные каналы.
- Если канал не поддерживает события, настроить период опроса каналов. Точная настройка периода опроса может быть полезна, если какие-то каналы нужно опрашивать часто или наоборот — редко.
- Разделить устройства по типам и портам, в контроллере 2 порта RS-485 и еще 3 можно добавить модулями расширения:
- Устройства, не поддерживающие скорость 115200, подключите отдельно.
- Счетчики MAP так же подключите отдельно или с оборудованием, не требующим быстрой реакции. В счетчиках очень много параметров, опрос идет медленно.
- При большом количестве устройств разделите их на несколько портов. При прочих равных скорость вырастет кратно количеству портов.
Также полезно использовать свежие версии прошивок, поддерживающие Быстрый Modbus⚡. В расширении некоторые Modbus-регистры поддерживают события, которые опрашиваются широковещательными командами без очереди. Это позволяет значительно сократить время опроса изменений в регистрах.
Работа с портом RS-485 контроллера из собственного ПО
- Стандартно в Wiren Board с подключёнными по RS-485 устройствами работает Драйвер wb-mqtt-serial (ранее wb-homa-modbus). Он позволяет работать с подключёнными устройствами RS-485 через систему MQTT-сообщений.
- Если вы хотите работать с портом RS-485 напрямую, не используя этот драйвер — отключите его, иначе он будет писать в порт RS-485.
- Работа с последовательным портом из Linux
- Доступ к порту RS-485 контроллера Wiren Board с компьютера
- Настройка параметров обмена данными по RS-485 для modbus-устройств Wiren Board