Arduino per catturare segnale da RS-232 ed inviarlo a PS/2

Salve a tutti,

Mi sto dilettando nei miei esperimenti nel catturare una stringa da una seriale RS-232 di un PLC per inviarlo ad un PC attraverso la PS/2.

Sapete dirmi se Arduino UNO fa al caso mio ?

Ho visto che esiste una libreria PS2DEV che permette di inviare segnali attraverso la PS/2.

Sapete darmi qualche indicazione più approfondita per realizzare questa interfaccia ?

Grazie !

Tieni sempre presente che la seriale di Arduino è una seriale TTL mentre tu stai parlando di RS-232, quindi ti occorrerà comunque un adattatore seriale RS-232 <----> TTL.

Per il resto ricordo che qualcuno ha usato la libreria per la PS2 per collegare una tastiera PS2 ad Arduino, ma non ho esperienza del contrario.

Con una rapida ricerca su Google ho trovato QUESTO che magari ti può essere utile …

Guglielmo

Grazie Guglielmo, come convertitore ho preso quello da te menzionato.

A livello di collegamenti, ho una prolunga PS/2 che taglierei dalla parte della femmina per collegarla direttamente su Arduino.

Per il collegamento sai darmi indicazioni ?

Come ti ho detto, ho già visto collegare una tastiera PS2 ad Arduino, ma NON il contrario ...
... hai seguito il link che ho messo ? Mi pare ci sia un esempio di collegamento ::slight_smile:

Guglielmo

Ho trovato anche questo se può tornare utile: Silicon Republic: Arduino based Human Interface Device (continued).

Ora non resta che sperimentare.

Ti ringrazio.

Considera che sono cose tutte molto vecchie e … potrebbero essere incompatibili con le attuali versioni dell’IDE di Arduino.

Ad esempio, in quell’articolo che hai linkato, si fa ancora riferimento a #include <Wprogram.h> che NON esiste più dall’IDE 1.0 e che è stata rimpiazzata dalla #include <Arduino.h> :slight_smile:

Guglielmo

Grazie per l'aiuto Guglielmo.

Ieri sono riuscito ad ottenere quello che volevo.

Leggo i dati provenienti dalla porta Rs-232 e li giro ad un Pc attraverso la Ps/2 utilizzando la libreria PS2Dev

Grazie mille, a presto !

Buongiorno,

Ieri, nei vari test, ho riscontrato un paio di anomalie:

Pc spento e con Arduino collegato sulla PS/2: quando accendo il Pc, dopo aver caricato windows, se provo ad inviare una stringa da Arduino, il pc si blocca e non funziona più nemmeno il mouse costringendomi ad un reset da bottone.

Se invece faccio partire il pc con la tastiera collegata sul PS/2 e una volta caricato Windows stacco la tastiera e ci collego Arduino allora tutto funziona regolarmente.

In Windows CE, provando ad aggiungere un INVIO automatico dopo aver trasmesso la stringa al PC, l'invio sembra andare in un loop continuo che continua anche se stacco fisicamente il cavo PS/2.

Resto in attesa di un vostro aiuto, grazie !

Vi Aggiorno in merito ai 2 problemi sopra riportati.

il 1) è stato risolto agendo sui tempi di accensione di Arduino.

Resta da risolvere il 2), che si presenta solamente con sistema operativo WINDOWS CE.

Con altri sistemi operativi l'INVIO viene recepito correttamente un sola volta, mentre sul PLC che monta WINDOWS CE 4.2 è come se l'invio rimanesse incantato di continuo.

La sequenza di caratteri alfa numerici viene correttamente inviata da Arduino al PLC, ma appena viene inviato il comando INVIO, escono fuori i problemi.

Avete idee ?

Non so se ti può tornare utile. Ad ogni modo da quello che leggo anche staccando il cavo contiunui a vedere il loop a schermo e di conseguenza potrebbe essere un problema di driver od impostazione della seriale in windows ce. Non conosco windows ce (ogni s.o. ha modi diversi di gestire le porte seriali) ma come prima cosa verificherei se il "fine riga" atteso sia return carriage od un line feed od entrambi.
Dai uno sguardo a questo link
Di solito, per le verifiche in caso di problemi, uso putty su windows