首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >SBC/EPC-TL3588 Modbus RTU 温湿度采集实操指南

SBC/EPC-TL3588 Modbus RTU 温湿度采集实操指南

原创
作者头像
创龙科技Tronlong
发布2026-07-08 14:09:56
发布2026-07-08 14:09:56
30
举报

前 言

本文档主要介绍基于单板机/工控机的Modbus协议开发案例。

备注:本文适用于SBCTL3588单板机及EPCTL3588工控机系列(由SBCTL3588单板机搭配扩展板与外壳组成),文中所有演示均基于4GByte LPDDR4X + 32GByte eMMC硬件配置的工控机开展。

开发环境

Windows开发环境:Windows10 64bit、Windows7 64bit

Linux开发环境:VMware16.2.5、Ubuntu22.04.4 64bit

系统版本:Tronlong-Desktop 22.04(类Ubuntu)、Linux-6.1.141、U-Boot 2017.09

sysroot:rk3588-Tronlong-Desktop-22.04-sysroot-[版本号].tar.gz

应用开发交叉编译工具链:aarch64-linux-gnu-gcc(版本为11.4.0,通过网络下载)

术语表

为便于阅读,下表对文档出现的关键术语进行解释;对于广泛认同释义的术语,在此不做注释。

注意事项

(1)请先参考《应用开发手册》完成应用开发环境搭建。

(2)无特殊说明,默认从eMMC启动系统,使用DEBUG接口作为调试串口,通过路由器与PC机进行网络连接,请确保PC机、Ubuntu系统可正常访问互联网。

一、modbus_humiture_capture_save案例

1.1案例说明

本案例演示基于Modbus RTU协议的温湿度数据采集,并在串口终端打印温湿度数据,同时支持将数据保存至CSV文件。程序的运行流程如下:

图 1
图 1

案例相关资料位于产品资料

“4-软件资料\Demo\platform-demos\modbus_humiture_capture_save\”目录下。

案例bin目录存放可执行文件,src目录存放源码。

1.2案例测试

本次操作基于EPC-TL3588-BU工控机、温湿度变送器(厂家:中盛科技,型号:ZS-SHT30-1T-1H-5-36V-RS485)进行演示。

请使用杜邦线将温湿度变送器RS-485接口的A、B端子分别连接至RS-485串口的A1、B1端子,硬件连接如下图所示。

备注:如需使用其他RS-485接口进行测试,硬件连接方法类似。

图 2
图 2

请将本案例bin目录下的可执行程序modbus_humiture_capture_save拷贝至文件系统,并在可执行程序所在目录下,执行如下命令运行程序,查看程序参数说明。

Target# ./modbus_humiture_capture_save -h

图 3
图 3

参数解析:

<serial_port>:表示RS485对应的串口。

-b:设置波特率(默认为9600)。

-s:设置从站ID(默认为1)。

-h:查看帮助信息。

执行如下命令,采集温湿度变送器的数据。

备注:本次操作RS-485串口的设备节点为"/dev/ttyS9"。若使用其他RS-485串口,请参考《EPC-TL3588工控机使用说明书》修改为对应的设备节点。

Target# ./modbus_humiture_capture_save /dev/ttyS9 -b 9600 -s 1

图 4
图 4

由以上打印信息可知,当前环境温度为26.7°C,湿度为68.9%。同时,可观察到该温湿度信息每秒刷新一次。

按下"Ctrl + C"即可停止程序运行,并且生成.csv文件。

图 5
图 5

执行如下命令,查看.csv文件,可以看到程序每秒获取到的温湿度数据。

Target# cat data.csv

图 6
图 6
图 7
图 7

将.csv文件拷贝至PC机,可通过Excel表格查看获取温湿度数据。

图 8
图 8

1.3案例编译

请将产品资料“4-软件资料\Demo\platform-demos\modbus_humiture_capture_save\”案例源码拷贝至Ubuntu工作目录。进入案例源码目录,执行如下命令,修改Makefile文件,确保"SDK_ROOT_PATH"为sysroot解压路径,用户请根据实际情况修改。如下图所示。

Host# vim Makefile

图 9
图 9
图 10
图 10

执行如下命令,配置交叉编译工具链,并执行make命令进行案例编译。编译完成后,将在当前目录下生成可执行文件。

Host# source /home/tronlong/RK3588/environment

Host# make

图 11
图 11

1.4关键代码

1.初始化CSV文件。

图 12
图 12

2.初始化Modbus,创建Modbus RTU通信对象,保存串口和通信参数。

图 13
图 13

3.读取存放在温湿度变送器的寄存器的温湿度数据信息。

图 14
图 14

4.解析温湿度信息。

图 15
图 15

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前 言
  • 开发环境
  • 术语表
  • 注意事项
  • 一、modbus_humiture_capture_save案例
  • 1.1案例说明
  • 1.2案例测试
  • 1.3案例编译
  • 1.4关键代码
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档