RS422 og RS485– Hvordan og hvorfor?

RS-standarderne:

Interface standarden for serieltransmission, RS232, blev vedtaget i 1969. Både før og efter vedtagelsen har dette interface imidlertid været så populært, at der er opstået flere varianter.

De har på forskellige måder forsøgt at sprænge de grænser, som RS232 har fastlagt med hensyn til kabellængde, hvor den nuværende grænse er 15 meter, mens transmissionshastigheden højst er 921,6 Kbit/sek. for RS232 (Se nedenstående tabel).

 

EIA Standarder

RS232c

RS422a

RS485

Signaloverførsel

Ubalanceret

Balanceret

Balanceret

Antal sendere og

antal modtagere

1 sender

1 modtager

1 sender

10 modtagere

32 sendere

32 modtagere

Maks. kabellængde

15 m

1200 m

1200 m

Maks. transmissionshastighed

921,6 Kbit/sek

10 Mbit/sek

10 Mbit/sek

Maks. “common mode”

±3 V

±7 V

+12 V, -7 V

Udgangsspændinger

±5 V til ±15 V

Min. ±2 V

Min. ±1.5 V

Senderbelastning

3 til 7 KW

Min. 100 W

Min. 60 W

Modtager indgangsmodstand

3 til 7 KW

4 KW

12 KW

Modtager følsomhed

±3 V

±200m V

±200 mV

Modtager hysterese

1,15 V

50 m V

50 mV

 

For at bryde 15 m grænsen blev RS422 anbefalingen vedtaget. Den viser, hvorledes der ved brug af balancerede signaler kan kommunikeres over afstande op til 1200 meter, og med op til 10 Mbits/sek. Mens RS232 handler om forbindelsen mellem én sender og én modtager, "point to point", så kan der fra hver udgang på RS422 kommunikeres data til 10 indgange. I praksis anvendes dog næsten alle RS422 interfaces til "point to point" forbindelser. Først med RS485 standarden forelå der i 1983 en anbefaling som viser, hvordan både flere sendere og flere modtagere kan kommunikere over et par transmissionsledninger ("multidrop").

 

Balancerede transmissionsledninger

Fig. 1 viser signaloverførsel på balan­cerede linier som den benyttes ifølge RS422 og RS485.

Senderen har her to udgange, hvis

signaler altid har modsat rettet polaritet (T+ og T-) Tilsvarende har modtageren to indgange (R+ og R-) Modtager­kredsens udgangssignal bestemmes, groft sagt, af polariteten af spændings­forskellen mellem R+ og R-, og ikke af spændingen  mellem en signalledning og en stelledning, som det er til­fæl­det i en RS232 forbindelse.

Fig. 1

 

For den balancerede modtager er spændingerne på signalledningerne i forhold til stel uden betydning,  blot de ikke overskrider spændinger angivet som maks. ”common mode" i tabel 1.

De balancerede ledninger er derfor meget ufølsomme overfor elektromagnetisk støj, der enten induceres på transmissionsledningerne eller giver sig udslag i spændingsforskelle mellem stel på sender- og modtagersiden. Dette betyder dog ikke, at det er overflødigt at etablere en forbindelse til stel på sender- og modtagersiden. Hvis forskellen mellem de to stelspændinger overskrider maks. ”common mode", så vil modtagerkredsen nemlig ikke længere fungere korrekt, og i værste fald kan modtager og senderkreds ødelægges.           For at sikre støjimmunitet er det vigtigt, at transmissionskablet består af parvis snoede ledninger, "twisted pair". Størrelsen af støjsignaler, som induceres på signalledningerne, vil være proportional med afstanden mellem lederne. Støj der induceres i en enkelt snoning, udbalanceres i næste snoning, fordi støjen her induceres i modfase.  En vigtig forudsætning for kommunikation over lange afstande er, at transmissionsledningerne er korrekt afsluttet. På fig. 1 er termineringsmodstanden vist som RT og bør tilpasses således at transmissionskablet afsluttes med en impedans på ca. 120 W. Hvilket typisk er den karakteristiske impedans for et snoet ledningspar. Hvis modstanden udelades, vil de signaler, der sendes på ledningen, blive reflekteret hvor kablet fysisk ender og vandre retur på ledningen. Her vil de interferere med senere udsendte signaler. På lange kabelstrækninger kan dette bevirke datafejl,  især ved høje hastigheder.

 

 

 

