电工学习网

 找回密码
 立即注册
查看: 2052|回复: 0
打印 上一主题 下一主题

西门子S7-1500 “闹鬼”的Modbus_Polling

[复制链接]
跳转到指定楼层
楼主
发表于 2020-9-9 15:42:49 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
背景介绍:不赘述完整的硬件配置。CPU:1511-1PN V2,CM:RS422/485 HF,变频:施耐德ATV 6台;Portal V14 SP1
实现的功能:读状态字、输出频率、输出电流、母线电压,写控制字、写频率(PID控制)。
通讯格式:19200 8 1 E

在一个风雨交加的夜晚,一个电话粉碎了“老婆孩子热坑头”的美梦。接到呼叫的时候,以及观察现场CM模块的状态,初步判定是Master主站程序非正常调用导致的问题。自信满满的伙同(这个词不太恰当)**哥哥直奔现场,一路上可谓是雄赳赳气昂昂啊 西门子S7-1500 “闹鬼”的Modbus_Polling 。真是天有不测风云,人要是打脸随时随地啊!

废话完毕,看我碰到的...
到达现场收看看到是:ATV通讯故障停机报警。查看手册后果断 禁用了它!同时观察了plc,1511正常,CM空闲状态。
不慌不忙的打开程序(之前已经上传到PC了):直奔在线和诊断,硬件OK,程序OK!翻看MODBUS polling程序。咦?SCL?正合我意,没问题呀?那么怎么通讯故障了呢?翻翻master DB瞧瞧吧!

不瞧不知道,一瞧干一宿 西门子S7-1500 “闹鬼”的Modbus_Polling
先看看这张照片,应该很熟悉:

西门子S7-1500 “闹鬼”的Modbus_Polling
别看小动物!各位看官,这个状态在分析、确定处理方案前、PLCrestart前持续了近2个小时。备注下:Master程序0.5Hz触发,未明确前没敢妄自下手 西门子S7-1500 “闹鬼”的Modbus_Polling 。不知各位看官从这张照片内读出哪些信息?

查手册:7002--中间调用:?数据传输运行。数据传输运行,那么Blocked_Pro_Timeout 不是超时吗?咋不超时呢?为什么超时3S到达了,不更新状态呢?从站地址是3,谁是3?哎呀呀!从站地址3的ATV没上电!看了一遍手册,再看一遍。按照字里行间的描述:Blocked_Pro_Timeout 参数到达应该更新Master块的很多参数吧?尤其是Done/Error。行吧,咱们Reset下,试试?

S7-1200/S7-1500不支持Reset用法!!!

考虑很久后做出了个决定:重新调用 COMM_LOAD!

重新调用COMM_LOAD解决问题了吗?有时间把后面的补上。同时也请大侠们不吝赐教前面不正确的地方。

继续之前感谢“宝冬”对之前的回复。


宝冬说的切断EN端确实是一个办法,无奈程序编写是SCL,见下文
西门子S7-1500 “闹鬼”的Modbus_Polling
反复重启PLC并仔细观察程序执行后,与同去的老王一通嘴炮后,试试重新调用COMM_LOAD程序。一番折腾之后,证实了一个事实:COMM_Load指令在Master卡死时,执行毫无意义,无任何作用。*此处个人观点:MODBUS通讯相关组态等信息手册上明确“Modbus_Comm_Load 的组态更改将保存在 CM 中,而不是 CPU 中”。可能正是因为存储在CM中,才不会触发“通信报警或错误“,引用手册内容如下:”Modbus 指令不会使用通信报警事件来控制通信过程。程序必须查询 Modbus_Master 指令来获得完整的命令(DONE、ERROR)。“

既然程序执行中出现了”卡死“,而Master程序在设计时和手册中也提到了Blocked_Pro_Timeout,且Blocked_Pro_Timeout参数可以通过程序读写。

绞尽脑汁的回想MODBUS执行的范例,反复重启PLC后,发现了一个Static变量的变化过程。灵机一动:咱也手动来个3s的”Blocked_Pro_Timeout“,Master.DB.Busy接通3s后咱们把这个变量置零!试试,试试!

结果令人十分振奋:
西门子S7-1500 “闹鬼”的Modbus_Polling

随后将近一个小时的验证后,看着外面的风雨,回头看看奋战了7、8个小时的现场,挥挥烟灰,家走喽。

总结:路过的大侠们一起品评吧。
来源:西门子工业技术论坛

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

电工学习网 ( )

GMT+8, 2024-4-29 09:40

Powered by © 2011-2022 www.diangon.com 版权所有 免责声明 不良信息举报

技术驱动未来! 电工学习网—专业电工基础知识电工技术学习网站。

栏目导航: 工控家园 | 三菱plc | 西门子plc | 欧姆龙plc | plc视频教程

快速回复 返回顶部 返回列表