实现的功能
该模块上电后主动以mobusRTU协议,通过本模块的串口将气体检测仪的4路传感器数据读取
模块上电后连接指定WiFi,通过MQTT协议将读取到的数据以JSON格式推送到指定服务器。
具体细分为如下几个小过程:
模块上电后主动连接到指定WiFi
模块连接到指MQTT服务器
模块通过modbusRTU协议主动读取设备数据
模块主动将读取到的数据推送到mqtt服务器
配置环境
PC系统(Windows 10 专业版 21H1)
WIFI AP(使用手机共享2.4G热点)
USB转485通讯模块
配置软件
Advanced_IP_Scanner
IOTServiceSetupX64_3.0.03
modbusPLC Simulator
mosquitto-2.0.11
Advanced_IP_Scanner
局域网设备扫描软件,在该处用于获取局域网内HF2211S从AP中获取到的IP地址。
IOTServiceSetupX64_3.0.03
用于发现并配置HF2211S
modbusPLC Simulator
用于模拟气体探测仪,可以查看从模块发来的报文,便于调试modbusRTU主站。
mosquitto-2.0.11
MQTT服务端软件,HF2211S将485口读取到的数据不做解析,转发到MQTT服务器。
配置截图
安装前文中提到的配置软件
电脑连接模块自带的WiFi
打开配置软件,会自动显示搜索到的局域网内的模块,点击设备编辑,进入设备配置界面
主要设置如下参数
WIFI模式 STA
STA无线名称、密码
连接协议相关信息
协议:MQTT、订阅主题、发布主题、服务器端地址、端口号
串口信息
波特率、数据位、停止位、校验位
基本参数设置设置完成后,点击高级设置,再点击编辑脚本,导入串口脚本,实现模块主动读取设备数据及数据上送功能。
将如下脚本存储为txt文件,并导入脚本
key=””
cmd01=[0x05,0x03,0x01,0x33,0x00,0x37,0xF4,0x6B]
cmd02=[0x05,0x03,0x02,0x33,0x00,0x37,0xF4,0x2F]
cmd03=[0x05,0x03,0x03,0x33,0x00,0x37,0xF5,0xD3]
cmd04=[0x05,0x03,0x04