W&T collega
Adattatori per TCP/IP, Ethernet, RS-232, RS-485, USB, 20 mA, Fibra ottica di vetro e plastica, http, SNMP, OPC, Modbus TCP, I/O digitale, I/O analogico, ISA, PCI

Applicazione relativa al Com-Server seriale:

TTY-Redirector/pseudo TTY in ambiente Linux


Pseudo TTY

Le applicazioni Linux, la cui comunicazione con dispositivi seriali è limitata esclusivamente a TTY locali, vengono rese adatte alla rete con l’aiuto di un Com-Server e del tool open source socat con licenza GPL2 (p. es. superamento di grandi distanze, TTY locali assenti/mancanti ecc). Mentre il Com-Server garantisce il collegamento relativo all’hardware del dispositivo seriale alla rete, socatdispone TTY virtuali e pseuto TTY nel sistema Linux e li collega al Com-Server via TCP in modo bidirezionale attraverso la rete.

Installazione/download
In molte distribuzioni Linux socat può essere installato direttamente attraverso la rispettiva gestione software. Inserisca nella ricerca semplicemente socat.

Troverà la homepage del progetto socat con tutti i link per il download, le informazioni sulle distribuzioni Linux supportate e la documentazione completa in http://www.dest-unreach.org/socat/ - trova Com-Server adatti qui.

Esempio
Il seguente comando crea lo pseudo TTY csTTY1 e lo trasferisce al Com-Server 10.40.21.18 presente nella rete:

socat PTY,link=/dev/csTTY1,echo=0,wait-slave  TCP:10.40.21.18:8000,retry=5

La parola chiave PTY produce innanzitutto lo pseudo TTY chiamato csTTY1 nella directory /dev. La relativa opzione echo=0 disattiva l’eco locale dei TTY. Mediante wait-slave il collegamento TCP con il secondo canale dati viene realizzato solo quando lo pseudo TTY creato viene aperto mediante un’applicazione, in modo che con il TTY chiuso anche altri utenti della rete possano accedere al Com-Server e al dispositivo seriale collegato.

La parola chiave TCP determina il 2° canale dati collegato con lo pseudo TTY precedentemente creato. Come parametro di indirizzo vengono indicati l’indirizzo IP e il numero della porta TCP del Com-Server. retry=5 determina il numero dei tentativi di collegamento nel caso in cui il Com-Server p. es. sia occupato da un altro utente.

Indicazioni/particolarità
- I parametri di trasmissione seriali necessari (velocità baud, parità ecc.) devono essere prima configurati manualmente nel setup del Com-Server. Una configurazione automatica collegata ai parametri dell’applicazione di apertura non è possibile.

- Gli pseudo TTY creati mediante socat sono adatti a tutte le applicazioni che comunicano con il terminale semplicemente a livello delle linee dati seriali Rx e Tx. Una trasmissione delle linee di controllo RS232 (RTS, CTS ecc.) non è possibile.

- L’opzione wait-slave utilizzata nell’esempio sopra indicato garantisce una realizzazione del collegamento di rete in funzione delle necessità. Allo stesso tempo, chiudendo i TTY, oltre al collegamento di rete con il Com-Server viene chiuso anche il processo socat, in modo che venga effettuato eventualmente un restart comandato da script. In caso di esecuzione collegata con un avvio di sistema del comando socat, la procedura qui si distingue in funzione del sistema Init della distribuzione Linux impiegata.

- Può essere eseguito anche un test orientato ai segnali del TTY virtuale con l’ausilio di socat. Il seguente comando stabilisce un collegamento trasparente tra STDIN/STDOUT del sistema Linux e il Com-Server mediante lo pseudo TTY csTTY1:

socat STDIO,raw,echo=0,escape=0x03 /dev/csTTY1,raw,echo=0