How to control a vibration test in EDM using a C# MQTT Client

MQTT Messaging for Environmental Testing
MQTT is an OASIS standard messaging protocol for the Internet of Things (IoT). It is designed as an extremely lightweight publish/subscribe messaging transport that is ideal for connecting remote devices with a small code footprint and minimal network bandwidth.

The implementation of MQTT in EDM allows users to monitor the status of environmental tests (vibration, temperature, humidity) executed in EDM VCS, measurements taken in EDM DSA, and remotely operate a test.

Each purchase of Crystal Instruments MQTT extension for EDM includes three coding languages for client demo programs and scripts (C#, Python and LabVIEW). This article will focus on how to use the C# demo program and the important sections of the MQTT C# demo client. A complete list of the MQTT demo clients is included in the EDM MQTT Technical User Manual.

MQTT C# Client Demo Program
The connection setting page loads when the user opens the MQTT C# client demo. Users can edit the fields to match the EDM MQTT connection settings. This will allow the demo client to connect.

Click Connect to enable messages between the demo and EDM clients regarding the connection and current data.

Once the clients complete exchanging messages and the connection is successful, the demo client can command EDM to run various commands and collect data from a running test. The following figure depicts the command page of the demo client.

Click Connect to proceed connecting the spider devices to EDM. Click Run to begin the pre-test or test (depending on the test type). Random EDM VCS testing uses the Proceed command to continue the test after a pre-test is completed. After a test is successfully started, the demo client can send commands to change various aspects of the test and collect data.

The following figure is an example of the demo client requesting a signal frame.

Additional examples of the test configuration parameters, test status details and input channel table are displayed in the following figures.