Může být náročné nakonfigurovat zařízení RS485. Kompatibilita mezi protokoly Modbus a RS-485 je často problém. Možná vás čeká dlouhé ladění, protože tyto dva protokoly fungují na různých vrstvách komunikačního stacku.
Protokol RS485 je elektrický standard fungující na fyzické vrstvě stacku. Definuje například délku kabelu, přijatelné úrovně napětí a počet zařízení, která mohou sdílet jednu sběrnici.
Protokol Modbus funguje na aplikační vrstvě a zaměřuje se na to, jak jsou zprávy strukturovány, adresovány a interpretovány přijímačem. Abyste problém účinně vyřešili, musíte vědět, která vrstva jej způsobuje.
Rozdíly mezi Modbus a RS485
Následující tabulka porovnává nejdůležitější parametry těchto dvou klíčových protokolů, které ovlivňují jejich kompatibilitu.
| RS485 | Modbus | |
| Vrstva | Fyzická (OSI vrstva 1) | Aplikační (OSI vrstva 7) |
| Definováno | EIA/TIA-485 | Modicon v roce 1979; nyní otevřené |
| Typ | Elektrický standard | Komunikační protokol |
| Topologie | Víceodbočná sběrnice podporuje až 32 uzlů bez opakovačů | Master/Slave s 1 masterem a až 247 slave zařízeními |
| Funkce | Definuje zapojení, úrovně signálu a další elektrické charakteristiky | Definuje zprávu, rámování dat a funkční kódy |
| Datový formát | Diferenciální napěťové signály | RTU (binární) nebo ASCII rámce |
| Detekce chyb | Není specifikováno | CRC (RTU) nebo LRC (ASCII) |
| Max. rychlost | Až 10 Mb/s na krátké vzdálenosti | Typicky 9 600 – 115 200 b/s s RTU/ASCII přes RS485 |
| Max. vzdálenost | 1 200 m při 100 kb/s | Závisí na fyzické vrstvě |
| Varianty | RS422 (bod-bod), RS232 (krátký dosah) | Modbus RTU, Modbus ASCII, Modbus TCP/IP |
Co je Modbus?
Modbus je komunikační protokol aplikační vrstvy vyvinutý společností Modicon v roce 1979. Je to otevřený, bezplatný protokol, který definuje, jak jsou zprávy strukturovány při odesílání mezi hlavním zařízením a jedním nebo více podřízenými zařízeními. Modbus běží na různých přenosových řešeních, včetně RS485, RS232, RS422 nebo Ethernetu (TCP/IP).
Klíčové vlastnosti
• Architektura: Jeden master komunikuje až s 247 adresovatelnými slave zařízeními, očíslovanými 1–247, přičemž ID 0 je vyhrazeno pro broadcast.
• Komunikační model: Master iniciuje veškerou komunikaci odesíláním požadavků na slave zařízení, která mohou pouze odpovídat.
• Adresování: Všechny požadavky obsahují cílové Slave ID, které je zopakováno v každé odpovědi.
• Datové typy: 1bitové cívky a diskrétní vstupy, 16bitové vstupní a holding registry.
• Detekce chyb: LRC v režimu ASCII a CRC-16 v režimu RTU.
Datový model
• Cívky (1bitové, pro čtení/zápis) poskytují stav diskrétních výstupů.
• Diskrétní vstupy (1bitové, pouze pro čtení) pro stav diskrétních vstupů.
• Vstupní registry (16bitové, pouze pro čtení) ukládají naměřené vstupní hodnoty.
• Držené registry (16bitové, pro čtení/zápis) uchovávají konfigurační a výstupní hodnoty.
Varianty: RTU, ASCII, TCP/IP
• Modbus RTU je standardem pro použití s RS485 díky své rychlosti a kompaktní velikosti. Využívá binární kódování a kontrolu chyb CRC-16.
• Modbus TCP/IP se používá přes Ethernet a nepotřebuje CRC/LRC, protože TCP zajišťuje integritu komunikace.
• Modbus ASCII využívá kódování pomocí hexadecimálních znaků a kontrolu chyb LRC. Tato varianta se obvykle používá na RS232 a je čitelná pro člověka.
Co je RS485?
RS485 (EIA-485) je elektrický standard fungující na fyzické vrstvě, který definuje, jak jsou signály přenášeny po vodičích. Protokol specifikuje aspekty jako impedance kabelu, úrovně napětí, maximální délku kabelu a topologii sběrnice. RS485 si není vědom protokolů vyšších vrstev, formátů zpráv ani obsahu dat.
Klíčové vlastnosti
• Signalizace: Diferenciální, neboli napěťový rozdíl mezi vodiči A a B, je vysoce odolný vůči elektrickému rušení.
• Topologie: Podporuje sběrnici typu multi-drop až s 32 jednotkovými zátěžemi na jednom páru vodičů bez opakovačů.
• Maximální vzdálenost: Přibližně 1 200 m při 100 kb/s, s kratšími dosahy při vyšších rychlostech přenosu dat.
• Maximální přenosová rychlost: Podporuje až 10 Mb/s na krátké vzdálenosti pod 15 m.
• Duplex: Výchozí je poloduplex s jedním krouceným párem. Plný duplex lze realizovat se dvěma páry.
Související standardy: RS232 a RS422
• RS232 je jednokoncový protokol typu bod–bod s maximálním dosahem přibližně 15 m. Signály nejsou kompatibilní s RS485. Přímé adaptéry se obvykle používají pro implementace RS485-to-USB nebo RS-485-to-Ethernet.
• RS422 poskytuje diferenciální signalizaci jako RS485, ale je omezen na jeden vysílač na lince pro komunikaci typu bod–bod bez podpory multidrop.
Nástroj pro monitorování a analýzu dat Modbus
Řešení problémů s komunikací vyžaduje pochopení rozdílu mezi RS485 a Modbusem a získání přehledu o tom, co je přenášeno po sběrnici. Nejúčinnějším způsobem, jak tohoto přehledu dosáhnout, je analyzovat nezpracovaný provoz sériového portu. Tato analýza vám umožní efektivně ladit problémy ověřením hodnot registrů a odhalením chyb v adresování. Serial Port Monitor (SPM) je softwarové řešení, které tyto informace poskytuje.
Testovací software Modbus je analyzátor protokolu, který poskytuje informace o komunikaci Modbus přes rozhraní RS232/RS422/RS485. Software umožňuje uživatelům snadno odhalit a vyřešit problémy při testování a ladění komunikace Modbus. Jednou z jeho nejcennějších funkcí je schopnost zobrazovat a zaznamenávat data procházející sériovým portem systému.
Software pro testování Modbusu
Modbus Analyzer umožňuje uživatelům zobrazovat, protokolovat a ladit sériová data Modbus RTU a ASCII během jejich přenosu přes porty RS485 systému.
Tento profesionální software pro testování Modbus umožňuje uživatelům:
• Připojit se k sériovým portům, které již používá jiný program, a monitorovat je. Pro okamžité sledování a ladění je k dispozici zobrazení všech dat přijatých portem v reálném čase.
• Monitorovat více sériových portů současně. Můžete synchronně analyzovat aktivitu několika sériových portů v rámci jedné relace. Data proudící oběma směry jsou pro snadné prohlížení prezentována na principu FIFO (první dovnitř, první ven) v jednom protokolu.
• Zobrazit data v řadě formátů včetně tabulkového, terminálového, řádkového a výpisového zobrazení. Více zobrazení lze vidět současně a můžete používat filtry k jemnému doladění monitorování.
• Provádět emulaci dat přenášených do sériového zařízení pro monitorování aktivity při vystavení konkrétním příkazům.
Často kladené otázky
Ne, jsou to odlišné, vzájemně se doplňující protokoly. Modbus je komunikační protokol, zatímco RS485 definuje fyzické elektrické rozhraní. RS485 je cesta, po které Modbus přenáší zprávu.
Standard RS485 podporuje až 32 jednotkových zátěží na sběrnici bez opakovačů, zatímco Modbus umožňuje až 247 slave zařízení. Typicky je fyzickým limitem standardních 32 uzlů, přičemž opakovače se používají k rozšíření počtu podporovaných zařízení.
Modbus RTU je kompaktní a efektivní protokol, který přenáší data v binární podobě s kontrolou chyb CRC. Je to preferovaný protokol pro použití s RS485. Modbus ASCII přenáší data jako lidsky čitelné hexadecimální znaky a používá kontrolu chyb LRC. Je to méně efektivní řešení, ale usnadňuje zjednodušené ladění na spojích RS232.
Ano. Modbus může také fungovat přes připojení RS232, RS422 nebo Ethernet (Modbus TCP/IP). RS485 je preferovaná fyzická vrstva pro Modbus v průmyslovém prostředí díky své schopnosti připojení více zařízení na jedné sběrnici a odolnosti vůči rušení.