第5章S7的组织块和中断处理

上传人:汽*** 文档编号:589117743 上传时间:2024-09-10 格式:PPT 页数:90 大小:549.01KB
返回 下载 相关 举报
第5章S7的组织块和中断处理_第1页
第1页 / 共90页
第5章S7的组织块和中断处理_第2页
第2页 / 共90页
第5章S7的组织块和中断处理_第3页
第3页 / 共90页
第5章S7的组织块和中断处理_第4页
第4页 / 共90页
第5章S7的组织块和中断处理_第5页
第5页 / 共90页
点击查看更多>>
资源描述

《第5章S7的组织块和中断处理》由会员分享,可在线阅读,更多相关《第5章S7的组织块和中断处理(90页珍藏版)》请在金锄头文库上搜索。

1、第第5 5章章 S7S7的组织块和中断处理的组织块和中断处理 重点与难点重点与难点组织块的基本概念,组织块的循环执组织块的基本概念,组织块的循环执行,定期执行的组织块、事件驱动的组织行,定期执行的组织块、事件驱动的组织块、背景组织块、启动组织块及相应的中块、背景组织块、启动组织块及相应的中断处理。断处理。 基本要求基本要求1理解组织块的基本概念及组织块的循环理解组织块的基本概念及组织块的循环执行;执行;2掌握定期执行的组织块、事件驱动的组掌握定期执行的组织块、事件驱动的组织块、启动组织块和地背景组织块及相应织块、启动组织块和地背景组织块及相应的中断处理。的中断处理。 本章内容本章内容1组织块概

2、述;组织块概述;2组织块的循环执行;组织块的循环执行;3定期执行的组织块和中断处理;定期执行的组织块和中断处理;4事件驱动的组织块和中断处理;事件驱动的组织块和中断处理;5启动组织块和中断处理;启动组织块和中断处理;6背景组织块。背景组织块。 组织块的循环执行组织块的循环执行5.2定期执行的组织块和中断处理定期执行的组织块和中断处理5.3组织块概述组织块概述5.1事件驱动的组织块和中断处理事件驱动的组织块和中断处理5.4 本章小结本章小结5.7背景组织块背景组织块5.6启动组织块和中断处理启动组织块和中断处理5.55.15.1组织块概述组织块概述组织块是操作系统与用户程序之间的组织块是操作系统

3、与用户程序之间的接口。用组织块可以响应延时中断、外部接口。用组织块可以响应延时中断、外部硬件中断、进行错误处理等。硬件中断、进行错误处理等。 (1)中断过程)中断过程(2)中断源)中断源(3)组织块)组织块 SIMATICS7-300有以下常用组织块。有以下常用组织块。OB1主程序循环。主程序循环。OB10时间中断。时间中断。OB20延时中断。延时中断。OB35循环中断。循环中断。OB40硬件中断。硬件中断。B100再启动。再启动。 图图5-1 S7-3005-1 S7-300的常用组织块的常用组织块 表表5-15-1OBOB的变量声明表的变量声明表 表表5-25-2 控制中断组织块的系统功能

4、块控制中断组织块的系统功能块5.2 5.2 组织块的循环执行组织块的循环执行S7CPU操作系统周期性地执行组织块操作系统周期性地执行组织块OB1程序。当程序。当OB1执行完毕,操作系统再执行完毕,操作系统再次启动它。次启动它。 CPU启动后,启动后,OB1被循环执行,同时被循环执行,同时可以在可以在OB1中调用其他功能块(中调用其他功能块(FB,SFB)或功能()或功能(FC,SFC)。)。 OB1的优先级最低,其循环时间被监的优先级最低,其循环时间被监控。即除控。即除OB90以外,其他所有以外,其他所有OB均可打均可打断断OB1的执行。的执行。 一般来说,以下事件可导致操作系统一般来说,以下

