Alternatívny spôsob tvorby klientskej OPC aplikácie

Z Kiwiki
Verzia z 12:30, 16. november 2010, ktorú vytvoril Iickoo (diskusia | príspevky)
(rozdiel) ← Staršia verzia | Aktuálna úprava (rozdiel) | Novšia verzia → (rozdiel)
Skočit na navigaci Skočit na vyhledávání

Predchádzajúca kapitola sa zaoberala klientskou OPC aplikáciou pre operačný systém Microsoft Windows, ktorá je napísaná v programovacom jazyku Basic. Vývoj OPC aplikácií je podporovaný vo všetkých programovacích jazykoch, podmienkou je kompatibilita s OPC špecifikáciami, napr. implementácia OPC Data Access špecifikácie. Každé vývojové prostredia má svoje výhody i nevýhody pri vývoji OPC aplikácií. Na tvorbu serverových riešení sú vhodnejšie vývojové prostredia s programovacím jazykom C/C++, napr. Microsoft Visual C++. Na vývoj klientskych aplikácií je výhodnejšie použiť iné vývojové prostredie napr. Visual Basic alebo Delphi, ktoré sú viac orientované na rýchlu tvorbu grafického užívateľského prostredia. Tvorba klientskych OPC aplikácií nie obmedzená len na desktopové riešenia pre operačný systém Microsoft Windows. OPC protokol umožňuje vývoj aj webových aplikácií.

Rozšírenie SAE systému

Špecifikácia OPC protokolu XML Data Access podporuje výmenu dát medzi serverom a klientom prostredníctvom XML štandardu. XML súbor je textový súbor s pevne definovanou štruktúrou dokumentu, v ktorom sú uložené prenášané údaje. Jazyk XML sa stal štandardom na prenos dát medzi rôznymi aplikáciami.

Obr. 32 Použitie OPC XML DA špecifikácie [18]

Obr. 32 znázorňuje možnosti pripojenia k OPC XML DA serveru. Zo serverom môžu komunikovať rôzny OPC klienti, napr. desktopová aplikácia napísaná v programovacom jazyku Visual Basic alebo C#, ASP.NET aplikácia alebo webová klientska aplikácia [18]. Serverové aplikácie spoločnosti SAE Automation, SNMP OPC Server a OpcDbGateway server, podporujú výmenu dát vo formáte XML. Obidve aplikácie majú implementovanú OPC XML Data Access špecifikáciu (Obr. 12) čo dovoľuje pripojenie a komunikáciu s OPC XML DA klientmi.

Webové služby

Hlavný cieľom webových služieb je sprostredkovanie komunikácie medzi dvoma sieťovými entitami prostredníctvom verejnej siete Internet. Služba je typu klient – server. Na jednej strane je poskytovateľ webových služieb, webový server, na strane druhej je skupina klientov využívajúce webové služby. Medzi jednu z mnohých vlastností webových služieb patrí aj podpora XML štandardu. Táto vlastnosť umožňuje vývojárom OPC aplikácií programovať klientske aplikácie pre webové služby. Webové aplikácie majú niekoľko výhod oproti desktopovým aplikáciám:

  • Nezávislosť na operačnom systéme. Webový OPC klient môže byť bežať s rovnakou funkcionalitou na rôznych operačných systémoch nielen Microsoft Windows, ale aj Linux, Mac OS a pod.
  • Jednoduchšia údržba. Pri webových OPC klientoch odpadá potreba ich inštalácie na každý počítač ako pri desktopových riešeniach. Klient pracuje ako služba na webovom serveri a používateľ sa k službe pripája cez internetový prehliadač, ktorý je dostupný v každom operačnom systéme. Z toho dôvodu je aj jeho údržba a aktualizácia jednoduchšia a rýchlejšia ako desktopových klientov.
  • Dostupnosť webových OPC klientov je niekoľkonásobne vyššia ako desktopových. Desktopového klienta je možné používať iba z počítača, na ktorom je nainštalovaný. Webový klient je dostupný zo všetkých počítačov pripojených do lokálnej alebo verejnej siete cez internetový prehliadač. Pri poruche jedného počítača sa môže klient bez straty údajov pripojiť k webovému klientovi z iného počítača.

