RS232 optoisolata: realizzare una comunicazione seriale RS232 isolata è abbastanza semplice grazie all'utilizzo degli optoisolatori. Per la RS232 sono necessari minimo 3 collegamenti: tx, rx e gnd (massa comune). Dovendo realizzare una comunicazione seriale RS232 isolata basta inserire un optoisolatore sul TX, un altro sull'RX e separare le masse GND1 e GND2.
Tutto qui? Decisamente NO! Ci sono molteplici soluzioni, vediamole insieme.
Schema elettrico RS232 optoisolata
Lo schema si basa sull'isolamento di U2 (CNY17) per la trasmissione da Periferica a PC e sull'isolamento di U1 (6N137) per la trasmissione da PC a Periferica. Da notare la separazione delle masse (GND) ed il modo in cui sono utilizzati i segnali RTS e DTR.
L'Autore dello schema elettrico dichiara di aver testato il circuito fino a 19200 baud.
Indubbiamente questa è la soluzione più immediata e relativamente semplice da realizzare ma ci sono delle considerazioni da fare, o se vogliamo, dei limiti che con questo approccio all'applicazione, non si possono superare.
1) Le due parti comunicanti (in questo caso PC e Periferica) devono avere ognuna la propria alimentazione. Poco male in questo caso (PC), anche se sarà comunque impossibile alimentare la periferica dal PC (se non utilizzando un alimentatore isolato), ma limitazione abbastanza importante nelle comunicazioni tra periferiche dove in genere l'alimentazione è unica.
2) I componenti da montare sulla scheda non sono pochi. Immaginiamo larghe produzioni con aumento degli items da inserire a magazzino ed a schede con un ridotto fattore di forma (quindi impossibilità a realizzare e/o sbrogliare il PCB)
3) Lo schema ha poi dei limiti in termini di velocità, quindi per aumenti di significativi di baudrate mi affiderei a driver dedicati RS232 optoisolati.
RS232 con alimentazione isolata
Una possibile soluzione potrebbe essere quella di realizzare una alimentazione isolata affinchè una delle periferiche possa alimentare anche l'altra mantenendo l'isolamento. Ecco un esempio:
A parte la prima (banale?) considerazione che l'ingresso di alimentazione è situato sulla destra (quando invece le alimentazioni andrebbero rappresentate da sinistra) bisogna notare come, oltre ai due optoisolatori, viene utilizzato un modulo alimentatore isolato (TMV0505S [PDF]). Da tenere a mente la separazione della 5V analogica e digitale, ma ne parleremo in un altro post 🙂
Questo schema, seppur interessante, risolve il problema dell'alimentazione isolata ma introduce un altro componente nella BOM (part-list) che può essere sconveniente sia per il costo fisico del componente, dell'eventuale stoccaggio in magazzino e poi di montaggio. Avreste mai pensato che un solo componente possa creare tutti questi problemi in produzione?
Un'altra soluzione potrebbe essere quella di utilizzare un traformatorino per isolare le alimentazioni, come nello schema elettrico seguente:
Questo schema, tratto da una application note [PDF] della Exar (ex Sipex) permette di raggiungere velocità elevate (250 Kbps) utilizzando dei driver specifici per RS232 (SP3232 o simili) ed optoisolatori veloci (MCT61) ma ha l'inconveniente del trasformatore che può essere, relativamente al progetto da realizzare, un problema. Molto interessante è l'utilizzo del primo driver RS232 con il charge-pump interno utilizzato, insieme al trasformatorino, per realizzare l'alimentazione isolata (infatti mancano i condensatori C1 e C2). Non lasciatevi sfuggire come è stata separata la massa (C10 470pF) 😉
Un approccio diverso al problema dell'alimentazione isolata della seriale RS232 è quello di utilizzare dei componenti dedicati appunto all'isolamento delle alimentazioni. Guardate questo schema e blocchi:
Tratto da un'applicazione FTDI [PDF] ci presenta una ulteriore soluzione offerta dalla tecnologia ADI (Analog Devices) nello specifico il DC-DC converter ADuM5000. Dedicato appunto a isolare l'alimentazione e, in questo caso specifico, SOLO l'alimentazione. Considerando che gli ADuM5xxx hanno all'interno anche i driver RS232 isolati, sarà il opportuno di approfondire il tipo di soluzione. Ne parleremo più avanti nell'articolo.
Driver RS232 optoisolati: cosa offre il mercato.
Le case di semiconduttori (Silicon Vendors) si sono quindi attivate nel cercare e quindi proporre una soluzione integrata in grado di offrire un unico componente isolato. Un MAX232 (il driver RS232 più famoso) speciale!
LTM2882 Driver RS232 Linear Technology
La soluzione di Linear Technology è racchiusa in un singolo integrato che offre due trasmettitori e due ricevitori isolati. Nello stesso package è contenuto anche un DC-DC da 5V 200mA MAX (sufficienti per applicazioni alimentate dalla seriale DB9 del PC).
Il dispositivo si chiama LTM2882 e viene prodotto sia nella versione da 3V3 che in quella da 5V.
Dallo schema a blocchi si evince facilmente la sua funzionalità. Del componente e della relativa demo board ne abbiamo parlato in questo articolo specifico sulla RS232 isolata con alimentatore da 1W (isolato).
A questa pagina sono disponibili anche i file di progetto della demoboard nelle varie versioni.
LTM2882 è disponibile da Farnell a questo link e considerando che viene venduto in un package LGA o BGA consiglio la demoboard a chi volesse sperimentarne le funzionalità.
ADM3251 Driver RS232 Analog Devices
La soluzione proposta da Analog Devices offre un transceiver RS232 internamente optoisolato: ADM3251E. Il dispositivo è in contenitore SOIC (wide) ed integra anche le protezioni ESD.
Dallo schema a blocchi interno si può notare come la parte di alimentazione (charge pump) non sia isolata. Per ovviare a questo (in alcuni casi) incoveniente, è possibile disabilitare il dc-dc semplicemente abbassando la VCC (normalmente a 5V) a 3V3, in questo modo il convertitore si disabilita e quindi è possibile alimentare esternamente la Viso per permettere due alimentazioni separate. Questa soluzione proposta da ADI sembra andare controcorrente: perchè non integrare anche il dc-dc isolato all'interno? Probabilmente ci sono varie risposte e non voglio certo pensare che non abbiano la tecnologia per realizzarlo 🙂
Un primo motivo potrebbe essere il costo, infatti mantenendo lo schema classico del Voltage Doubler riescono a tenere il prezzo di vendita paragonabile ai normali transceiver. Poi l'integrazione delle protezioni ESD. Ed infine, ma a mio avviso non ultimo 😉
il fatto che Analog Devices produce anche una serie di componenti denominata iCoupler che nella sua versione ADuM5400 (di cui parlavamo sopra nello schema FTDI) e ADuM5404 offrono una soluzione ideale per l'isolamento dell'RS232 sia della sola alimentazione che completo.
Da leggere anche questa interessante application note [PDF].
I componenti Analog Devices sono disponibili da Farnell a questo link ed anche la relativa demoboard.
MAX3250 Driver RS232 Maxim
Maxim propone un driver RS232 isolato già dal 1989 (!) il MAX250. Anche se ormai datato, rende bene l'idea della volontà di integrare gli optoisolatori nei driver RS232 già dall'epoca. Il componente attualmente proposto si chiama invece MAX3250.
Si può notare (stavo per dire ammirare 🙂 l'isolamento e le varie protezioni. Inoltre sono presenti i pin di Fault e Shutdown, sempre utili. Da notare anche l'isolamento dell'alimentazione. In questo caso non abbiamo un isolamento dovuto ad un interno dc-dc isolato, ma piuttosto una soluzione 'strategica' (o furba :-). L'alimentazione VCC alimenta un oscillatore che, attraverso due condensatori (serie) alimenta i due charge pump. Praticamente un isolamento di alimentazione prodotto dal 'disaccoppiamento capacitivo'.
La relativa application note su come usare il MAX3250 si può vedere qui.
Il dispositivo è disponibile da Farnell, potete consultare la disponibilità direttamente online sul sito.
Conclusione RS232 optoisolata
Rispetto al 1989 oggi abbiamo a disposizione una vasta scelta di opzioni e dispositivi per realizzare la nostra RS232. I tre produttori sopra citati sono molto avanzati tecnologicamente e la concorrenza è molto accesa. Questo , fortunatamente per noi progettisti, significa che sempre nuovi componenti con nuove features si aggiungeranno alle varie gamme.
La soluzione con gli ADuM è sicuramente più versatile.
Nel tuo caso poi (spi) anche la velocità penso sia stato un parametro che avrai tenuto in considerazione già nella fase iniziale di sviluppo.
Ciao, ho un po’ di domande in riferimento al secondo schema :
1) la separazione della 5V analogica e digitale è dovuta al fatto che il circuito fa parte di un progetto in cui è presente una scheda digitale e una scheda analogica per l’acquisizione dei dati, giusto? Qual è l’altro post in cui ne avete parlato?
A che serve l’integrato IC107? Che ruolo hanno gli induttori?
2) http://2.bp.blogspot.com/_m-yXqp4tbjU/RopnjFgF9NI/AAAAAAAAABQ/MfGSG9T1D5o/s320/digital_board.jpg Se si guarda il PCB della scheda digitale si nota che la parte isolata è fisicamente separata dal resto della scheda. La mia (sciocca) domanda è: è solo un fatto estetico o vengono impiegati materiali diversi nella costruzione del PCB?
3) Esistono optoaccoppiatori per segnali analogici??
Grazie per l’attenzione 😀
Ecco le mie risposte:
1) “ne parleremo più avanti NELL’ARTICOLO”
infatti poi parliamo di ADI
IC107 è un regolatore ed in questo caso serve a stabilizzare la tensione d’ingresso (fornisce i 5V alla scheda)
Gli induttori contribuiscono a tenere “pulita” l’alimentazione. L rallenta il disturbo e C lo filtra 😉
2) Vengono usati gli stessi materiali ma serve a marcare l’isolamento fisicamente (ed anche esteticamente)
3) Certo, anche se dipende dall’applicazione come gestirli…. del resto stiamo parlando di fotodiodi e transistor 🙂
1)Intendevo “Da tenere a mente la separazione della 5V analogica e digitale, ma ne parleremo in un altro post”…. mi sa che non ho capito 😀
2)Ok
3) Mi servirebbero per isolare dei segnali analogici biomedici a basso voltaggio e bassa frequenza (da DC a 200 Hz circa). Questo potrebbe andare bene, per esempio? http://www.vishay.com/docs/83708/appn50.pdf
Avevo pensato di mettere gli optoaccoppatori tra la fine della catena di amplificazione del segnale e l’entrata al microcontrollore utilizzato per la conversione AD, però a quanto vedo dall’application note è necessario uno stadio amplificatore appena dopo il fotoaccoppiatore per garantire la corrispondenza tra Vin e Vout da quest’ utlimo. Ho capito bene?
Ho necessità di proteggere una porta RS232 di un PC collegata ad una stampante seriale.
Esistono in commercio dei dispositivi completi (già assemblati)?
Puoi fornirmi la casa costruttrice e il modello dell’apparato?
I modelli e le case costruttrici indicate nell’articolo possono aiutarti con i componenti 😉
Per i prodotti già assemblati prova a vedere sui siti di e-commerce di schede elettroniche: Conrad, RS, Farnell etc…