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

欢迎回到技成培训网

技成培训网

电工题库宝典

技成电工课堂

PLC练习题

技成PLC课堂

变频器故障查询

技成PLC学吧

伺服驱动故障查询

技成PLC网校

当前位置:技成首页 > 文章中心 > 技成百科 > 看门狗

看门狗

刘玉蓉 发布于2014-09-09 17:32 210 0 标签:

我现在有个PLC程序,大约每次运行都要2~5秒(涉及到大型计算这个时间不能再减少了),可是我自己设置的scan cycle 为6000(见附图)。程序运行2秒多就死机了,查了一些资料说是看门狗的关系。提问,看门狗是不是与这个设定的时间没有关系?我想确定的知道怎么设置看门狗时间?显然看门狗时间没有6秒多,因为我使用OB1中的OB1_PREV_CYCLE大的时间只有2秒多。我倒是解决死机的问题,在OB80里面调用SFC43。

问题补充:
Cycle/Clock Memmory属性中对Scan cycle monitoring time[ms]参数,查看CPU模块信息正如问题中所说,没有扫描周期会达到6000ms的。我现在想知道为什么监测OB1中扫描时间为2S多一点就死机,而我在“周期设置”图片中设置的为6000ms。如果监测到OB1时间没有问题显然与6000ms矛盾。补充一下,我使用的是嵌入式控制器 WinLC RTX EC.楼下很好的建议。不过在这个里面没法实现,它是调用一个封装好的dll(耗时间的东西就是它),不能被切割多步运行。同时,这个嵌入式控制器主要就是用来完成大型的计算,只要能够在秒级别的时间内运算完就好,所以只要在完成大型计算的前提下不怎么需要考虑实时性。


图片说明: 1,周期设置   2,嵌入式控制器信息  

佳答案

看情形应该还是超出了你设定的循环扫描监视时间,在线查看CPU模块信息可以看到短、当前/上一次、长扫描时间。
    你似乎走入了一个误区,延长循环扫描时间严重影响PLC的实时性,过长的循环周期可能丢失很多信号,对于过程控制很不利,一般来说对于计算量比较大的程序都是异步完成的,也就是完成不止一个周期,所以你应从这个方面考虑,用多个扫描周期来完成你这个大型计算。

—————————————————————————————————————————————
关于补充的回答:
你所说的死机是不是就是触发了OB80,你在OB80里调用SFC43是不是已经可以解决这个问题,问题在于究竟为什么触发OB80,这个要看OB80里的临时变量故障代码和故障信息了,你可以到下载中心下载文档A0059“如何使用组织块”。
深入浅出WinCC里关于ODK部分里提到,比较耗时的操作可以放在异步处理器里执行,如果你有C ++的功底并有DLL的源程序,你可以把计算改为异步执行,或者也可以考虑新建一个DLL异步执行调用这个封装好的DLL 。

若有收获,就点个赞吧!

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

微信扫一扫分享

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

相关推荐

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