5、事件可导致操作系统调用调用OB1。(1)CPU启动完毕。启动完毕。(2)OB1执行到上一个循环周期结执行到上一个循环周期结束。束。 OB1执行完后,操作系统发送全局数执行完后,操作系统发送全局数据。再次启动据。再次启动OB1之前,操作系统会将输之前,操作系统会将输出映像区数据写入输出模板,刷新输入映出映像区数据写入输出模板,刷新输入映像区并接收全局数据。像区并接收全局数据。 S7监视最长循环时间,保证最长的响监视最长循环时间,保证最长的响应时间。应时间。 表表5-35-3OB1OB1的临时变量的临时变量 图图5-2 5-2 循环程序的处理循环程序的处理 表表5-45-4 循环程序处理的各个阶段

6、循环程序处理的各个阶段 循环程序处理可以被以下事件中断。循环程序处理可以被以下事件中断。(1)一个中断。)一个中断。(2)STOP命令(模式选择开关,编命令(模式选择开关,编程器上的菜单选项,程器上的菜单选项,SFC46STP,SFB20STOP)。)。(3)电源掉电。)电源掉电。(4)出现故障或编程错误。)出现故障或编程错误。5.3 5.3 定期执行的组织块和中断处定期执行的组织块和中断处理理STEP7提供多达提供多达8个个OB(OB10OB17),它们可以运行一次或周期性地运),它们可以运行一次或周期性地运行。行。 设计人员可以运用设计人员可以运用SFC或或STEP7给给CPU分配参数,这

7、些分配参数,这些OB在特定的日期和时在特定的日期和时间或以一定间隔由操作系统调用执行。间或以一定间隔由操作系统调用执行。 日期时间中断可按如下方式触发。日期时间中断可按如下方式触发。(1)在某特定时间(用绝对形式定)在某特定时间(用绝对形式定义日期时间)执行一次。义日期时间)执行一次。(2)从特定的时间开始并按中断应)从特定的时间开始并按中断应重复的间隔(如:每分钟、每小时、重复的间隔(如:每分钟、每小时、每天)周期地执行。每天)周期地执行。 日期时间中断只有设置了参数,并且日期时间中断只有设置了参数,并且在相应的组织块中有用户程序存在时才能在相应的组织块中有用户程序存在时才能被执行。被执行。

8、 为了让为了让CPU启动日期时间中断,用户启动日期时间中断,用户必须首先设置日期时间中断,然后再激活必须首先设置日期时间中断,然后再激活它。启动该中断有以下三种方法。它。启动该中断有以下三种方法。 (1)通过)通过STEP7中设置相应的参数中设置相应的参数(“日期时间中断日期时间中断”参数块),实现参数块),实现日期时间中断的自动启动。日期时间中断的自动启动。 (2)在用户程序中用)在用户程序中用SFC28SET_TINT和和SFC30ACT_TINT,设,设置并激活日期时间中断。置并激活日期时间中断。(3)用)用STEP7的参数设置日期时间的参数设置日期时间中断,在用户程序中用中断,在用户程

9、序中用SFC30ACT_TINT激活日期时间中断。激活日期时间中断。 OB可以分为两类:执行周期性工作的可以分为两类:执行周期性工作的OB(日时钟中断)和响应错误的(日时钟中断)和响应错误的OB(错(错误中断)。误中断)。 (1)执行周期性工作的)执行周期性工作的OB(日时钟(日时钟中断)的执行条件如下。中断)的执行条件如下。在特定的日期或时间执行。在特定的日期或时间执行。从一个编程事件开始一段特定延时从一个编程事件开始一段特定延时后执行。后执行。按特定周期循环执行。按特定周期循环执行。 (2)响应错误的)响应错误的OB(错误中断)的(错误中断)的执行条件如下。执行条件如下。当当CPU检测到一

10、个过程检测到一个过程/硬件错误硬件错误时执行。时执行。 当当CPU检测到一个不依赖于程序指检测到一个不依赖于程序指令的错误时执行。令的错误时执行。当当CPU检测到一个与程序指令处理检测到一个与程序指令处理有关的错误时执行。有关的错误时执行。 1 1日时钟中断(日时钟中断(OB10OB10)OB10可按下列间隔运行。可按下列间隔运行。 (1)Once(2)Everyminute(3)Hourly(4)Daily(5)Weekly(6)Monthly(7)Annually 下面给出下面给出OB10的起始时刻和间隔时间的起始时刻和间隔时间设置。设置。(1)通过定义)通过定义OB10执行的起始时刻执行

