Pavel Burget,
katedra řídicí techniky, FEL, ČVUT Praha
Profibus-PA – řešení pro automatizaci procesů
Článek popisuje základní vlastnosti komunikačního protokolu Profibus-PA. Vysvětluje funkce společné s původním protokolem Profibus-DP a uvádí definici tříd podle profilu Profibus-PA verze 3.0. V závěru zmiňuje univerzální specifikaci EDD, určenou k popisu vlastností jednotlivých zařízení a usnadňující implementaci sítí s protokolem Profibus-PA, vhodným pro automatizaci kontinuálních procesů mj. i v prostředí s nebezpečím výbuchu.
1. Úvod
Komunikační protokol Profibus patří k nejrozšířenějším průmyslovým komunikačním sběrnicím u nás i v celém světě. Nabízí tři varianty:
- Profibus-DP pro automatizaci výroby: přenosová rychlost až 12 Mb/s, linka RS-485 nebo optické vlákno, s určením pro rychlou výměnu relativně malých objemů dat;
- Profibus-FMS: přenosová rychlost do 500 kb/s, linka RS-485 nebo optické vlákno, s určením pro větší objemy dat – v hierarchii řízení představuje úroveň nad Profibus-DP;
- Profibus-PA: konstantní přenosová rychlost 31,25 kb/s, fyzická vrstva podle IEC 61158 (napěťový režim, jiskrová bezpečnost).
Profibus-PA je nejmladší specifikace z rodiny protokolů Profibus.Ve větším měřítku se začal používat až v několika posledních letech. Nicméně i za tuto dosti krátkou dobu bylo na základě této komunikační sběrnice realizováno množství aplikací. Lze zde jmenovat např. automatizaci chemičky Wacker Chemie v Kolíně nad Rýnem, automatizaci skladovacích tanků firmy Shell v Hamburku a v České republice aplikaci měření hustoty pohonných hmot na letišti v Ostravě.
Standardizační proces navíc zasáhl i tuto oblast. V současné době existuje již dobře propracovaný profil zařízení Profibus-PA verze 3.0, který definuje jednotlivé třídy zařízení, určuje jejich parametry a tím usnadňuje použití takovýchto zařízení, jejich testování i detekci chyb. V neposlední řadě jsou zařízení uvnitř příslušné třídy navzájem zaměnitelná.
2. Vlastnosti Profibus-PA vycházející ze základních funkcí Profibus-DP
2.1 Princip činnosti
Mezi protokoly Profibus-PA a Profibus-DP (dále jen PA, popř. DP) je velmi úzký vztah, neboť se navzájem liší pouze ve fyzické vrstvě a v té části spojové vrstvy, která upravuje jednotlivé přenášené znaky způsobem vhodným právě pro fyzickou vrstvu. Komunikace je tedy, stejně jako u protokolu DP, typu master/slave, což znamená, že řídicí stanice (master) zahajuje výměnu dat telegramem obsahujícím žádost o data a podřízené zařízení (slave) na tuto žádost odpovídá. K jedné sběrnici lze současně připojit i několik řídicích stanic, které si potom mezi sebou vyměňují speciální telegram (token – pověření). Řídicí stanice, která pověření právě vlastní, může po sběrnici komunikovat způsobem master/slave.
2.2 Fyzická vrstva Profibus-PA
Fyzická vrstva PA odpovídá normě IEC 61158 (dříve IEC 1158-2). Přenos je tedy synchronní s kódováním Manchester a dovoluje napájet zařízení ze sběrnice. Energii pro napájení zařízení dodávají speciální moduly označované jako převodník DP/PA, popř. spoj DP/PA.
Převodník DP/PA je z pohledu řídicí stanice transparentní a vyžaduje, aby na straně DP byla nastavena konstantní přenosová rychlost 93,75 kb/s v případě převodníku firmy Pepperl&Fuchs nebo 45,45 kb/s při použití převodníku firmy Siemens. Spoj DP/PA (DP/PA link) firmy Siemens se chová jako podřízené zařízení na straně DP a jako řídicí stanice na straně PA, díky čemuž může mít přenosová rychlost na straně DP hodnotu až 12 Mb/s a k jednomu úseku DP lze připojit několik úseků PA.
K jednomu úseku sítě PA lze připojit až 30 stanic (řídicích nebo podřízených zařízení), maximální délka segmentu je 1,9 km a maximální odebíraný proud je 320 mA. Delší sběrnici lze získat zařazením opakovačů. Ty mohou být až čtyři, čemuž odpovídá délka sběrnice až 9,5 km a počet stanic maximálně 127. Délka vedení mezi dvěma stanicemi je maximálně 1,9 km včetně odboček.
Při požadavku na zachování jiskrové bezpečnosti se maximální počet stanic zmenšuje na deset a celkový odebíraný proud nesmí být větší než 120 mA.
2.3 Cyklická komunikace Profibus-PA
Protokol Profibus-PA využívá stejný princip cyklické komunikace jako Profibus-DP. Těmto funkcím se říká základní funkce DP a jsou realizovány cyklickou komunikací mezi řídicí stanicí třídy 1 (DPM1) a řízeným zařízením. Kromě toho existuje ještě řídicí stanice třídy 2 (DPM2), která může acyklicky komunikovat s řídicí stanicí třídy 1 a je určena ke konfigurování, vizualizaci apod.
Hlavní část datové výměny mezi řídicími stanicemi typu DPM1 a podřízenými stanicemi představují telegramy typu žádost-odpověď. Řídicí stanice v okamžiku, kdy obdrží pověření a může uskutečňovat své komunikační cykly, posílá odpovídajícímu podřízenému zařízení telegram s výstupními daty a jako odpověď dostává telegram se vstupními daty (výstupními daty se zde rozumí údaje na výstupech z daného podřízeného zařízení a vstupními daty údaje na vstupech do daného podřízeného zařízení, jde tedy o výstupní a vstupní data z pohledu řídicího systému). Takové telegramy jsou označovány jako telegramy Data_exch.req, popř. Data_exch.res, vždy podle toho, zda jde o žádost, nebo o odpověď (request-response).
Telegramy typu Data_exch.xxx se však vyměňují až po inicializační sekvenci, tzv. parametrizaci a konfigurování zařízení. Parametrizace se realizuje s využitím informací z telegramu Set_param.req, ve kterém řídicí stanice specifikuje základní komunikační parametry podřízeného zařízení. Jde především o tzv. bajt příznaků, hodnotu hlídacího časovače (watchdog), identifikační číslo atd. Bajt příznaků mimo jiné obsahuje příznak, s jehož pomocí si řídicí stanice zablokuje dané podřízené zařízení pro sebe (takové zařízení lze podobným způsobem odblokovat), povel k zapnutí hlídacího časovače atd. Hlídací časovač je určen ke sledování provozu na sběrnici. Jestliže se řídicí stanice po zadané době neozývá a s podřízeným zařízením nekomunikuje, přejde podřízené zařízení znovu do stavu, ze kterého je lze dostat pouze opětovnou parametrizací. Prodlevu časovače je možné nastavit v rozmezí 10 ms až 650 s.
Po parametrizaci následuje konfigurování podřízeného zařízení, tj. specifikace množství dat, která se budou posílat v telegramu žádosti (odpovědi) vysílané řídicí stanicí, popř. podřízeným zařízením. Na oba telegramy, tedy parametrizaci a konfigurování, odpovídá řízené zařízení pouze krátkým potvrzením. O úspěšnosti inicializační sekvence se řídicí stanice dozví až po odeslání zprávy Slave_diag.req z následně příchozího telegramu Slave_diag.res. V něm podřízené zařízení informuje řídicí stanici o tom, zda byla inicializační sekvence úspěšná, tj. lze-li začít s výměnou dat. Jestliže inicializační sekvence úspěšná nebyla, obsahuje telegram Slave_diag.res informaci o důvodu neúspěchu inicializace podřízeného zařízení. Podřízené zařízení v telegramu současně posílá adresu řídicí stanice, která provedla inicializaci. Využitím telegramu Slave _dial.res může určitá řídicí stanice zjistit, zda podřízené zařízení, se kterým chce komunikovat, už není nakonfigurováno jinou řídicí stanicí.
Je-li používán programovatelný automat typu např. Siemens S7, konfiguruje se veškerý hardware, tzn. že je třeba automatu fungujícímu jako DPM1 sdělit, která podřízená zařízení jsou připojena. Příslušná řídicí stanice musí znát jejich adresy, komunikační parametry, jež jsou dodávány ve speciálním popisném souboru s každým zařízením (soubor GSD), a aktuální počet vstupů a výstupů. Na základě těchto údajů řídicí stanice sestavuje jednotlivé telegramy inicializační sekvence a následně výměny dat.
3. Vlastnosti PA vycházející z rozšířených funkcí DPV1
3.1 Rozšířená acyklická komunikace
Nad základními funkcemi DP jsou vybudovány rozšířené funkce DPV1, které kromě cyklické komunikace typu master/slave definují navíc acyklickou komunikaci master/slave. Tento typ komunikace se dále dělí na acyklickou komunikaci mezi stanicí DPM1 a podřízeným zařízením a mezi stanicí DPM2 a podřízeným zařízením. První typ komunikace se označuje MSAC1, druhý MSAC2.
Jak je patrné, existuje acyklická komunikace, kterou bylo dříve možné uskutečňovat pouze mezi dvěma řídicími stanicemi, nyní i mezi řídicí stanicí a podřízenými zařízeními. Vždy je nutné vytvořit a otevřít acyklický komunikační kanál, který dovoluje uskutečnit acyklickou výměnu dat. Způsob tvorby tohoto kanálu se liší podle typu acyklické komunikace (MSAC1 nebo MSAC2). Komunikace v kanálu se opět děje způsobem žádost-odpověď.
Všechny proměnné (parametry), které se acyklickým kanálem přenášejí, jsou adresovány pomocí dvojice slot/index. Pro představu významu této dvojice si lze adresní prostor řízeného zařízení rozdělit na jednotlivé části (sloty – tabulky), v nichž se pomocí indexu adresují jednotlivé řádky.
3.2 MSAC1 – zpracování alarmů
Model zpracování alarmů přibyl do specifikace DP (DPV1) na základě požadavku, aby řídicí stanice mohla speciálně potvrdit vznik neočekávané události na straně podřízeného zařízení. Znamená to, že uživatelská aplikace na straně podřízeného zařízení vygeneruje v případě nutnosti poplašnou zprávu a nastaví odpovídající příznak. Tento příznak zůstává nastaven tak dlouho, dokud řídicí stanice explicitně nepotvrdí jeho detekci. Jestliže vznikne větší počet neočekávaných událostí, řadí se příznaky „do fronty“. Vysouvány z fronty jsou vždy po příchodu příslušného potvrzení od řídicí stanice.
Pro zasílání alarmů z podřízeného zařízení do řídicí stanice se využívá funkce žádosti o diagnostiku z množiny standardních funkcí DP. Mechanismus této funkce spočívá v nastavení speciálního příznaku v telegramu odpovědi na žádost o výměnu dat (Data_exch.res). Je-li speciální příznak detekován, řídicí stanice přeruší výměnu dat a pošle telegram Slave_diag.req, na který podřízené zařízení odpoví telegramem Slave_diag.res, obsahujícím aktuální diagnostický údaj. Diagnostické informace podle standardních funkcí DP obsahují základní údaje o stavu podřízeného zařízení, tedy nastavení komunikačních parametrů, stav vstupních/výstupních modulů (fungují – nefungují) atd. DPV1 do takového diagnostického telegramu právě přidávají navíc údaj o aktuálním alarmu.
Přijme-li řídicí stanice telegram obsahující poplašná hlášení, potvrdí odpovídající alarm acyklickou službou Alarm_ack.req. Poplašné hlášení se zpravidla vztahuje k určitému modulu (z hlediska adresování DPV1 je možné hovořit o slotu) a jeho potvrzení může vyžadovat dodatečnou acyklickou komunikaci MSAC1_Read nebo MSAC1_Write.
Acyklický komunikační kanál je v případě zařízení DPV1 vytvářen automaticky při vzniku cyklického spojení, a tudíž existuje po celou dobu cyklické komunikace.
3.3 MSAC2 – nastavování parametrů
Tento typ komunikace umožňuje zařízení DPM2 číst a měnit parametry řízeného zařízení. Většinou jde o parametry týkající se funkce zařízení z hlediska technologického procesu.
Komunikační kanál je třeba na rozdíl od MSAC1 vytvořit explicitně, tj. pomocí služby Initiate.req. Jakmile je takový kanál vytvořen, zůstává otevřen až do doby, než DPM2 vykoná službu Abort.req. Mezitím lze uskutečňovat komunikaci typu Read.req nebo Write.req. Jestliže uživatel nemá takové požadavky, je třeba vyměňovat telegramy sloužící k udržování spojení a tím bránit automatickému uzavření komunikačního kanálu, ať ze strany řídicí stanice nebo podřízeného zařízení. Vysílání udržovacích telegramů zajišťuje řídicí stanice automaticky.
4. Vlastnosti PA vycházející z profilu zařízení
Profil zařízení pro Profibus-PA verze 3.0 definuje různé třídy zařízení rozlišených svou funkcí. Tyto třídy jsou popsány v blocích, existujících v každém zařízení. Rozlišují se tři typy bloků:
- fyzický (physical, PB),
- funkční (function, FB),
- převodní (transfer, TB)
Uvedené bloky si lze představit jako části programu řídícího chování zařízení. Skupiny parametrů ovlivňují chování těchto programových částí. V každém zařízení musí existovat alespoň jeden blok každého typu.
Fyzický blok popisuje vlastnosti zařízení jako celku a obsahuje parametry typu verze hardwaru, verze softwaru, obnovení (reset) všech parametrů, údaje o výrobci atd. Fyzický blok je stejný pro všechny třídy zařízení.
Převodní blok zajišťuje přístup k čidlu nebo k akčnímu prvku a vykonává funkce s tím spojené. Mezi ně patří kalibrace, linearizace podle určité tabulky nebo algoritmu, detekce chybného nebo nepřipojeného čidla a předávání této informace dál apod.
Funkční blok přebírá údaje od převodního bloku a předává je dál na sběrnici nebo naopak přebírá data ze sběrnice a předává je převodnímu bloku. S tím souvisí činnost funkčního bloku, kterou je např. zpracování údajů o kvalitě měřené veličiny (správná funkce čidla) pomocí převodního bloku, nastavení a kontrola mezí měřené veličiny apod. Limity jsou definovány jako horní, popř. dolní alarm nebo varování a při jejich překročení (směrem nahoru i směrem dolů) je generována poplašná zpráva (řídicí stanice ji potvrzuje acyklickým kanálem MSAC1). Funkční blok rovněž dovoluje, po uvedení do speciálního režimu, simulovat měřenou veličinu, takže je možné testovat komunikační a přístrojovou část řídicího systému, aniž je nutné celý systém připojovat k technologii. Dále lze určit, jak se má zařízení chovat při výpadku komunikace, což znamená, že kromě funkce hlídacího časovače, vycházející ze standardních funkcí DP, zde přibývají další možnosti, jež vyplývají z požadavků automatizace kontinuálních procesů.
V každém řízeném zařízení pro síť Profibus PA podle profilu verze 3.0 musí existovat tzv. adresářový objekt, což je datová struktura obsahující informace o počtu bloků, jejich umístění a počtu parametrů v každém bloku. Řídicí stanice třídy 2 se tedy může připojit k libovolnému zařízení PA, vytvořit acyklický komunikační kanál MSAC2 a přečtením a analýzou adresářového objektu zjistit počet a umístění jednotlivých bloků v daném zařízení. Parametry obsažené v těchto blocích může číst, popř. měnit a tím ovlivňovat chování zařízení PA.
5. Jednotné vlastnosti zařízení PA – specifikace EDD
Jak vyplývá z předchozího textu, jsou vlastnosti neboli parametry zařízení PA standardizovány a popsány v profilu PA (aktuálně verze 3.0), příkladem může být zařízení pro měření teploty (temperature transmitter). Při interpretaci těchto parametrů je však třeba mít k dispozici právě profil PA verze 3.0 a procházet jednotlivé tabulky se seznamem parametrů, kde kromě názvu parametru je uložen i příslušný typ dat, způsob přístupu atd.
Určité zjednodušení činnosti při implementaci zařízení v síti Profibus-PA nabízí jednotný popis vlastností zařízení PA s označením EDD. V této specifikaci jsou definovány objekty např. typu proměnná, blok apod., které odpovídají příslušným objektům z profilu PA. S každým zařízením je dodáván soubor odpovídající této specifikaci. Aplikace např. na PC, která má za úkol nastavovat parametry zařízení tak, jak to odpovídá požadavkům technologického procesu, je schopna ze specifikace EDD zjistit všechny parametry, jejich minimální a maximální hodnotu, implicitní hodnotu, formát zobrazení atd. Tak se usnadňuje uvádění zařízení do provozu.
6. Závěr
Cílem článku bylo podat základní informace o komunikačním protokolu Profibus-PA, jenž je určen pro automatizaci procesů. Pro získání podrobnějších informací je možné nahlédnout na internetové stránky www.profibus.cz nebo www.profibus.com. Zde může čtenář tematiku tohoto článku zasadit do širších souvislostí týkajících se protokolu Profibus-DP nebo dalších směrů vývoje. Rovněž je možné odkázat na připravované další pokračování článků o protokolu Profibus v tomto časopise, které se bude zabývat novinkami posledních let a výhledem do budoucnosti.
Podrobné informace, potřebné např. pro vývoj vlastních zařízení, lze nalézt v následujícím seznamu literatury.
Literatura:
[1] PROFIBUS Specification (FMS, DP, PA). Profibus International, 1998.
[2] Specification of PROFIBUS Electronic Device Description (EDD) Language (Draft). Profibus International, 1999.
[3] Profile for Process Control Devices, version 3.0. Profibus International, 1999.
[4] PROFIBUS-DP Extensions. Profibus International, 1998.
Názvosloví |
DP – Distributed Periphery
|
distribuovaná periferie |
|
PA – Process Automation
|
automatizace procesů |
|
GSD – Gerätstammdatei
|
soubor obsahující údaje o zařízení Profibus (je nutný ke konfigurování řízeného zařízení řídicí stanicí) |
|
EDD – Electronic Device Description
|
specifikace zařízení předávaná v určitém elektronickém tvaru |
|
DPV1 – Profibus-DP extensions
|
rozšířené funkce protokolu Profibus-DP |
|
DPM1 – Profibus-DP master class 1
|
řídicí jednotka provozující cyklickou výměnu dat |
|
DPM2 – Profibus-DP master class 2
|
řídicí jednotka používaná především k parametrizaci a konfigurování zařízení |
|
MSCY1 – Master-slave cyclic communication
|
cyklická komunikace typu master/slave |
|
MSAC1 – Master-slave acyclic communication – type 1
|
MSAC2 – Master-slave acyclic communication – type 2
|
acyklická komunikace typu master/slave – typ 1 (resp. 2) |
|
PB – Physical Block
|
fyzický blok v podřízeném zařízení Profibus-PA (slave) |
|
FB – Function Block
|
funkční blok v podřízeném zařízení Profibus-PA (slave) |
|
TB – Transducer Block
|
převodní blok v podřízeném zařízení Profibus-PA (slave) |
|