RS-485: различия между версиями

Материал из Wiren Board
Строка 4: Строка 4:


Полный список протестированных устройств: [[Поддерживаемые устройства#Подключаемые по RS-485]].
Полный список протестированных устройств: [[Поддерживаемые устройства#Подключаемые по RS-485]].
 
==Как физически подключить==
<div class="toccolours mw-collapsible mw-collapsed">
Смотрите статью [[RS-485:Физическое подключение]]
 
== Как физически подключить устройства ==
<div class="mw-collapsible-content">
=== Прокладка шины ===
Все устройства RS-485 устанавливаются на одну шину. Хотя шина работает по двум проводам, удобно прокладывать четырёхжильным кабелем - дифпара для данных (сигналы А и В) и ещё пара проводов (GND и +12V) для питания периферийных устройств на шине. Можно использовать обычную витую пару CAT5 для Ethernet - тогда одна пара используется для данных, ещё две — для питания (так как по питанию идёт значительный ток, лучше и для 12В, и для земли использовать по отдельной паре), одна пара остаётся свободной.
 
'''Важно:''' при подключении внешних устройств к Wiren Board по шине RS-485, нужно соединять не только линии передачи данных A и B, но и  '''земли''' (общий провод) контроллера Wiren Board и внешних устройств. Подключение общего провода необходимо в случае подключения к неизолированному порту RS-485 и рекомендуется в случае подключения к гальванически изолированному порту.
Клемма общего провода обозначается, в зависимости от оборудования, как SC, SG, G, GND, ground или reference. На контроллерах Wiren Board эта клемма обозначена как GND. При подключении к изолированному порту, нужно подключаться к изолированной земле данного порта (клеммы "GND iso").
 
При большой длине шины, в конце шины нужно установить терминальный резистор (примерно 150 Ом, подробнее в [https://ru.wikipedia.org/wiki/RS-485#.D0.A1.D0.BE.D0.B3.D0.BB.D0.B0.D1.81.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5 Википедии]).
 
=== Подключение устройств ===
{|align="right"
|-valign="top"
|[[Файл:Подлючение RS-485.jpeg|thumb|200px|Наконечники для шины]]
|[[Файл:Подлючение RS-485 к WB.jpeg|thumb|300px|Подключение шины RS-485 к Wiren Board 4 (в центре)]]
|}
Так как соединение осуществляется общей шиной, следует обратить внимание на качественное соединение всех узлов линии:
*при обрыве линии устройства за обрывом не будут работать
*при коротком замыкании не будут работать все устройства.
 
Рекомендуем использовать [http://www.chipdip.ru/catalog-show/tips/ штыревые наконечники под обжимку]. Это позволяет легко подключать-отключать устройства без потери работоспособности остальных устройств на шине.
 
Провод A на всех устройствах подключается к клеммнику с маркировкой А, провод B - всегда к B. На Wiren Board 4 рядом с клеммниками А и В
расположены клеммники GND и Vout - можно сразу подключить шины питания (сначала проверьте требования к питанию ваших устройств!).
 
Лайфхак: так как внутри Wiren Board стоит растяжка линий, после подключения его к шине напряжение на линии A будет больше чем на B примерно на 0.5 В. Поэтому подключая периферийные устройства вы легко можете определить линии шины вольтметром.
 
=== Дополнительная информация ===
#Дифференциальная линия дает хорошую помехозащищенность. Длина линии до 1200 метров.
#При прокладке шины нужно соблюдать [http://www.gaw.ru/html.cgi/txt/interface/rs485/app.htm определённые правила], но для передачи в одной квартире подойдёт любой кабель и даже возможны ответвления.
</div>
</div>


==Настройка из [[Веб-интерфейс Wiren Board|веб-интерфейса]]==
==Настройка из [[Веб-интерфейс Wiren Board|веб-интерфейса]]==

Версия 17:54, 11 февраля 2016

RS-485 - стандарт коммуникации по двухпроводной шине. К порту RS-485 контроллера Wiren Board можно подключать периферийные устройства.

Какие устройства можно подключать к Wiren Board по RS-485

К контроллеру можно подключать устройства с интерфейсом Modbus нашего производства, счётчики Меркурий и Милур, а также некоторые другие устройства, в том числе работающие по протоколу Modbus.

Полный список протестированных устройств: Поддерживаемые устройства#Подключаемые по RS-485.

Как физически подключить

Смотрите статью RS-485:Физическое подключение

Настройка из веб-интерфейса

  1. Зайдите на страницу Configs, щёлкните по пункту /etc/wb-mqtt-serial.conf (serial - название последовательных портов, RS-485 относится к ним).
    Rs-485-setup-configs.png
  2. Откроется страница настройки последовательных портов. В левой части выберите порт, к которому вы подключили устройство. Порты названы по терминологии Linux - /dev/ttyXXXN; чтобы понять, как называется используемый вами, смотрите #Реализация портов в разных версиях Wiren Board.
    На скриншоте выбран порт Wiren Board 5, подписанный на корпусе как RS-485
  3. Установите настройки порта: скорость (бит/с), количество бит в пакете, есть ли бит чётности, количество стоп-битов - эта информация указана в документации к периферийному оборудованию. Затем обязательно поставьте галочку Enable port - Включить порт (с помощью этой настройки порт можно отключить, если какое-нибудь оборудование на нём начнёт сбоить).
    N.B. Если вы подключаете несколько устройств к одному порту контроллера, эти настройки у них должны совпадать.
    Установлены настройки для релейного WB-MRM2
  4. Перейдите к разделу List of devices - Список устройств ниже. Нажмите кнопку + Serial Device, чтобы добавить устройство. Выберите тип устройства (обычно соответствует модели устройства) и укажите его адрес (обычно указывается документации к устройству, для устройств нашего производства указан на корпусе). Адрес устройства указывается либо в шестнадцатеричном виде (начинается с 0x..), либо в десятичном (как обычное число). Затем обязательно нажмите синюю кнопку Save - Сохранить вверху страницы.
    Выбран тип устройства WB-MRM2 и установлен десятичный адрес 130
  5. Чтобы проверить работу устройства, перейдите на страницу Devices. На ней должен появиться блок, соответствующий подключённому устройству. В нашем примере, появился блок WB-MRM2 130 (шаблон названия - ТИП_УСТРОЙСТВА АДРЕС) с двумя кнопками для управления реле, двумя индикаторами входов для кнопок и счётчиками нажатий. Можно нажать на кнопку - реле на подключённом устройстве переключится.
    Отображение подключённого устройства WB-MRM2 с адресом 130 на странице Devices. Можно нажимать кнопки и управлять реле на устройстве
  6. Чтобы добавить кнопку управления на главную страницу Home и назвать её соответственно назначению (например, Свет в коридоре), нужно создать виджет (Widget). Для этого нужно перейти на страницу Widgets и нажать зелёную кнопку Add widget. Затем нужно ввести параметры виджета: имя (так он называться в интерфейсе), комнату (группу, к которой привязан виджет; используется для упорядочивания, когда виджетов много - если мало, можно выбрать любую), и тип виджета - в нашем случае реле управляет освещением, поэтому выбираем Light Control Relay. После этого появляется ещё одна опция - нужно выбрать, какому именно устройству соответствует виджет. Все доступные устройства выбранного типа показываются в списке, их имена даны в соответствии с терминологией MQTT. В завершении нажимаем кнопку Submit - новый виджет появится на странице Widgets.
    Создание виджета для управления светом на основе Реле 1 подключённого устройства WB-MRM2

Работа с портом RS-485 из собственного ПО

Смотрите инструкцию Драйвер wb-homa-modbus#Конфигурационный файл. Если вы хотите работать с портом RS-485 самостоятельно, не используя Драйвер wb-homa-modbus, то сначала проверьте, что в файле /etc/wb-homa-modbus.conf нет конфигурации для этого порта - иначе стандартный драйвер будет писать в этот порт. Также ознакомьтесь с инструкцией Работа с последовательным портом из Linux. Также смотрите Доступ к RS-485 портам с PC.

Реализация портов в разных версиях Wiren Board

Модель контроллера Название порта в Linux Разъём на контроллере Примечание
Wiren Board 5 /dev/ttyAPP1 Подписан RS-485, клеммники A и B Неизолированный порт, установлен терминатор
/dev/ttyAPP4 Подписан CAN (так как этот же порт может использоваться как CAN) Неизолированный порт, установлен терминатор, мультиплексирован с CAN
Wiren Board 4 /dev/ttyNSC0 Подписан RS-485-ISO Изолированный порт, установлен терминатор
/dev/ttyNSC1 Неизолированный порт, установлен терминатор
Wiren Board NETMON-1 /dev/ttyNSC0 Подпись и8 Полудуплексные порты. Трансиверы подключен к чипу SC16IS752
/dev/ttyNSC1 Подпись и6
Wiren Board Smart Home 3.5 /dev/ttyNSC0 Зелёная пара клеммников
Перемычки терминаторов в Wiren Board Smart Home 3.5
Полудуплексные порты. Трансиверы подключен к чипу SC16IS752.
На плате установлены терминаторы между линиями A и В, их можно отклчить, распаяв перемычки (по умолчанию запаяны) - смотрите фото
/dev/ttyNSC1 Синяя пара клеммников
Wiren Board 2.8 /dev/ttyNSC0 Линии A и B на клеммниках (Есть не во всех комплектациях) Полудуплексный порт. Трансивер подключен к чипу SC16IS752