Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Prerequisites:

Overview:

Transmission is an MQTT module for Ignition that can publish files using MQTT Sparkplug to be processed by MQTT engine. 

Files are transferred using Sparkplug over MQTT and which files get transferred and when they get transferred can be configured in a number of different ways. The file transfer configuration also defines how quickly a file transfer occurs and how long before a timeout will occur on failure to receive host side acknowledgements which can be adjusted as required based on the size of files you are sending and any bandwidth constraints that you may have.

This tutorial shows how to configure the MQTT modules to publish and process files.

Step 1: Install the MQTT modules

Install the four MQTT modules listed in the pre-requisites onto your Ignition system following the Cirrus Link Module Installation guide.

...

This allows the three modules to automatically connect and provide a starting base for the tutorial.

Step 2: Config MQTT Engine File Handling

Now we can configure the MQTT Engine module to process the published files.

...

When complete, it should look similar to the following. Save the changes after confirming.

Step 3: Configure MQTT Transmission to publish files

Now we can configure the MQTT Transmission module to publish files using the existing MQTT client created by the Example Transmitter. Navigate to the MQTT Transmission > Settings in the left side bar of the Ignition Gateway UI and select the Transmitters tab. Make note of the Sparkplug IDs configured for your transmitter.

...

After the configuration is saved, it should look similar to below:

Step 4: Publish Files

At this point, everything should be configured to send files from MQTT Transmission to MQTT Engine. Open Ignition Designer on the system running MQTT Transmission. You should see the control and information tags created in the specified tag provider and folder as shown below:

...

Note
With the File Auto_Publish disabled, the files will be left on the originating filesystem after a successful publish and will need to be removed manually


Step 5: Viewing the messages in the Ignition logs

The records published from MQTT Transmission can be be viewed in the Ignition Gateway logs by setting the com.cirruslink.mqtt.engine.gateway.sparkplug.SparkplugPayloadHandler logger to TRACE.

Tip
Review the Gateway Loggers from Ignition for details on how to do this.

Image Modified




Extra Activities

At this point you have a fully functional system which can be expanded or modified as required. Below are some addition configuration options to try:

...

  • Setup two Ignition systems - a host system installed with MQTT Engine and MQTT Distributor and and edge system installed with MQTT Transmission

    By default, MQTT Transmission is configured to connect to MQTT Distributor on tcp://localhost:1883. As the MQTT Distributor is installed on a different server, we will need to edit the configuration to allow MQTT Transmission to connect to the host server.

    Note

    The MQTT Server must be accessible to the Ignition system running MQTT Transmission. In order for this to work port 1883 must be open to outside connections. Make sure this is allowed via your operating system's firewall configuration and any anti-virus software you may have installed.

    This configuration is not recommended for production systems. If running this in production, you should be using TLS encryption on port 8883. More information on how to configure TLS can be found here.

    Navigate to the MQTT Transmission > Settings in the left side bar of the Ignition Gateway UI and select the Servers tab.

    Change the server URL to point to the server IP address or domain name of the Ignition system running MQTT Distributor and save the configuration.





Excerpt Include
CLD80:FAQ: Ignition ModulesCLD80:
FAQ: Ignition Modules
nopaneltrue