From OpenSCADAWiki
Jump to: navigation, search

Перекидання послідовного інтерфейсу через мережу Ethernet

У деяких випадках буває корисним перекинути порт послідовного інтерфейсу віддаленої машини на локальний порт, наприклад, для опитування пристроїв, підключених до послідовного інтерфейсу віддаленої машини. Звісно, якщо встановити на віддалену машину OpenSCADA у конфігурації ПЛК, то можна буде одразу виконувати обробку цих даних, попереднє буферування/архівування та інше, але інколи обладнання може бути складним для запуску OpenSCADA, де й рятує можливість перекидання послідовного потоку через мережу. Для вирішення цього завдання можна скористатися тією-ж утилітою socat або remserial, ser2net, яку вдасться зібрати та запустити на віддаленій машині. Приклади перекидання послідовного порту:

# Створення сокету на порту 5555 віддаленої машини, для порту /dev/ttyS0
socat tcp-l:5555,reuseaddr,fork file:/dev/ttyS0,raw
# Підключення до сокету віддзеркаленого порту віддаленої машини та формування файлу віддзеркаленого локального інтерфейсу
socat -d -d pty,raw,echo=0,perm=0666 tcp:192.168.2.4:5555,mss=1400
#2013/07/04 10:09:09 socat[12947] N PTY is /dev/pts/4
#2013/07/04 10:09:09 socat[12947] N opening connection to AF=2 192.168.2.4:5555
#2013/07/04 10:09:09 socat[12947] N successfully connected from local address AF=2 192.168.2.61:33493
#2013/07/04 10:09:09 socat[12947] N starting data transfer loop with FDs [3,3] and [5,5]