LabVIEW进行MQTT通信及数据解析

**需求:**一般通过串口的方式进行数据的解析,但有时候硬件的限制,没法预留串口,那么如何通过网络的方式特别是MQTT数据的通信及解析

解决方式:

1.MQTT通信控件:

参考开源的mqtt-LabVIEW

https://github.com/cowen71/mqtt-LabVIEW

该Vi是通过事件处理的方式进行MQTT服务器的连接、发送、订阅。

将订阅事件中将接收的字符串按照指定的格式解析。

2.操作的关键步骤是:

1)填上合适的MQTT服务器IP或域名

2)在订阅主题:填写订阅的主题名

3)点击订阅,可观察到有数据的接收。

一般接收的数据:十六进制字符串、单个字符表示的十六进制数(乱码)如下图所示

十六进制字符串的解析较为简单:进行字符串的截取操作,并将截取的字符串转换为数值即可。

单个字符表示的十六进制数(乱码):每个字符表示一个十六进制数。同样需要进行字符串的截取,并进行格式转换为数值(十六进制)。

依据数据通信的协议,需要进行十六进制数的位运算符操作。

在此需要注意的是

1)位运算符操作的对象应该为十六进制数,因此应该将数值更改为十六进制数格式:

数据类型表示:

2)需要注意的问题2:

如果将C1创建局部变量再连接到右边的逻辑运算符输入端,则会出现C1的值没有立刻改变,为此将数据格式转换之后的连接线直接连接逻辑运算符的输入端即可。

逻辑移位运算符为:

3)可以依据接收的topic进行不同的主题消息分别处理。

其它可参考:

GitHub - DAQIO/LVMQTT: MQTT Library for LabVIEW

A Practical Guide for Connecting LabVIEW to the Industrial IoT - NI

https://www.cnblogs.com/jzcn/p/16409127.html

相关推荐
Kay.Wen18 天前
LabVIEW 转换 XML文本
xml·labview
LabVIEW开发24 天前
LabVIEW插值应用
算法·labview·labview知识·labview功能·labview程序
LabVIEW开发24 天前
LabVIEW控制阀性能测试评估系统
人工智能·labview·labview知识·labview功能·labview程序
LabVIEW开发1 个月前
LabVIEW振动信号采集分析
fpga开发·labview·labview知识·labview功能·labview程序
LabVIEW开发1 个月前
LabVIEW PID VI 温控参数全解与应用
labview·labview知识·labview功能·labview程序
俊俊谢1 个月前
LabVIEW如何排查和修复dll缺失问题
驱动开发·.net·labview·dll
unicrom_深圳市由你创科技1 个月前
LabVIEW和C#在工业控制中的应用差异是什么?
fpga开发·c#·labview
电气_空空1 个月前
基于 LabVIEW 串口通信的研究
单片机·嵌入式硬件·毕业设计·labview
电气_空空1 个月前
基于 LabVIEW 的 PID 控制系统设计与实现
嵌入式硬件·毕业设计·labview
LabVIEW开发1 个月前
LabVIEW线性规划单纯形法实现
labview·labview知识·labview功能·labview程序