Multidrop” netværk

Som tabel 1 viser, er de elektriske data for RS422 og RS485 meget ens. Den afgørende forskel består i, at RS485 standarden tillader at flere senderudgange kan kobles til samme ledningspar. En RS485 udgang kan nemlig udkobles,  dvs. et kontrolsignal kan tvinge senderens udgangstransistorer i ikke ledende tilstand, hvilket virker som om udgangsledningen var afbrudt. Ofte bruges serielportens RTS signal som kontrolsignal. Den passive tilstand tillader så, at en anden RS485-sender benytter netværket, som det f.eks. er vist på fig. 2.  Når  sender og modtager er tilkoblet samme ledningspar, kan sending og modtagelse ikke ske samtidig - d.v.s der benyttes ”halv duplex”. Sendere og modtagere kan tilkobles på vilkårlige punkter langs linien, og derfor skal begge transmissionskablets ender være afsluttet med en terminerings­mod­stand.

                                     Fig. 2

  

               Fig. 3                             Fig. 4

 

Fig. 3, 4 og 5 illustrerer nogle simple strategier for brugen af multidrop netværk. På fig. 3 vises et 4-leder netværk, som består af to adskilte netværk, der hver har to termineringsmodstande (ikke vist på figuren). Det ses, at PC1 kan sende til PC2 og PC3, mens den samtidig modtager data fra PC2 eller PC3 på det andet ledningspar. Det kaldes fuld duplex når sending og modtagelse kan ske samtidig. PC1 kan altså skiftevis køre fuld duplex sammen med PC2 eller PC3. PC2 og PC3 kan derimod ikke kommunikere indbyrdes. Det vil derfor typisk være PC1, der sender kommandoer som PC2 og PC3 kan genkende og reagere på,  f.eks. ved at sende data eller kommandoer retur til PC1. Denne strategi kaldes ofte "master/slave". PC2 og PC3 er ikke nødvendigvis pc’er. De kan f.eks. være en A/ konverter og en kontaktføler med RS485 udgang. Se flere eksempler på RS485 moduler i kapitlet "Distribueret I/O og dataopsamling via serielporten". Fig. 4 viser et 2-leder netværk, hvor terminerings-modstandene ikke er vist. Da sende- og modtage-ledningerne er fælles, kan der ikke benyttes fuld duplex. Hver enhed kan derimod skiftevis sende og modtage. Dette kaldes "halv duplex" og kræver, at software styrer TX med RTS signalet så kun én kan sende.

 

Fig. 5

 

Automatisk ”Flow control” 

Som nævnt benyttes RTS - signalet ofte til at aktivere senderudgangen på multidrop-netværk som vist på fig. 2.  Det kræver  f. eks. at RTS signalet styres af software fra en PC. Nogle typer udstyr til RS485 har imidlertid ”automatisk flow control” – hvilket vil sige,  at  der i RS485-udstyret er indbygget  et kredsløb, som automatisk aktiverer senderen, når data skal sendes – men kun hvis der ikke er data (fra andre sendere) på netværket. Herved reduceres risikoen for ”data-kollision” betydeligt. Denne metode benyttes f. eks. af modulerne i kapitlet.: "Distribueret I/O og data-opsamling via serielporten".  Disse moduler benytter desuden en protokol, der udelukker risikoen for datatab som følge af kollision.  ”Flow control” benyttes typisk kun ved serielle forbindelser der benytter ”Half Duplex”, dvs. der kan ikke sendes og modtages samtidigt. Da RS232 og 422 benytter ”Full Duplex” er det oftest kun på RS485 udstyr der nogensinde er tale om automatisk ”Flow Control”.

