...
Table of Contents |
---|
...
Overview
As with all adapters, an existing Logic Simulator (create link) is required.
...
Where to find the different Gateway Adapters.
...
Where to find
To find the MQTT adapter, go to the Inspector window of a Logic Simulator component.
This Logic Simulator can be added under Logic.
...
Feature overview
...
Info |
---|
Only the settings between the lines refer to the MQTT Adapter. |
Please check the documentation for the rest of the Logic Simulator (create link).
Gateway settings | |||
---|---|---|---|
Adapter Target | Select a different adapter, please see respective documentation for more information. | ||
Adapter Setting (MQTTServerSettings) | |||
XmlFilePath | File path to the policy file.
| ||
ServerName | Is used as the an indicator in the xml policy file. | ||
IP Address | The address of the MQTT broker. This can be a be in IPv4 address or a hostname like localhost | ||
Port | The port on which the MQTT broker is running, | ||
use TLS | Should be turned on when the broker is using TLS authentication. (off by default)
| ||
UserName | Is passed to the server for authentication if the field is not empty (not used by default). | ||
PassWord | Is passed to the server for authentication when the UserName field is not empty (not used by default) | ||
QoS | (Quality Of Server) is an agreement between broker and client that defines the guarantee of delivering a message: 0 : At most once => There is acknowledgement between broker and client other than regular TCP , fast, unreliable (packet loss)) 1 : At least once => The sender buffers the value until a ‘PUBACK’ is returned by the broker. Message can be send multiple times (, slower, reliable) 2 : Exactly once => The sender sends the message, the broker returns a ‘PUBREC’. Sender is returning a ‘PUBREL’ and the server again returns a ‘PUBCOMP’ command to finalize the send process. (slow, very reliable)
| ||
Lifecycle settings |
|
...
QoS | known as | speed | reliability | remarks |
---|---|---|---|---|
0 | fire & forget | fast | poor | Messages can get lost in unstable connections. Very suitable for wires local connection |
1 | single handshake | slower | good | No message is lost. Can lead to duplicate messages. but is much faster than QoS 2 |
2 | double handshake | slowest | exact | If it is getting the message exactly once is more important than performance. Quite an overhead compared to the other 2 levels |
...
How to use
Please see the Logic Simulator (create link) documentation for further instructions on setting up your simulation.
...
Prerequisites for MQTT
MQTT can work with an online broker, but is more commonly used with a local broker. There are lots brokers available. An overview can be found at: https://en.wikipedia.org/wiki/Comparison_of_MQTT_implementations
...
For testing purposes we recommend to use a client like i.e. MQTT.fx https://mqttfx.jensd.de/
...
Used Protocol
To communicate with the MQTT adapter in Prespective you need to apply the following protocol:
...
Topic to write is the address defined by the PLC address in the signal naming
Value is the value that is within the range of the specified type
...
Supported Types
BOOL
BYTE
SBYTE
WORD
DWORD
SHORT
USHORT
INT16
UINT16
INT32
UINT32
INT64
UINT64
REAL32
REAL64
BYTEARRAYSTRING
STRUCT
...
Naming Rules
...
Setting up the component works as like any other prelogic component. The thing you have to take into account is how the PLC Address Path Format (or implicit naming rule) is configured. The output of this Address is the topic to which the component is reading and/or writing.
...