|
|
3 月之前 | |
|---|---|---|
| .. | ||
| main.lua | 3 月之前 | |
| readme.md | 3 月之前 | |
| rtu_slave_manage.lua | 3 月之前 | |
1、main.lua:主程序入口;
2、rtu_slave_manage.lua:RTU 从站应用模块;
本 demo 演示的核心功能为:
1、将设备配置为 modbus RTU 从站模式
2、等待并且应答主站请求
注意事项:
1、该示例程序需要搭配 exmodbus 扩展库使用
2、设备作为 modbus RTU 从站模式时,仅支持接收 modbus RTU 标准格式的请求报文
3、进行回应时也需要符合 modbus RTU 标准格式
1、Air8000 开发板一块
2、TYPE-C USB数据线一根
3、USB-RS485 串口板
2、Air8000 V2018 版本(理论上最新版本固件也可以,如果使用最新版本的固件不可以,可以烧录 V2018-1 固件对比验证)
3、摩尔信使(MThings)官网(用于模拟 modbus 主站设备)
1、搭建硬件环境
2、在摩尔信使上配置模拟 RTU 主站设备环境
4、打开 Luatools 工具,根据要求烧录本次所需要的内核固件和脚本代码
5、烧录成功后,自动开机运行
6、开机运行后 Luatools 工具上记录的日志如下,此时便开始等待主站发送请求
[2025-12-08 17:23:19.802][000000000.678] I/user.main RTU_SLAVE 001.000.000
[2025-12-08 17:23:19.806][000000000.711] Uart_ChangeBR 1338:uart1, 115200 115203 26000000 3611
[2025-12-08 17:23:19.809][000000000.711] I/user.exmodbus 串口 1 初始化成功,波特率 115200
[2025-12-08 17:23:19.811][000000000.712] I/user.exmodbus_test rtu_slave 创建成功, 从站 ID 为 1
[2025-12-08 17:23:19.813][000000000.712] I/user.exmodbus 已注册从站请求处理回调函数
[2025-12-08 17:23:19.816][000000000.712] I/user.从站回调函数已注册,开始监听主站请求...
7、如下图所示,在摩尔信使上鼠标右击第一个主站,然后点击 “启动轮询”,此时上位机便会模拟主站设备开始执行轮询请求操作
8、如下图所示,如果需要修改轮询的间隔时间或者其他参数,先将滑动条滑到右边,然后鼠标左键双击对应参数即可修改
9、开启轮询后 Luatools 工具与摩尔信使上的日志如下:
[2025-12-08 17:32:09.235][000000023.394] I/user.exmodbus_test rtu_slave 收到主站请求
[2025-12-08 17:32:09.239][000000023.394] I/user.exmodbus_test 读取成功,返回数据: 0, 0
[2025-12-08 17:32:12.251][000000026.402] I/user.exmodbus_test rtu_slave 收到主站请求
[2025-12-08 17:32:12.255][000000026.402] I/user.exmodbus_test 读取成功,返回数据: 1, 1
[2025-12-08 17:32:15.266][000000029.417] I/user.exmodbus_test rtu_slave 收到主站请求
[2025-12-08 17:32:15.269][000000029.418] I/user.exmodbus_test 读取成功,返回数据: 201, 202
[2025-12-08 17:32:18.270][000000032.420] I/user.exmodbus_test rtu_slave 收到主站请求
[2025-12-08 17:32:18.273][000000032.420] I/user.exmodbus_test 读取成功,返回数据: 101, 102
[2025-12-08 17:32:21.294][000000035.443] I/user.exmodbus_test rtu_slave 收到主站请求
[2025-12-08 17:32:21.296][000000035.444] I/user.exmodbus_test 读取成功,返回数据: 0, 0
[2025-12-08 17:32:24.288][000000038.446] I/user.exmodbus_test rtu_slave 收到主站请求
[2025-12-08 17:32:24.290][000000038.447] I/user.exmodbus_test 读取成功,返回数据: 1, 1
[2025-12-08 17:32:27.326][000000041.476] I/user.exmodbus_test rtu_slave 收到主站请求
[2025-12-08 17:32:27.329][000000041.477] I/user.exmodbus_test 读取成功,返回数据: 201, 202
10、如下图所示,如果需要执行写入请求,需要先在执行可写操作的对应区块行的指令处鼠标左键双击填入要写入的数值,然后在鼠标右键双击该数值,最后点击下发写指令
11、执行写入请求后 Luatools 工具与摩尔信使上的日志如下:
[2025-12-08 17:42:53.696][000000667.848] I/user.exmodbus_test rtu_slave 收到主站请求
[2025-12-08 17:42:53.704][000000667.848] I/user.exmodbus_test 写入成功,写入地址: 0 写入数据: 123
12、如下图所示,在摩尔信使上鼠标右击第一个主站,然后点击 “停止轮询”,此时上位机便不会再执行轮询请求操作