11、的起始时刻(日期和(日期和/或时间)和间隔时间对或时间)和间隔时间对OB10进行配置。进行配置。 (2)通过)通过S7组态工具配置组态工具配置CPU的日的日时钟的中断参数或者在程序中调用时钟的中断参数或者在程序中调用SFC28(SET-TINT)设置时间。)设置时间。 (3)通过)通过S7组态工具在组态工具在CPU的日时的日时钟中断参数块中选择激活项。钟中断参数块中选择激活项。(4)在程序中调用)在程序中调用SFC30(ACT-TINT)来激活)来激活OB10。 表表5-5描述了日期时间中断的临时变量描述了日期时间中断的临时变量(TEMP),变量名是),变量名是OB10缺省名称。缺省名称。 表

12、表5-55-5 日期时间中断的临时变量日期时间中断的临时变量 2 2延时中断延时中断OB 20OB 20由调用由调用SFC32启动,调用启动,调用SFC32时要时要提供相应的实参。提供相应的实参。 OB-NR:延时中断:延时中断OB的号码。的号码。DTIME:延时长度(:延时长度(160000ms)。)。SIGN:延时:延时OB被调用时进入被调用时进入OB的的启动信息标志器。启动信息标志器。RET-VALOB:执行过程中发生错:执行过程中发生错误时的错误代码。误时的错误代码。 处理延时中断的处理延时中断的SFC:SFC32SRT_TINT启动延时中断启动延时中断SFC33CAN_DINT取消延

13、时中断取消延时中断SFC34QRY_TINT查询延时中断查询延时中断5.4 5.4 事件驱动的组织块和中断处事件驱动的组织块和中断处理理S7提供多达提供多达8个独立的硬件中断组织个独立的硬件中断组织块块OB(OB40OB47)。通过)。通过STEP7进行进行参数赋值,可以为会触发硬件中断的每一参数赋值,可以为会触发硬件中断的每一个信号模板指定以下参数。个信号模板指定以下参数。 哪个通道在哪种条件下触发一个硬哪个通道在哪种条件下触发一个硬件中断。件中断。哪一个硬件中断哪一个硬件中断OB被分配到单独被分配到单独的通道组。的通道组。 设计人员可以运用设计人员可以运用STEP7为每一个硬为每一个硬件中

14、断件中断OB选择优先级。如果一个硬件中断选择优先级。如果一个硬件中断被触发并且它的被触发并且它的OB正在由于另一个模板的正在由于另一个模板的硬件中断而激活,则记录新的中断申请,硬件中断而激活,则记录新的中断申请,在空闲后会执行该中断。在空闲后会执行该中断。 用用SFC3942可以禁止、延时和再使可以禁止、延时和再使能硬件中断。可以用能硬件中断。可以用STEP7中的中的SFC5557,为硬件中断模板赋值参数。,为硬件中断模板赋值参数。 响应来自不同模块(如:响应来自不同模块(如:I/O模块、模块、CP模块或模块或FM模块)发出的过程警告或硬模块)发出的过程警告或硬件中断请求信号。件中断请求信号。

15、 表表5-6描述了硬件中断描述了硬件中断OB的临时变量的临时变量(TEMP),变量名是),变量名是OB40的缺省名称。的缺省名称。 表表5-65-6硬件中断硬件中断OBOB的临时变量的临时变量 S7CPU提供有硬件中断提供有硬件中断OB(OB40-OB47),用于对模板(例如信号模板、通),用于对模板(例如信号模板、通信处理器、功能模板)上的信号变化进行信处理器、功能模板)上的信号变化进行响应。响应。 硬件中断只有当硬件中断只有当CPU的程序中存在相的程序中存在相应的组织块时,才能执行。应的组织块时,才能执行。 如果用户在参数设置中没有选中硬件如果用户在参数设置中没有选中硬件中断中断OB,则它

