您现在所在的是:

PLC论坛

回帖:0个,阅读:1351 [上一页] [1] [下一页]
6047
liaosun
文章数:1398
年度积分:50
历史总积分:6047
注册时间:2003/5/4
发站内信
2015论坛贡献奖
2014论坛贡献奖
2013论坛贡献奖
2012论坛贡献奖
2011博客贡献奖
2010博客杰出贡献奖
发表于:2011/6/2 7:09:48
#0楼

S7-300 主程序OB1的局部变量#OB1_PREV_CYCLE提供了上一扫描周期的时间,单位为ms。将它累加可以得到PLC的运行时间。
   为了了解累加的时间值的精度,我编写了下面的程序来作了一个小实验。该程序的主体部分(PID程序)在OB35中,OB1原来只有很简单的几条指令。
   在初始化组织块OB100中增加了几条指令:
     L     L#0
     T     MD   100       //累加和单元清零
     L     LD    16  
     T     MD   104       //保存调用OB100时的分、秒、毫秒值和星期代码
   在OB1中增加了几条指令:
     L     #OB1_PREV_CYCLE
     L     MD   100
     +D  
     T     MD   100       //累加前一次的扫描时间
     L     LD    16
     T     MD   108       //保存调用OB1时的分、秒、毫秒值和星期代码
   下图是实验结果,MD100是进入和离开RUN模式的扫描时间的累加值(ms)。
图
MD104和MD108分别是调用OB100时和进入STOP模式时的实时时间的分、秒、毫秒值和星期代码(BCD码),毫秒占3位,最后一位是星期代码。MD108中的时间值减去MD104中的时间值,得2min37s119ms=157119ms,与MD100中累加的运行时间相同。由此验证了这种累计方法的精度能到ms级。
其实我们有时要得出正确的答案花不了多少时间。
真正需要花极大的时间和精力才能得到的是医学上的结论,但是现在中国漫天飞舞的养生秘诀基本上都是毫无实验依据的胡说八道,和骗您钱财的弥天大谎。善良的人们,不要轻信啊!
此帖来自中华工控网工控博客
原文件地址:http://blog.gkong.com/more.asp?id=138917&Name=liaochangchu
我是廖常初,是一个高校的老师,曾在企业从事机械、电气技术工作,长期从事工业控制和PLC应用的教学、科研和工程应用工作。博客中的日志除注明外均为原创。愿意在此与大家探讨工控的问题!
廖常初工控博客地址:http://blog.gkong.com/blog.asp?name=liaochangchu
我曾写过几本小书: 《PLC编程及应用》第3版(S7-200)、《S7-300/400 PLC应用技术》第3版、《FX系列PLC编程及应用》第2版、《S7-200 PLC编程及应用》、《PLC基础及应用》第2版(FX系列大专教材)、《西门子人机界面(触摸屏)组态与应用技术》、《西门子工业通信网络组态编程与故障诊断》、《S7-1200 PLC编程及应用》第2版、《跟我动手学S7-300/400 PLC》、《跟我动手学FX系列PLC》
机械工业出版社廖常初图书专题:http://www.gkong.com/zt/liaochangchu/

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 工控网 Copyright©2025 Gkong.com, All Rights Reserved

31.2002