Promotic

PmOpcUaClient - Driver do komunikacji z serwerem OPC UA

Przed zastosowaniem tego drivera w aplikacji PROMOTIC należy obejżeć "PROMOTIC wideo kurs 4 - Drivery komunikacyjne".

Podstawowe właściwości drivera:
- Zastosowanie tego drivera wymaga zakup licencji PmOPC. Podczas wytwarzania aplikacji w trybie freeware PmFree lub z licencją deweloperską oraz podczas jej testowania w runtime element ten jest zawsze funkcjonalny.
- Komunikacja jest dla Ethernetu (aplikacja PROMOTIC jest klientem).
- Driver jest wbudowany do systemu PROMOTIC przy pomocy obiektu PmaComm.
Driver wspiera zastosowanie obiektu PmaCommGroup. Obiekt PmaCommMsg nie można zastosować.
Dla łatwego dodania tego drivera do aplikacji jest dogodne zastosować: Konfiguracje wstępne w grupie "OPC"
- Driver ten jest dostępny od wersji Pm9.0.9.
- Driver ten narazie nie wspiera UA Security (UA Security składa się z uwierzytelnienia, upoważnenia, szyfrowania i integralności danych poprzez podpisy).


Zalecone wartości parametrów obiektu PmaComm:

Zalecane wartości dla pozycji Parametry Ethernet-klient:
Adres sieciowyAdres URL OPC-UA serwera.
Numer zdalnego portu TCP/UDPPort OPC-UA serwera (zazwyczaj wartość 4840).
 
Patrz: Wikipedia: Lista numerów portów TCP i UDP używanych przez protokoły do uruchamiania aplikacji sieciowych.
Typ transmisji EthernetTCP
Podłączyć dopiero przy pierwszej transmisjiNIE zaznaczać (obowiązkowe)
Zamknij połączenie po każdej transmisjiNIE zaznaczać (obowiązkowe). Po każdym nawiązaniu połączenia jest konieczne przenieść kilka wiadomości inicjalizacyjnych i gdyby połączenie było często zamykane to szybkość transmisji została by znacząco obniżona.
Opis i zalecane wartości dla pozycji Parametry protokołu:
URL punktu końcowego serweraTu należy określić adres URL punktu końcowego OPC-UA serwera.
Stosowany jest jeżeli serwer umożliwia przekierowanie do innych serwerów, w innym przypadku wystarczy wprowadzić pusty łańcuch.
Wartość może być w postaci "opc.tcp://URL:Port".
UwierzytelnienieTu określa się typ uwierzytelnienia klienta.
(Uwierzytelnienie typu "2=Certificate" nie jest na razie wspierana.)
0=Anonymous - Anonimowa uwierzytelnienie, tzn. klient nie korzysta z uwierzytelnienia.
1=UserName - Uwierzytelnienie przy pomocy nazwy oraz hasła.
NazwaNazwa klienta.
HasłoHasło danego klienta.
Dodatkowe parametryNarazie pozostaw pustą wartość.

Opis komunikacji przy pomocy obiektu PmaCommGroup

Dla niniejszego drivera komunikacyjnego można zastosować obiekty PmaCommGroup.
Zmiennych w obiekcie PmaCommGroup (lub jeszcze lepiej zmiennych w obiekcie PmaData z rozszerzeniem danych ExtComm) może być dowolna ilości, mogą być dowolnego typu danych i w dowolnej kolejności. Driver sam w zoptymalizowany sposób odczyta dane z urządzenia przy pomocy wewnętrznie wytworzonych wiadomości komunikacyjnych.
Odczytywane są wszystkie zmienne (jeżeli konfigurator "Odświeżanie danych zezwolone" jest zaznaczony). Przy zapisie do zmiennej do urządzenia jest odesłana tylko zapisywana zmienna (jeżeli konfigurator "Automatycznie przesyłaj przy zapisie do pozycji" jest zaznaczony).

Odświeżanie wartości zmiennych zarejestrowanych w obiekcie PmaCommGroup:
Driver podczas swojej inicjalizacji zarejestruje wszystkie zmienne do OPC serwera (wiadomość systemowa OPC CreateMonitoredItems) oraz informuje serwer o wymaganym czsie odpowiedzi według ustawionego konfiguratora "Szybkość odświeżania komunikacji [ms]".
Następnie driver zażąda o wysłanie wiadomości podczas zmiany tych zmiennych (wiadomość systemowa OPC PublishRequest). Podczas zmieny zmiennej OPC serwer (lub jeżeli nie nastąpi żadna zmiana, wtedy do czasu określonego w konfiguratorze "Szybkość odświeżania komunikacji [ms]") wyśle wiadomość zawierającą informacje o wszystkich zmienionych zmiennych (wiadomość systemowe OPC PublishResponse).
Driver po otrzymaniu tej wiadomości odrazu ponownie wyśle wiadomość PublishRequest. W ten sposób są uaktualniane wartości zmiennych obiektu PmaCommGroup o określonym periodzie Szybkość odświeżania komunikacji [ms].

