Využití cloud computingu při optimalizaci strojů

Článek popisuje možnosti využití cloud computingu v průmyslové automatizaci a zabývá se zejména implementací cloudových služeb v řídicích systémech. Ten, kdo vážně uvažuje o zavedení principů chytré výroby, najde v tomto způsobu zpracování dat mnoho výhod. 

Společným cílem výrobců i uživatelů strojů je neustálé zlepšování jejich vlastností. Základním motivem je zvyšování produktivity a kvality výroby a snižování energetické náročnosti, celkových pořizovacích nákladů a požadavků na údržbu (v současné době často zmiňovaná prediktivní údržba). S postupujícím prorůstáním informačních systémů do výroby se naskýtá možnost využít pokročilé algoritmy, které se původně využívaly výhradně ve světě informatiky, neboť řídicí systémy v minulosti neměly dostatečný výpočetní výkon. Představme si např. využití neuronových sítí včetně algoritmů typu deep learning při optimalizaci trajektorie obráběcího nástroje, využití pokročilých statistických a stochastických metod při hledání závislostí poruch na různých vzorcích chování obsluhy apod. Jak se projeví např. odlehčení rámu stroje na dlouhodobé přesnosti a opakovatelnosti výroby? Jaké rychlosti pohonů ještě nezpůsobí nadměrné opotřebování pohyblivých částí? Za jak dlouho se sníží přesnost opakovatelného polohování na hranici stanovených parametrů stroje?

Bude-li se uživatel vývojem a optimalizací stroje zabývat skutečně vážně, bude nutné kontinuálně měřit velké množství parametrů přímo na stroji, získaná data v reálném čase vyhodnocovat a nastavení stroje neustále přizpůsobovat aktuální situaci. Má-li možnost takto naměřené hodnoty vyhodnocovat, může např. zvýšit přesnost obrábění teplotní kompenzací měření polohy u vysoce přesných obráběcích strojů, usuzovat na stav ložisek vyhodnocováním chvění statoru v motorech, přizpůsobit rychlost práce kooperativního robotu tempu obsluhy či kontinuálně upravovat technologický postup nebo recepturu na základě výsledků chemické analýzy použité suroviny.

Soudobé technické prostředky mnohonásobně překračují požadavky zažitých principů, kdy připojené senzory pouze ukládaly data, která nebyla v horším případě využívána vůbec, v lepším případě mohl technolog malou část naměřených hodnot vynést do grafu a diskutovat s kolegy o dalším postupu a dopadech změny některého z parametrů stroje. S využitím obrovských výpočetních výkonů moderních počítačů lze k tomuto problému přistoupit zcela odlišně. Naměřené hodnoty lze přímo v řídicím systému stroje předzpracovat a následně je poskytnout výpočetní aplikaci umístěné na serveru, která tato data detailně analyzuje. Výsledek této analýzy server poskytne nejen zpět stroji, ale i všem zainteresovaným stranám, které mají o tyto informace zájem (tj. např. údržbě, systému plánování výroby, pracovníkům kvality, managementu atd.). V tomto kontextu představuje cloud computing způsob poskytování výpočetních zdrojů (např. hardwaru nebo analytických a komunikačních služeb) prostřednictvím internetu či intranetu. Uživatel zmíněných služeb se tak nemusí starat o jejich implementaci či údržbu a kromě toho je možné pomocí standardizovaných komunikačních protokolů jednoduše komunikovat s různými druhy zařízení. Tento přístup navíc umožňuje oddělit vývoj průmyslové aplikace od vývoje cloudové služby. 

Není cloud jako cloud

Před detailním popisem přenosových protokolů a konkrétního řešení cloud computingu, věnujme pozornost cloudům jako takovým. Značná část lidí v průmyslu je totiž aktuálně ke cloudovým službám skeptická. Nejčastěji uváděným důvodem bývá bezpečnost dat. Mnozí se domnívají, že použití cloudové služby automaticky znamená ukládání citlivých výrobních dat na veřejně dostupná úložiště, kde jsou data snadno zneužitelná. Ve skutečnosti však existuje více možností: cloudové služby lze provozovat nejen ve veřejných cloudech (zde jsou výpočetní zdroje a datová úložiště sdíleny různými uživateli), ale i v tzv. privátních cloudech (zde jsou naopak tyto zdroje dostupné výlučně předem stanovenému okruhu uživatelů – typicky to bývá jedna konkrétní společnost). V tomto případě je služba provozována uvnitř podnikové sítě, kde platí identická bezpečnostní opatření jako kdekoliv jinde v podnikové síti. Tato síť většinou bývá zcela oddělena od internetu a často je vyhrazena jen pro účely komunikace výrobních zařízení (komunikace M2M – machine-to-machine communication). Je-li tedy podniková síť dostatečně zabezpečena, může být privátní cloud vhodným řešením. V jiných případech je naopak namístě zvážit, zda podnikový bezpečnostní technik opravdu může zabezpečit síť tak, jak to dokáže skupina expertů pracující pro některého z poskytovatelů veřejných cloudů.

