当前课程知识点:电气控制技术与PLC >  第6章 功能指令的应用 >  6.9 中断程序与中断指令 >  中断程序与中断指令

返回《电气控制技术与PLC》慕课在线视频课程列表

中断程序与中断指令在线视频

下一节:高速计数器指令 (一)

返回《电气控制技术与PLC》慕课在线视频列表

中断程序与中断指令课程教案、知识点、字幕

大家好

本讲我们一起来学习

S7-200SMART中断程序和中断指令的相关内容

什么是中断呢

大家想想我们生活中有没有中断

当然是有的

比如我正在看书

这时 电话来电响铃

那我就停止看书 转去接电话

接完电话 我接着看书

这个过程就是一个生活中的中断示例

那我们今天要学习的中断是什么呢

和我们刚才举的生活中的中断类似

是指当PLC正执行程序时

如果有中断事件

它会停止执行当前正在执行的程序

装而去执行中断子程序

当执行完毕后

又返回原先被终止的程序并继续运行

中断事件是什么呢

顾名思义 发生中断请求的事件

就称为中断事件

每个中断事件都有自已对应的一个编号

叫做中断事件号

S7-200 SMART中断可分为

定时中断 I/O中断 和通讯端口中断3大类

我们分别简单的介绍一下

第一类 定时中断

这类中断支持周期性活动

也就是说定时中断一旦被启动

中断就会周期性地不断产生

每当定时时间到

就会执行被连接的中断程序

第二类 I/O中断

包括了输入上升沿或者下降沿中断和高速计数器中断

可以用输入点I0.0~I0.3的上升沿或下降沿产生中断

另外可选的数字

量输入信号板的I7.0和I7.1也可以产生上升沿或下降沿中断

第三类 通信端口中断

在自由端口通信模式

也就是通过用户程序控制PLC串行通信端口这种模式下

用户通过编程来设置波特率和通信协议

接收消息完成或者发送消息完成和接受到一个字符

都可以产生中断事件

大家思考一个问题

如果有多个事件同时发生

CPU如何处理呢

先去处理哪个事件呢

CPU执行是有先后顺序的

也就是刚才咱们讲的三类中断是有优先顺序的

是这样的

通信中断大于I/O中断大于定时中断

具体内容大家可以参照软件帮助信息

学到到这大家会问

S7-200 SMART中断指令有哪些

中断程序该怎们编写呢

我们一块来看看

S7-200SMART中断指令有

ENI 中断允许指令 它的功能是

全局性允许所有中断事件

DISI中断禁止指令

它的功能是全局禁止所有中断

ATCH中断连接指令

功能是建立某个中断事件

EVNT和某个中断程序INT之间的联系

并允许这个中断

DTCH中断分离指令

功能是取消中断事件

EVNT和所有的程序之间的联系

并禁止这个中断事件

中断程序编程的一般步骤是

第1步 开放中断

第2步 关联中断事件与中断程序

第3步 编写中断子程序

最后 我们通过两个例子

来看看怎么利用中断指令和步骤编写中断程序

例1 编写程序要求PLC检测到I0.0的上升沿信号后

立即置位Q0.0

检测到I0.1的上升沿后

立即复位Q0.0。

根据题意

I0.0的上升沿和I0.1的上升沿是两个中断事件

也就是说 当PLC检测到I0.0上升沿信号

就是去执行中断子程序即置位Q0.0

同理当PLC检测到I0.1上升沿信号

复位Q0.0

这两个中断子程序

咱们先分别记对应INT_0和INT_1

按照中断程序的编写步骤

首先需要开放中断

在main主程序中

采用ENI指令开中断

接下来采用两个ATCH指令

关联中断事件与中断子程序

经过查阅帮助信息I0.0和I0.1上升沿的中断号分别是0和2

即第一个ATCH指令INT端是INT_0中断子程序

EVNT端是中断事件号0

同理第二个ATCH指令的INT端是INT_1中断子程序

