Aktuální vydání

celé číslo

07

2020

Řízení distribučních soustav a chytrá města

Měření a monitorování prostředí v budovách a venkovním prostředí

celé číslo

Control Web – všestranný pomocník pro tvůrce aplikačních programů

Programový systém Control Web® je jednotné programové prostředí pro vývoj a provozování aplikačních programů v oblastech automatizačních a informačních systémů. Rozhodně není pouhým systémem SCADA. Pro někoho může být Control Web cenově přístupným nástrojem, který umožní levně realizovat řízení např. malé vodní elektrárny. Pro někoho jiného je to prostředek tvorby rozsáhlého podnikového distribuovaného informačního systému s desítkami tisíc měřených bodů, obsahujícího stovky operátorských obrazovek a pracujícího na mnoha počítačích zapojených do sítě. Pro studenty je to nástroj, který jim ušetří spoustu práce s laboratorními pracemi, neboť dokáže úlohy modelovat, simulovat, vizualizovat a také automaticky měřit a tisknout protokoly. Jednotné prostředí poskytuje autorům aplikačních programů komponenty a služby včetně grafického vývojového prostředí pro rychlé vyřešení veškerých požadavků kladených na současné moderní automatizační systémy. Control Web je škálovatelný ve velkém rozsahu, sahajícím od malých kompaktních vestavěných řídicích jednotek až po rozsáhlé redundantní klastrové serverové systémy.
 

Komponentová, objektově orientovaná koncepce

 
Vnitřní architekturou a principy činnosti se Control Web odlišuje od běžných systémů SCADA. Ty se utvářely a přicházely na trh v době, kdy byl počítač využíván k pouhé vizualizaci technologických dat pro operátorské řízení a programové vybavení automatizačních systémů bylo vestavěno do PLC a řídicích jednotek strojů. Celý soubor funkcí operátorského řízení a sběru dat (SCADA) byl obvykle pevně naprogramován a bylo možné jej pouze do jisté míry modifikovat prostřednictvím konfiguračních dat.
 
Předchůdce současného prostředí Control Web – systém Control Panel – vznikl na počátku devadesátých let minulého století z potřeby řešit komplexní automatizační úlohy, na které dostupné programy SCADA nestačily. Počítače byly již tehdy dostatečně výkonné, spolehlivé a levné, ale programové vybavení za rozvojem počítačů zaostávalo. Nová koncepce sestavování aplikačních programů z předem neznámé a principiálně neomezené sady dynamicky připojovaných komponent se ukázala nečekaně mocnou. Vznikl tak progresivní produkt, jehož komponentová a objektově orientovaná koncepce se do dnešní doby ukazuje jako velmi silná a mnoho výrobců se ji pokouší napodobit.
 

Tvorba aplikačních programů

 
Tvorba aplikačních programů byla maximálně zjednodušena díky grafickému editoru, ve kterém lze pomocí myši vybírat jednotlivé komponenty z nabídkových palet a skládat je do struktur vzhledů a algoritmů. Control Web začal být oblíbený nejen pro snadnost použití a rychlost vývoje aplikací, ale především pro svou schopnost zvládnout i největší a nejkomplikovanější úlohy. V oboru automatizace se rozšířil natolik, že se stal de facto průmyslovým standardem.
 
Rozsah, soubor funkcí a vlastnosti aplikace nejsou systémem nijak předem určeny ani omezeny. Aplikační program si každý může vybudovat podle svých požadavků – vybere si pro něj komponenty a určí mezi nimi vazby. Výsledný běžící program má strukturu kódu i dat v paměti počítače velmi podobnou, jako by byl na míru napsán a přeložen např. prostřednictvím překladače jazyka C++. Má také podobnou rychlost a výkon. Přitom se neztrácí snadnost použití – jednoduchou aplikaci lze stále vytvořit během několika minut.
 
Snadnost použití s plochou učicí křivkou (tj. pro začátek práce se systémem není nutné překonávat žádnou vysokou znalostní bariéru) činí z prostředí Control Web velmi dobrý nástroj, s jehož pomocí se studenti technických oborů seznamují s automatizačními a komunikačními systémy. Interaktivita vývojového prostředí spolu s rychlostí dosažení výsledků dělají studium zábavnějším. Přitom skutečnost, že v systému neběží nic skrytě a samo od sebe, že pracuje jen vytvořený aplikační program, vede ke správnému pochopení principů.
 

Výkonná grafika a virtuální realita

 
Control Web byl rovněž prvním produktem, který do oboru průmyslové automatizace přinesl schopnost zobrazovat virtuální realitu prostřednictvím třírozměrného (3D) vykreslovacího systému. Tento systém je postaven na principu klient-server. Vykreslovací server běží ve vlastním vlákně a je schopen v reálném čase vykreslovat i velmi složité scény s mnoha efekty v téměř fotorealistické kvalitě. Využívá nejnovější technologie počítačové grafiky, včetně shaderů běžících v grafických procesorech, a umožňuje tak aplikačním programům rozumně využít mohutný masivně paralelní výpočetní výkon současných grafických procesorů, které se staly samozřejmou součástí každého počítače. Tato nejdokonalejší technologie počítačové grafiky může podstatně zvýšit rychlost, působivost i přehlednost vizualizací.
 
Není-li však v aplikaci žádný 3D virtuální přístroj, do paměťového prostoru procesu není z vykreslovacího systému zaváděno nic – vykreslovací systém je do systému dynamicky zabudován až spolu s nezávislými 3D virtuálními přístroji, není tedy součástí jádra systému. Proto nijak neomezuje použitelnost prostředí Control Web v malých vestavných řídicích jednotkách nevybavených grafickými procesory.
 
