Promotic

PmOpcUaClient - Ovladač pro komunikaci s OPC UA serverem

Před použitím tohoto ovladače v aplikaci PROMOTIC je vhodné shlédnout "PROMOTIC video kurz 4 - Komunikační ovladače".

Základní vlastnosti ovladače:
- Použití tohoto ovladače vyžaduje zakoupení licence PmOPC. Při vývoji aplikace ve freeware módu PmFree nebo s vývojovou licencí a při jejím testování v runtime je tato komponenta vždy funkční.
- Komunikace je pro Ethernet (aplikace PROMOTIC je klient).
- Ovladač je začleněn do systému PROMOTIC pomocí objektu PmaComm.
Ovladač podporuje použití objektu PmaCommGroup. Objekt PmaCommMsg nelze použít.
Pro snadné přidání tohoto ovladače do aplikace je vhodné použít: Předkonfigurace ve skupině "OPC"
- Tento ovladač je dostupný od verze Pm9.0.9.
- Tento ovladač zatím nepodporuje UA Security (UA Security obsahuje autentizaci, autorizaci, šifrování a integritu dat pomocí podpisů).


Doporučené hodnoty parametrů objektu PmaComm:

Doporučené hodnoty pro Parametry Ethernet-klient:
Síťová adresaURL adresa OPC-UA serveru.
Číslo vzdáleného TCP/UDP portuPort OPC-UA serveru (obvykle hodnota 4840).
 
Viz: Wikipedia: Seznam čísel portů TCP a UDP používaných protokoly pro provoz síťových aplikací.
Typ Ethernet přenosuTCP
Připojit až při prvním přenosuNEzatrhnout (povinné)
Zavřít spojení po každém přenosuNEzatrhnout (povinné). Po každém navázání spojení je nutno přenést několik inicializačních zpráv a kdyby se spojení často uzavíralo tak by se velmi snížila rychlost komunikace.
Popis a doporučené hodnoty pro Parametry protokolu:
URL koncového boduZadává se zde URL adresa koncového bodu OPC-UA serveru.
Používá se pokud server umožňuje přesměrování na jiné servery, v jiném případě stačí zadat prázdný řetězec.
Hodnota bývá ve tvaru "opc.tcp://URL:Port".
AutentizaceZde se zadává typ autentizace klienta.
(Autentizace typu "2=Certificate" zatím není tímto ovladačem podporována.)
0=Anonymous - Anonymní autentizace, tzn. klient autentizaci nepoužívá.
1=UserName - Autentizace jménem a heslem.
JménoJméno klienta.
HesloHeslo pro dané jméno klienta.
Dodatečné parametryZatím nechat prázdnou hodnotu.

Popis komunikace pomocí objektu PmaCommGroup

Pro tento ovladač lze použít objekty PmaCommGroup.
Proměnné v objektu PmaCommGroup (nebo ještě lépe proměnné v objektu PmaData s datovým rozšířením ExtComm) mohou být v libovolném množství, libovolného typu v libovolném pořadí. Ovladač sám optimálním způsobem vnitřně vytvořenými komunikačními zprávami vyčítá data ze zařízení.
Proměnné se vyčítají všechny (pokud konfigurátor "Obnovování dat povoleno" je zatržen). Při zápisu do proměnné se posílá do zařízení jen tato jedna proměnná (pokud konfigurátor "Automaticky zasílat při zápisu do položky" je zatržen).

Obnovování hodnot proměnných registrovaných v objektu PmaCommGroup:
Ovladač při své inicializaci zaregistruje všechny proměnné do OPC serveru (OPC systémová zpráva CreateMonitoredItems) a informuje server o požadované době odpovědi podle nastaveného konfigurátoru "Obnovovací perioda komunikace [ms]".
Potom ovladač pošle žádost o poslání zprávy při změně těchto proměnných (OPC systémová zpráva PublishRequest). OPC server pak při změně proměnné (nebo pokud není žádná změna, tak do doby zadané v konfigurátoru "Obnovovací perioda komunikace [ms]") pošle zprávu obsahující informace o všech změněných proměnných (OPC systémová zpráva PublishResponse).
Ovladač po příjmu této zprávy ihned znovu pošle zprávu PublishRequest. Tímto způsobem jsou aktualizavané hodnoty proměnných objektu PmaCommGroup se zadanou periodou Obnovovací perioda komunikace [ms].