Oproti uvedeným výhodám majú webové OPC aplikácie aj svoje nevýhody:

  • Využitie systémových prostriedkov. Webový klient, na rozdiel od desktopového klienta, nedokáže naplno využiť systémové prostriedky operačného systému, ale je obmedzený len na využitie zdrojov internetového prehliadača. Vďaka tomu je vývoj desktopových aplikácií efektívnejší ako vývoj webových aplikácií.
  • Vyššie požiadavky na komunikáciu. Webový klient pri každej akcii opätovne načítava celú stránku z webového servera, čo má za následok vyšší tok dát v sieti. Komunikačná sieť a webový server musia byť dostatočne výkonné, aby dokázali vyhovieť všetkým požiadavkám klientov s čo najmenším časovým oneskorením.
  • Kompaktnosť pracovného prostredia. V desktopovej aplikácii má programátor kontrolu nad pracovným oknom aplikácie a rozmiestnenia ovládacích prvkov. Vzhľad webovej aplikácie je závislí od nastavenia internetového prehliadača. Môže byť ovplyvnený použitými panelmi nástrojov, alebo inštalovanými prídavnými modulmi. Vzhľad webového OPC klienta sa môže líšiť v rôznych internetových prehliadačoch iná.

Implementácia webového OPC klienta

Základným predpokladom úspešnej implementácie webového OPC klienta je vybudovanie webového servera a následnej integrácie OPC XML DA klienta. Na strane koncového klienta, používateľa aplikácie, nie je potrebná dodatočná inštalácia žiadnej aplikácie. Používatelia zadávajú svoje požiadavky cez internetový prehliadač, napr. Internet Explorer, Mozilla Firefox a pod. Vybavovanie požiadaviek používateľov má za úlohu webový server (Obr. 33), ktorý komunikuje s koncovými klientmi cez štandardný internetový protokol HTTP alebo HTTPS. Z dôvodu zvýšenia bezpečnosti prenášaných dát cez verejnú sieť (Internet) je vhodnejšie použitie HTTPS protokolu. OPC XML DA klient je rozšírením funkčnosti webového servera, tvoria jednu aplikáciu, aplikačný server. Aplikačný server komunikuje s OPC serverom (Obr. 33), napr. SAEAUT SNMP OPC server, prostredníctvom OPC protokolu (špecifikácia OPC XML DA). Aplikačný server spracuje získané údaje a následne generuje HTML stránky. Spôsob spracovania údajov aplikačným serverom je závislý od použitej webovej technológie. Webový OPC klient môže byť ASP.NET, JSP(J2EE), PHP aplikácie, ktorá môže výsledky prezentovať ako HTML stránky. Dynamika a používateľský komfort na stane internetového prehliadača sa dá zvýšiť použitím skriptovacieho jazyka JavaScript, technológie AJAX, alebo využitím HTML verzie 5.

Obr. 33 Schéma funkčnosti webového OPC klienta

Ďalšie možnosti tvorby aplikácie

Alternatívnym riešením OPC klientskej aplikácie je spojenie OPC špecifikácie a kancelárskeho balíka Microsoft Office. Klientska aplikácia sa spúšťa v pracovnom prostredí zošita Microsoft Excel. V zošite sa nachádzajú ovládacie prvky klienta a v bunkách zošita sa zobrazujú monitorované údaje. Z pohľadu koncového používateľa aplikácie Microsoft Excel ide o jednoduché riešenie, pretože takéto riešenie OPC klientskej aplikácie je rozšírením funkcionality existujúcej aplikácie. Z pohľadu vývojára ide alternatívu desktopového klienta, ale nie je náhradu. Jeho výhodou je, že programátor môže využiť existujúce prostriedky aplikácie Microsoft Excel. Aj keď Microsoft Excel je populárny kancelársky nástroj, nie je štandardnou súčasťou operačného systému Microsoft Windows a preto nie je zaručené jeho používanie všetkými používateľmi operačného systému Windows. Z toho dôvodu klientska OPC aplikácia v prostredí Microsoft Excel nemôže úplne nahradiť desktopového OPC klienta.

Záver