Ze schopnosti využívat výkon grafického procesoru plyne spousta výhod i pro práci s digitálním obrazem, získaným z připojených kamer nebo z jiného zdroje přístupného v počítačové síti. Programovatelný grafický procesor umožňuje provádět s proudem obrazových dat v reálném čase takové operace, které jsou jinými prostředky nerealizovatelné. Díky tomu je digitální obraz v prostředí Control Web zpracováván bez jakýchkoliv kompromisů mezi kvalitou obrazu a propustností. Také veškeré operace, které vykonává hlavní procesor počítače a které jsou paralelizovatelné, jsou systémem automaticky rozděleny do několika paralelních proudů pro jednotlivá jádra procesoru.
 

Úlohy strojového vidění

 
Rovněž komponenty pro řešení úloh strojového vidění a vizuální inspekce jsou k systému připojovány dynamicky a jsou dodávány v podobě samostatných knihoven. Obdobně jako je tomu u ovladačů vstupně-výstupních zařízení, mají i komponenty pro strojové vidění otevřené a zdokumentované rozhraní, a tak si každý zručný programátor může v případě potřeby vytvořit své komponenty a zařadit je do systému. I aplikační programy strojového vidění lze vytvářet v pohodlném prostředí grafického editoru, který rovněž umožňuje vybírat komponenty z nabídkových palet a interaktivně sestavovat, zkoušet a okamžitě pozorovat výsledky řešené úlohy.
 

Control Web v úloze spojovacího článku

 
V mnoha případech hraje Control Web roli spojovacího článku, prostřednictvím kterého je do jednotného integrovaného celku propojeno mnoho původně nespolupracujících zařízení a množství samostatného programového vybavení. Přitom často nejde ani o průmyslové automatizační systémy. Control Web např. dokáže každou technologii zpřístupnit v počítačové síti a zprostředkovat jí webové rozhraní, dokáže ji napojit na databáze a podnikové informační systémy, umožní ji dálkově ovládat z mobilních sítí atd. Každý systém tak otevře světu současné informační techniky a umožní mu další růst a rozvoj.
 

Typické oblasti použití

 
Control Web vždy byl a dodnes je cenově atraktivní, proto je používán nejen v rozsáhlých aplikacích ve velkých firmách, ale i v malých a vestavěných aplikacích, a také ve školách, ve vědě a výzkumu. Struktura typických úloh řešených pomocí systému Control Web se v poslední době podstatně změnila. Postupně ubývá zakázek, ve kterých je požadováno jen prosté operátorské pracoviště s vizualizací a případným sběrem dat. Požadavek rozhraní pro webové klienty je již samozřejmostí. Většina současných systémů je zapojena, často bezdrátově, do počítačových sítí, obvyklá je spolupráce s určitým databázovým informačním systémem. Stále častější jsou též požadavky na práci s digitálním obrazem z kamer. Také se mnohdy systémy skládají z několika částí, které spolu musí komunikovat. Stále větší výhodou se tak stává to, že i malý vestavný systém je vybaven veškerými komunikačními kanály a jeho programové vybavení dokáže pracovat se všemi současnými standardy výměny dat. I malá vestavěná řídicí jednotka tak má k dispozici Ethernet, USB, Wi-Fi, Bluetooth a může obsahovat internetový HTTP server, ale současně i webový klient, dokáže posílat e-maily, posílat a přijímat zprávy SMS, komunikovat přes GPRS nebo rádiové mosty, spolupracovat se zařízeními plug-and-play na rychlé sběrnici USB i s jednotkami v síti TCP/IP atd. V mnoha případech dokáže malý a levný průmyslový počítač nahradit kombinaci PLC a počítače pro operátorské řízení. Zde potom výhoda jednoho programového prostředí pro vývoj aplikací nabývá na významu.
 
Také se oproti minulému období výrazně zlevnilo veškeré technické vybavení, k dispozici jsou levné a výkonné průmyslové počítače, vstupně-výstupní zařízení, digitální kamery, prvky síťové infrastruktury i akční členy. Naopak ale vzrostl tlak na cenu a dobu vývoje aplikace. Přitom zákazníci požadují aplikace stále lépe vybavené a graficky působivé.
 
Control Web je programový systém, který dokáže vystupovat v mnoha rolích. Může pracovat v řídicích jednotkách strojů, může spojovat výrobní technologii s informačním systémem podniku, může být datovým serverem s mnoha webovými klienty, může modelovat a simulovat procesy, může řešit strojové vidění a vizuální inspekci, dokáže vytvářet náročné vizualizace, zajišťovat operátorské řízení a mnoho dalšího. Dokáže uživatelům posloužit tak, jak zrovna potřebují.
 

Závěrem

 
Control Web je natolik bohatý a komplexní systém, že veškeré jeho možnosti a vlastnosti není možné uceleně vysvětlit. Jen základní dokumentace má více než 2 000 stran. Nikdo také pravděpodobně nevyužívá produkt v celé jeho šíři. Pro efektivní tvorbu aplikačních programů ale naštěstí není nutné znát vše. Přestože se obvykle zabýváme jen tím, co zrovna pro dokončení svého úkolu potřebujeme, může nás uklidňovat pocit, že jakmile vznikne nový nečekaný požadavek, Control Web nabídne řešení. Nemusíme využít všechno, ale je dobré mít to k dispozici.
 
Roman Cagaš,
 
Obr. 1. Control Web může díky své škálovatelnosti vystupovat v mnoha rolích
Obr. 2. Příklad síťového propojení a synchronizace dat mezi aplikacemi systému Control Web
Obr. 3. Editor 3D scény s několika otevřenými pohledy ve vývojovém prostředí systému Control Web
Obr. 4. Editor aplikací strojového vidění VisionLab ve vývojovém prostředí systému Control Web