MQTT (Message Queue Telemetry Transport) is a lightweight Machine to Machine (M2M) communication protocol that is used in Industry 4.0 and IoT applications environments.
It is an open standard (ISO / IEC PRF 20922) and it is based on the publication-subscription pattern. It works on the top of the TCP/IP stack. Its main objective is to exchange messages between clients and a server (Agent-Broker). Clients can decide for themselves if a message is important to them, depending on the topics to which they have subscribed.
In this way, communications can be stablished between different teams, information producers (Publisher) and other receptors (Subscriber), for their treatment. Information exchanges examples such as:
- PLC to PLC, in 2 different subnets, being both producers and receivers.
- PLC and ERPS that read/write their data from/to Production.
- Mobile Devices, etc.
As publisher clients, for example, plant process PLCs can be stablished (in our tests we have tested with SIEMENS TIA 1200/1500 PLCs and classic Step7 PLCs, S7300/S7400), under the MQTT 3.1.1 protocol.
This structure, flexible and expandable, allows to unify the information of a plant, adding MQTT software to the current programming of the PLCs, and with the installation of a broker, would make available to other subscribers (For example one ERP, another PLC, …) the information of the plant(s).
With this scheme, the existing PLCs are used, which would be reprogrammed for the treatment of the published/subscribed information, being necessary only the installation of a broker, of reduced cost. All this, would be prepared for the expansion of different productive networks as well as applications that now are present but not always connected to the plant (ERP).
INISA, the way to 4.0 Industrial communication with MQTT open protocols