V článku je popsán nový způsob správy a archivace údajů o proměnných zavedený v oblasti projektování uživatelských algoritmů řídicích stanic firmy ZAT a. s. Jsou ukázány přednosti centrální databáze dat a popsány možnosti této databáze s ohledem na spolupráci s programovacím prostředkem Pertinax 2007 (ZAT), monitorovacím systémem InTouch a archivačním systémem Historian (oba od firmy Wonderware).
Co je to Projekční databáze Pertinax
Databázový systém s názvem Projekční databáze Pertinax (dále PD Pertinax) je ucelený systém popisu proměnných a jednotné správy příslušných údajů, tvořící nedílnou součást systému projektování systémů řízení ve firmě ZAT a. s. Instance tohoto databázového systému představuje jedinou centrální databázi pro daný projekt, obsahující veškeré technické údaje tvořící daný projekt systému řízení, tzv. data projektu. Daty projektu se zde rozumí všechny proměnné týkající se technologického zařízení (měřené veličiny, měřicí signály, řídicí signály, vnitřní – počítané veličiny) a jejich parametry (jméno, vazba na svorkovnice, vazba na řídicí systém, vazba na monitorovací systém atd.). Jednotnou správou se rozumí skutečnost, že veškeré operace s daty projektu jsou prováděny pouze nad touto centrální databází, a to prostřednictvím jediného programového modulu – klientu PD Pertinax.
Jak jsme projektovali bez PD Pertinax
Podklady pro projekt systému řízení zákazník poskytuje většinou ve formě souborů typu CSV nebo XLS. Tyto tzv. soubory zadání obsahují informace o výstupech a vstupech signálu reprezentujícího danou veličinu z technologického zařízení nebo do tohoto zařízení (snímač, svorka, vana atd.), kód signálu (kód KKS), popis signálu z hlediska funkce v daném technologickém zařízení a jeho elektrický a fyzikální rozsah.
Informace o tom, jak je signál popsán ve vlastním uživatelském algoritmu příslušné řídicí stanice, je obsažena v programovacím prostředku Pertinax 2007. Zde je na jednotlivých výkresech s použitím funkčních bloků sestaven uživatelský algoritmus, jehož vstupy a výstupy jsou popsány pevně definovanými texty (tzv. vlajky). Tyto vlajky nemají žádnou zřejmou vazbu na signály obsažené v souborech zadání. Není zde žádný odkaz na kód signálu ani na jeho hardwarové vlastnosti, jako je třeba vstupní svorka, elektrický a fyzikální rozsah atd.
Monitorovací systém (typicky produkt InTouch od firmy Wonderware) má rovněž vlastní systém popisu signálů. Spojovacím prvkem se signály v souborech zadání je kód signálu. Propojení s uživatelským algoritmem obstarává tzv. item, což je rovněž předem definovaný text s pevnými pravidly, který opět na první pohled neobsahuje srozumitelnou vazbu na vstup nebo výstup (vlajku) v uživatelském algoritmu.
Jestliže byla za popsaného dřívějšího stavu provedena libovolná změna ve vlastnostech signálu (jméno, popis, rozsah, vlajka, item atd.), bylo nutné tuto změnu zavést na třech místech. V souboru zadání, jenž popisuje hardwarové vlastnosti signálu, v uživatelském algoritmu řídicí stanice a ještě v databázi monitorovacího systému. Vzhledem k tomu, že uživatelský algoritmus řídicí stanice a uživatelský monitorovací program nevytváří jeden a tentýž pracovník, bylo zavádění změn do projektu a jeho udržování v konzistentním stavu poměrně náročné (obr. 1).
V mnoha případech byla nakonec jedinou platnou databází signálů pro daný projekt databáze udržovaná v rámci monitorovacího systému. Tento popis signálu byl ovšem nedostačující, neboť jednotlivé údaje v databázi monitorovacího systému neobsahovaly téměř žádné informace o způsobu zpracování signálu uživatelským algoritmem řídicí stanice ani potřebné informace o jeho hardwaru.
Základní koncepce PD Pertinax
Základem PD Pertinax je Microsoft SQL server 2005 (MS SQL). Každý projekt obsahuje svoji vlastní databázi (tyto instance PD Pertinax mají ale vždy stejnou strukturu) s volitelným uživatelským jménem. Struktura databáze je vytvořena generačním skriptem, který definuje jednotlivé tabulky databáze a vazby mezi nimi tabulkami. Generační skript dále generuje uložené procedury, které efektivně vykonávají veškeré činnosti směrem do databáze (insert, update a delete), a pohledy, které naopak zajišťují rychlý přístup k datům uloženým v databázi.
Vlastnosti PD Pertinax
Uživatel není při vkládání dat svázán pevnou strukturou databáze. Pokud chce do databáze uložit data, která nemají své pevné místo v tabulkách, může si s použitím záložky Uživatelské atributy přidat „nové sloupce“ s vlastním jménem. Tuto vlastnost lze s výhodou použít při ukládání hardwarové konfigurace signálu. Je-li např. třeba do databáze ke každému signálu přidat číslo vstupní svorky, nadefinuje se uživatelský atribut Svorka, jehož hodnotou bude u každého signálu číslo jeho svorky.
Vzhledem k volbě platformy MS SQL
lze k databázi přistupovat systémem klient/server. Nad jednou centrální databází tak může současně pracovat větší počet uživatelů. Každý uživatel je přihlášen jménem a heslem a každá činnost daného uživatele je zaznamenávána. Lze tedy dohledat, kdo, kdy a jaký úkon v databázi provedl.
Jestliže je to nutné, lze daný soubor databáze odepnout od centrálního serveru a připnout k serveru MS SQL na lokálním PC (třeba notebook, který si uživatel vezme na místo realizace zakázky – stavbu). Zde lze provádět veškeré úkony nad databází (insert, update, delete). Po návratu zpět lze obsah obou databází synchronizovat, tj. veškeré změny uskutečněné v lokální databázi přenést do centrální databáze. Jestliže v centrální databázi byla již provedena stejná změna jako v lokální, je vyhlášen konflikt, který musí obě strany vyřešit.
Vlastnosti signálu
Popis signálu v PD Pertinax má tři části – základní údaje o signálu, údaje o zdrojích (vlajek) připojených k tomuto signálu a údaje pro monitorovací systém InTouch a archivační systém Historian, které jsou připojeny k danému zdroji.
Základními údaji signálu jsou jméno signálu (jméno signálu je v dané instanci PD Pertinax jednoznačné), typ signálu (analogový, binární), kód KKS, popis signálu, fyzikální rozsah a měrová jednotka. Jestliže jsou k signálu přidruženy uživatelské atributy, jsou rovněž zobrazeny jako základní údaje signálu. Základní popis signálu v podstatě prezentuje hardwarové vlastnosti signálu.
Přiřazení signálu ke stanici a komunikačnímu kanálu
Ke každému signálu je možné připojit kolekci zdrojů (vlajek), které jsou použity v algoritmu řídicí jednotky. Vlastnosti těchto zdrojů (vlajek) jsou jméno zdroje (jméno zdroje je jednoznačné pro danou řídicí stanici), typ zdroje (bool, uInt8, Int16, uInt16 atd.), popis zdroje a skupina zdroje. Každý signál je přiřazen do určité skupiny zdroje. Skupina zdroje popisuje spojení daného signálu se stanicí a komunikačním kanálem. Stanice může být např. typu PlcZat, PlcPrimis, InTouch atd., komunikační kanál může být typu Pernet, FMS, RDD atd.
Každý zdroj (vlajka) může být rozšířen o vlastnosti, které jsou nutné, jestliže tento zdroj (vlajka) má být použit v monitorovacím systému InTouch a nebo v archivačním systému Historian. Potom tento zdroj obsahuje veškeré náležitosti vyžadované signálem určeným pro tyto systémy.
Klient PD Pertinax
Klient PD Pertinax (dále jen klient) je programový modul vytvořený na platformě .NET v jazyce C#. Klient umožňuje přistupovat k vybrané instanci PD Pertinax lokálně i na dálku. Po připojení k dané databázi je možné importovat data, vybírat je podle zadaných kritérií a exportovat.
Import signálu do databáze
Většina vstupních dat přichází od zákazníka v souborech typu CSV nebo XLS. Do PD Pertinax se tyto soubory importují pomocí šablon. Šablona je předpis, který říká, na jaké místo v databázi bude uložen daný sloupec ze souboru. Šablonu lze uživatelsky sestavit a uložit do souboru ve formátu XML. Takto lze nadefinovat několik šablon pro různé struktury zadávacích souborů.
Před vlastním uložením dat ze souboru do databáze jsou prováděny kontroly, jejichž cílem je zajistit, aby uložená data odpovídala jednak typové bezpečnosti (číslo přečtené ze souboru je opravdu to správné číslo) a jednak nastavené koncepci databáze (např. jednoznačné jméno signálu, přiřazení zdroje do správné skupiny, jednoznačné jméno zdroje ve stanici atd.). Je-li v dané řádce souboru nalezena chyba, je vypsána do seznamu chyb. S použitím souborů lze v databázi provádět i hromadné změny dat. Zda má jít o import nových signálů, anebo o změny některých vlastností existujících signálů, určuje
struktura šablony.
Výběr signálů z databáze
Klient PD Pertinax umožňuje uživateli poměrně snadno klást dotazy na obsah databáze. Dotazy jsou kladeny pomocí stromové struktury, která je rozdělena na část pevnou a část volitelnou. V pevné části stromové struktury jsou předem nadefinovány dotazy, které provádějí pouze základní výběr dat z databáze. Například lze takto položit dotaz, který vrací všechny analogové signály, binární signály, signály patřící ke konkrétnímu kanálu, skupině, stanici atd.
Z jednotlivých položek stromu v pevné části je možné složit kombinovaný dotaz ve volitelné části stromu. Tímto jednoduchým způsobem lze sestavovat i poměrně složité dotazy na obsah PD Pertinax. Počet takto složených dotazů je neomezený. Struktura stromu, která nese informaci o kombinaci dotazů, je automaticky ukládána do PD Pertinax a při spuštění klientu je rovněž automaticky načtena.
Odpověď na dotaz se zobrazuje v datové mřížce, z níž lze vybrat konkrétní signál, jehož vlastnosti se zobrazí v okně Vlastnosti signálu. V tomto okně se zobrazují jednak základní vlastnosti signálu, dále všechny nadefinované uživatelské atributy a všechny zdroje (vlajky) patřící k tomuto signálu. Jestliže má být zdroj (vlajka) použit pro monitorovací systém InTouch nebo archivační systém Historian, jsou v této mřížce rovněž zobrazeny všechny vlastnosti signálu pro tyto systémy. Všechny již zmíněné prvky signálu lze editovat a ukládat do projekční databáze (obr. 2).
Export signálů z databáze
Výsledky získané jako odpovědi na všechny zadané dotazy, a to s použitím jak pevné, tak i volitelné stromové struktury, je možné exportovat do souboru typu CSV. Získané soubory lze následně použít jako zdrojové soubory pro případné hromadné změny signálů v PD Pertinax (v souboru se provedou požadované změny, které se importem tohoto souboru promítnou do databáze).
Je možné exportovat i signály pro monitorovací systém InTouch a archivační systém Historian. Takto získaný soubor má všechny náležitosti nutné k tomu, aby mohl být importován do daných systémů.
PD Pertinax jako centrální zdroj dat
Úkolem PD Pertinax je fungovat jako jediný centrální zdroj dat pro vývojový nástroj Pertinax 2007, monitorovací program vytvořený v systému InTouch a archiv projektu udržovaný v archivačním systému Historian (obr. 3).
Centrální zdroj dat pro Pertinax 2007
Aplikační program pro řídicí stanici se vytváří pomocí programového vývojového nástroje Pertinax 2007. Vstupy a výstupy aplikačního programu jsou popsány zdroji (vlajkami). Uživatelský program je sestavován na výkresech z funkčních bloků, a to vždy pro konkrétní řídicí stanici. Pro tuto konkrétní stanici lze z PD Pertinax vybrat požadovaný zdroj (vlajku) a položit jej na výkres s použitím grafického prvku XPort, který spolu se zvoleným zdrojem zobrazí také, podle záznamu v databázi, jméno signálu a popis signálu, které patří k danému zdroji.
Je-li třeba změnit vlastnosti signálu (jméno, popis atd.) u zdroje, který je již položen s prvkem XPort na výkres, provedou se potřebné změny pouze v PD Pertinax. Synchronizací všech výkresů se tyto změny přenesou do prvku XPort příslušného zdroje (vlajky).
Centrální zdroj dat pro InTouch a Historian
Obdobně jako v předchozím případě se postupuje také při změnách vlastností signálů určených pro systémy InTouch nebo Historian. Dané změny se provedou v PD Pertinax a poté se exportují z databáze do souboru typu CSV. Data jsou v tomto souboru uspořádána tak, jak očekává program pro import dat do systému InTouch nebo Historian (program je součástí instalačního balíku obou systémů), s jehož pomocí se signály do zmíněných systémů definitivně importují.
Přínos PD Pertinax pro uživatele řídicího systému
Je zřejmé, že příslušná instance PD Pertinax bude rovněž poskytována uživateli řídicího systému jako konečná databáze signálů I/O daného projektu. Uživatel si bude moci do popisu jednotlivých signálů postupně doplňovat technické i provozní údaje, které se během tvorby projektu nedostaly do databáze, ale z pohledu uživatele jsou důležité.
Dalším přínosem pro konečného uživatele je možnost rychle se orientovat při hledání vazby daného signálu směrem k technologickému zařízení, aplikačnímu programu v řídicí stanici či monitorovacímu systému. Vzhledem k tomu, že PD Pertinax poskytuje ucelený popis signálu z centrálního úložiště dat, stačí pro získání těchto informací zvládnout práci s jediným programovým prostředkem, a tím je klient PD Pertinax. Dříve byla pro tuto činnost nutná znalost obsluhy vývojového prostředí Pertinax 2007 a monitorovacích systémů InTouch.
Projekční databáze Pertinax je otevřený systém, který umožňuje přístup k jednotlivý datům i z jiných programových prostředků, než jsou klient PD Pertinax a vývojové prostředí Pertinax 2007. Například je možné poskytnout data operátorovi sledujícímu zobrazení v systému InTouch, neboť ke každému zobrazenému signálu lze vznést dotaz do PD Pertinax. Výsledek tohoto dotazu (ucelený popis daného signálu) je zobrazen v okně operátorského zobrazení v systému InTouch.
Závěr
Projekční databáze Pertinax (PD Pertinax) je jedním ze základních systémů správy dat pro projektování řídicích stanic a monitorovacího a archivačního systému. Udržuje veškeré informace o datech projektu na jediném místě, umožňuje je měnit pouze jediným nástrojem a zajišťuje tak jejich dostupnost, úplnost a konzistenci. Projekční databáze Pertinax je otevřený systém schopný sdílet data, která obsahuje, s ostatními vývojovými nástroji. V současné době je tento systém použit při realizaci zakázky na rekonstrukci SKŘ, moduly M3, M4, M5, v jaderné elektrárně v Dukovanech a zakázky rekonstrukce řídicího systému v závodě Teplárna Příbram.
Ing. Libor Liška, ZAT a. s.
Článek je editovanou verzí stejnojmenného příspěvku autora publikovaného ve sborníku z konference Automatizace, regulace a procesy – ARaP 2009, Praha, listopad 2009, ISBN 978-80-903844-3-9.
Obr. 1. Změny bylo dříve možné v projektu přenášet všemi směry – udržet data projektu úplná a konzistentní bylo velmi náročné
Obr. 2. Klientské zobrazení obsahu PD Pertinax
Obr. 3. Projekční databáze Pertinax je centrálním zdrojem dat pro Pertinax 2007, InTouch, Historian a pro případné exporty z databáze – změny dat se provádějí pouze na jediném místě