登录
首页 PLC论坛 西门子SIEMENS
回帖 发帖
正文

主题: 西门子300SF故障

点击:2558 回复:7

这边有一个现场,用的是CPU315-2PN DP,有5个从站,用的ET200S,程序下进去之后SF就一直常亮红灯,然后我在主界面选择PLC-diagnostic/setting-module information中监控发现时IO ACESS ERROR。因为我程序中调用了OB122,所以只是报故障没有停机。我想找出问题所在。
我下了一个仿真软件,仿真结果显示,如果我下进去一个空的OB1和多个FB或者FC块都没问题,sf都不亮,如果OB1中编程了,也没问题。如果OB1中调用的FC块中使用了DB数据就会报错(不知道是不是DB数据的问题,反正下载的不带数据块的FC块都没问题),哪位师傅知道这是什么问题?
附件 2.jpg
附件 1.jpg
13-10-24 23:35
编程错误,数据访问越界,请检查你的程序,特别是间接寻址,一些程序员不考虑数据可能越界。
Good Luck~
13-10-25 06:08
可以把整个程序上传上来,帮你分析一下。
13-10-25 09:23
编程错误,数据访问越界。这个我见过。
13-10-25 09:56
访问DB长度 范围错误   DB有问题   检查一下FC17的程序   或者先不调用FC17试一试
13-10-25 10:10
我之前上传的图片是我用PLC SIM仿真得到的,在PLC上检测的结果是IO访问错误,如下图:
附件 IO访问错误.jpg
介绍一下现场情况,现场共五个分站,都是用的ET200S,用PROFIBUS DP 通讯。后来发现最后一个站超过了128,没有办法,在程序中写了这样一条指令
附件 QQ截图20131026215750.jpg
问题就出现在那个方框里面的,这个程序是我们另外一个工程师写的,我也没注意到,于是我看程序中这个地址也没有用到,于是我就把方框中的指令,也就是“ L     PIW  128   T     MW   128”给删掉了,然后把OB1重新下载一遍,没想到就解决问题了!
13-10-26 22:00
我也感觉挺奇怪的,只要一调用含有DB地址的程序就报SF错误,现在把那个“ L     PIW  128 T     MW   128”删掉之后,现在下载进去也不报错了,不知道什么问题?你有什么高见?
13-10-26 22:06
这只是个读取外部设备,或者说是远程地址的个指令,如果说没有这个地址,删除它是没问题的,也许原来这个地方安装了个模块,现在不需要了,就删除了,但是程序里面没有删除,你可以看看 MW128被用到什么地方  从而分析这个东西是干什么用的   然后考虑是不是要用或者指定一个值来达到程序的目的!
13-10-27 23:57

工控新闻

更多新闻资讯