EVNT端是中断事件号2

最后中断子程序INT_0和INT_1编写

是比较简单的

对Q0.0分别用置位命令和复位命令

通过这个例子相信大家

对中断指令的使用和中断程序编写步骤有更加深刻的理解

接下来我们来来看例2

编写程序实现QB0 1S的高精度定时自加控制

题目意思是每定时1s时间

QB0中的值自加1

我们可以用定时器中断

或定时中断0分别来编写程序

在这我们采用T32定时器中断来实现

中断号是21

编程思路是

主程序中

第1步 开放中断采用ENI指令

第2步 采用I0.0触点接通定时器T32

T32的时基是1ms

设置范围是0-255

题意要求时定时1s

为了方便计算

我们可将T32设置为250

累计4次到达1s时间

当I0.0接通后

开始计时

同时采用ATCH指令把INT_0中断子程序

21号中断事件关联起来

接下来编写中断子程序INT_0

当T32 250ms定时时间到

程序进入中断子程序

注意是T32每定时250ms进入一次中断子程序

累计4次才能达到1s时间

所以编写程序时

需要先采用自增指令

让VB0中的数累加

同时还需要复位T32定时器

当VB0等于4时

即1s定时时间到

再采用自增指令让QB0的值加1

同时要让VB0的值清零

可采用传送指令

目的是为了让VB0重新开始计数

另外在程序最开始

最好让VB0和QB0中的数据清零

另一种方法用定时中断0来编写

大家可自行完成

最后

在使用中断指令编写中断程序有这么几点需要大家注意

第一点是

中断事件与用户程序的执行时序没有关系

有的中断事件不能事先预测何时发生

第二点是

中断程序不是由用户程序调用

而是在中断事件发生时

由操作系统调用的

第三点是

中断程序是用户编写的

中断功能用于实时控制

通信控制和高速处理等场合

设计中断子程序时应遵循越精简越好的原则

因为中断程序的执行

会延迟主程序的执行时间

第四点是

中断子程序与子程序一样会保留调用

该中断子程序最后一个扫描周期各个存储区的状态

本讲到此结束

谢谢大家

电气控制技术与PLC课程列表:

第1章 常用低压电器

-1.1 低压电器简介

--低压电器简介

-1.2 低压开关电器

--低压开关电器

-1.3 主令电器

--主令电器

-1.4 接触器

--接触器

-1.5 熔断器

--熔断器

-1.6 继电器(一)热继电器和速度继电器

--继电器(一)热继电器和速度继电器

-1.7 继电器(二)时间继电器

--继电器(二)时间继电器

-小测验

第2章 继电器-接触器控制的基本控制线路

-2.1 三相异步电动机的直接起动控制

--三相异步电动机的直接起动控制

-2.2 三相异步电动机点动控制和长动控制

--三相异步电动机点动控制和长动控制

-2.3 三相异步电动机降压起动控制(一)

--三相异步电动机降压起动控制(一)

-2.4 三相异步电动机降压起动控制(二 )

--三相异步电动机降压起动控制(二 )

-2.5 三相异步电动机的多点控制和顺序控制

--三相异步电动机的多点控制和顺序控制

-2.6 三相异步电动机的调速控制

--三相异步电动机的调速控制

-2.7 三相异步电动机的制动控制(一)

--三相异步电动机的制动控制(一)

-2.8 三相异步电动机的制动控制(二)

--三相异步电动机的制动控制(二)

-2.9 三相异步电动机正反转控制(一)

--三相异步电动机正反转控制(一)

--三相异步电动机正反转控制(一)

-2.10 三相异步电动机正反转控制(二)

--三相异步电动机正反转控制(二)

-2.11 电气控制线路的设计方法

--电气控制线路的设计方法

-小测验

第3章 电气控制线路的绘制与设计

-3.1 电气控制电路图的绘制(一)

--电气控制电路图的绘制 (一)

-3.2 电气控制电路图的绘制(二)

