S7的组织块和中断处理

上传人:xinsh****encai 文档编号:60393744 上传时间:2022-03-07 格式:PPTX 页数:90 大小:562.52KB
返回 下载 相关 举报
S7的组织块和中断处理_第1页
第1页 / 共90页
S7的组织块和中断处理_第2页
第2页 / 共90页
S7的组织块和中断处理_第3页
第3页 / 共90页
点击查看更多>>
资源描述
l重点与难点l 组织块的基本概念,组织块的循环执行,定期执行的组织块、事件驱动的组织块、背景组织块、启动组织块及相应的中断处理。 l基本要求l1理解组织块的基本概念及组织块的循环执行;l2掌握定期执行的组织块、事件驱动的组织块、启动组织块和地背景组织块及相应的中断处理。 l本章内容 l1组织块概述;l2组织块的循环执行;l3定期执行的组织块和中断处理;l4事件驱动的组织块和中断处理;l5启动组织块和中断处理;l6背景组织块。 l 组织块的循环执行组织块的循环执行5.2定期执行的组织块和中断处理定期执行的组织块和中断处理5.3组织块概述组织块概述5.1事件驱动的组织块和中断处理事件驱动的组织块和中断处理5.4 l 本章小结本章小结5.7背景组织块背景组织块5.6启动组织块和中断处理启动组织块和中断处理5.55.1组织块概述l 组织块是操作系统与用户程序之间的接口。用组织块可以响应延时中断、外部硬件中断、进行错误处理等。 (1)中断过程 (2)中断源 (3)组织块 l SIMATIC S7-300有以下常用组织块。l OB1主程序循环。l OB10时间中断。l OB20延时中断。l OB35循环中断。l OB40硬件中断。l B100再启动。 图图5-1 S7-3005-1 S7-300的常用组织块的常用组织块 表表5-15-1OBOB的变量声明表的变量声明表 表表5-25-2 控制中断组织块的系统功能块控制中断组织块的系统功能块5.2 组织块的循环执行l S7 CPU操作系统周期性地执行组织块OB1程序。当OB1执行完毕,操作系统再次启动它。 l CPU启动后,OB1被循环执行,同时可以在OB1中调用其他功能块(FB,SFB)或功能(FC,SFC)。 l OB1的优先级最低,其循环时间被监控。即除OB90以外,其他所有OB均可打断OB1的执行。 l 一般来说,以下事件可导致操作系统调用OB1。 (1)CPU启动完毕。 (2)OB1执行到上一个循环周期结束。 l OB1执行完后,操作系统发送全局数据。再次启动OB1之前,操作系统会将输出映像区数据写入输出模板,刷新输入映像区并接收全局数据。 l S7监视最长循环时间,保证最长的响应时间。 表表5-35-3OB1OB1的临时变量的临时变量 图图5-2 5-2 循环程序的处理循环程序的处理 表表5-45-4 循环程序处理的各个阶段循环程序处理的各个阶段 l循环程序处理可以被以下事件中断。 (1)一个中断。 (2)STOP命令(模式选择开关,编程器上的菜单选项,SFC46 STP,SFB20 STOP)。 (3)电源掉电。 (4)出现故障或编程错误。5.3 定期执行的组织块和中断处理l STEP 7提供多达8个OB(OB10OB17),它们可以运行一次或周期性地运行。 l 设计人员可以运用SFC或STEP 7给CPU分配参数,这些OB在特定的日期和时间或以一定间隔由操作系统调用执行。 l 日期时间中断可按如下方式触发。 (1)在某特定时间(用绝对形式定义日期时间)执行一次。 (2)从特定的时间开始并按中断应重复的间隔(如:每分钟、每小时、每天)周期地执行。 l 日期时间中断只有设置了参数,并且在相应的组织块中有用户程序存在时才能被执行。 l 为了让CPU启动日期时间中断,用户必须首先设置日期时间中断,然后再激活它。启动该中断有以下三种方法。 (1)通过STEP 7中设置相应的参数(“日期时间中断”参数块),实现日期时间中断的自动启动。 (2)在用户程序中用SFC28 SET_TINT和SFC 30 ACT_TINT,设置并激活日期时间中断。 (3)用STEP 7的参数设置日期时间中断,在用户程序中用SFC 30 ACT_TINT激活日期时间中断。 l OB可以分为两类:执行周期性工作的OB(日时钟中断)和响应错误的OB(错误中断)。 (1)执行周期性工作的OB(日时钟中断)的执行条件如下。l l 在特定的日期或时间执行。l 从一个编程事件开始一段特定延时后执行。l 按特定周期循环执行。 (2)响应错误的OB(错误中断)的执行条件如下。l 当CPU检测到一个过程/硬件错误时执行。 l 当CPU检测到一个不依赖于程序指令的错误时执行。l 当CPU检测到一个与程序指令处理有关的错误时执行。 l 1日时钟中断(OB10)l OB10可按下列间隔运行。 (1)Once (2)Every minute (3)Hourly (4)Daily (5)Weekly (6)Monthly (7)Annually l 下面给出OB10的起始时刻和间隔时间设置。 (1)通过定义OB10执行的起始时刻(日期和/或时间)和间隔时间对OB10进行配置。 (2)通过S7组态工具配置CPU的日时钟的中断参数或者在程序中调用SFC28(SET-TINT)设置时间。 (3)通过S7组态工具在CPU的日时钟中断参数块中选择激活项。 (4)在程序中调用SFC30(ACT-TINT)来激活OB10。 l 表5-5描述了日期时间中断的临时变量(TEMP),变量名是 OB10 缺省名称。 表表5-55-5 日期时间中断的临时变量日期时间中断的临时变量 l 2延时中断OB 20l 由调用SFC 32启动,调用SFC 32时要提供相应的实参。 l OB-NR:延时中断OB的号码。l DTIME:延时长度(160 000ms)。l SIGN:延时OB被调用时进入OB的启动信息标志器。l RET-VAL OB:执行过程中发生错误时的错误代码。 l 处理延时中断的SFC:lSFC32 SRT_TINT 启动延时中断 lSFC33 CAN_DINT 取消延时中断lSFC34 QRY_TINT 查询延时中断5.4 事件驱动的组织块和中断处理l S7提供多达8个独立的硬件中断组织块OB(OB40OB47)。通过STEP 7进行参数赋值,可以为会触发硬件中断的每一个信号模板指定以下参数。 l 哪个通道在哪种条件下触发一个硬件中断。l 哪一个硬件中断OB被分配到单独的通道组。 l 设计人员可以运用STEP 7为每一个硬件中断OB选择优先级。如果一个硬件中断被触发并且它的OB正在由于另一个模板的硬件中断而激活,则记录新的中断申请,在空闲后会执行该中断。 l 用SFC3942可以禁止、延时和再使能硬件中断。可以用STEP 7中的SFC 5557,为硬件中断模板赋值参数。 l 响应来自不同模块(如:I/O模块、CP模块或FM模块)发出的过程警告或硬件中断请求信号。 l 表5-6描述了硬件中断OB的临时变量(TEMP),变量名是OB40的缺省名称。 表表5-65-6硬件中断硬件中断OBOB的临时变量的临时变量 l S7CPU提供有硬件中断OB(OB40-OB47),用于对模板(例如信号模板、通信处理器、功能模板)上的信号变化进行响应。 l 硬件中断只有当CPU的程序中存在相应的组织块时,才能执行。 l 如果用户在参数设置中没有选中硬件中断OB,则它们不能启动。 l 用户通过STEP 7必须给具有硬件中断能力的信号模板设置如下参数集。l 硬件中断的触发原因。l 哪一种硬件中断OB将被执行缺省设置(OB40用于执行所有的硬件中断),用户通过STEP 7,可以使用功能块激活硬件中断的生成。 图图5-16 5-16 循环程序的处理过程循环程序的处理过程 l 通常,被S7 CPU检测到并且用户可以通过组织块对其进行处理的错误分为两个基本类型。 (1)异步错误 (2)同步错误 l 下面介绍一些错误处理组织块。 (1)电源故障处理组织块(OB81) (2)时间错误处理组织块(OB80) (3)诊断中断处理组织块(OB82) (4)插入/拔出模块中断组织块(OB83) (5)CPU硬件故障处理组织块(OB84) (6)优先级错误处理组织块(OB85) (7)机架故障组织块(OB86) (8)通信错误组织块(OB87) l 同步错误组织块包括编程错误组织块(OB121)和I/O访问错误组织块(OB122)。 (1)编程错误组织块(OB121) (2)I/O访问错误组织块(OB122) 图图5-17 OB1005-17 OB100的运行的运行5.5 启动组织块和中断处理l 1CPU模块的启动方式 (1)暖启动(Warm Restart)l S7-300 CPU(不包括CPU 318)只有暖起动。有保持功能的M/T/C/DB将保留原数值。 (2)热启动(Hot Restart,仅S7-400有,在S7-300和S7-400H中没有)l 在RUN状态时如果突然掉电,然后又重新上电,从上次RUN模式结束时程序被中断之处继续执行,不对计数器等复位。 (3)冷启动(Cold Restart,CPU 417和CPU 417H)l 冷启动时,过程数据区的I,Q,M,T,C,DB等被复位为零。 l 2启动组织块(OB100OB102)l 在暖启动、热启动或冷启动时,操作系统分别调用OB100、OB101或OB102。表5-7给出了对应各种启动类型,操作系统调用不同的OB。 表表5-75-7启动组织块启动组织块启 动 类 型相关OB热启动OB101暖启动OB100冷启动OB102 表表5-85-8 OBOB的临时(的临时(TEMPTEMP)变量表)变量表 l 通常,当下列事件发生后,CPU执行启动功能: (1)电源上电后。 (2)用户将CPU的状态选择开关从“STOP”扳到“RUN/RUN-P”后。 (3)从通信功能来请求后。 (4)多CPU方式同步之后。 (5)H系统中连接后(只适用于备用CPU上)。l图5-18所示为启动组织块的具体执行过程。l(1)手动启动后的启动类型l(2)自动启动后的启动类型 图图5-18 5-18 启动组织块的执行过程启动组织块的执行过程5.6 背景组织块l 如果用户用STEP 7定义最小的扫描循环时间,且该时间比实际的扫描循环时间长,则CPU在循环程序结束时,还有处理时间,该时间用于执行背景OB(背景组织块)。 l 如果用户的CPU中没有OB90,则CPU等待,直到定义的最小扫描循环时间到达为止。因此,对于那些对运行时间要求不高的过程,用户可以用OB90,从而避免等待时间。 l 结束了背景周期之后背景OB的优先级为29,对应的优先级0.29。因此,OB90在所有OB中优先级最低,它可以被任何系统功能和任务所中断并仅在所选的最小扫描周期还没有达到时保持。 l 一个例外是在OB90中启动的SFC和SFB的执行,它们用OB1的优先级执行并且不会被OB1中断。OB90中的用户程序在下述情况下被从第一条指令处开始处理: (1)暖、冷或热启动之后 (2)OB90中正在执行的块被删除之后(用STEP 7) (3)在RUN方式下装OB90到CPU之后 l 这里需要注意的是,背景组织块的优先级不能通过参数设置进行修改。 l 1OB90的编程l OB90的运行时间不受CPU操作系统的监视,因此,用户可以在OB90中编写程序的长度不受限制。为确保在背景程序中的数据具有一致性,在编程时注意以下问题: (1)OB90的清零事件。 (2)过程映像的刷新与OB90不同步。l l 2背景数据块与共享数据块之间的区别l 共享数据块不附属于任何逻辑块,它含有生产线或设备所需的值,并可以在程序的任何点直接使用。 l 背景数据块直接附属于某逻辑块,例如功能块。背景数据块中所含数据为功能块的变量声明表中所存数据。 l 表5-9所示为OB90的临时(TEMP)变量。变量名为OB90的缺省名。 表表5-95-9OB90OB90的临时变量的临时变量本 章 小 结l 本章重点介绍了组织块的循环执行,定期执行的组织块、事件驱动的组织块、启动组织块和背景组织块及相应的中断处理。 l SIMATIC S7-300的常用组织块包括:l 程序循环组织块(OB1); l 日期时间中断组织块(OB10); l 延时中断组织块(OB20); l 循环中断组织块(OB35)。 l 硬件中断组织块(OB40); l 诊断中断组织块(OB82); l 机架故障组织块(OB86);l 启动的类型(OB100)。 l 编程故障组织块(OB121);l I/O访问故障组织块(OB122)。l 此外还有其他的组织块,如:I/O冗余故障OB(OB70),CPU冗余故障OB(OB72),通信冗余故障OB(OB73)。
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 中学资料


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!