一、Modbus介绍
关于Modbus的介绍可参考前面的文章<modbus tcp协议介绍及分析>和<modbus rtu通信格式测试解析>这2篇文章。
二、Agile Modbus软件包介绍
Agile Modbus软件包的链接地址:
https://gitee.com/RT-Thread-Mirror/agile_modbus
Agile Modbus的特性:
①支持 rtu 及 tcp 协议,使用纯 C 开发,不涉及任何硬件接口,可在任何形式的硬件上直接使用。
②由于其使用纯 C 开发、不涉及硬件,完全可以在串口上跑 tcp 协议,在网络上跑 rtu 协议。
③支持符合 modbus 格式的自定义协议。
④同时支持多主机和多从机。
⑤使用简单,只需要将 rtu 或 tcp 句柄初始化好后,调用相应 API 进行组包和解包即可。
目录结构:
三、PC机上使用示例
将工程下载,在Ubuntu系统中运行代码,以Modbus TCP Slave为例。
测试用的软件为Modbus Poll。
vs code打开工程,如下:
屏蔽掉如下部分
打开终端,进入examples文件夹下,输入make即可。
进入slave文件夹
输入指令
./ModbusSlave 192.168.100.134 5000
//192.168.100.134 本机地址
//5000 自定的端口号
可以看到程序正常运行了
打开测试软件,进行配置连接
正常获取到数据。
修改程序代码,重新编译运行。
可以看到软件获取到了数据。
欢迎关注公众号:嵌入式学习与实践