Promotic

Obiekt PmaComm (Komunikacja)

Opis:
Obiekt zapewnia komunikację z innymi komputerami (zazwyczaj z komputerami technologicznymi typu PLC) poprzez Ethernet lub po łączu szeregowym komputera (COM1, COM2,...).

W obiekcie PmaComm może się znajdować kilka obiektów PmaCommMsg lub PmaCommGroup.
Obiekt ten można wytworzyć w obiektach: PmaRoot, PmaFolder, PmaPrototype. W tych obiektych można wytworzyć większą ilość takich obiektów.
Zastosowanie obiektu PmaComm wymaga zakup licencji dla odpowiedniego drivera komunikacyjnego - patrz Lista driverów komunikacyjnych.

W aplikacji można zastosować jeden obiekt PmaComm kilkakrotnie i w dodatku może być ustawiony kilkakrotnie z wykorzystaneim tego samego protokołu (drivera).
Dla łącza szeregowego każdy obiekt PmaComm musi mieć ustawiony inny port komunikacyjny. Na przykład jeżeli jeden obiekt PmaComm komunikuje się poprzez COM1, wtedy następny obiekt PmaComm potrafi komunikować się na przykład poprzez COM2 (COM3, ...) lecz nie może komunikować się poprzez COM1.

Obiekt PmaComm określa, poprzez który port i przy pomocy jakiego protokołu będą transmitowane wymagane dane. Wymagane dane następnie do transmisji ustawia się w zagnieżdżonych obiektach PmaCommMsg lub PmaCommGroup.

Porównanie obiektów PmaCommMsg oraz PmaCommGroup:
- Obiekt PmaCommMsg:
- Jest obiektem "niskiego poziomu" w tym sensie, że kształt danych w tym obiekcie jest wytworzony w zależności od rodzaju wiadomości komunikacyjnej zdefiniowanej przez dany protokół. Jeżeli chcesz na przykład odczytywać rejestry i liczniki, wtedy musisz wytworzyć dwa obiekty PmaCommMsg, ponieważ dany protokół nie umożliwia odczyt rejestrów i liczników w jednej wiadomości.
- Można zastosować dla wszystkich driverów z wyjątkiem drivera PmOpcUaClient, PmS7 oraz PmOmronFINS.
- Obiekt PmaCommGroup:
- Jest w porównaniu z obiektem PmaCommMsg na wyższym poziomie, ponieważ dane odczytywane w tym obiekcie nie są zależne od protokołu. Można w jednym obiekcie na przykład definiować dane dla liczników i rejestrów a obiekt sam w inteligentny sposób rozdzieli przy komunikacji do poszczególnych wiadomości komunikacyjnych.
- Można zastosować dla następujących driverów: PmOpcUaClient, PmModbusMr, PmS7, PmSBUS, PmMBus, PmKNX, PmIEC8705, PmMelsecQA, PmMelsecFXS, PmABradleyDF1, PmFatek oraz PmTeco.
Dla niektórych driverów komunikacyjnych nie można zastosować obiektu PmaCommGroup z zasady (np. dla drivera komunikacyjnego PmChar, ponieważ taki protokół ustawiany przez użytkownika nie posiada żadnej ogólnej adresacji i zależy wyłącznie od użytkownika, jaką wiadomość komunikacyjną wytworzy przy pomocy obiektu PmaCommMsg).
Obiekt ten przejmuje właściwości, metody oraz zdarzenia obiektu PmaObject.
Właściwości i metody tego obiektu:
ClosePort()Zamknięcie szeregowego/ethernet portu
GetCount()Zwraca ilość transmisji
GetProtParam()Zwraca niektóre wartości ustawione w konfiguratorach karty "PmaComm > Parametry"
IsConnectedStwierdzi, czy Ethernet lub łącze szeregowe są podłączone
OpenPort()Otwarcie szeregowego/ethernet portu
SetProtParam()Ustawia wartości w niektórych konfiguratorach karty "PmaComm > Parametry"
Właściwości tylko dla łącza szeregowego:
BaudRateSzybkość komunikacyjna łącza szeregowego
ByteSizeIlość bitów danych łącza szeregowego
DtrWartość sygnału DTR łącza szeregowego
ParityWartość parzystości transmisji łącza szeregowego
RtsWartość sygnału RTS łącza szeregowego
StopBitsIlość bitów stopu łącza szeregowego
Właściwości i metody odzidziczone z obiektu PmaObject:
AddEvent()Rejestracja funkcji do określonego zdarzenia
GetInfo()Zwraca obiekt Info o danej nazwie
GetOwnedByIndex()Zwraca podobiekt określony kolejnością
GetOwnedByName()Zwraca odniesienie do podobiektu określonego przez jego nazwę
GetOwnedByType()Tablica odniesień do obiektów podrzędnych
GetOwnedNum()Zwraca ilość obiektów zagnieżdżonych w obiekcie
GetPar()Odczyt wartości parametru Pma obiektu (lub jego obiektów nadrzędnych)
GetPathName()Nazwa obiektu ze ścieżką do tego obiektu
GetPermission()Zwraca uprawnienie danej operacji z obiektu
MethodsDostęp do metod projektanta tego obiektu
NameNazwa obiektu (bez ścieżki)
ParentZwraca odniesienie do nadrzędnego Pma obiektu
Pm()Zwraca odniesienie do Pma obiektu lub do jego podobiektu iplementacyjnego
RemoveEvent()Wyrejestrowuje funkcję w określonym zdarzeniu
RootZwraca odniesienie do rdzennego obiektu aplikacji PmaRoot
Zdarzenia tego obiektu:
onConnectJest wywołane po pomyślnym nawiązaniu połączenia
onDisconnectJest wywołane po zamknięciu połączenia
Zdarzenia odziedziczone z obiektu PmaObject:
onStartJest wywołane dla każdego obiektu w runtime tylko raz na początku
onStopJest wywołane dla każdego Pma obiektu w runtime tylko raz na końcu przy zatrzymywaniu aplikacji
Karty konfiguracyjne:
ObiektOgólne informacje dotyczące danego obiektu
ZdarzeniaDefinicja algorytmów zdarzeń obiektu
ParametryUstawienie protokołu komunikacyjnego i jego parametrów
Powiązane podobiekty:
PmaCommGroup(Dane komunikacji) Definicja grupy danych komunikacji
PmaCommMsg(Wiadomość komunikacyjna) Definicja formatu jednej wiadomości komunikacyjnej

Historia:
Pm8.00.09: Usunięty błąd: W niektórych przypadkach doszło do zawieszenia i w celu jej wznowienia było konieczne użycie metody OpenPort lub restart aplikacji!
Pm9.00.00: Zmiana nazwy obiektu: PmComm -> PmaComm
© MICROSYS, spol. s r.o.