Доступ к порту RS-485 контроллера Wiren Board с компьютера: различия между версиями
Ivan4th (обсуждение | вклад) (Новая страница: «'''Внимание!''' Данные инструкции следует выполнять только в закрытой подсети. Не следует …») |
Admin (обсуждение | вклад) м (Admin переименовал страницу Доступ к RS-485 портам с PC в Доступ к порту RS-485 контроллера Wiren Board с компьютера) |
(нет различий)
|
Версия 18:16, 11 февраля 2016
Внимание! Данные инструкции следует выполнять только в закрытой подсети. Не следует давать доступ к RS-485 портам по TCP, если Wiren Board доступен по реальному IP снаружи.
Допустим, Wiren Board имеет IP 192.168.3.12.
Выполняем на Wiren Board от root'а:
apt-get install socat service wb-homa-modbus stop socat -d -d -d -x /dev/ttyNSC0,raw,ispeed=9600,ospeed=9600,parenb=0,cstopb=1,cs8 TCP-LISTEN:10010& socat -d -d -d -x /dev/ttyNSC1,raw,ispeed=9600,ospeed=9600,parenb=0,cstopb=1,cs8 TCP-LISTEN:10011&
Вторая команда - остановка драйвера Modbus во избежание конфликтов при работе с RS-485 портами.
Выполняем на компьютере (под Linux):
socat -d -d -d -x PTY,raw,ispeed=9600,ospeed=9600,parenb=0,cstopb=1,cs8,link=/tmp/ttyNSC0 tcp:192.168.3.12:10010& socat -d -d -d -x PTY,raw,ispeed=9600,ospeed=9600,parenb=0,cstopb=1,cs8,link=/tmp/ttyNSC1 tcp:192.168.3.12:10011& sudo ln -fs /tmp/ttyNSC{0,1} /dev
После выполнения этих команд в системе (на PC) появляются специальные файлы /tmp/ttyNSC0 и /tmp/ttyNSC1, соответствующие RS-485 портам Wiren Board. Последняя команда для удобства создаёт в /dev символические ссылки на файлы портов, что позволяет, например, использовать на PC конфигурацию драйвера Modbus, написанную для Wiren Board, без каких-либо изменений.
Опции -d и -x в обоих случаях можно опустить - они нужны для вывода диагностики и шестнадцатеричных дампов передаваемых данных.