Komunikační linky

HW sériových komunikačních linek.

Co je RS422 RS485 a srovnání s RS232

Dálkový přenos dat po komunikačních linkáchhw server

 

Co je RS 422, RS 485 a srovnání s RS 232

Pojem RS 232 je vzhledem k popularitě dnešních PC velice známý. U RS 422 & 485 je situace poněkud odlišná: používá se spíše v průmyslovém prostředí a v systémech pro řízení a přenos dat (maloobjemových, žádné stovky Mb/s).

Jaký je tedy mezi RS 232 a RS 422 & 485 rozdíl? Signály RS 232 jsou reprezentovány napěťovými úrovněmi vzhledem k zemi. Pro každý signál jeden vodič + společný zemní vodič, vůči němuž jsou napěťové úrovně vztaženy. Tento způsob je vhodný pro point-to-point komunikaci při nízkých rychlostech. Například na port COM 1 u PC může být připojená myš, na COM 2 modem atd. To je příklad point-to-point komunikace, jeden port, jedno zařízení. Zapojení signálů vyžaduje společnou zem, tudíž se dostáváme k omezené délce vodičů – maximálně cca 30 až 60 metrů (hlavní roli hraje odpor dlouhého vedení a snadná zarušitelnost). V krátkosti tedy, RS 232 bylo vyvinuto pro komunikaci lokálních zařízení a podporuje jeden vysílač a jeden přijímač.

RS 422 & 485 používá poněkud odlišný princip: pro každý signál používá jedno twistedpair (TP) vedení, tj. 2 vodiče smotané kolem sebe. Z elektrického hlediska mluvíme tzv. Balanced data transmision, nebo také Differential voltage transmission. Laicky řečeno, označíme-li si jeden vodič z TP jako A druhý jako B, pak je-li signál neaktivní, je napětí na A záporné a na B kladné. V opačném případě, signál je aktivní, je A kladné a B záporné. Pochopitelně se jedná o rozdíl (diferenci) mezi vodiči A a B. Pro RS 422 & 485 může délka vedení dosahovat až 4000 stop (cca 1200 metrů) a běžně vyráběné obvody dosahují přenosových rychlostí 2.5 MB/s.

Jaký je rozdíl mezi RS 422 a RS 485? Elektrický princip je stejný: Obojí používá diferenční vysílače s alternujícím napětím 0 a 5V. RS 422 je však určena, podobně jako RS 232 pro point-to-point komunikaci. RS 422 používá dva oddělené TP vodiče a data mohou být přenášena v obou směrech současně. RS 422 se často používá na prodloužení vedení RS 232, nebo v průmyslovém prostředí.

RS 485 se používá pro multipoint komunikaci, více zařízení může být připojeno na jedno signálové vedení. Stejně jako například sítě ETHERNET, vedené po koaxiálním kabelu. Většina RS 485 systémů používá Master/Slave architekturu, kde má každá slave jednotka svojí unikátní adresu a odpovídá pouze na jí určené pakety. Tyto pakety generuje Master (například PC) a periodicky obesílá všechny připojené slave jednotky.

V tomto článku budeme hovořit především o Master/Slave architektuře, protože na 95% aplikací to stačí. Ve speciálních případech (zabezpečovací systém atd..) se však používá vylepšená obdoba tzv. multiprocesorové komunikace známé z procesorů 8X51. Tento systém používá pouze jedno vedení na obousměrnou komunikaci, ale není určen žádný Master. Všechna zařízení ohlašují odeslání paketu o určité délce a zároveň poslouchají, zda byla data v pořádku odeslána. Pokud se tak nestalo, zastaví komunikaci a čekají, co se stalo. V té době je možno po lince přenést urgentní pakety. Tento systém se výborně hodí např. pro zařízení, která potřebují ihned přenést zařízení velmi důležitá a aktuální data, aniž by čekaly, až na něj přijde řada a Master mu dá příležitost. V praxi je však přenos užitečných dat výrazně menší, než v prvním případě (cca o 30% méně efektivní).
V Master/Slave architektuře slave nikdy nezačíná komunikaci. Je tedy pochopitelné, že master musí vysílat správné adresy.

Přenos dat po linkách RS485 a RS422

Přenos dat po linkách RS485 a RS422

Pro přenos dat mezi zařízeními se často používá sériová komunikace. Zatímco snaha po zrychlení toku dat (například mezi jednotlivými obvody v jednom přístroji) vede k užívání synchronního přenosu (data, synchronizační impulsy, rámec), pro malé objemy dat a větší vzdálenosti je naopak výhodná asynchronní komunikace. Pojmem “malý objem dat” je zde myšlena rychlost v řádech 1 až 100 kbitů za sekundu. Asynchronní komunikace minimalizuje počet vodičů potřebných k přenosu,čímž se zlevňuje komunikační vedení.