16、们不能启动。,则它们不能启动。 用户通过用户通过STEP7必须给具有硬件中断必须给具有硬件中断能力的信号模板设置如下参数集。能力的信号模板设置如下参数集。硬件中断的触发原因。硬件中断的触发原因。哪一种硬件中断哪一种硬件中断OB将被执行缺省将被执行缺省设置(设置(OB40用于执行所有的硬件中断),用于执行所有的硬件中断),用户通过用户通过STEP7,可以使用功能块激活硬,可以使用功能块激活硬件中断的生成。件中断的生成。 图图5-16 5-16 循环程序的处理过程循环程序的处理过程 通常,被通常,被S7CPU检测到并且用户可以检测到并且用户可以通过组织块对其进行处理的错误分为两个通过组织块对其进行

17、处理的错误分为两个基本类型。基本类型。(1)异步错误)异步错误(2)同步错误)同步错误 下面介绍一些错误处理组织块。下面介绍一些错误处理组织块。(1)电源故障处理组织块()电源故障处理组织块(OB81)(2)时间错误处理组织块()时间错误处理组织块(OB80) (3)诊断中断处理组织块()诊断中断处理组织块(OB82)(4)插入)插入/拔出模块中断组织块拔出模块中断组织块(OB83)(5)CPU硬件故障处理组织块硬件故障处理组织块(OB84) (6)优先级错误处理组织块)优先级错误处理组织块(OB85)(7)机架故障组织块()机架故障组织块(OB86)(8)通信错误组织块()通信错误组织块(O

18、B87) 同步错误组织块包括编程错误组织块同步错误组织块包括编程错误组织块(OB121)和)和I/O访问错误组织块访问错误组织块(OB122)。)。(1)编程错误组织块()编程错误组织块(OB121)(2)I/O访问错误组织块(访问错误组织块(OB122) 图图5-17 OB1005-17 OB100的运行的运行5.5 5.5 启动组织块和中断处理启动组织块和中断处理 1 1CPUCPU模块的启动方式模块的启动方式(1)暖启动()暖启动(WarmRestart)S7-300CPU(不包括(不包括CPU318)只有)只有暖起动。有保持功能的暖起动。有保持功能的M/T/C/DB将保留原将保留原数值

19、。数值。 (2)热启动()热启动(HotRestart,仅,仅S7-400有,在有,在S7-300和和S7-400H中没有)中没有)在在RUN状态时如果突然掉电,然后又状态时如果突然掉电,然后又重新上电,从上次重新上电,从上次RUN模式结束时程序被模式结束时程序被中断之处继续执行,不对计数器等复位。中断之处继续执行,不对计数器等复位。 (3)冷启动()冷启动(ColdRestart,CPU417和和CPU417H)冷启动时,过程数据区的冷启动时,过程数据区的I,Q,M,T,C,DB等被复位为零。等被复位为零。 2 2启动组织块(启动组织块(OB100OB100OB102OB102)在暖启动、热

20、启动或冷启动时,操作在暖启动、热启动或冷启动时,操作系统分别调用系统分别调用OB100、OB101或或OB102。表表5-7给出了对应各种启动类型,操作系统给出了对应各种启动类型,操作系统调用不同的调用不同的OB。 表表5-75-7启动组织块启动组织块启启 动 类 型型相关相关OBOB热启启动OB101OB101暖启暖启动OB100OB100冷启冷启动OB102OB102 表表5-85-8 OBOB的临时(的临时(TEMPTEMP)变量表)变量表 通常,当下列事件发生后,通常,当下列事件发生后,CPU执行执行启动功能:启动功能:(1)电源上电后。)电源上电后。(2)用户将)用户将CPU的状态选

21、择开关从的状态选择开关从“STOP”扳到扳到“RUN/RUN-P”后。后。 (3)从通信功能来请求后。)从通信功能来请求后。(4)多)多CPU方式同步之后。方式同步之后。(5)H系统中连接后(只适用于备系统中连接后(只适用于备用用CPU上)。上)。图图5-18所示为启动组织块的具体执行过程。所示为启动组织块的具体执行过程。(1)手动启动后的启动类型)手动启动后的启动类型(2)自动启动后的启动类型)自动启动后的启动类型 图图5-18 5-18 启动组织块的执行过程启动组织块的执行过程5.6 5.6 背景组织块背景组织块如果用户用如果用户用STEP7定义最小的扫描循定义最小的扫描循环时间,且该时间

