您现在的位置是:首页 > PLC技术 > PLC技术

STEP 7中的循环处理程序组织方块OB1

来源:艾特贸易2017-06-05

简介OB1 是执行循环处理程序的组织方块, S7 CPU 的操作系统循环地执行 OB1 ,在 OB1 执行结束后,操作系统再一次启动它,如图 3~65 所示。循环执行 OB1 是在 CPU 完成启动后开始的。在 OB1 中可

    OB1是执行循环处理程序的组织方块,S7 CPU的操作系统循环地执行OB1,在OB1执行结束后,操作系统再一次启动它,如图3~65所示。循环执行OB1是在CPU完成启动后开始的。在OB1中可以调用其他的功能块( FBSFB)或功能(FCSFC),用户程序有一部分可以直接在OB1中编程(见图3-66的线性编程),更多的情况是用户程序分解成各种功能块和功能,再由OB1调用(见图3-66的结构化编程),所以实际的用户程序通过OB1的循环执行而执行。
S7 CPU由操作系统调用OB1的结构
    3-65    S7 CPU由操作系统调用OB1的结构    OB1的优先权等级在所有OB的优先权等级中是最低的,换言之,除OB90(底层循环组织块)外,所有其他的OB都能中断OB1的执行。操作系统调用OB1是由以下事件触发的:CPU完成启动过程;前一个OB1周期已经执行完毕。    OB1执行完毕后,操作系统发送全局数据,在再次启动OB1之前,操作系统将过程镜像输出表的值,写入输出模板,接着更新过程镜像输入表的值,以及接收发送给CPU的全局数据。OB1的运行时间受到定时器的监控,S7监视最大扫描时间,最大扫描时间的默认预置值为150ms,这一预置值是可以通过系统功能SFC43 (RE_TRIGR)进行重新设置和重新启动时间监视的。如果OB1的执行时间超过了最大扫描时间预置值,操作系统会调用组织方块OB80(时间错误OB),如果用户程序中没有编程OB80,在这种情况下CPU将转入停机( STOP)状态。除了监视最大扫描时间外,还可以保证一个最小的扫描时间。在最小扫描时间到达之前,操作系统将延时启动新的循环(写过程镜像输出表到输出模板)。
OB1的线性编程和结构化编程结构
    3-66    OB1的线性编程和结构化编程结构    3-4OB1的本地暂存数据(TEMP)表。    3-4    OB1的本地暂存数据(TEMP)OB1的本地暂存数据(TEMP)表