CompactLogix do DeltaV přes Modbus RTU: Navrhněte role
Praktická příručka pro Modbus RTU mezi CompactLogix a DeltaV pokrývající role klienta a serveru, smlouvy registrů, zapojení RS-485, potvrzování příkazů, zpracování zastaralých dat, časování a akcep...
Propojení CompactLogix–DeltaV prostřednictvím Modbus RTU může vyměňovat jen několik desítek hodnot, a přesto se stát jedním z nejméně předvídatelných rozhraní v provozu. Protokol je jednoduchý; inženýrské rozhraní nikoli. Většina poruch začíná ještě před zapojením vodičů, kdy žádný z týmů neurčí, kdo odesílá požadavky, kdo odpovídá za příkazy, jak jsou reprezentovány adresy ani co má který systém dělat se zastaralými daty.
Stabilní sériová integrace vyžaduje jednoho iniciátora požadavků, schválený registrní kontrakt, jednoznačné stavy kvality a správně vybudovaný segment RS-485.
První konstrukční rozhodnutí je architektonické. DeltaV může komunikovat prostřednictvím sériového rozhraní, zatímco CompactLogix obvykle potřebuje komunikační modul v šasi nebo externí bránu. Datový list sériového rozhraní DeltaV řady M společnosti Emerson dokumentuje podporu Modbus RTU a Modbus ASCII. U konkrétního instalovaného systému je stále nutné ověřit přesnou revizi modulu, firmware řídicí jednotky, firmware brány a podporovanou topologii.
Určete jednoho iniciátora požadavků pro každý sériový segment
Tradiční terminologie Modbus používala označení master a slave. V současné dokumentaci se často používají pojmy klient a server. Na segmentu Modbus RTU zahajuje transakce jeden klient a servery odpovídají na požadavky adresované jim. Dva nezávislí klienti nemohou bezpečně sdílet stejnou dvouvodičovou sběrnici, protože vzájemně nekoordinují časování zpráv.
Pokud je klientem DeltaV, musí strana CompactLogix zpřístupňovat data prostřednictvím rozhraní serveru Modbus. Program PLC zapisuje schválené hodnoty do datové oblasti brány a brána odpovídá na dotazy systému DeltaV. Pokud má PLC zahajovat čtení a zápisy, použijte samostatný port nebo cestu přes bránu. Nepředpokládejte, že zařízení označené jako „kompatibilní s Modbus“ může současně plnit obě role.
Stránka specifikací organizace Modbus rozlišuje aktuální příručku pro sériovou implementaci od zastaralého dokumentu z roku 1996. Toto rozlišení je důležité, když specifikace projektu pouze uvádí „použít Modbus“, aniž by identifikovala fyzickou vrstvu a pravidla implementace.
Považujte mapu registrů za kontrakt rozhraní
Užitečná mapa registrů je více než seznam odkazů 4xxxx. U každého bodu by měl být uveden protokolový offset, zobrazovaný odkaz, funkční kód, datový typ, pořadí slov, pořadí bajtů, měřítko, technická jednotka, směr čtení nebo zápisu, platný rozsah, perioda aktualizace, vlastník zdroje a chování při poruše. Přidejte číslo revize a záznam o schválení, aby oba systémy implementovaly stejnou mapu.
Adresování vyžaduje samostatnou kontrolu. Některé konfigurační nástroje zobrazují přídržný registr 40001, ale při přenosu používají offset nula. Jiné požadují přímo offsety počítané od nuly. Mapa, která zaznamenává oba tvary, zabraňuje známému posunu o jeden registr. Před načtením produkčních hodnot otestujte rozpoznatelný vzor.
Stejně jednoznačně je třeba řešit hodnoty zabírající více registrů. 32bitový REAL zabírá dva 16bitové registry, ale jednotlivé produkty se liší pořadím registrů. Testujte známé bitové vzory místo spoléhání na označení jako „big endian“, které týmy někdy používají různě. Dokumentovaná pravidla převodu jsou potřebná také pro celá čísla se znaménkem i bez znaménka, sdružování booleovských hodnot a celočíselné hodnoty se škálováním.
Oddělte příkazy, stav a potvrzení
Nenechávejte zápis z DCS směřovat přímo na fyzický výstup. Zapisujte příkazy do odkládací oblasti uvnitř CompactLogix. PLC by mělo před změnou řízeného stavu ověřit režim, podmínky povolení, rozsah, sekvenci, aktuálnost a vlastnictví. Poté by mělo vrátit stav přijetí, stav odmítnutí nebo kód důvodu.
Potvrzovací mechanismus příkazů je obzvláště užitečný pro akce spuštění, zastavení, nastavení žádané hodnoty a resetu. Číslo sekvence nebo přepínaný bit požadavku umožní přijímači rozlišit nový požadavek od hodnoty ponechané v registru. Potvrzení by mělo identifikovat zpracovanou sekvenci a výsledný stav. Tím se zabrání opětovnému provedení starého příkazu po obnovení komunikace.
Vybudujte vrstvu RS-485 pro skutečné podmínky provozu
Použijte sběrnicovou topologii typu daisy chain namísto hvězdy. Zakončete pouze dva fyzické konce, odbočky udržujte krátké, zachovejte polaritu vodičů a předpětí realizujte podle příruček zařízení na jednom kontrolovaném místě. Uzemnění stínění musí odpovídat návrhu uzemnění provozu a pokynům výrobce; improvizované propojení může namísto odstranění problémů s běžným režimem tyto problémy způsobit.
Všechny uzly musí používat stejnou přenosovou rychlost, paritu, počet stop bitů a režim rámcování. Modbus RTU a Modbus ASCII nemohou koexistovat na stejném segmentu. Stejně tak nelze do sběrnice Modbus jednoduše přimíchat DF1. Brána provádějící převod protokolu vytváří dvě samostatné sítě s odlišným časováním, diagnostikou a odpovědností.
Časování dotazování vyžaduje rozpočet. Započítejte délku požadavku, očekávanou délku odpovědi, přenosovou rychlost, dobu zpracování serverem, prodlevu mezi rámci, opakované pokusy a časový limit. Pokud je to praktické, seskupujte sousedící registry. Neodpovídající server by neměl nutit každý funkční bod čekat na několik dlouhých opakovaných pokusů. Zaznamenávejte dobu skenování za běžných podmínek i s jedním odpojeným serverem.
Zpřístupněte kvalitu spolu s každým blokem hodnot
Uvěřitelná hodnota může být nebezpečnější než zjevná porucha. Každý vyměňovaný blok by měl obsahovat stav komunikačního spojení, čas posledního úspěchu, stáří dat a definovaný limit zastarání. Uživatelé musí vědět, zda je hodnota aktuální, zachovaná, nahrazená nebo neplatná.
Záložní chování závisí na riziku procesu. Některé stavové hodnoty lze při ztrátě komunikace vynulovat. Jiné měřené hodnoty lze zachovat pro kontext obsluhy, ale zablokovat pro automatické řízení. Příkazy mohou vyžadovat bezpečné uzavření, zmrazení nebo předání místnímu řízení. Tato rozhodnutí patří do analýzy rizik, nikoli do výchozího nastavení brány.
Uvádějte systém do provozu od vodičů až po akci procesu
Začněte se sítí izolovanou od produkčních příkazů. Ověřte polaritu, zakončení, předpětí a sériová nastavení. Načtěte malý diagnostický blok a poté otestujte známé celočíselné vzory i vzory s plovoucí desetinnou čárkou. Potvrďte správné zarovnání adres a pořadí slov. Změřte běžnou dobu skenování, vynuťte časové limity a ověřte, že se stav zastarání zobrazuje tam, kde jej mohou vidět obsluha i logika.
Dále otestujte každý příkaz v celém řetězci: požadavek DCS, přenos přes bránu, validaci v PLC, akci výstupu, zpětnou vazbu a potvrzení. Zahrňte odmítnuté požadavky, hodnoty mimo rozsah, ztrátu komunikace během transakce, vypnutí a zapnutí napájení i obnovení provozu. Úspěšné načtení živých dat není akceptací řídicího rozhraní.
Související rozhraní a hardware jsou sdruženy ve kolekci ProSoft. Širší nabídka vybavení hostitelských systémů je uvedena v části systémy DCS a řídicí systémy. Výběr by se měl řídit požadavky na podporovaný řadič, firmware, port, galvanické oddělení a prostředí, nikoli pouze názvem protokolu.
Pohled z hlediska inženýringu
Modbus RTU zůstává užitečný pro omezenou výměnu pomalu se měnících dat. Jeho slabinou je absence vestavěného sémantického kontextu. Protokol nedokáže přijímači sdělit, že registr je zastaralý, příkaz nebezpečný nebo že se po údržbě změnilo měřítko. Tyto ochrany musí být navrženy v kontraktu registrů a aplikační logice.
Nejlepší rozhraní proto není to s největší mapou. Je to rozhraní, jehož vlastnictví, časování, kvalita, záložní chování a doklady o testování zůstanou srozumitelné i po mnoha letech. Právě to mění jednoduché sériové spojení v udržitelnou hranici řídicího systému.