Popis konfigurátoru "ItemId":
ItemId je textový identifikátor položky, který slouží k adresaci položky v zařízení. Z konfigurátoru ItemId ovladač pozná, jak se má hodnota položky přijímat nebo vysílat.
Text lze buď napsat ručně, nebo sestavit v okně, které se otevře tlačítkem vpravo od konfigurátoru.
Pro zadání lze použít Makro výraz (vyhodnocuje se po spuštění aplikace).
Identifikátor ItemId může mít podobu například "ns2,str,xxxx", kde:
- ns2: Určuje, do kterého jmenného prostoru (ns=namespace) OPC-UA serveru proměnná patří (0, 1, 2 ...).
- str: Určuje typ identifikátoru proměnné.
str = Identifikátor proměnné je textový řetězec.
nmb = Identifikátor proměnné je číslo.
- xxxx: Identifikátor proměnné. Tento text závisí pouze na OPC-UA serveru.


Popis konfigurátoru "PmaCommGroup > Parametry > Speciální parametry":
Typ čtení časuUrčuje, zda s hodnotou proměnné se bude z OPC-UA serveru číst i čas této hodnoty.
Pokud se čas bude číst, pak se tento čas uloží do vlastnosti PmVar.TimeSource.
No - Čas hodnoty se nebude číst.
Source - Bude se číst čas zdroje, tzn. čas který OPC-UA server vyčetl ze zařízení, se kterým komunikuje (pokud server dokáže ze zařízení tento čas vyčíst).
Server - Bude se číst čas vyčtení hodnoty OPC-UA serverem.
Maximální počet proměnných v jedné registrující zprávěMaximální počet proměnných které se najednou zaregistrují do OPC serveru v jedné zprávě (OPC zpráva typu CreateMonitoredItems).
Tento konfigurátor je přednastaven jako vypnutý (a tedy všechny proměnné se zaregistrují najednou pomocí jedné zprávy).
 
Tento konfigurátor většinou není potřeba zapínat. Zapnout je ho potřeba například když OPC server neumožní registrovat mnoho proměnných v jedné zprávě (v praxi jsme se setkali s omezením 990 proměnných). Pokud je nutno nastavit nějaký počet, pak je nejlepší tento počet zadat co největší.

Historie:
Pm9.00.23: Opravená chyba: Pro tento ovladač je zprovozněna metoda PmaComm.OpenPort a vlastnost PmaCommGroup.UpdateEnabled.
Pm9.00.21: Oprava: Pokud v objektu PmaCommGroup bylo hodně proměnných, pak nefungoval příjem dat.
Nový konfigurátor "PmaCommGroup > Parametry > Speciální parametry > Maximální počet proměnných v jedné registrující zprávě".
Pm9.00.19: Opravená chyba: Pokud se nebylo možno připojit, pak vznikaly stále nové požadavky na vytvoření spojení a staré požadavky se neukončily.
Pm9.00.16:
- Zprovozněna možnost autentizace typu UserName (tzn. musí se zadat jméno a heslo).
- Opravená chyba: Po určité době (např. po 5 minutách) docházelo k restaru tohoto ovladače.
Pm9.00.15: Opravená chyba: (Revize 2) S některými typy OPC UA serverů se nepodařilo navázání spojení.
Pm9.00.15: Opravená chyba: Nefungoval příjem komunikační zprávy rozdělené do více podzpráv.
Pm9.00.13: Opravená chyba: Při zápisu do proměnných v objektu PmaCommGroup se někdy ukončila komunikace.
Pm9.00.09: Vytvořeno
© MICROSYS, spol. s r.o.