Promotic
WikipediaLinkedInYoutubeTwitterFacebook

Komunikace přes rozhraní OPC UA

Co je to OPC UA?

OPC Unified Architecture (OPC UA) je nový průmyslový M2M (machine-to-machine) komunikační standard vyvinutý OPC Foundation viz: www.opcfoundation.org. Na rozdíl od původní specifikace OPC, která je založena na technologii COM/DCOM firmy Microsoft (a tudíž funguje pouze pod OS Windows) jde o technologii založenou na obecně používaných komunikačních standardech jako jsou TCP/IP, HTTP a SOAP. To znamená, že OPC UA může fungovat i na jiných platformách než Windows. OPC UA komunikaci je možné zabudovat i do vlastních PLC automatů a jiných zařízení.
 
Hlavními požadavky na nový standard byly:
- nezávislost na platformě
- škálovatelnost
- použití jednoho i více vláken
- bezpečnost založená na nových standardech
- nastavitelné timeouty pro každou službu
- rozdělení objemných datagramů na menší části
 
Na rozdíl od OPC Classic, které odděleně definuje přístup k procesním datům (OPC DA), alarmům (OPC AE) a historickým datům (OPC HDA) nové OPC UA nedefinuje tyto konkrétní přístupy, ale pouze formát předávaných zpráv. To znamená, že jeden standard OPC UA umožňuje přenášení procesních dat, alarmů a historických dat.
 
OPC UA komunikace podporuje dva protokoly. Pro aplikační projektanty je rozdíl pouze v URL:
- binární protokol se vyznačuje URL specifikací: opc.tcp://Server
- protokol WEB služby (SOAP): http://Server
 
Na rozdíl od síťového OPC Classic komunikace OPC UA nevyžaduje nastavení rozhraní DCOM. OPC UA je již z principu chápaná jako síťová komunikace. To znamená, že musí obsahovat mechanismy, které zaručí bezpečnost této komunikace. OPC UA komunikace používá pro zajištění oveřování a autorizace, šifrování a integrity dat elektronické podpisy (certifikáty).
 

Zabezpečení OPC UA

Každá aplikace - účastník OPC UA komunikace (OPC UA server, klient i gateway) must mít vlastní instanci aplikačního certifikátu, který jednoznačně identifikuje aplikaci a stroj (počítač), na kterém tato aplikace běží. OPC UA definuje 4 základní úrovně zabezpečení:
 
Úroveň 1 – bez autentizace
 
V tomto případě klient i server umožňují komunikovat komukoliv. To znamená, že všechny platné certifikáty jsou považované za důvěryhodné. Aplikační certifikáty jsou použité pouze pro poskytování neověřitelných informací o druhé straně. Příjemce nemá žádný způsob, jakým by ověřil zda poskytovatel je legitimní držitel certifikátu. Na této úrovni obě strany automaticky uznávají platné certifikáty i když tyto nejsou zařazené do seznamu důvěryhodných certifikátů. Tato úroveň nevyžaduje žádné nastavení na straně klienta ani serveru.
 
Úroveň 2 – serverová autentizace
 
V tomto případě server umožňuje připojení libovolnému klientovi. Ověření klienta (pokud je požadované) se provádí pomocí ověřovacích údajů jako jméno/heslo zaslané na server po vytvoření zabezpečeného kanálu. Každý klient musí důvěřovat serverovému certifikátu. Toto nastavení provede Administrátor na straně klienta (serverový veřejný klíč musí být explicitně uveden v seznamu důvěryhodných certifikátů, nebo musí být serverový certifikát vydán důvěryhodnou certifikační autoritou). Pokud serverový certifikát explicitně není na seznamu důvěryhodných certifikátů, pak musí klient porovnat DNS jméno uvedené na serverovém certifikátu s DNS jménem počítače, ke kterému se připojuje. Tento způsob nezajišťuje, že se klient připojí ke správnému serveru (OPC UA), pouze zajistí, že se připojí ke správnému počítači. Tento postup poskytuje dobrou úroveň zabezpečení (používá se typicky např. pro přístup do internetového bankovnictví), ale server nemůže omezovat klientské aplikace na základě jejich autentizace.
 
Úroveň 3 – klientská autentizace
 
V tomto případě se klient může připojit k libovolnému serveru, ale server umožňuje připojení pouze důvěryhodným klientům. Tato úroveň se používá u služeb, které vyžadují přístup pouze důvěryhodným klientům a kde současně není požadavek na legitimitu serveru. Aby server poskytl data, musí důvěřovat klientskému certifikátu. Toto nastavení provede Administrátor na straně serveru (klientský certifikát explicitně uvede do seznamu důvěryhodných certifikátů, nebo musí být klientský certifikát podepsán důvěryhodnou certifikační autoritou).
 
Úroveň 4 – oboustranná autentizace
 
V tomto případě klient i server umožňují připojení pouze důvěryhodným partnerům. Tento způsob poskytuje nejvyšší úroveň zabezpečení, ale vyžaduje nastavení na obou stranách (klient i server). Pokud serverový certifikát není explicitně důvěryhodný, pak klient ověří server stejně jako v úrovni 2. Tento přístup zajišťuje nejvyšší míru zabezpečení a je proto doporučen OPC Foundation jako implicitní pro všechny klienty i servery.

Komunikace OPC UA v systému PROMOTIC

Ačkoliv SCADA software PROMOTIC v současné době nedisponuje zabudovaným OPC UA klientem, komunikaci OPC UA je možné uskutečnit například prostřednictvím specializovaného software typu OPC UA gateway/proxy. Se systémem PROMOTIC je otestované řešení s použitím software OPC UA GW firmy Unified Automation. OPC UA GW v tomto případě funguje jako obousměrný převodník mezi klasickým OPC a OPC UA.
 
Z pohledu software PROMOTIC je použití OPC UA GW velice jednoduché. OPC UA GW je potřeba nainstalovat na PC, na kterém běží PROMOTIC (aby nebylo potřeba řešit síťovou komunikaci OPC přes DCOM). V systému PROMOTIC pak stačí přidat objekt PmOpcClient, vybrat si OPC UA GW server a pak si namapovat potřebné proměnné (jako v případě jiných OPC serverů).
 
Viz OPC UA Gateway - Instalace a nastavení
© MICROSYS, spol. s r. o.Tavičská 845/21 703 00 Ostrava-Vítkovice