Diplomová práca je tematický rozdelená do dvoch častí. Prvá časť popisuje problematiku pri monitorovaní sieťovej infraštruktúry v rovine teórie a bližšie sa venuje sieťovým protokolom SNMP a OPC. Druhá časť transformuje nadobudnuté vedomosti do realizácie monitorovacej klientskej OPC aplikácie, ktorá spolu s existujúcimi serverovými riešeniami tvorí jednotnú monitorovaciu sústavu. Výslednú aplikáciu OPC Monitor je možné používať pre zobrazovanie údajov o priemyselných zariadeniach, ale aj o zariadeniach nasadených v počítačových sieťach typu TCP/IP. Aplikácia prináša niekoľko výhod s porovnateľným riešením používaným v spoločnosti SAE Automation s.r.o. Nová Dubnica:

  • Podporuje vzdialené pripojenie k OPC serveru,
  • Umožňuje dynamický výber položiek k monitorovaniu,
  • Možno monitorovať desať položiek v jednej skupine,
  • Umožňuje pohodlný výber a prezeranie položiek cez prieskumníka položiek,
  • Poskytuje základné informácie o pripojených OPC serveroch a OPC skupinách,
  • Používateľ má k dispozícii informácie o udalostiach aplikácie počas jej činnosti.

V aplikácii OPC Monitor je kladený dôraz na jednoduchosť ovládania aplikácie zo strany používateľa. Možnosť neodborného používania aplikácie, ktorý vedie ku chybovým stavom je eliminovaný na minimum. Aplikáciu môže používať nielen odborník ale aj začiatočník v oblasti OPC technológií. Kompletný zdrojový kód aplikácie OPC Monitor tvorí prílohu diplomovej práce. Kód môže byť použitý pri vývoji nových klientskych OPC aplikácií, alebo môžu byť pridané nové funkcionality do existujúcej aplikácie OPC Monitor.

Zoznam použitej literatúry

  1. ODOM, W. Počítačové siete bez predchádzajúcich znalostí. Brno: CP Books, 2005. 383 s. ISBN 80-85896-85-5.
  2. BÉLAI , I. Priemyselné komunikačné systémy. Bratislava: STU FEI. [online] Dostupné na internete: <http://www.kar.elf.stuba.sk/predmety/pkom/PKS_DS/Cv_1/>
  3. PŘICHYSTAL, O. Novell Netware 3.x a 4.x: Kompletný sprievodca. Praha: Computer Press, 1997. 527 s. ISBN 80-85896-85-0
  4. OSTERLOH, H. TCP/IP Kompletný sprievodca. Praha: SoftPress, 2003. 512 s. ISBN 80-86497-34-8
  5. Balík internetových protokolov. Wikipédia. [online] Dostupné na internete: <http://sk.wikipedia.org/wiki/Balík_internetových_protokolov>
  6. The TCP/IP Guide. [online] Dostupné na internete: <http://www.tcpipguide.com>
  7. RFC 1157. 1990. SNMP. [online] Dostupné na internete: <http://www.ietf.org/rfc.html/rfc1157.txt>
  8. RFC 1902. 1996. SNMPv2. [online] Dostupné na internete: <http://www.ietf.org/rfc.html/rfc1902.txt>
  9. RFC 3410. 2002. SNMPv3. [online] Dostupné na internete: <http://www.ietf.org/rfc.html/rfc3410.txt>
  10. KLAŠKA, L. 2000. SNMP a MIB objekty. [online] Dostupné na internete: <http://www.svetsiti.cz/view.asp?rubrika=Tutorialy&temaID=23&clanekID=31>
  11. RFC 1213. 1991. MIB-2. [online] Dostupné na internete: <http://www.ietf.org/rfc.html/rfc1231.txt>
  12. PAŠKA, M. 1997. SNMP. [online] Dostupné na internete: <http://www.ktl.elf.stuba.sk/study/snmp/>
  13. Interné materiály spoločnosti SAE AUTOMATION s.r.o. [online] Dostupné na internete: <http://www.saeautom.sk>
  14. OPC Technology. 2005. [online] Dostupné na internete: <http://www.codeproject.com/KB/COM/opctechnology.aspx>
  15. Čo je OPC? [online] Dostupné na internete: <http://www.foxon.cz/index.php?main_page=faq&fcPath=29>
  16. IWANITZ, F. – LANGE, J. OPC – Fundamentals, Implementation and Application. Fachverlag: Hutthing, 2002. 225 s. ISBN 3-7785-2904-8
  17. OPC Foundation. [online] Dostupné na internete: <http://www.opcfoundation.org/>
  18. The Code Project. 2004. [online] Dostupné na internete: <http://www.codeproject.com/KB/XML/OPC_XML-DA_Clients.aspx>