当前位置:首页 >> 信息与通信 >>

Modbus RTU 主站指令库应用例程


Modbus RTU 主站指令库应用例程
网络1 网络1
程序注释: Modbus 主站读写程序 注意: 1. Modbus RTU 主站功能是通过指令库中预先编好的程序功能块实现的,该库 只针对 Port 0 口有效 2. Modbus RTU 主站使用了一些用户中断,在用户程序中不能禁止中断 3. 该例程访问的为一个从站,若访问不同的从站,可通过改变从站地

址来实 现。

网络2 网络2

网络注释 EN Mode Baud

初始化 Modbus 主站通信, 使能:必须保证每一扫描周期都被使能(使用 SM0.0) 模式:常为 1,使能 Modbus 协议功能;为 0 时恢复为系统 PPI 协议 波特率:设为 9600,要与从站波特率对应

Parity Timeout 秒) ,

校验:校验方式选择 0=无校验 超时: 主站等待从站响应的时间, 以毫秒为单位, 典型的设置值为 1000 毫秒 (1 允许设置的范围为 1-32767。 注意: 这个值必须设置足够大以保证从站有时间响应。

Done 作 Error

完成位:初始化完成,此位会自动置 1。可以用该位启动 MBUS_MSG 读写操

初始化错误代码(只有在 Done 位为 1 时有效) :0= 无错误

1= 校验选择非法 2= 波特率选择非法 3= 模式选择非法

网络3 网络3

读取从站保持寄存器的数据 EN 使能:同一时刻只能有一个读写功能(即 MBUS_MSG)使能 注意: 建议每一个读写功能 (即 MBUS_MSG) 都用上一个 MBUS_MSG 指令的 Done 完成位来激 活,以保证所有读写指令循环进行(见程序) 。 读写请求位:每一个新的读写请求必须使用脉冲触发 从站地址:可选择的范围 1-247 读写操作:0=读, 1=写 注意:1. 开关量输出和保持寄存器支持读和写功能 2. 开关量输入和模拟量输入只支持读功能

First Slave RW

Addr 出

读写从站的数据地址:选择读写的数据类型 000001 至 000xxx-开关量输

100001 至 100xxx-开关量输入 300001 至 300xxx-模拟量输入 400001 至 400xxx-保持寄存器 通讯的数据个数(位或字的个数) 注意: Modbus 主站可读/写的最大数据量为 120 个字(是指每一个 MBUS_MSG 指令) Count DataPtr 数据指针:1. 如果是读指令,读回的数据放到这个数据区中 2. 如果是写指令,要写出的数据放到这个数据区中 读写功能完成位

Done

Error 错误代码 只有在 Done 位为 1 时,错误代码才有效 错误代码: 0=无错误 1=响应校验错误 2=未用 3=接收超时(从站无响应) 4=请求参数错误(slave address,Modbus address,count,RW) 5=Modbus/自由口未使能 6=Modbus 正在忙于其它请求 7=响应错误(响应不是请求的操作) 8=响应 CRC 校验和错误 101= 102= 103= 104= 105= 106= 107= 108= 从站不支持请求的功能 从站不支持数据地址 从站不支持此种数据类型 从站设备故障 从站接受了信息,但是响应被延迟 从站忙,拒绝了该信息 从站拒绝了信息 从站存储器奇偶错误

常见的错误及其错误代码: 1. 如果多个 MBUS_MSG 指令同时使能会造成 6 号错误

2. 从站 delay 参数设的时间过长会造成 3 号错误 3. 从站掉电或不运行,网络故障都会造成 3 号错误

网络4 网络4

网络7 网络7


相关文章:
MODBUS RTU 例子
MODBUS RTU 例子_计算机软件及应用_IT/计算机_专业资料。06 号功能码:(预置单寄存器) 例子:将 16 进制数 100 写入 PLC 保持寄存器 D0 里。 PLC 从站号:01...
Modbus-RTU简易主站功能
CP1H的Modbus-RTU简易主站功能实验设备:3G3MV-AB007、CP1H-XA40DT-A,开关电源...Modbus RTU 主站指令库 暂无评价 1页 免费 喜欢此文档的还喜欢 CP1H...
CP1 PLC的Modbus-RTU简易主站功能
CP1 PLC的Modbus-RTU简易主站功能_信息与通信_工程科技_专业资料。CP1经典资料 ...(手册寄存器编号-1) ,运行指令 D32304=FF00,OFF→ON 程序: 1.01 置 ON,...
Arduino-Modbus-RTU-从站程序
Arduino-Modbus-RTU-从站程序_计算机软件及应用_IT/计算机_专业资料。对前面别...[5]); // 需要读取的 modbus 数据库数据长度 unsigned int endData=start...
基于TMS320F28335的MODBUS-RTU从站程序
MODBUS-RTU从站程序_计算机软件及应用_IT/计算机_...16 两命令分别读写 // 内部寄存器 // // // ...通讯由主站发起,从站初始化为接收,并相应的做出回应...
主站指令库
Modbus RTU 主站指令库的功能是通过在用户程序中调用预先编 好的程序功能块实现的, 该库对 Port0 和 Port 1 有效。 该指令库将设 置通信口工作在自由口模式...
Modbus RTU通讯协议
表 2. Modbus RTU 从站功能码功 能码 1 主站使用相应功能码作用于此从站的...这是此 Modbus RTU 从站指令库的限制。些点不 是被强制的,用户程序可以覆盖 ...
modbus RTU常见问题汇总
例子中为想和 16 号(十进制的 16 是十六进制的 ...4、关于 modbus_RTU 协议主机发送的命令的一些问题 ...MASER 就是设置为主站,一般为 PLC 端,变频 器设...
MODBUS实例485通讯
2. TVF2000 使用的 MODBUS 命令: a) 读存储...主设备应用程序得到异议的回应后,典型的处理过程是...位顺序(RTU) 四、错误检测方法 标准的 Modbus 串行...
收集的modbus rtu 源代码
收集的modbus rtu 源代码_IT/计算机_专业资料。别人整理的源代码,自己在学习实践中需要用到,收录了并分享出来。modbus 源代码 收藏 view plaincopy to clipboardprint...
更多相关标签: