...
- Simatic S-7 OPC UA Server
- Bernecker PLC embedded OPC UA Server
- Zenon OPC UA Server
...
- Prosoft EtherNet/IP to Modbus TCP/IP to OPC UA Server Gateway (PLX32-EIP-MBTCP-UA)
Vynútené prerušenie spojenia: Keď sa všetky stanice na linke dostanú do simulácie alebo majú zastavenú komunikáciu, linka sa odpojí (dôjde ku zavretiu komunikačného socketu). Keď aspoň jedna stanica bude mať vypnutú simuláciu a nebude mať zastavenú komunikáciu (záložka Parametre objektu Stanica), linka sa znovu pripojí.
| Kotva | ||||
|---|---|---|---|---|
|
...
Kategória komunikačnej linky: OPC UA Client
Host address: Adresa OPC UA servera. Možno zadať mená podľa konvencie UNC (
...
Kategória komunikačnej linky: OPC UA Client
Host address: Adresa OPC UA servera. Možno zadať mená podľa konvencie UNC (napr. "\\server" alebo "server", doménové DNS mená (napr. "domain.com", "example.company.com") alebo IP adresy ("196.54.23.113"). V prípade redundantných systémov je možné zadávať aj viacero mien/adries oddelených čiarkami alebo bodkočiarkami.
Používanie alternatívnej komunikačnej cesty (druhé alebo ďalšie meno/adresa) danou stanicou signalizuje nastavenie flagu FLB a flagov FLN, FLO, FLP v stave stanice.
TCP port: TCP port OPC UA servera (napr. 4840).
EndpointUrl: Adresa endpointu (napr. opc.tcp://localhost:4840)
Pozn: pri použití nastavenia Client Type=Secure sa nepoužívajú priamo nastavenia Host address ani TCP port. Ak sa ale v rámciEndpointUrl použije reťazec #HOST#, tak bude nahradzovaný IP adresami/menami zadanými v parametri Host address. Toto je použiteľné pri konfigurovaní spojenia na redundantný OPC server, ktorý má viacero IP adries/mien.
Encoding type: Typ kódovania použitého pri výmene dát (aktuálne podporované je iba Binary encoding).
...
| Názov parametra | Popis | Jednotka | Náhradná hodnota | ||||||
|---|---|---|---|---|---|---|---|---|---|
| Typ použitého klienta (ovládača na OPC UA komunikáciu):
| Default Secure | Default | ||||||
| Textový identifikátor session. Identifikátor session by mal byť unikátny v rámci inštancie klienta, vďaka čomu je možné rýchlejšie vyhľadávanie problémov v logoch klienta alebo servera. | String | Kom process | ||||||
| Navrhovaný čas, pred uplynutím ktorého je potrebné vykonať znovuotvorenie kanála. V prípade, že k nemu nedôjde v danom čase, kanál sa uzavrie a nebude možné v rámci neho vymieňať dáta. | hh:mm:ss | 01:00:00 | ||||||
| Navrhovaný čas, pred uplynutím ktorého je potrebné medzi klientom a serverom poslať ľubovoľnú správu. V prípade, že sa nepošle do daného času, uvoľnia sa zdroje držané na serveri v rámci danej session. Primárnou úlohou tohto parametra je odstránenie session, ktoré sa z nejakého neočakávaného dôvodu stali neaktívne. | mm:ss | 01:00 | ||||||
| Typ autentifikácie použitej voči OPC UA serveru. Podporené typy sú:
| Anonymous / Username | Anonymous | ||||||
| Ak Authentication type = Username, tak užívateľské meno použité v autentifikácii. Ak Authentication type = Certificate, tak cesta k užívateľskému certifikátu (napr. D:\user_cert.der). | ||||||||
| Ak Authentication type = Username, tak heslo použité v autentifikácii. Ak Authentication type = Certificate, tak cesta k užívateľskému súkromnému kľúču (napr. D:\user_private_key.pem). | ||||||||
| Bezpečnostná politika (iba pre Client Type = Secure; pre Client Type = Default sa používa bezpečnostná politika None):
| None Basic128Rsa15 Basic256 Basic256Sha256 Aes128Sha256RsaOaep Aes256Sha256RsaPss | None | ||||||
| Spôsob zabezpečenia správ v OPC UA komunikácii (iba pre Client Type = Secure; pre Client Type = Default sa používa spôsob zabezpečenia None):
| None Sign Sign & Encrypt | None | ||||||
| Identifikátor preferovanej Security Policy (iba pre Client Type = Default na kryptovanie hesla). Pokiaľ OPC UA ponúka viacero bezpečnostných politík, je možné vybrať konkrétnu podľa identifikátora zaslaného OPC serverom (identifikátor je možné zistiť z logov). Príklady identifikátora (textový tvar je v zátvorkách): PolicyId: 30 (0) PolicyId: 31 (1) PolicyId: 75 73 65 72 6E 61 6D 65 5F 62 61 73 69 63 31 32 38 52 73 61 31 35 (username_basic128Rsa15) PolicyId: 75 73 65 72 6E 61 6D 65 5F 62 61 73 69 63 32 35 36 53 68 61 32 35 36 (username_basic256Sha256) | - | - | ||||||
| Čakanie po rozpade spojenia, pred opakovaným nadviazaním spojenia. | mm:ss.mss | 00:10.000 | ||||||
| Čakanie po neúspešnom pokuse o nadviazanie spojenia. | mm:ss.mss | 00:02.000 | ||||||
| Čakanie po neúspešnom pokuse o vytvorenie monitored items. Ak je nulové, pokus sa neopakuje. Ak je nenulové, pokus sa opakuje po definovanom čakaní. Pozn: v prípade konkrétneho OPC UA servera (Simatic S-7) mohlo dôjsť k tomu, že sa po reštarte PLC nepodarilo vytvorenie monitored items, ale o nejaký čas (po skončení kompletnej inicializácie PLC?) sa vytvorenie už podarilo. | sec | 0 | ||||||
| Ukončenie spojenia po príjme správy ServiceFault. | YES/NO | NO | ||||||
| Pomocou daného parametru je možné zmeniť počet informácií o chode komunikácie. Režimy Extended/Full odporúčame zapínať iba pri detekcii problémov a ladení komunikácie. Režim "Full + Trace (Secure only)" je platný iba pre Client Type = Secure. | Normal/Extended/Full/ Full + Trace (Secure only) | Normal | ||||||
| Parameter určuje vlákno, resp. vlákna, ktoré budú posielať informačné výpisy o chode komunikácie. | Receiving/Sending/Others treads/All threads | All threads |
Poznámka: všetky X509 certifikáty použité v OPC UA komunikácii sa nachádzajú v nasledovných podadresároch adresára kom-opcua v aplikačnom adresári:Kotva kom-opcua kom-opcua
...
| Názov parametra | Popis | Jednotka | Náhradná hodnota | ||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Hodnota, v akých časových intervaloch má server poslať informáciu o zmene monitored items v rámci inštancie subscription pomocou "Publish message". Pozn: parameter určuje navrhovanú hodnotu parametra, ktorú OPC UA server môže zmeniť, napr. Bernecker-Rainer vracal vždy hodnotu "Publishing Interval" aspoň 50 ms, hoci požadovaný interval bol menší. | mi:ss.mss | 00:05.000 | ||||||||||||||||
| Ak do času daného (LifeTime Count * Publishing Interval) nepríde od klienta žiadosť o dáta / subscription zaniká. Je potrebné, aby hodnota tohto parametra bola minimálne 3 krát väčšia, ako hodnota "Requested Max KeepAlive Count". Pozn: parameter určuje navrhovanú hodnotu parametra, ktorú OPC UA server môže zmeniť, napr. Bernecker-Rainer vracal vždy hodnotu "LifeTime Count" maximálne 600, hoci požadovaná hodnota bola väčšia. | Number | 1000 | ||||||||||||||||
| V prípade, že v objektoch subscription nedôjde ku zmene, server po uplynutí času (Max Notifications Per Publish * Publishing Interval) pošle keep-alive správu, ktorú klient potvrdí tým, že pošle novú žiadosť o dáta. Pozn: parameter určuje navrhovanú hodnotu parametra, ktorú OPC UA server môže zmeniť, napr. Bernecker-Rainer vracal vždy hodnotu "Max KeepAlive Count" maximálne 200, hoci požadovaná hodnota bola väčšia. | Number | 5 | ||||||||||||||||
| Parameter udáva maximálny počet notifikácii o zmene objektu, ktorú server môže poslať v jednej "Publish message". Nulový parameter indikuje, že počet notifikácii nie je obmedzený. | Number | 0 | ||||||||||||||||
| Parameter zapína/vypína publishing v rámci subscription. | YES/NO | YES | ||||||||||||||||
| Udáva relatívnu prioritu jednej subscription. V prípade, že server má poslať viac notifikácii, subscription s väčšou prioritou bude uprednostnený. | 0-255 | 0 | ||||||||||||||||
| Pomocou tohto parametra je možné pre každý monitorovaný item v subscription vytvoriť na strane servera frontu objektov s danou dĺžkou. | Number | 0 | ||||||||||||||||
| Pri zaplnení fronty budú z nej vyhadzované najstaršie hodnoty (YES) alebo nahradzované najnovšie hodnoty (NO). | YES/NO | YES | ||||||||||||||||
| rt |
|
| Časové značky používané pri čítaní hodnoty:
| - | Server | ||||||||||||||
| Časové značky používané pri zápise hodnoty:
Pozn: ak OPC server nepodporuje zápis časových značiek, podľa normy má vrátiť chybu Bad_WriteNotSupported (2155020288). | - | None | ||||||||||||||||
| Pri zápise bude zapisovaná položka StatusCode. Pozn: podľa normy vráti OPC UA Wrapper chybu Bad_WriteNotSupported (2155020288), ak je zapisovaná položka StatusCode pri zápise do OPC DA Servera verzie 2.05a. | YES/NO | YES | ||||||||||||||||
| Pri zápise položky poľa sa najskôr načíta celé pole a potom sa celé zapíše. Pokiaľ je tento parameter nastavený na hodnotu NO, zapisuje sa iba konkrétna položka poľa, Pozn: ak OPC server nepodporuje zápis konkrétnej položky poľa, podľa normy má vrátiť chybu Bad_WriteNotSupported (2155020288). Pozn: ak je tento parameter aktívny, na meranom bode typu pole nesmie byť nastavený parameter Write only. | YES/NO | NO | ||||||||||||||||
| rm
| rm | Read ModeSpôsob čítania hodnôt:
Poznámka: módy Subscribe+Read a Read treba použivať iba pokiaľ je problém so štandardnou komunikáciou, keďže sú menej efektívne a spôsobujú vyššiu záťaž. | Subscribe Subscribe+Read Read | Subscribe |
| Budú akceptované hodnoty, ktoré nie sú staršie ako špecifikovaný časový interval (oproti časovej značke aktuálnej hodnoty meraného bodu). Po zápise sa môže stať, že spätne vyčítaná hodnota je staršia (bežne o niekoľko ms) oproti času zápisu, pokiaľ komunikačný počitač a OPC UA server nemajú presnú synchronizáciu času. V logu linky sa môžu vyskytovať chybové hlášky: Ignoring value for I/O tag <name>, current timestamp=<current_time> is newer than received <old_time> Zvýšenie hodnoty parametra Accept Older Time spôsobí spracovanie takýchto starších hodnôt a potlačenie chybovej hlášky. | hh:mi:ss | 00:00:00 | ||||||||||
| Spôsob čítania hodnôt:
Poznámka: módy Subscribe+Read a Read treba použivať iba pokiaľ je problém so štandardnou komunikáciou, keďže sú menej efektívne a spôsobujú vyššiu záťaž. | Subscribe Subscribe+Read Read | Subscribe | ||||||||||||||||
| Ignorovanie parametrov filtra v konfigurácii meraného bodu (Sampling type, DeadBand type, Trigger type). | YES/NO | NO | ||||||||||||||||
| Maximálny počet po sebe idúcich nepotvrdených Publish požiadaviek (na | ||||||||||||||||||
| Kotva | nf | nf | No FilterIgnorovanie parametrov filtra v konfigurácii meraného bodu (Sampling type, DeadBand type, Trigger type). | YES/NO | NO | ||||||||||||||
| Kotva | mpp | mpp | Max Pending Publish RequestsMaximálny počet po sebe idúcich nepotvrdených Publish požiadaviek (na ktoré OPC UA server neodpovie správou Publish message), po ktorých bude spojenie zatvorené. Hodnota 0 spôsobí, že spojenie nebude zatvorené. Pozn: Parameter je použiteľný na zrýchlenie detekcie rozpadnutého spojenia s OPC UA serverom. | - | 0 |
| Kotva | ||||
|---|---|---|---|---|
|
...
| Názov | Popis | Jednotka | Náhradná hodnota |
|---|---|---|---|
| Sampling type | Parameter určuje vzorkovaciu frekvenciu monitorovaného objektu. Pri použití "Publishing rate" je vzorkovacia frekvencia ekvivalentná času Requested Publishing Interval nastaveného na úrovni komunikačnej stanice. "Practical fastest rate" nastaví vzorkovaciu frekvenciu na maximálnu možnú hodnotu. Pri použití tretej možnosti, "Custom rate", je možné špecifikovať vlastný vzorkovací interval, ktorý je možné zadefinovať v parametri Sampling Time. | Publishing rate/ Practical fastest rate/ Custom rate | Publishing rate |
| Sampling time | Parameter umožňujúci zadefinovať vlastnú hodnotu vzorkovacej frekvencie v prípade, že "Sampling type" má hodnotu "Custom rate". | ss.ms | 0.0 |
| Deadband type | Deadband je pásmo, v ktorom zmena hodnoty nevyvolá Data Change Notification, ktorá je súčasťou Publish Message. Pri použití parametra "None" je toto pásmo ignorované. V opačnom prípade sa použije buď relatívna alebo absolútna hodnota pásma ("Percent"/"Absolute") zadefinovaného v parametri "DeadBand value". | None/ Absolute/ Percent | None |
| DeadBand value | Parameter umožňujúci zadefinovať vlastnú hodnotu deadband v prípade, že je zvolená relatívna/absolútna hodnota ("Percent"/"Absolute"). | 0.0 | |
| Trigger type | Parameter špecifikuje podmienku, pri ktorej sa vyvolá Data Change Notification. Pri použití "Status" sa reportuje iba zmena statusu, zmena hodnoty a časovej pečiatky je ignorovaná. V prípade použitia "Status,Value" je ignorovaná zmena časovej pečiatky. Posledný parameter, "Status,Value,Timestamp", zaručuje reportovanie vo všetkých troch prípadoch, teda pri zmene statusu, hodnoty alebo časovej pečiatky. Pozn: konkrétny Simatic S7-1500 neposielal zmeny hodnôt, ak bol tento parameter nastavený na hodnotu "Status,Value,Timestamp" - pomohla zmena na hodnotu "Status,Value". | Status/ Status,Value/ Status,Value,Timestamp | Status,Value,Timestamp |
...
Dialógové okno slúži na jednoduché prezeranie a vkladanie OPC UA objektov do adresných parametrov meraného bodu. Vo vrchnej časti okna je zobrazená stromová štruktúra adresného priestoru. Kliknutím na objekt v tejto štruktúre sa v dolnej časti dialógu objavia priami potomkovia zvoleného objektu (premenné, tagy). Pomocou dvojkliku na jeden zo zobrazených potomkov sa adresné parametre daného objektu prenesú do adresného dialógu meraného bodu.
Poznámka: vo verziách zo 17.12.2018 a novších bolo implementované recyklovanie prehliadacieho dialógu. Pokiaľ je dialóg zavretý tlačidlom Close alebo po výbere tagu, v skutočnosti je iba skrytý a je k dispozícii pre browsovanie iného meraného bodu v rámci tej istej stanice, takže sa zachováí stromová štruktúra prehliadaných objektov. Kliknutie na krížik vpravo hore spôsobí skutočné zavretie dialógu.
Tlačidlo "Copy tags" alebo klávesová skratka Ctrl+C skopíruje zoznam zobrazených tagov (v aktuálnej vetve) do schránky Windows (clipboardu). Pokiaľ je vyznačený konkrétny tag, skopíruje sa iba ten.
Tlačidlo "Copy tree" alebo klávesová skratka Ctrl+Shift+C skopíruje názvy tagov a ich adresy vo všetkých prejdených vetvách do schránky Windows (clipboardu).
Zaškrtnutie voľby "Structured tags" spôsobí, že v stromovej štruktúre sa okrem objektov zobrazia aj premenné (tagy) a KOM proces sa pokúša načítať aj ich potomkov. Toto je užitočné pre prehliadanie OPC UA serverov, ktoré podporujú štruktúrované tagy. Vložiť tag do adresného dialógu meraného bodu je možné aj dvojklikom na názov tagu v stromovej štruktúre.
...
LNALTERPATH MenoLinky QUERY
LNALTERPATH MenoLinky 1|2|3|4
...
Tell príkaz zistí, ku ktorej z IP adries nakonfigurovaných na linke (1..4) je D2000 KOM proces pripojený.
Tell príkaz preruší aktuálne spojenie a pripojí sa k IP adrese, ktorej poradie je v príkaze (1..4).
...
Dokumenty OPC Foundation, ktoré je možné získať na lokalite http://www.opcfoundation.org.
- OPC UA Part 1 - Overview and Concepts 1.01 Specification
- OPC UA Part 2 - Security Model 1.01 Specification
- OPC UA Part 3 - Address Space Model 1.01 Specification
- OPC UA Part 4 - Services 1.01 Specification
- OPC UA Part 5 - Information Model 1.01 Specification
- OPC UA Part 6 - Mappings 1.00 Specification
- OPC UA Part 7 - Profiles 1.00 Specification
- OPC UA Part 8 - Data Access 1.01 Specification
...
- 10. máj 2012 - vytvorenie dokumentu
...
Poznámka: v patchoch novších ako 24.7.2024 je podporená konverzia hodnoty typov Integer32 a Unsigned32 na absolútny čas. Celočíselná hodnota sa chápe ako Epoch (Unix Timestamp - počet sekúnd od 1.1.1970), pričom v konfigurácii Stanice na záložke Časové parametre je možné nastaviť, či je to počet sekúnd od UTC času alebo od lokálneho.
Protokol podporuje konfiguráciu záložky Cieľový stĺpec meraného bodu. Ak je hodnota OPC itemu typu "Array", tak komunikačný protokol kopíruje hodnoty poľa od nakonfigurovanej položky "Array Index" vyššie do stĺpca štruktúrovanej premennej. Prihliada sa na rozmer štruktúrovanej premennej. Ak je počet riadkov štruktúrovanej premennej menší ako načítaný "array" VARIANT, sú hodnoty, ktoré sa do štruktúrovanej premennej nezmestia, ignorované.
| Kotva | ||||
|---|---|---|---|---|
|
...
Dialógové okno slúži na jednoduché prezeranie a vkladanie OPC UA objektov do adresných parametrov meraného bodu. Vo vrchnej časti okna je zobrazená stromová štruktúra adresného priestoru. Kliknutím na objekt v tejto štruktúre sa v dolnej časti dialógu objavia priami potomkovia zvoleného objektu (premenné, tagy). Pomocou dvojkliku na jeden zo zobrazených potomkov sa adresné parametre daného objektu prenesú do adresného dialógu meraného bodu.
Poznámka: vo verziách zo 17.12.2018 a novších bolo implementované recyklovanie prehliadacieho dialógu. Pokiaľ je dialóg zavretý tlačidlom Close alebo po výbere tagu, v skutočnosti je iba skrytý a je k dispozícii pre browsovanie iného meraného bodu v rámci tej istej stanice, takže sa zachováí stromová štruktúra prehliadaných objektov. Kliknutie na krížik vpravo hore spôsobí skutočné zavretie dialógu.
Tlačidlo "Copy tags" alebo klávesová skratka Ctrl+C skopíruje zoznam zobrazených tagov (v aktuálnej vetve) do schránky Windows (clipboardu). Pokiaľ je vyznačený konkrétny tag, skopíruje sa iba ten.
Tlačidlo "Copy tree" alebo klávesová skratka Ctrl+Shift+C skopíruje názvy tagov a ich adresy vo všetkých prejdených vetvách do schránky Windows (clipboardu).
Zaškrtnutie voľby "Show all types" spôsobí, že v stromovej štruktúre sa okrem objektov (nody typu Object) zobrazia aj ostatné typy nodov (nody typu Unspecified, Method, ObjectType, VariableType, ReferenceType, DataType, View) s výnimkou tagov (nody typu Variable). Na zobrazenenie tagov viď nasledujúcu voľbu.
Zaškrtnutie voľby "Structured tags" spôsobí, že v stromovej štruktúre sa okrem objektov (nody typu Object) zobrazia aj premenné - tagy (nody typu Variable) a KOM proces sa pokúša načítať aj ich potomkov. Toto je užitočné pre prehliadanie OPC UA serverov, ktoré podporujú štruktúrované tagy. Vložiť tag do adresného dialógu meraného bodu je možné aj dvojklikom na názov tagu v stromovej štruktúre.
| Kotva | ||||
|---|---|---|---|---|
|
...
| Príkaz | Syntax | Popis |
| STWATCH | STWATCH MenoStanice | Tell príkaz pošle na stanicu príkazy na vyčítanie hodnôt jednotlivých meraných bodov. |
| LNALTERPATH | LNALTERPATH MenoLinky QUERY LNALTERPATH MenoLinky 1|2|3|4 | Tell príkaz zistí, ku ktorej z IP adries nakonfigurovaných na linke (1..4) je D2000 KOM proces pripojený. Tell príkaz preruší aktuálne spojenie a pripojí sa k IP adrese, ktorej poradie je v príkaze (1..4). |
| Kotva | ||||
|---|---|---|---|---|
|
...
Dokumenty OPC Foundation, ktoré je možné získať na lokalite http://www.opcfoundation.org.
- OPC UA Part 1 - Overview and Concepts 1.01 Specification
- OPC UA Part 2 - Security Model 1.01 Specification
- OPC UA Part 3 - Address Space Model 1.01 Specification
- OPC UA Part 4 - Services 1.01 Specification
- OPC UA Part 5 - Information Model 1.01 Specification
- OPC UA Part 6 - Mappings 1.00 Specification
- OPC UA Part 7 - Profiles 1.00 Specification
- OPC UA Part 8 - Data Access 1.01 Specification
| Kotva | ||||
|---|---|---|---|---|
|
...
- 10. máj 2012 - vytvorenie dokumentu
| Kotva | ||||
|---|---|---|---|---|
|
...
- Ver. 1.0 – 10. máj 2012
- Ver. 1.1 – 17. december 2018: doplnené recyklovanie prehliadacieho okna a browsovanie štruktúrovaných tagov
- Ver. 1.2 – 4. apríla 2024: Pridaná podpora pre prehliadanie všetkých typov tagov
| Info | ||
|---|---|---|
| ||
Generovanie klientských certifikátov pre OPC UA s pomocou OpenSSL. Na Windows sme použili https://slproweb.com/products/Win32OpenSSL.html. Pred generovaním treba vytvoriť súbor domain.ext s nasledovným obsahom: subjectKeyIdentifier=hash
Následne vygenerujte kľúč (napr. ProSoft PLX32-EIP-MBTCP-UA Multi-Protocol Gateway potreboval 2048-bitový, iné zariadenia akceptovali 4096-bitový): openssl genrsa -out private.pem 2048a vygenerujte certificate signing request (CSR): openssl req -new -key private.pem -out private.csrNásledne je nutné zadať viaceré parametre. Podľa vzoru UaExpert-a vypĺňame iba Organization Name, Common Name a Email Address, namiesto ostatných parametrov zadáme bodku (aby boli prázdne). Country Name (2 letter code) [AU]:. Následne vygenerujte certifikát platný days dní (10000 zodpovedá cca 27 rokov). openssl x509 -req -days 10000 -in private.csr -signkey private.pem -out cert.crt -extfile domain.extCertifikát cert.crt skonvertujte na der formát: openssl x509 -inform pem -in cert.crt -outform der -out cert.derVýsledný certifikát (cert.der) nakopírujte do adresára own a privátny kľúč (private.pem) do adresára private v adresári kom-opcua, viď poznámku. Pozn: takto vygenerovaný privátny kľúč/certifikát je použiteľný aj pre nástroj Unified Automation UaExpert. |
...
| Info | ||
|---|---|---|
| ||
...