Fig. 5 viser en kobling med 3 adskilte netværk, der hver har to termineringsmodstande (ikke vist på

figuren) Hver part kan sende data  til sin "nabo" på den ene side, og modtage data fra "naboen" på den anden side. Det lægger op til at bruge en "token ring" strategi, hvor en blok af data sendes videre rundt i nettet indtil den når den modtager, som den var bestemt til.

Ulempen er, at der beslaglægges megen CPU tid med at læse og evt. videresende datablokke. Til gengæld kan alle parter benytte fuld duplex. Metoden er også velegnet til at etablere netværk over lange

strækninger, da der mellem hver ”nabo” på nettet

tillades op til 1,2  km afstand.

 

 

Forklaring på DTE og DCE

Sammenkobling af serielt kommunikationsudstyr volder ofte problemer. Det mest almindelige problem er forbindelsen mellem sende- og modtage­sig­nalerne. Er det benyttede udstyr DTE eller DCE? Og hvad er forskellen?

 

DTE og DCE er forkortelserne for de engelske betegnelser Data Terminal Equipment og Data Communication Equipment. Normalt er DTE den styrende enhed, f.eks. en pc. DCE kan f.eks. være et modem eller andet perifert udstyr, men mange producenter følger deres egne regler på dette område. Derfor skal man altid undersøge det aktuelle udstyr.

I praksis er forskellen på DTE og DCE kun et spørgsmål om, hvilke ben i stikket der overfører sende- og modtagesignaler samt kontrolsignaler. Hvis de forbindes forkert, vil kommunikationen ikke fungere korrekt. Nedenfor er vist en tabel over RS232 stikforbindelserne.

 

Vær opmærksom på, at meget software og hardware ikke benytter kontrolsignalerne. Ofte er det rigeligt at forbinde TX, RX og GND. Ved kommunikation mellem DTE og DCE skal signalerne i forbindelseskablet forbindes lige over*. Dette går under be­tegnelsen “standard serie­kabel”. Ved kommunikation mellem 2 “ens” enheder f.eks. DTE-DTE skal føl­gen­de signaler krydses: (TX-RX) (RTS-CTS) (DSR  ­& DCD-DTR). Dette går un­­der betegnelsen “Nul modem kabel”.

 

 

RS232 forbindelserne

DTE (hanstik) DCE (hunstik)

 

Betegnelse

Forkortelse

DB9

DB25

DTE

DCE

Transmit Data

TX

3

2

Ud

ind

Receive Data

RX

2

3

Ind

Ud

Request To Send

RTS

7

4

Ud

Ind

Clear To Send

CTS

8

5

Ind

Ud

Data Set Ready

DSR

6

6

Ind

Ud

Signal Ground

GND

5

7

-

-

Data Carrier Detect

DCD

1

8

Ind

Ud

Data Terminal Ready

DTR

4

20

Ud

Ind

Ring Indicator

RI

9

22

Ind

Ud

 

* Dvs. til samme terminalnumre i forbindelseskablets modsatte ende.

 

Forlængelse af RS232 forbindelse via RS422/485

 

Da RS232 er begrænset til en kabellængde under 15 meter, er det bekvemt at omforme denne til RS422/485, som rækker op til 1,2 km. Der indsættes en konverter f.eks. CNV232-422 ved de to apparater med RS232 forbindelsen. Kabling mellem de to konvertere udføres nu med et 4-trådet parsnoet telefonkabel på følgende måde:

RS422 forbindelse

RS485 forbindelse

 

Som det ses er CNV232-422 på computersiden sat op til DCE og på periferiudstyrsiden til DTE. Lederne skal altså ikke krydses. Mellem de to konvertere skal der krydses for at sende- og modtagesignaler bliver forbundet korrekt. I det viste eksempel benyttes RS422 konvertere. RS485 konvertere kan ligeledes anvendes.

 

Husk altid at afslutte RS422/485 netværk med termineringsmodstande

på 120 W i begge ender af netværket