文档介绍:第6章特殊功能指令
本章要点
l        立即类指令的功能
l        中断指令的功能应用举例及实训
l        高速计数器指令、高速脉冲输出指令功能应用举例及实训
l PID指令的原理及PID控制功能的应用
l         时钟指令
立即类指令
立即类指令是指执行指令时不受S7-200循环扫描工作方式的影响,而对实际的I/O点立即进行读写操作。分为立即读指令和立即输出指令两大类。
立即读指令用于输入I接点,立即读指令读取实际输入点的状态时,并不更新该输入点对应的输入映像寄存器的值。如:当实际输入点(位)是1时,其对应的立即触点立即接通;当实际输入点(位)是0时,其对应的立即触点立即断开。
立即输出指令用于输出Q线圈,执行指令时,立即将新值写入实际输出点和对应的输出映像寄存器。
立即类指令与非立即类指令不同,非立即指令仅将新值读或写入输入/输出映像寄存器。
立即类指令的格式及说明如表6-1所示。
表6-1 立即类指令的格式及说明
LAD
STL
LDI bit
AI bit
OI bit
LDNI bit
ANI bit
ONI bit
=I bit
SI bit,N
RI bit,N
说明
常开立即触点可以装载,串联,并联。
常闭立即触点可以装载,串联,并联。
立即输出
立即置位
立即复位
操作数及数据类型
Bit:I
数据类型:BOOL
Bit:Q
数据类型:BOOL
Bit:Q,数据类型:布尔
N: VB, IB, QB, MB, SMB, SB, LB, AC, 常量, *VD, *AC, *LD 数据类型:字节
中断指令
S7-200设置了中断功能,用于实时控制、高速处理、通信和网络等复杂和特殊的控制任务。中断就是终止当前正在运行的程序,去执行为立即响应的信号而编制的中断服务程序,执行完毕再返回原先被终止的程序并继续运行。
中断源
1. 中断源的类型
中断源即发出中断请求的事件,又叫中断事件。为了便于识别,系统给每个中断源都分配一个编号,称为中断事件号。S7-200系列可编程控制器最多有34个中断源,分为三大类:通信中断、输入/输出中断和时基中断。
(1)通信中断
在自由口通信模式下,用户可通过编程来设置波特率、奇偶校验和通信协议等参数。用户通过编程控制通讯端口的事件为通信中断。
(2)I/O中断
I/O中断包括外部输入上升/下降沿中断、高速计数器中断和高速脉冲输出中断。S7-200用输入(、、)上升/下降沿产生中断。这些输入点用于捕获在发生时必须立即处理的事件。高速计数器中断指对高速计数器运行时产生的事件实时响应,包括当前值等于预设值时产生的中断,计数方向的改变时产生的中断或计数器外部复位产生的中断。脉冲输出中断是指预定数目脉冲输出完成而产生的中断。
(3)时基中断
时基中断包括定时中断和定时器T32/T96中断。定时中断用于支持一个周期性的活动。周期时间从1毫秒至255毫秒,时基是1毫秒。使用定时中断0,必须在SMB34中写入周期时间;使用定时中断1,必须在SMB35中写入周期时间。将中断程序连接在定时中断事件上,若定时中断被允许,则计时开始,每当达到定时时间值,执行中断程序。定时中断可以用来对模拟量输入进行采样或定期执行PID回路。定时器T32/T96中断指允许对定时间间隔产生中断。这类中断只能用时基为1ms的定时器T32/T96构成。当中断被启用后,当前值等于预置值时,在S7-200执行的正常1毫秒定时器更新的过程中,执行连接的中断程序。
2. 中断优先级和排对等候
优先级是指多个中断事件同时发出中断请求时,CPU对中断事件响应的优先次序。S7-200规定的中断优先由高到低依次是:通信中断、I/O中断和定时中断。每类中断中不同的中断事件又有不同的优先权,如表6-2所示。
一个程序中总共可有128个中断。S7-200在各自的优先级组内按照先来先服务的原则为中断提供服务。在任何时刻,只能执行一个中断程序。一旦一个中断程序开始执行,则一直执行至完成。不能被另一个中断程序打断,即使是更高优先级的中断程序。中断程序执行中,新的中断请求按优先级排队等候。中断队列能保存的中断个数有限,若超出,则会产生溢出。中断队列的最多中断个数和溢出标志位如表6-3所示。
表6-2中断事件及优先级
优先级分组
组内优先级
中断事件号
中断事件说明
中断事件类别
通信中断
0
8
通信口0:接收字符
通信口0
0
9
通信口0:发送完成
0
23
通信口0:接收信息完成
1
24
通信口1:接收信息完成
通信口1