Comunicare serială - cum funcționează standardele de comunicare RS-232/422/485?
În ciuda faptului că Ethernet a preluat tot mai multe domenii ale comunicațiilor industriale, standardele seriale pot fi încă întâlnite în multe industrii și aplicații și nu există niciun indiciu că acestea vor dispărea în viitorul apropiat.
Standardul RS-232 și un pic de istorie
Standardul RS-232C (Recommended Standard 232) a apărut pentru prima dată în 1962, în principal în industria telecomunicațiilor. Acesta a clasificat și standardizat modul în care semnalele erau conectate între un DTE (Data Terminal Equipment), de exemplu un computer, și un DCE (Data Circuit-terminating Equipment), cel mai frecvent un modem care accesa o rețea telefonică și, mai târziu, o rețea WAN. Standardul este disponibil într-o versiune sincronă, care necesită un semnal de ceas suplimentar, și o versiune asincronă, care nu are un astfel de semnal, iar fiecare cadru trimis este sincronizat pe baza biților de start și stop. În prezent, versiunea sincronă este practic absentă de pe dispozitive. RS-232 definește, printre altele, nivelurile electrice și fișele, firele, caracteristicile de sincronizare și denumirile semnalelor. De asemenea, merită menționat faptul că RS-232 permite conectarea a până la 2 dispozitive.
La un moment dat, RS-232 era prezent pe aproape toate PC-urile și permitea conectarea unor dispozitive precum mouse-uri, tastaturi, imprimante, UPS-uri, carduri de măsurare și multe altele. Cu toate acestea, în 1996 a apărut o alternativă care era în multe privințe superioară lui RS-232, și anume USB. Viteza mai mare, capacitatea de a se ramifica pe mai multe porturi, lipsa necesității de a configura parametrii de transmisie, un conector mai mic - toate aceste caracteristici au făcut ca RS-232 să fie eliminat treptat din majoritatea aplicațiilor de consum. Ultimul pilon al acestui standard a fost reprezentat de echipamentele specializate de nivel industrial, precum și de interfețele de comunicare încorporate direct pe plăcile de circuite.
Cum se conectează RS-232?
Primul conector implicit pentru RS-232 a fost DB25, iar în prezent cel mai popular este DB9F. În zilele noastre, producătorii folosesc frecvent și alți conectori, de exemplu RJ45 sau terminale cu șurub, care nu sunt definiți în standard. Deoarece standardul definește 2 tipuri de dispozitive - DTE și DCE, rezultă că există 3 variante de conectare:
- DTE (PC) - DCE (modem) - Cablu drept DB9M-DB9F (fișe în oglindă)
- DTE (PC) – DTE (PC) – cablu patch, DB9F-DB9F, null modem
- DCE (Modem) – DCE (Modem) – cablu patch, conectori DB9M-DB9F
Standardul RS-232 este disponibil în mai multe variante de conectare:
- În cea mai simplă versiune, sunt necesare doar 3 semnale: Tx, Rx și GND.
- În cazul celor mai complexe 5 semnale, deoarece există încă 2 semnale pentru controlul fluxului și semnalele RTS și CTS.
- De asemenea, 5 semnale cu control de flux pe semnalele DTR și DSR:
Parametrii RS-232
În zilele noastre, este deja foarte rar să găsim dispozitive cu semnale de control al fluxului, de obicei sunt disponibile doar 3 semnale (Tx, Rx, GND). În cazul soluțiilor Moxa, dacă pinii Tx,Rx sunt conectați incorect, acest lucru va fi semnalat, de obicei, printr-o diodă luminoasă continuă (fără transmisie de date).
Nivelurile de tensiune RS-232 sunt definite în standard și trebuie să fie cuprinse între -3 și -25 V pentru starea înaltă ("1"), sau între 3 și 25 V pentru starea joasă ("0"). În mod obișnuit, nivelurile de tensiune se încadrează în intervalul mai mic, care depinde de tensiunea cu care sunt alimentate. Cele mai simple implementări ale RS-232 (de obicei în microcontrolere) au niveluri compatibile cu tehnologia TTL.
Un alt aspect al RS-232 este reprezentat de parametrii de transmisie, care nu sunt negociați de către participanți, ci setați manual. Cea mai importantă valoare este Baudrate, sau rata de transmisie. Aceasta corespunde ratei în biți pe secundă și variază de la 50 bps la 921600 bps.
Următorii parametri rezultă deja din structura cadrului RS-232 și sunt:
- Biti de date: 5,6,7,8
- Paritate: niciuna, pară, impară, stare înaltă, stare joasă
- Biți de oprire: 1 sau 2
Avantaje RS-232:
- Un design foarte simplu al standardului, ceea ce face ca acesta să fie ușor și ieftin de implementat
Dezavantaje ale RS-232
- Caracterul asimetric al standardului de transmisie îl face foarte sensibil la interferențe electromagnetice.
- Distanța maximă de transmisie relativ scurtă, de aproximativ 15 m (această distanță depinde de mulți factori)
- Posibilitatea de comunicare punct-la-punct, adică pentru numai 2 dispozitive.
- Conexiune problematică din cauza faptului că mulți producători nu păstrează conectorul compatibil cu tipul DTE/DCE.
- Sunt în funcțiune diferite versiuni de RS232 cu sau fără control de flux, ceea ce face dificilă stabilirea unei conexiuni.
- Configurarea manuală a interfeței seriale face dificilă conectarea dispozitivului pentru prima dată
- Pământul comun al semnalului face ca riscul de deteriorare a portului să fie mai mare din cauza unei diferențe de potențial de masă.
- Lipsa alimentării cu energie electrică a dispozitivelor
După cum se poate observa, RS-232 are o serie de dezavantaje, motiv pentru care astăzi este deja utilizat într-un domeniu restrâns de aplicații, dar datorită simplității sale este adesea utilizat ca interfață de monitorizare, interfață de configurare etc. într-o mare varietate de dispozitive. Există mai multe standarde seriale asociate cu RS-232 în care unele dintre dezavantaje au fost corectate, mai târziu în această postare voi descrie o altă soluție populară care este....
RS-485
De fapt, ar trebui să vorbiți despre TIA-485 (de la Telecommunications Industry Association), un standard serial care a evoluat de la RS-232 și care îmbunătățește numeroasele defecte ale acestuia, păstrându-i în același timp asemănările. RS-485 descrie caracteristicile electrice ale emițătorului, receptorului și magistralei, adică stratul electric în sine. Ca și RS-232, nu definește un protocol de comunicare, motiv pentru care este utilizat de multe protocoale, cum ar fi Modbus RTU, Profibus DP (o formă ușor modificată), DNP3 sau BACnet. În ceea ce privește stratul fizic, RS-485 utilizează transmisia pe un cablu cu perechi torsadate (de preferință ecranat) în care semnalul este diferențial, ceea ce îl face puțin sensibil la interferențele E-M. Semnalul diferențial este transmis după cum urmează:
- A - stare joasă pentru 1 logic și stare înaltă pentru 0 logic
- B - stare înaltă pentru 1 logic și stare joasă pentru 0 logic
Prin urmare, atunci când apare o interferență E-M pe linia de transmisie, aceasta va fi prezentă pe ambele fire în același timp, iar receptorul RS-485, după o operațiune de scădere, dacă diferența de tensiune Va-Vb > 200 mV, va interpreta acest lucru ca fiind un 1 logic. Dacă, pe de altă parte, tensiunea pe firul B este mai pozitivă, receptorul va considera că a primit un 0 logic: Vb-Va >200 mV. Merită menționat faptul că producătorii de dispozitive RS-485 utilizează diferite denumiri, mai jos sunt cele mai frecvent utilizate:
Semnal inversat = A = (-) = (-) = D- = TxD-/RxD-.
Semnal neinvertit = B = (+) = D+ = TxD+/TxD-.
Cu toate acestea, unii producători folosesc denumirea inversă, adică A=D-, B=D+, din fericire, aceasta este o minoritate.
Standardul RS-485 este disponibil în principal în două variante - o versiune cu 2 și una cu 4 fire. Cea mai populară versiune este cea cu 2 fire, cu comunicație "half duplex", în care datele pot fi transmise doar într-un singur sens deodată. Versiunea cu 4 fire, pe de altă parte, este de fapt o combinație de 2 autobuze cu 2 fire și comunicare "full duplex" (datele pot circula în ambele direcții în același timp).
Standardul RS-485 poate funcționa teoretic în topologii punct-la-punct, bus, stea sau inel. Cu toate acestea, se recomandă conexiunile punct-la-punct și conexiunile de autobuz din cauza reflexiilor de semnal. Prin utilizarea de repetori care segmentează astfel de rețele, se pot construi și topologii în stea și inel. Un exemplu de model de astfel de repetor este TCC-120 de la Moxa. Se presupune că, în practică, se pot obține distanțe de transmisie de până la 1 200 m la 115 200 bps.
Numărul maxim de dispozitive pe magistrala RS-485 este de 32, iar capacitatea de curent a emițătoarelor este limitarea în acest caz. Datorită transmisiei half duplex (RS-485-2W), cantitatea posibilă de date transmise este oarecum limitată. În cazul protocolului Modbus RTU, dacă volumul de date citite de la un singur dispozitiv este mare, de exemplu 50 de registre, numărul maxim de sclavi conectați va fi mai mic în practică.
Comparativ cu RS-232, această interfață are următoarele caracteristici:
Avantaje:
- Distanța maximă de transmisie mare
- Rezistență ridicată la interferențele E-M datorită transmisiei diferențiale
- Costuri reduse de cablare
- Simplitate
Dezavantaje:
- Un randament destul de scăzut, în special cu un număr mare de dispozitive pe magistrală și registre schimbate
RS-422
Cunoscut și sub numele de TIA/EIA-422, acesta este un standard de comunicare serială care descrie caracteristicile electrice ale transmisiei. Se bazează, ca și RS-485, pe transmisie diferențială, viteza maximă teoretică este de 10 Mbps (până la 12 metri), iar lungimea cablului este de 1200 m.
RS-422 definește doar nivelurile semnalului, alte caracteristici, cum ar fi conectorii (de obicei DB9 sau terminale cu șurub) sau numerotarea semnalelor sunt descrise în alte standarde.
RS-422 VS RS-485
Diferențele dintre aceste standarde constau în direcția de transmisie și în numărul de emițătoare și receptoare de pe magistrală. Inițial, RS-422 avea transmisii multidrop simplex.
Ce înseamnă de fapt acest lucru? Pe autobuz poate exista un singur emițător (șofer) și până la 10 receptori, adică comunicarea este unidirecțională.
Cu toate acestea, în zilele noastre, aproape toate driverele RS-422 suportă transmisia direcțională de date folosind 2 perechi de cablu cu perechi torsadate (la fel ca RS-485 cu 4 fire), dar cu o limitare de 10 dispozitive pe magistrală, configurația conexiunii este, de asemenea, aceeași.
În gama de produse Moxa, fiecare dispozitiv cu RS-422 are comunicare pe 4 fire, deci este o soluție universală, deoarece puteți conecta atât dispozitive care pot doar să primească date (1 pereche de fire, simplex), cât și dispozitive care primesc și transmit (2 perechi, full duplex). De exemplu, Nport 5150.
Combinarea semnalelor și denumirea acestora este identică cu cea a RS-485 cu 4 fire.
Rezumat
În industrie (și nu numai), dintre standardele seriale descrise, RS-485 este cel mai frecvent utilizat datorită avantajelor sale, în timp ce celelalte pot fi găsite în multe dispozitive simple sau mai complexe. Mai jos este prezentat un tabel care compară cei mai importanți parametri ai standardelor descrise:
|
RS-232 |
RS-422 |
RS-485-2wire |
Schema de comunicare |
Punct-la-punct (single ended) |
Punct la punct, 1 la mai multe (single ended, multidrop) |
De la 1 la mai multe (multidrop) |
Numărul de dispozitive |
1 emițător, 1 receptor |
1 expeditor, 10 destinatari |
32 de emițători, 32 de receptori |
Tipul de comunicare |
În ambele sensuri în același timp (Full duplex) |
Un singur sens, ambele sensuri în același timp (simplex, full duplex) |
O singură cale în același timp (half duplex) |
Distanța maximă de transmisie |
Aprox. 15 m@115 kbps |
Aprox. 1200 m@115 kbps*. |
Aprox. 1200 m@115 kbps*. |
Rata maximă de transmisie |
1 Mbps |
10 Mbps @15 m* |
10 Mbps @ 15 m* |
Tipul de transmisie |
asimetrică |
simetric |
simetric |
Stare înaltă |
Min. -5 V Max. -15 V |
Min. 2 V (B>A), max. 6 V (B>A) |
Max. 1,5 V (B>A) |
Stare joasă |
Min. 5 V Max. 15 V |
Min. 2 V (A>B), max. 6 V (A>B) |
Max. 1,5 V (A>B) |
Nivelul minim de tensiune |
+/- 3 V |
Diferența 0,2 V |
Diferența 0,2 V |
* Distanța maximă și viteza de transmisie depind de mai mulți factori. În prezent, sunt disponibile transreceptoare care aplică o sarcină foarte mică pe magistrală (până la 1/8 din sarcina standard), permițând astfel transmiterea la viteze mai mari și pe distanțe mai mari.
Surse:
RS-232:
https://en.wikipedia.org/wiki/RS-232
RS-422"
https://en.wikipedia.org/wiki/RS-422
TTL:
https://en.wikipedia.org/wiki/Transistor%E2%80%93transistor_logic
Ghid de implementare a circuitelor RS-485/RS-422:
https://www.analog.com/media/en/technical-documentation/application-notes/AN-960.pdf?doc=an-1177.pdf
Cât de departe și cât de repede puteți merge cu RS-485?
https://www.maximintegrated.com/en/app-notes/index.mvp/id/3884
Servere cu port serial:
https://www.elmark.com.ro/shop/servere-seriale
Convertoare RS - USB:
https://www.elmark.com.ro/shop/porturi-rs-232-422-485
Contactați un specialist Elmark
Ai întrebări? Ai nevoie de sfaturi? Sună-ne sau scrie-ne!