Linky RS232, RS485 a RS422
Komunikace po lince RS232 je nejběžnější, protože rozhraní RS232 má vyveden každý běžný počítač. Používá se pro připojení zařízení komunikujících maximální rychlostí 115.2 kBd na vzdálenost maximálně 15m. Kromě vodičů pro přenos dat - RxD a TxD obsahuje ještě další vodiče pro řízení toku dat. Tyto pomocné řídící signály nejsou obsaženy v linkách typu RS422 ani RS485 a musí být nahrazeny komunikačním protokolem. Ani mnohá zařízení komunikující po lince RS232tyto signály nevyužívají.

Nevýhodou linky RS232 je omezená komunikační vzdálenost a nemožnost jejího větvení. Navíc obvykle nebývá od zařízení galvanicky oddělena, což přináší problémy se zemními smyčkami, které v průmyslovém prostředí celou komunikaci znemožní. Proto tam, kde nelze použít jinou linku, lze doporučit alespoň galvanicky oddělit všechny používané signály. Kromě zlepšení komunikace se tak předejde zničení budičů a přijímačů zařízení.
Pro přenos dat na větší vzdálenosti je vhodné použít linku RS485 nebo RS422. Linky mohou být vedeny až na vzdálenost 1600m (vodiče s kapacitou do 65pF/m) a lze je větvit.
Každý ze signálů linky je přenášen po dvojici vodičů, nejlépe v provedení twistový pár. Vodiče označované a a b jsou vysílačem buzeny v protifázi a přijímač vyhodnocuje jejich napěťový rozdíl. Tímto principem se odstraní součtové (aditivní) rušení.

RS_05
Obr. 1. Přenos jednoho signálu po lince RS485 nebo RS422. D je vysílač, R je přijímač.

Z toho vyplývá i základní doporučení pro provedení linky RS485 nebo RS422 – není-li k dispozici zkroucený (twistový) pár vodičů, je třeba použít alespoň tak vedené vodiče, aby se do obou indukovaly poruchy shodně.
Zatímco linka RS232 pracuje s úrovněmi typicky –12V a +12V, úrovně linky RS485 nebo RS422 jsou menší, typický rozdíl mezi vodiči je 2V. Aby přijímač mohl pracovat diferenciálně, nesmí být rozdíl mezi zemí vysílače a zemí přijímače větší než 7V. V opačném případě se vstupy přijímače zahltí a dojde k přerušení komunikace.
Proto je nezbytné používat linky RS485 a RS422 vždy s galvanickým oddělením, jinak se jejich výhody ztratí.

Něco k tématu od čtenáře tohoto webu

Začínám se trochu seznamovat s průmyslovou sběrnicí RS485 a zaujal mě Váš článek na http://valter.byl.cz/komunikacni-linky
Při podrobnějším prostudování jsem nalezl ve Vašem článku rozpor a to kap."Na závěr několik typů: " kde píšete: "Nevíte který vodič je A a B? V klidu je B kladnější než A." S tím souhlasím, potom by v klidovém stavu na výstupu obvodu MAX48_ byla log."0" Ovšem v kap. "Zakončení sběrnice" píšete: "Proto je třeba definovat klidový stav linky připojením rezistorů podle obrázku (předpokládáme, že v klidu je vodič b zápornější než a). " Mohl byste mi sdělit, které tvrzení je pravdivé?


Původně jsem tento web udělal jen z podkladů, které mi pomáhali k řešení problémů v mé profesi, a toto je zrovna ten případ. Tyto články jsem stáhl, už nevím kde (pravděpodobně z www.hw.cz), a proto se k nim můžu jen omezeně vyjádřit.
1) "Nevíte který vodič je A a B? V klidu je B kladnější než A."
Předpokládám, že když autor tak tento obvod popsal, tak funguje (u odvodů MAXIM), ale více k tomu Vám neřeknu.
2) "Proto je třeba definovat klidový stav linky připojením rezistorů podle obrázku (předpokládáme, že v klidu je vodič b zápornější než a)."
Standardně je ale RS485 v klidovém stavu v log1. (firma AMiT)
Nedalo mi to a na výrobku firmy AMiT (budič RS485 - SN75176b) jsem změřil napětí při zapojeném zakončovacím odporu a klidových odporech a naměřil jsem:
G485(zem linky) --- A = 2,85 V
G485(zem linky) --- B = 2,51 V
A --- B = 0,32 V
Z toho vyplívá, že A je kladnější než B. Pokud máte nějaké zkušenosti s obvody MAXIM a máte nějaké informace k prvnímu článku, budu rád, když mi je napíšete.

Děkuji za odpověď. Se sběrnicí RS485 se teprve seznamuji a zkouším obvody řady MAX48_. Pokud by měla linka být v klidu na log.1, potom by bylo správné tvrzení že "A je kladnější než B", obdobně jako u obvodu SN75176b. Pro úplnost katalogové listy k MAXIM48.. a SN75176b.

Soubory: