当前位置:首页 > 高端制造 > 正文

西门子STEP7如何使用OB块之OB1程序循环组织块的使用

一、常用组织块的简要说明:何为组织块呢?组织块(OB)是指CPU的操作系统与用户程序之间的接口。OB用于执行特定的程序段:•启动CPU时•在循环或定时执行过程中•出错时•发生硬件中断时。组织块按照已分配的优先级来执行。STEP7中常用的组织块:1、程序循环组织块:OB12、时间中断组织块(OB10到...

一、常用组织块的简要说明:何为组织块呢?组织块(OB)是指CPU的操作系统与用户程序之间的接口。OB用于执行特定的程序段:•启动CPU时•在循环或定时执行过程中•出错时•发生硬件中断时。组织块按照已分......

一、常用组织块的简要说明:

何为组织块呢?

组织块(OB)是指CPU的操作系统与用户程序之间的接口。OB用于执行特定的程序段:

•启动CPU时

•在循环或定时执行过程中

•出错时

•发生硬件中断时。

组织块按照已分配的优先级来执行。

STEP7中常用的组织块:

1、程序循环组织块:OB1

2、时间中断组织块(OB10到OB17)

3、延时中断组织块(OB20至OB23)

4、周期性/循环中断组织块(OB30至OB38)

5、硬件中断组织块(OB40至OB47)

6、诊断中断组织块(OB82)

7、机架故障组织块(OB86)

8、启动组织块(OB100、OB101和OB102)

当然了这里并没有罗列所有的组织块,这里仅仅对常用的组织块进行举例讲解,对于其他的组织块大家可以去官网找手册查看对应的使用说明。

1、程序循环组织块OB1,

S7CPU的操作系统定期执行OB1。执行OB1后,操作系统将再次启动它。完成启动后,将启动OB1的循环执行。可调用OB1中的其它功能块(FB、SFB)或功能(FC、SFC)。

这里要说明的就是OB1在所有的OB中的优先级是最低的,换句话说就是除了OB90(后台组织块)的其他所有组织块均可以中断OB1的执行。

1.1那么什么事件可以让操作系统调用OB1呢?

•完成启动。

•已完成OB1的执行(上一循环)。

执行OB1后,操作系统发送全局数据。重新启动OB1之前,操作系统会将过程映像输出表写入输出模块中、更新过程映像输入表以及接收CPU的任何全局数据。

S7监视最大的扫描时间,并确保最大的响应时间。最大扫描时间的值预置为150ms。用户可设置一个新值,也可在用户程序中的任意位置使用SFC43"RE_TRIGR"来重新启动时间监视。如果用户程序超出了OB1的最大周期,则操作系统将调用OB80(时间错误OB);如果OB80没有编程,则CPU将转为STOP模式。

除了监视最大扫描时间外,还可以保证最小扫描时间。操作系统将延迟启动新循环(将过程映像输出表写入输出模块中),直至达到最小扫描时间为止。

1.2下面举例来说明

1.2.1首先硬件组态

新建一个项目(我这里名为OBstudy),在项目中插入300站,然后插入315-2DP的CPU,保存编译。如下图所示


1.2.2OB1程序执行

OB1的程序是循环执行的,可以在STEP7中监控程序的运行。打开OB1,并编写如下程序:


当然了可以通过视图转换成LAD。

然后将程序下载到CPU中。这里将MB100设置为时钟存储器,设置方法如下图所示:


STEP7时时监控画面如下:


前期文章回顾:#西门子STEP7关于组织块使用的一些常见问题分析

电气相关知识和经验是用来分享,希望本文能对你有帮助。与人玫瑰,手留余香。

最新文章