Opis konfiguratora "ItemId":
ItemId jest identyfikator tekstowy pozycji, który służy do adresacji pozycji w urządzeniu. Z konfiguratora ItemId driver stwierdzi, w jaki sposób ma zostać wartość pozycji wczytana lub wysłana.
Tekst można wpisać ręcznie, lub ułożyć w oknie, które zostanie otwarte przy pomocy przycisku wprawo od konfiguratora.
Do wprowadzenia można zastosować Makro wyrażenie (wartość jest obliczana po uruchomieniu aplikacji).
Identyfikator ItemId może mieć wygląd na przykład "ns2,str,xxxx", gdzie:
- ns2: Określa, do którego obszaru (ns=namespace) OPC-UA serwera zmienna należy (0, 1, 2, ...).
- str: Określa typ identyfikatora zmiennej.
str = Identyfikator zmiennej jest łańcuch tekstowy.
nmb = Identyfikator zmiennej jest liczba.
- xxxx: Identyfikator zmiennej. Tekst ten jest zależny tylko od OPC-UA serwera.


Opis konfiguratora "PmaCommGroup > Parametry > Parametry specjalne":
Typ odczytu czasuOkreśla, czy wraz z wartością będzie z OPC-UA serwera odczytywany również czas danej wartości.
Jeżeli czas będzie odczytywany, wtedy zostanie on zapisany do właściwości PmVar.TimeSource.
No - Czas wartości nie będzie odczytywany.
Source - Będzie odczytywany czas źródła, tzn. czas, który OPC-UA serwer odczytał z urządzenia, z którym komunikuje (jeżeli serwer potrafi z urządzenia taki czas odczytać).
Server - Będzie odczytywany czas odczytu wartości OPC-UA serwerem.
Maksymalna ilość zmiennych w jednej wiadomości rejestrującejMaksymalna ilość zmiennych, które zostaną zarejestrowane do serwera OPC w jednej wiadomości (komunikat OPC typu CreateMonitoredItems).
Ten konfigurator jest wstępnie ustawiony jako wyłączony (a więc wszystkie zmienne są rejestrowane jednocześnie przy pomocy jednej wiadomości).
 
Ten konfigurator zwykle nie musi być włączony. Włączenie tej funkcji jest konieczne na przykład wtedy, gdy serwer OPC nie pozwala na rejestrację wielu zmiennych w jednej wiadomości (w praktyce napotkaliśmy na ograniczenie ilości 990 zmiennych). Jeżeli jest konieczne ustawienie konkretnej ilości, wtedy najlepiej jest ustawić ją na jak najwyższym poziomie.

Historia:
Pm9.00.23: Usunięty błąd: Dle tego drivera została wprowadzona metoda PmaComm.OpenPort oraz właściwość PmaCommGroup.UpdateEnabled.
Pm9.00.21: Korekta: Jeżeli w obiekcie PmaCommGroup było dużo zmiennych, wtedy nie działał odczyt danych.
Nowy konfigurator "PmaCommGroup > Parametry > Parametry specjalne > Maksymalna ilość zmiennych w jednej wiadomości rejestrującej".
Pm9.00.19: Usunięty błąd: Jeżeli nie udało się połączyć, wtedy powstawały nowe żądania na wytworzenie połączenia a stare żądania nie zostały zakończone.
Pm9.00.16:
- Włączona opcja autoryzacji nazwy użytkownika typu UserName (tzn. należy wprowadzić nazwę i hasło).
- Usunięty błąd: Po określonym czasie (np. po 5 minutach) następował restart tego drivera.
Pm9.00.15: Usunięty błąd: (Rewizja 2) Z niektórymi typami serwerów OPC UA nie udało się nawiązać połączenia.
Pm9.00.15: Usunięty błąd: Nie działał odczyt wiadomości komunikacyjnej rozdzielonej do większej ilości podwiadomości.
Pm9.00.13: Usunięty błąd: Przy zapisie do zmiennych w obiekcie PmaCommGroup czasami została zakończona komunikacja.
Pm9.00.09: Wytworzono
© MICROSYS, spol. s r.o.