技成培训网 技成学习APP 技成工具箱 技成企业服务

欢迎回到技成培训网

技成培训网

电工题库宝典

技成电工课堂

PLC练习题

技成PLC课堂

变频器故障查询

技成PLC学吧

伺服驱动故障查询

技成PLC网校

当前位置:技成首页 > 文章中心 > 技成百科 > S7-200与希望森兰SB200变频器做Modbus通讯的问题?

S7-200与希望森兰SB200变频器做Modbus通讯的问题?

刘玉蓉 发布于2014-11-24 17:33 12 0 标签:

基本配置:
CPU是226,变频器SB200,通讯参数设定波特率9600,1个起始位,8个数据位,1个停止位,无校验。

故障现象:
读指令间歇性的报03错误,通讯超时,读取的数据一直未零。

问题1:寄存器地址应该怎么写?
变频器的寄存器地址是四位16进制地址,PLC的Mbus_MSG指令要求5位十进制地址。变频器功率参数的地址为320DH,转成十进制是12813.Mbus_MSG指令中这个地址应该咋写呢?
参考附件图片里的寄存器特点。

问题2.为啥老是通讯不上
我用的支持中心下载的示例程序,还是不行,程序段如下:
TITLE=程序注释: Modbus 主站读写程序
// 
// 注意:1. Modbus RTU主站功能是通过指令库中预先编好的程序功能块实现的,该库只针对Port 0口有效
//             2. Modbus RTU主站使用了一些用户中断,在用户程序中不能禁止中断
//             3. 该例程访问的为一个从站,若访问不同的从站,可通过改变从站地址来实现。
// 
Network 1 
// 扫秒周期, 复位各标志位和起始位
LD     SM0.1
R      M2.0, 8
R      M4.0, 8
R      M0.0, 2
Network 2 
// Modbus 主站初始化完成后, 启动读写指令
LD     M0.0
EU
S      M0.1, 1
Network 3 // 网络标题
LD     SM0.0
=      L60.0
LD     SM0.0
=      L63.7
LD     L60.0
CALL   SBR1, L63.7, 9600, 0, 1000, M0.0, MB1
Network 4 
LD     M0.1
O      M2.3
=      L60.0
LD     M0.1
EU
LD     M2.3
EU
OLD
=      L63.7
LD     L60.0
CALL   SBR2, L63.7, 1, 0, 412814, 1, &VB1500, M2.1, MB3
Network 5 
// 读取从站保持寄存器的数据完成,复位请求
LD     M2.1
R      M2.3, 1
R      M0.1, 1
Network 6 
// 读取从站输入点
LD     M2.1
=      L60.0
LD     M2.1
EU
=      L63.7
LD     L60.0
CALL   SBR2, L63.7, 1, 0, 412824, 2, &VB2000, M2.2, MB4
Network 7 
// 读取从站输入点完成,复位请求
LD     M2.2
R      M2.1, 1
Network 8 
// 写从站实际输出值
LD     M2.2
=      L60.0
LD     M2.2
EU
=      L63.7
LD     L60.0
CALL   SBR2, L63.7, 1, 1, 12801, 2, &VB3000, M2.3, MB5
Network 9 
// 写从站实际输出值完成,复位请求
LD     M2.3
R      M2.2, 1

问题补充:
关于地址的讲法不太确切,用哪种方式写地址的话,编译通不过,提示指令操作数非法!

继续求解……


图片说明: 1,地址参数编址方法   2,通讯指令变量表  

佳答案

你的参数表里
3200H,对应地址为43201或43200你自己试看看吧,其他的都是顺序就是了,指令里写w#16#43200
还有你这样也看不出什么来,你用个串口监视器监控下看看有没有发出正确的命令,还有你的485线可能需要交叉互换,你要换下看看。例子程序本身没有问题,看看线路和变频设置对不对。

若有收获,就点个赞吧!

文章来源于网络及文献如有侵权请联系站长
分享到:

微信扫一扫分享

阅读与本文标签相同的文章

相关推荐

最新文章 热门文章
最新课程 免费课程
PLC资料下载 电工电气资料下载
应用新秀
变频器故障代码查询APP
伺服故障代码查询APP
技成
手机APP
热门标签