OB是操作系统与用户程序之间的接口,只有在OB中编写的指令或调用的程序块才能被CPU的操作系统执行。在不同的情况下操作系统执行不同的OB,例如系统上电后将循环执行OB1。除OB1外,还有其他处理中断或错误的组织块。常用组织块介绍如下:
1.启动组织块
启动组织块分为暖启动组织块OB100、热启动组织块OB101、冷启动组织块OB102。启动组织块用于处理启动事件,在CPU由STOP启动时,执行一次启动组织块中的内容,在CPU启动完成后,则不再执行启动组织块中的内容。在设计程序时,一般把初始化程序写在启动组织块中。S7-300PLC不能使用热启动组织块OB101和冷启动组织块OB102。
2.循环组织块OB1
OB1是系统的“主程序”,所有的“子程序”(FC、SFC、FB、SFB等)必须由OB1调用才能执行。CPU启动完成后,CPU循环执行OB1,OB1的默认扫描时间为150ms。
3.循环中断组织块OB30~OB38(www.xing528.com)
循环中断组织块按设定的时间间隔循环执行,间隔时间在CPU属性中可以设置,每个OB默认的时间间隔不同。以OB35为例,其时间间隔为100ms,创建OB35之后,CPU会每隔100ms执行一次OB35里面的内容。由于OB1的扫描时间受程序长短的影响,不能处理需要固定扫描周期的用户程序,一般会把这类用户程序放入循环组织块中执行。例如,PID函数需要循环中断调用以处理积分时间的计算。
4.异步故障中断组织块OB80~OB87
异步故障中断组织块用来处理异步故障。如OB86在S7-300系列PLC中用来处理远程站点的故障事件,当故障出现后,CPU自动调用OB86报错,如果程序中没有创建OB86,CPU进入停止模式。例如在一个Profibus-DP网络中,当某个从站出现通信故障且程序中没有创建OB86,CPU BF指示灯会亮,指示故障,同时进入停止状态,进而影响整个系统的运行。如果程序中已经创建OB86,那么CPU BF指示灯会亮,指示故障,但仍然处于运行状态。
其他组织块的详细说明及用法可以参看西门子编程手册或者在SIMATIC Manager帮助文件中进行查询。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。