为什么不能用循环中断组织块OB35来取代主程序OB1
日期:2011-3-2 22:19:58 点击:
来源:本站整理
作者:
点击【 大 中 小 】放大字体.
最近有人在网上提出是否可以用S7-300/400的OB35取代OB1。循环中断组织块OB35是按照精确的时间间隔周期性执行的,执行的周期在CPU的属性对话框中设置。主程序OB1也是周期性循环执行的,OB1可以调用FB、FC。每次循环执行的时间与用户程序的长短有很大的关系。由于程序中跳转指令和调用逻辑块的条件的变化,OB1的扫描循环时间是动态变化的。前一次调用OB1结束后,马上又开始下一次的调用。W1WW_P4LCJS_COM-PLC-技.术_网
我做了仿真实验和硬件实验,实验证明如果删除OB1,将程序放在OB35中,S7-300也可以正常运行。CPU的SF(系统故障)灯未亮,诊断缓冲区中没有任何故障信息。WWW_PL※CJS_COM-PLC-技.术_网
但是这并不表明可以用OB35完全取代OB1!!其原因很简单,很难合理地选取OB35的循环执行的时间间隔。如果设置的时间间隔太短,OB35的执行时间大于其时间间隔,上一次的程序还没有执行完,下一次循环中断又出现了,导致时间错误,CPU将会调用OB80。如果时间间隔太长,执行完OB35的程序后,CPU无所事事,白白浪费了CPU的资源,并且使系统的响应延迟时间增大。WWW.PLCJS.COM——可编程控制器技术门户
通常将需要严格的时间间隔的程序(例如PID控制功能块)放在OB35中,其他程序(不包括处理中断的程序)放在OB1,可以很好地解决上述的难题。OB1被循环执行,不会出现CPU空闲的情况。有中断事件产生时,将停止执行OB1。执行完中断组织块后,从断点开始,继续执行OB1的程序。WWW_P※LCJS_COM-PLC-)技.术_网
S7-200的系统手册说得好:“应当使中断程序短小而简单,执行时对其他处理也不要延时过长。如果做不到这些,意外的条件可能会引起由主程序控制的设备操作异常。对中断而言,其格言是‘越短越好’”请牢记,这可是PLC高手的肺腑之言啊!WWW_PL※CJS_COM-PLC-技.术_网
综上所述,虽然删除OB1也不会报错,但是将程序分别放在OB1和OB35更为合理。
P
L
C
技
术
网
|
可
编
程
控
制
器
技
术
门
户
|
十
万
P
L
C
工
程
师
的
共
同
选
择
!
·最新招聘信息
·最新求职信息
·推荐产品
·推荐厂商
深圳秦合源科技有限公司 | | 深圳市秦合源科技有限公司是国内领先的规模较大品种齐全的称重传感器(Loadce...... |
|
|
深圳联脉电子有限公司 | | 公司自1998年创立以来,一直致力于工业控制产品的研发、制造、销售,目前有机房监...... |
|
|
东莞市友诚自动化 | | 本公司专业代理台湾永宏、台达PLC、HITECH人机、特价供应文本显示器MD20...... |
|
|
·栏目热门排行
·站内热门排行
jhgjgjgjjg,S7,FX,自锁,PLC程序,梯形图,D/A,A/D,串口,USB,RS232,电缆,施耐德,Twido,CPM1A,三菱,触摸屏,印刷,计数器,伺服,PID,西门子,安川,欧姆龙,台达,PLC技术,松下,Rockwell,变频,步进,解密,模拟,数字,仿真,STEP7,SIMITIC,通讯,I/O,定时器,指令,现场总线,供水,培训,组态,WINCC,CAN总线,FANUC,数控