Pro úplnost uveďme příklady aktuálně největších cloudových služeb a jejich poskytovatelů, kteří jsou připraveni pro spolupráci s průmyslovými podniky a nabízejí podporu příslušných průmyslových komunikačních protokolů. Jsou jimi Microsoft Azure, Amazon Web Services a SAP HANA. Nejpoužívanější cloudové protokoly jsou tyto:

–   MQTT (Message Queue Telemetry Transport):

velmi jednoduchý a rychle implementovatelný protokol s malými požadavky na výpočetní výkon, vhodný i pro použití v sítích s nižší propustností. Specifikace neobsahuje bezpečnostní model, což lze brát jako výhodu, neboť je na něj možné použít vždy nejaktuálnější verzi šifrovacích protokolů (aktuálně např. TLS 1.2). Protokol umožňuje implementaci autentizace uživatelů a autorizaci na úrovni objektů topics (dat).

–   AMQP (Advanced Message Queuing Protocol):

oproti MQTT nabízí větší variabilitu a širší možnosti, avšak výměnou za složitější implementaci. Protokol je vhodný zejména do podnikových aplikací. Lze implementovat autentizaci uživatelů a autorizaci na úrovni objektů topics (dat).

–   OPC UA (OPC Unified Architecture):

tradiční protokol typu client/server pro průmyslovou automatizaci, který je rozšířen o koncept publisher/subscriber, a vyhovuje tedy i koncepci cloudů. Lze implementovat autentizaci uživatelů. Podpora ze strany poskytovatelů veřejných cloudů se rychle rozšiřuje.

Každý ze zmíněných protokolů pracuje na principu publisher/subscriber. Účastník komunikace může data buď ostatním účastníkům poskytovat (publisher), nebo je od ostatních přijímat (subscriber), má-li však pro příjem těchto dat příslušné oprávnění. Krása této myšlenky spočívá v tom, že je možné velmi dobře oddělit jednotlivé části aplikace a logicky je pospojovat datovými toky. Jednotliví účastníci přitom o sobě vůbec nemusí vědět, mají pouze přidělena oprávnění pro jednotlivé datové toky. Tato koncepce mj. umožňuje jednoduše přidávat i odebírat účastníky komunikace. Jestliže tedy např. teploměr změří aktuální teplotu motoru, bude tento údaj zařízením typu publisher automaticky zaslán všem účastníkům s rolí subscriber, kteří o tuto informaci mají zájem. O automatické zasílání těchto dat se stará služba nazvaná Message broker (obr. 1). 

V čem spočívají služby pro cloud computing?

Představme si popsaný princip komunikace na jednoduchém příkladu vyhodnocování kondice motoru. Naměřené hodnoty ze snímačů teploty a vibrací motoru lze jednoduše posílat do cloudové služby, která je bude v reál­ném čase zpracovávat a vyhodnocovat časovou závislost frekvenčního spektra vibrací na průběhu oteplování motoru – jde tedy o výpočetně poměrně náročnou operaci nad velkým množstvím dat, neboť v podniku může být takových motorů mnoho. Objeví-li cloudová služba problematické chování typické např. pro opotřebovaná ložiska, vyšle patřičnou alarmovou informaci všem relevantním uživatelům (stroji, operátorovi, údržbě, archivační databázi alarmů atd.). Tuto cloudovou službu lze přitom vyvíjet nezávisle na tom, kolik dat bude třeba analyzovat (na kolika procesorech bude služba provozována) nebo na jaké hardwarové platformě pracuje řídicí systém stroje. Její vývoj i provozování je tedy možné zcela oddělit od výrobních zařízení.

