第5章 PLC中断处理功能及应用.docx
- 文档编号:7266784
- 上传时间:2023-01-22
- 格式:DOCX
- 页数:12
- 大小:111.85KB
第5章 PLC中断处理功能及应用.docx
《第5章 PLC中断处理功能及应用.docx》由会员分享,可在线阅读,更多相关《第5章 PLC中断处理功能及应用.docx(12页珍藏版)》请在冰豆网上搜索。
第5章PLC中断处理功能及应用
第5章PLC中断处理功能及应用
学习目标
了解S7-200系列PLC中中断事件的种类及其优先级顺序;
理解中断允许与中断禁止、中断连接与中断分离、中断程序标号及中断返回指令的格式与功能;
掌握使用中断子程序解决实际问题的方法。
S7-200系列PLC的中断功能同微型计算机的中断功能相似,是指当一些随机的中断事件发生时,CPU暂时停止执行主程序,并保存断点,然后去对随机发生的更紧迫事件进行处理,即转去执行相应的中断服务程序。
中断服务程序结束后,将自动返回主程序继续进行正常工作。
5.1中断事件及优先级
5.1.1中断事件
能够向PLC发出中断请求的事件叫中断事件,如外部开关量输入信号的上升沿或下降沿事件、通信事件、高速计数器的当前值等于设定值事件等。
PLC事先并不知道这些事件何时发生,一旦出现便立即尽快地进行处理。
S7-200系列PLC的中断事件包括三大类,它们分别是通讯口中断、I/O中断和时基中断。
1.通讯口中断
S7-200系列PLC有6种通讯口中断事件,其中断名称、事件号码及优先级级别如表5-1所示。
这些通讯口事件在该系列PLC的中断优先级中属最高级,其中端口0事件优先于端口1事件。
利用这些通讯口中断事件,可以简化程序对通讯的控制。
表5-1通讯口中断事件及其优先级
事件编号
中断名称
优先
级H
可支持的CPU型号
212
214
215
216
221
222
224
CPU224XP
226
8
端口0:
接收字符
0
有
有
有
有
有
有
有
9
端口0:
发送完成
0
有
有
有
有
有
有
有
23
端口0:
接收信息完成
0
有
有
有
有
有
24
端口1:
接收信息完成
1
有
有
25
端口1:
接收字符
1
有
有
26
端口1:
发送完成
1
有
有
2.I/O中断
I/O中断事件包含上升/下降沿中断、高速计数器中断和高速脉冲串输出中断三类,其中断名称、事件号码及优先级级别如表5-2所示。
表5-2I/O中断事件及优先级
事件
编号
中断名称
优先
级M
可支持的CPU型号
212
214
215
216
221222
224
CPU224XP
226
0
I0.0上升沿
0
有
有
有
有
有
有
有
1
I0.0下降沿
4
有
有
有
有
有
有
有
2
I0.1上升沿
1
有
有
有
有
有
有
3
I0.1下降沿
5
有
有
有
有
有
有
4
I0.2上升沿
2
有
有
有
有
有
有
5
I0.2下降沿
6
有
有
有
有
有
有
6
I0.3上升沿
3
有
有
有
有
有
有
7
I0.3下降沿
7
有
有
有
有
有
有
12
HSC0当前值等于预置值
0
有
有
有
有
有
有
有
27
HSC0输入方向改变
16
有
有
有
28
HSC0外部复位
2
有
有
有
13
HSCl当前值等于预置值
8
有
有
有
有
14
HSCl输入方向改变
9
有
有
有
有
15
HSCl外部复位
10
有
有
有
有
16
HSC2当前值等于预置值
11
有
有
有
有
17
HSC2输入方向改变
12
有
有
有
有
18
HSC2外部复位
13
有
有
有
有
32
HSC3当前值等于预置值
1
有
有
有
29
HSC4当前值等于预置值
3
有
有
有
30
HSC4输入方向改变
17
有
有
有
31
HSC4外部复位
18
有
有
有
33
HSC5当前值等于预置值
19
有
有
有
19
PLS0脉冲数完成
14
有
有
有
有
有
有
20
PLS1脉冲数完成
15
有
有
有
有
有
有
1)上升/下降沿中断是指由I0.0、I0.1、10.2、10.3输入端子发生的上升沿或下降沿引起的中断。
这些输入点的上升沿或下降沿出现时,CPU可检测到其变化,从而转入中断处理,以便及时响应某些故障状态。
2)高速计数器中断可以是计数器当前值等于预置值时的响应,可以是计数方向改变时的响应,也可以是外部复位时的响应。
这些高速计数器中断事件可以实时的得到迅速响应,从而可以实现比PLC扫描周期还要短的有关控制任务。
3)脉冲串输出中断是指当PLC完成指定脉冲数输出时引起的中断。
它可以方便的控制步进电动机的转角或转速。
3.时基中断
时基中断包括内部定时中断和外部定时器中断两类,其中断名称、事件号码及优先级级别如表5-3所示。
表5-3时基中断事件激起优先级
事件
编号
中断名称
优先
级L
可支持的CPU型号
212
214
215
216
221
222
224
CPU224XP
226
10
定时中断0(SMB34)
0
有
有
有
有
有
有
有
11
定时中断1(SMB35)
1
有
有
有
有
有
有
21
定时器T32当前值等于预置值
2
有
有
有
有
有
22
定时器T96当前值等于预置值
3
有
有
有
有
有
1)内部定时中断包括定时中断0和定时中断1两个。
这两个定时中断按设定的时间周期不断循环工作,可以用来以固定的时间间隔作为采样周期,对模拟量输入进行采样,也可以用来执行一个PID调节指令。
定时中断的时间间隔存储在时间间隔寄存器SMB34和SMB35中,它们分别对应定时中断0和定时中断1,对于21X系列机型,它们在5ms~255ms之间以ms为增量单位进行设定;对于22X系列机型,它们在lms~255ms之间以ms为增量单位进行设定。
当CPU响应定时中断事件时,就会获取该时间间隔值。
2)定时器中断就是利用定时器来对一个指定的时间段产生中断。
只能由1ms延时定时器T32和T96产生。
T32和T96的工作方式与普通定时器—样。
一旦定时器中断允许,当T32或T96的当前值等于预置值时,CPU响应定时器中断,执行被连接的中断服务程序。
5.1.2中断的优先级
在S7-200系列PLC中,中断事件的优先级是事先规定好的,最高优先等级属通讯口中断,中间级属I/O中断,最低优先等级为时基中断。
在同一优先等级的事件中,CPU按先来先服务的原则处理。
在同一时刻,只能有一个中断服务程序被执行。
一个中断服务程序一旦被执行,就会一直执行到结束,中途不能被另一个中断服务程序中断,即便是优先级更高的中断也不行。
在一个中断服务程序执行期间发生的其他中断需排队等候处理。
三类中断排队等候处理所允许的最大队列数及队列溢出标志如表5-4所示。
若等候处理的中断数目超过最大队列数,则中断队列溢出标志SM4.0-SM4.2就会置1。
在队列空或由中断程序返回主程序后,队列溢出标志复位。
表5-4每个中断最大队列数及队列溢出标志位
队列
CPU类型
中断对列溢出标志位
212
214
215
216
221
222
224
224XP
226
通讯中断队列
4
4
4
8
4
4
8
SM4.0
溢出为ON
I/0中断队列
4
16
16
16
16
16
16
SM4.1
溢出为ON
时基中断队列
2
4
8
8
8
8
8
SM4.2
溢出为ON
5.2中断指令及其应用
S7-200系列PLC的中断指令包含中断允许、中断禁止、中断连接、中断分离、中断服务程序标号和中断返回指令。
可用于实时控制、在线通信或网络当中,根据中断事件的出现情况,及时发出控制命令。
其指令的格式及功能如表5-5所示。
表5-5中断指令的格式及功能
梯形图LAD
语句表STL
功能
操作码
操作数
ENI
—
中断允许指令ENI全局地允许所有被连接的中断事件;
DISI
—
中断禁止指令DISI全局地禁止处理所有中断事件。
ATCH
INT,EVNT
中断连接指令ATCH把一个中断事件(EVNT)和一个中断服务程序连接起来,并允许该中断事件
DTCH
EVNT
中断分离指令DTCH截断一个中断事件(EVNT)和所有中断程序的联系,并禁止该中断事件。
INT
n
中断服务程序标号指令INT指定中断服务程序(n)的开始
CRETI
—
中断返回指令CRETI在前面的逻辑条件满足时,退出中断服务程序而返回主程序
RETI
—
执行RETI指令将无条件返回主程序
说明:
1)操作数INT及n用来指定中断服务程序标号,取值可为0~127;
2)EVNT用于指定被连接或被分离的中断事件,其编号对21X系列PLC为0~26;对22X系列PLC为0~33。
3)在SETP7-MicroWIN编程软件中无INT指令,中断服务程序的区分由不同的中断程序窗口来辨识。
4)无条件返回指令RETI是每一个中断程序所必须有的,在STEP7-MicroWIN编程软件中可自动在中断服务程序后面加入该指令。
5.3中断指令上机实践
实践1利用中断实现故障报警
1.控制要求
将故障信号连接在PLC的I0.0输入端子上,当故障信号出现时通过中断使输出Q0.0立即置位发出报警通知;在故障信号解除时通过中断使输出Q0.0立即复位。
2.程序设计
根据控制要求,利用I0.0的上升沿中断调用报警中断子程序(INT0),利用I0.0下降沿中断调用报警复位中断子程序(INT1),对应的梯形图程序如图5-1所示。
3.上机操作步骤及要求
1)根据题目要求,连接PLC输入输出接线;
2)启动STEP7-Micro/MIN,将程序录入并下载到PLC中,使PLC进入运行状态;
3)按下按钮I0.0,观察输出Q0.0的状态;松开I0.0,观察输出Q0.0有无改变。
4)将主程序中的中断事件0、1换为5、6,则应怎样连接PLC的接线?
实践2彩灯循环点亮控制
1.控制要求
采用定时器中断的方式实现Q0.0~Q0.7输出的依次移位(间隔时间1s)。
按下起动按钮I0.0,移位从Q0.0开始,按下停止按钮I0.1,移位停止且清0。
2.程序设计
采用移位指令与中断指令的配合完成彩灯依次点亮控制。
按下起动按钮的第一个扫描周期置QB0初值,并建立T96定时器中断事件与中断子程序0的连接,实现全局开中断;设置T96定时器预设值为1s,并保证系统停止时不会有任何输出;编制中断子程序,实现QB0的左移位控制。
其梯形图程序如图5-2所示。
3.上机操作步骤及要求
1)根据题目要求,连接PLC输入输出接线;
2)启动STEP7-Micro/MIN编程软件,录入并下载程序到PLC中,使PLC进入运行状态;
3)按下起动按钮I0.0,观察彩灯点亮情况;按下停止按钮I0.1,观察彩灯循环过程是否停止;
4)若要彩灯向右依次点亮,应如何编程?
本章小结
本章介绍了S7-200系列PLC的中断事件、中断优先级、中断指令及其用等。
1.能够向PLC发出中断请求的事件叫中断事件。
S7-200系列PLC的中断事件包括三大类,它们分别是通讯口中断、I/O中断和时基中断。
其中最高优先等级属通讯口中断,中间级属I/O中断,最低优先等级为时基中断。
2.S7-200系列PLC的中断指令包含中断允许、中断禁止、中断连接、中断分离、中断服务程序标号和中断返回指令。
PLC运行过程中,可根据中断事件的出现情况,及时发出控制命令,调用处理特殊情况的中断服务程序,进而实现对现场设备的实时控制。
思考与练习
5-1S7-200系列PLC的中断事件分哪几类?
它们的中断优先级如何?
5-2I/O中断事件有哪些,各有何含义?
5-3时基中断包括哪几类,内部定时中断与定时器中断有何不同?
5-4内部定时中断的分辨率是多少?
可设定的最长定时时间是多少?
5-5定时器中断由哪些定时器产生,分辨率是多少?
5-6通信中断有哪些类型?
5-7试编写用I0.3上升沿中断实现定时器T37的时间设定值自动加10的梯形图程序。
5-8用定时中断设置一个每100ms采集一次模拟量输入值的控制程序。
5-9第一次扫描时将VB0清0,用定时中断0,每100ms将VB0加1,当VB0=100时关闭定时中断,并将Q0.0置位。
5-10首次扫描时给Q0.0~Q0.7置初值,用T32中断定时控制接在Q0.0~Q0.7上的8个彩灯循环右移,每秒移一位。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第5章 PLC中断处理功能及应用 PLC 中断 处理 功能 应用