PmaCommMsg - Deatiled object description
See: The PmaCommMsg
The object is created by the type of the communication protocol set in the PmaComm
object. That's why it is advisable to create the PmaCommMsg
object after the configuration of the PmaComm
The object contains two groups of variables. One serves for the specification of the sending data
(see the "Data-sent
" tab) and the other serves as receiving data
from the communication (see the "Data-received
It is possible to access these variables even in the script (see WriteVars method and ReadVars method). For example:
- writing into the first (zero-based index) variable for sending data:
- reading the third (zero-based index) variable for receiving data:
#rcvvars and #sndvars identificators:
In the PmaCommMsg object, the #rcvvars and #sndvars identificators are used for accessing the variables (of the PmVar type) defined on Data-received and Data-sent tabs. This identifier can be used e.g. in the Pm method, or for the PP data binding in the application and in panels. For example the Pm("/Comm/Msg1/#rcvvars/aaa") method returns the received variable aaa from the object named "Msg1" that is of the PmaCommMsg type.
PmaCommMsg and PmaCommGroup objects comparation:
- The PmaCommMsg
- Is a "low level" object, meaning that the data format in this object is created depending on the communication message type, defined by corresponding protocol. If you want to receive, for example, both registers and counters, then two PmaCommMsg
objects must be created because the current protocol does not support receiving both registers and counters in one message.
- The PmaCommGroup
- Compared to the PmaCommMsg
object, it is on a higher level, because the data in this object are not depending on used protocol. It is possible, for example, to define data for both counters and registers and the object will intelligently assemble this data into communication messages.
- Can be used for following drivers: PmOpcUaClient
For some drivers the PmaCommGroup object cannot be used based on the principles (e.g. for the PmChar communication driver, because this user defined protocol does not have any general addressing and depends only on the user, what kind of message will be created by the PmaCommMsg object).