该程序可放置外网中,适用于DTU长连接(心跳包必须包含DTU,可以是tcp/udp),也可以在内网中,短连接访问设备server
支持协议:Modbus TCP | RTU | ASCII
连接方式:TcpAtive: TCP主动 | TcpPassive: TCP被动 | UdpAtive: Udp主动 | UdpPassive: Udp被动
支持功能:bool | short | int | float | long | double | batchbool | batchword
字节顺序:ABCD | BADC | CDAB | DCBA
CoilStatus = 1, // 读线圈状态
InputStatus = 2, // 读离散输入状态(只读)
HoldingRegister = 3, // 读保存寄存器
InputRegister = 4, // 读输入寄存器(只读)
WriteSingleCoil = 5, // 写单个线圈
WriteSingleRegister = 6, // 写单个保持寄存器
WriteMultipleCoils = 15, // 写多个线圈
WriteMultipleRegisters = 16 // 写多个保持寄存器
模拟测试流程
1. 配对虚拟串口(VSPD)
2. 配置Modbus设备仿真
3. 配置DTU模拟器(8002:RTU;8003:ASCII)
4. 启动Modbus协议中间件 从00100开始,批量读取10个长度的线圈
代码结构
标签:寄存器,平台,中间件,TCP,Modbus,线圈,DTU From: https://www.cnblogs.com/chen1880/p/17861567.html