--电气控制电路图的绘制(二)

-3.3 电气控制电路图的绘制(三)

--电气控制电路图的绘制(三)

-3.4 电气控制电路的设计方法 (一)

--电气控制电路的设计方法 (一)

-3.5 电气控制电路的设计方法 (二)

--电气控制电路的设计方法(二)

-小测验

第4章 可编程控制器基础

-4.1 认识PLC

--认识PLC

-4.2 PLC组成及工作原理

--PLC组成及工作原理

-4.3 S7-200 SMART PLC硬件介绍(上)

--S7-200 SMART PLC硬件介绍(上)

-4.4 S7-200 SMART PLC硬件介绍(下)

--S7-200 SMART PLC硬件介绍(下)

-4.5 STEP 7-Micro/WIN SMART编程软件(上)

--STEP 7-MicroWIN SMART编程软件(上)

-4.6 STEP 7-Micro/WIN SMART编程软件(下)

--STEP 7-MicroWIN SMART编程软件(下)

-小测验

第5章 S7-200 SMART PLC编程基础

-5.1 PLC编程语言与程序结构

--PLC编程语言与程序结构

-5.2 指令基础

--指令基础

-5.3 位逻辑指令

--位逻辑指令

-5.4 PLC编程规则与技巧

--PLC编程规则与技巧

-5.5 定时器指令的工作原理

--定时器指令的工作原理

-5.6 定时器指令应用举例

--定时器指令应用举例

-5.7 计数器指令的工作原理

--计数器指令的工作原理

-5.8 计数器指令的应用

--计数器指令应用

-小测验

第6章 功能指令的应用

-6.1 功能指令概述

--功能指令概述

-6.2 数据处理指令(一):比较指令与数据传送指令

--比较指令与数据传送指令

-6.3 数据处理指令(二):数据转换指令

--数据转换指令

-6.4 数据处理指令(三):表格指令和时钟指令

--表格指令和时钟指令

-6.5 算术运算指令及其应用

--算术运算指令及其应用

-6.6 逻辑运算指令及其应用

--逻辑运算指令及其应用

-6.7 程序控制指令:跳转指令、循环指令

--程序控制指令:跳转指令、循环指令

-6.8 子程序的编写与调用

--子程序的编写与调用

-6.9 中断程序与中断指令

--中断程序与中断指令

-6.10 高速计数器指令与高速脉冲输出指令(一)

--高速计数器指令 (一)

-6.11 高速计数器指令与高速脉冲输出指令(二)

--高速计数器指令 (二)

-小测验(一)

-小测验(二)

-小测验(三)

第7章 开关量控制系统梯形图程序设计方法

-7.1 梯形图的经验设计法

--梯形图的经验设计法

-7.2 顺序控制设计法与顺序功能图概述

--顺序控制设计法与顺序功能图概述

-7.3 顺序功能图的基本结构和绘制方法

--顺序功能图的基本结构和绘制方法

-7.4 使用SCR指令的顺序控制梯形图设计方法

--使用SCR指令的顺序控制梯形图设计方法

-7.5 使用起保停电路的顺序控制梯形图设计方法

--使用起保停电路的顺序控制梯形图设计方法

-7.6 使用置位复位指令的顺序控制梯形图设计法

--使用置位复位指令的顺序控制梯形图设计法

-小测验

第8章 模拟量控制程序设计

-8.1模拟量控制概述

--模拟量控制概述

-8.2模拟量输入输出配置及数值的规范化

--模拟量输入输出配置及数值的规范化

-8.3PID控制指令

--PID控制指令

-8.4水箱水位PID控制程序举例

--水箱水位PID控制程序举例

-小测验

中断程序与中断指令笔记与讨论

也许你还感兴趣的课程:

© 柠檬大学-慕课导航 课程版权归原始院校所有,
本网站仅通过互联网进行慕课课程索引,不提供在线课程学习和视频,请同学们点击报名到课程提供网站进行学习。