Bude-li uživatel ještě kreativnější, může přemýšlet o mnohem netradičnějších korelacích, které však mohou být pro řízení výroby velmi užitečné. Uživatel může např. vyhodnocovat závislost kvality výroby na třech veličinách, jež jsou na první pohled zcela nesourodé: počasí v dané lokalitě (teplota či vlhkost v hale), aktuální kurzu dolaru (kvalita suroviny od dodavatele) a výsledek hokejového zápasu ze včerejšího dne (únava obsluhy). Tyto závislosti nelze jednoduše předpokládat, avšak vyhodnocení možných následků a prediktivní opatření mohou mít rozhodující vliv na kvalitu výroby a produktivitu. Řešením takového komplexního zadání může být použití kognitivních metod a dalších principů umělé inteligence. V současnosti vzniká již poměrně velké množství komerčně dostupných služeb pro cloud computing – za všechny jmenujme např. Watson společnosti IBM, která dokáže rozpoznat nečekané souvislosti v datech, vizualizovat „velká data“, umí porozumět významu a kontextu mluveného slova atd. Vývoj podobných pokročilých analytických metod se vymyká možnostem výrobců strojů. V budoucnu bude proto podobných služeb pro cloud computing přibývat, současně s rostoucí mírou akceptace ze strany průmyslových podniků. 

TwinCAT Analytics

Dobrým příkladem služby pro cloud computing ve strojích je systém TwinCAT Analytics (obr. 2) od společnosti Beckhoff, německého výrobce řídicích systémů. Celá platforma řízení Beckhoff je koncipována jako průmyslové PC, které řídí stroj pomocí softwarového PLC. Vzhledem k tomu, že současná PC mají dostatečný výkon, lze data s naměřenými hodnotami nejdříve předzpracovat přímo ve stroji a do cloudu již zasílat menší množství dat. Zmenší se tak celkové vytížení komunikační sítě. Pro komunikaci s cloudem lze použít kterýkoliv z již jmenovaných cloudových protokolů, nejčastěji však uživatelé volí OPC UA.

Software TwinCAT Analytics může běžet nejen na stroji, ale i na cloudovém serveru, kde bude vyhodnocovat přijatá data od jednotlivých strojů. Výhodou tohoto přístupu je, že programátor může pro vytvoření potřebných analytických algoritmů použít stejné programovací prostředí, které používá při programování PLC. Alternativou k uživatelskému vývoji vlastních algoritmů je možnost použít již připravené knihovny analytických funkcí TwinCAT Analytics Library či Condition Monitoring Library, jež nabízejí pokročilé analytické funkce (Fourierova spektrální analýza, obálková analýza), statistické funkce (momentové charakteristiky, kvantily), klasifikátory (diskrétní, bayesovské) a další. Kdyby uživatelům nestačily ani tyto pokročilé knihovny, je možné naprogramovat vlastní funkce, ať už s použitím běžných jazyků pro PLC, nebo pomocí C++. Podstatná je přitom skutečnost, že TwinCAT je systém tzv. tvrdého reálného času (hard real time system). Je tedy vhodný pro online analýzu většího množství dat při zaručené době odezvy. Kdyby se uživatel nespokojil ani s těmito možnostmi, lze do TwinCAT importovat analytický model vytvořený v prostředí Matlab Simulink nebo vizualizovat data pomocí Scope View Professional.

Beckhoff nedávno představil zajímavé zařízení EK9160 (obr. 3). Pomocí tohoto komunikačního modulu pro internet věcí (IoT Coupler) lze bez nutnosti jakéhokoliv programování okamžitě posílat naměřené hodnoty do cloudu. K zařízení se připojují běžné terminály se vstupy či výstupy a veškerá komunikace je realizována automaticky. Zařízení se konfiguruje jednoduchým webovým rozhraním. EK9160 navíc disponuje vestavěnou pamětí, která funguje jako dočasné úložiště pro případ výpadku komunikace. V okamžiku obnovení spojení se tato data automaticky odešlou do cloudu. 

Závěr

Kdo vážně uvažuje o implementaci principů Industry 4.0, najde v cloud computingu mnoho výhod, ať už jsou to nové možnosti optimalizace parametrů stroje, okamžitá reakce na změny ve výrobě či v okolním prostředí, nebo předcházení poruchovým stavům.

Předpokládá se, že v budoucnu budou pomocí cloudových služeb komunikovat stroje běžně. K největším výhodám patří nezávislost na použité platformě, možnost decentralizace vývoje průmyslových aplikací a také možnost flexibilní implementace cloudových služeb podle potřeb a aktuálního počtu současně pracujících výrobních zařízení. 

Tomáš Halva, Beckhoff Automation

Obr. 1. Čtyři způsoby komunikace s cloudem

Obr. 2. Bloková struktura TwinCAT Analytics

Obr. 3. IoTCoupler Beckhoff EK916