22、比实际的扫描循环时间环时间,且该时间比实际的扫描循环时间长,则长,则CPU在循环程序结束时,还有处理在循环程序结束时,还有处理时间,该时间用于执行背景时间,该时间用于执行背景OB(背景组织(背景组织块)。块)。 如果用户的如果用户的CPU中没有中没有OB90,则,则CPU等待,直到定义的最小扫描循环时间到达等待,直到定义的最小扫描循环时间到达为止。因此,对于那些对运行时间要求不为止。因此,对于那些对运行时间要求不高的过程,用户可以用高的过程,用户可以用OB90,从而避免等,从而避免等待时间。待时间。 结束了背景周期之后背景结束了背景周期之后背景OB的优先级的优先级为为29,对应的优先级,对应的

23、优先级0.29。因此,。因此,OB90在在所有所有OB中优先级最低,它可以被任何系统中优先级最低,它可以被任何系统功能和任务所中断并仅在所选的最小扫描功能和任务所中断并仅在所选的最小扫描周期还没有达到时保持。周期还没有达到时保持。 一个例外是在一个例外是在OB90中启动的中启动的SFC和和SFB的执行,它们用的执行,它们用OB1的优先级执行并的优先级执行并且不会被且不会被OB1中断。中断。OB90中的用户程序在中的用户程序在下述情况下被从第一条指令处开始处理:下述情况下被从第一条指令处开始处理: (1)暖、冷或热启动之后)暖、冷或热启动之后(2)OB90中正在执行的块被删除之中正在执行的块被删

24、除之后(用后(用STEP7)(3)在)在RUN方式下装方式下装OB90到到CPU之之后后 这里需要注意的是,背景组织块的优这里需要注意的是,背景组织块的优先级不能通过参数设置进行修改。先级不能通过参数设置进行修改。 1 1OB90OB90的编程的编程OB90的运行时间不受的运行时间不受CPU操作系统的操作系统的监视,因此,用户可以在监视,因此,用户可以在OB90中编写程序中编写程序的长度不受限制。为确保在背景程序中的的长度不受限制。为确保在背景程序中的数据具有一致性,在编程时注意以下问题:数据具有一致性,在编程时注意以下问题: (1)OB90的清零事件。的清零事件。(2)过程映像的刷新与)过程

25、映像的刷新与OB90不同步。不同步。 2 2背景数据块与共享数据块背景数据块与共享数据块之间的区别之间的区别共享数据块不附属于任何逻辑块,它共享数据块不附属于任何逻辑块,它含有生产线或设备所需的值,并可以在程含有生产线或设备所需的值,并可以在程序的任何点直接使用。序的任何点直接使用。 背景数据块直接附属于某逻辑块,例背景数据块直接附属于某逻辑块,例如功能块。背景数据块中所含数据为功能如功能块。背景数据块中所含数据为功能块的变量声明表中所存数据。块的变量声明表中所存数据。 表表5-9所示为所示为OB90的临时(的临时(TEMP)变)变量。变量名为量。变量名为OB90的缺省名。的缺省名。 表表5-

26、95-9OB90OB90的临时变量的临时变量本本 章章 小小 结结本章重点介绍了组织块的循环执行,本章重点介绍了组织块的循环执行,定期执行的组织块、事件驱动的组织块、定期执行的组织块、事件驱动的组织块、启动组织块和背景组织块及相应的中断处启动组织块和背景组织块及相应的中断处理。理。 SIMATICS7-300的常用组织块包括:的常用组织块包括:程序循环组织块(程序循环组织块(OB1););日期时间中断组织块(日期时间中断组织块(OB10););延时中断组织块(延时中断组织块(OB20););循环中断组织块(循环中断组织块(OB35)。)。 硬件中断组织块(硬件中断组织块(OB40););诊断中断组织块(诊断中断组织块(OB82););机架故障组织块(机架故障组织块(OB86););启动的类型(启动的类型(OB100)。)。 编程故障组织块(编程故障组织块(OB121););I/O访问故障组织块(访问故障组织块(OB122)。)。此外还有其他的组织块,如:此外还有其他的组织块,如:I/O冗余冗余故障故障OB(OB70),),CPU冗余故障冗余故障OB(OB72),通信冗余故障),通信冗余故障OB(OB73)。)。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 医学/心理学 > 基础医学

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号