- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Modbus RTU 主站指令库应用例程
网络1
程序注释: Modbus 主站读写程序
注意: 1. Modbus RTU主站功能是通过指令库中预先编好的程序功能块实现的,该库只针对Port 0口有效
2. Modbus RTU主站使用了一些用户中断,在用户程序中不能禁止中断
3. 该例程访问的为一个从站,若访问不同的从站,可通过改变从站地址来实现。
网络2
网络注释 初始化Modbus 主站通信,
EN 使能:必须保证每一扫描周期都被使能(使用SM0.0)
Mode 模式:常为1,使能 Modbus 协议功能;为0 时恢复为系统 PPI 协议
Baud 波特率:设为9600,要与从站波特率对应
Parity 校验:校验方式选择 0=无校验
Timeout 超时:主站等待从站响应的时间,以毫秒为单位,典型的设置值为1000毫秒(1秒),
允许设置的范围为 1-32767。
注意: 这个值必须设置足够大以保证从站有时间响应。
Done 完成位:初始化完成,此位会自动置1。可以用该位启动 MBUS_MSG 读写操作
Error 初始化错误代码(只有在 Done 位为1时有效):0= 无错误
1= 校验选择非法
2= 波特率选择非法
3= 模式选择非法
网络3
读取从站保持寄存器的数据
EN 使能:同一时刻只能有一个读写功能(即 MBUS_MSG)使能
注意:建议每一个读写功能(即 MBUS_MSG)都用上一个 MBUS_MSG 指令的 Done 完成位来激
活,以保证所有读写指令循环进行(见程序)。
First 读写请求位:每一个新的读写请求必须使用脉冲触发
Slave 从站地址:可选择的范围 1-247
RW 读写操作:0=读, 1=写
注意:1. 开关量输出和保持寄存器支持读和写功能
2. 开关量输入和模拟量输入只支持读功能
Addr 读写从站的数据地址:选择读写的数据类型 000001至000xxx-开关量输出
100001至100xxx-开关量输入
300001至300xxx-模拟量输入
400001至400xxx-保持寄存器
Count 通讯的数据个数(位或字的个数)
注意: Modbus主站可读/写的最大数据量为120个字(是指每一个 MBUS_MSG 指令)
DataPtr 数据指针:1. 如果是读指令,读回的数据放到这个数据区中
2. 如果是写指令,要写出的数据放到这个数据区中
Done 读写功能完成位
Error 错误代码 只有在 Done 位为1时,错误代码才有效
错误代码: 0=无错误
文档评论(0)