起订量:
S7-1500 西门子6ES75905CA000AA0销售
免费会员
代理商湖南博隽逸智能科技有限公司主营:西门子数控系统,S7-200PLC S7-300PLC S7-400PLC S7-1200PLC 6ES5 ET200 人机界面,触摸屏变频器,DP总线,MM420 变频器MM430 变频器MM440 6SE70交流工程调速变频器 6RA70直流调速装置 SITOP电源,电线电缆,数控备件,伺服电机等工控产品,我们在价格上有较大优势,更注重售后服务,现有大量现货销售,欢迎您来电
真心的对待每一份报价,真诚的对待每一位客户。
优先级相同时,CPU
按照先来先处理的原则处理中断。在某一时间仅执行一个用户中断例程。中断例程开始执行后,一直执行直至完成。其它中断例程无法预先清空该例程,即使更高优先级的例程。正在处理另一个中断时发生的中断会进行排队等待处理。下表显示了三种中断队列以及它们能存储的中断数。
出现的中断有可能比队列所能容纳的中断更多。因此,队列溢出存储器位(标识已丢失的中断事件类型)由进行。下表给出了中断队列溢出位。应仅在中断例程中使用这些位,因为当队列清空时,这些位将复位,并且控制权将返回到扫描周期。
如果多个中断事件同时发生,则优先级(组和组内)会确定首先处理哪一个中断事件。处理了优先级的中断事件之后,会检查队列,以查找仍在队列中的当前优先级的事件,并会执行连接到该事件的中断例程。会继续执行这一步骤,直至队列为空且控制权返回到扫描周期。
下表给出了所有中断事件及其优先级和分配的事件编号。
队列 | 所有 S7-200 SMART CPU 型号的队列深度 |
通信队列 | 4 |
I/O 中断队列 | 16 |
定时中断队列 | 8 |
说明(0 = 无溢出,1 = 溢出) | SM 位 |
通信队列 | SM4.0 |
I/O 中断队列 | SM4.1 |
定时中断队列 | SM4.2 |
中断事件的优先级顺序
优先级组 | 事件 | 说明 |
通信 优先级 | 8 | 端口 0 接收字符 |
9 | 端口 0 发送完成 | |
23 | 端口 0 接收消息完成 | |
24 | 端口 1 接收消息完成 | |
25 | 端口 1 接收字符 | |
26 | 端口 1 发送完成 | |
离散 中等优先级 | 19 | PTO0 脉冲计数完成 |
20 | PTO1 脉冲计数完成 | |
34 | PTO2 脉冲计数完成 | |
0 | I0.0 上升沿 | |
2 | I0.1 上升沿 | |
4 | I0.2 上升沿 | |
6 | I0.3 上升沿 | |
35 | I7.0 上升沿(板) | |
37 | I7.1 上升沿(板) | |
1 | I0.0 下降沿 | |
3 | I0.1 下降沿 | |
5 | I0.2 下降沿 | |
7 | I0.3 下降沿 | |
36 | I7.0 下降沿(板) | |
38 | I7.1 下降沿(板) | |
12 | HSC0 CV=PV(当前值 = 预设值) | |
27 | HSC0 方向改变 | |
28 | HSC0 外部复位 | |
13 | HSC1 CV=PV(当前值 = 预设值) | |
16 | HSC2 CV=PV(当前值 = 预设值) | |
17 | HSC2 方向改变 | |
18 | HSC2 外部复位 |
优先级组 | 事件 | 说明 |
32 | HSC3 CV=PV(当前值 = 预设值) | |
29 | HS CV=PV | |
30 | HS 方向改变 | |
31 | HS 外部复位 | |
33 | HSC5 CV=PV | |
43 | HSC5 方向改变 | |
44 | HSC5 外部复位 | |
定时 优先级 | 10 | 定时中断 0 SMB34 |
11 | 定时中断 1 SMB35 | |
21 | 定时器 T32 CT = PT 中断 | |
22 | 定时器 T96 CT = PT 中断 |
示例 1:输入沿检测器中断
LAD | STL | ||
MAIN Network 1 | 次扫描时: 1. 将中断例程 INT_0 定义为 I0.0 的下降沿中断 2. 全局启用中断。 | Network 1 LD SM0.1 ATCH INT_0, 1 ENI | |
Network 2 | 如果检测到 I/O 错误,则禁用 I0.0 的下降沿中断。 (此程序段可选。) | Network 2 LD SM5.0 DTCH 1 | |
Network 3 | M5.0 接通时,会禁用所有中断。禁用时,所连接中断事件将排队,但是不会执行相应的中断例程,直至使用 ENI 指令重新启用中断。 | Network 3 LD M5.0 DISI | |
INT 0 Network 1 | I0.0 下降沿中断例程:基于 I/O 错误的有条件返回。 | Network 1 LD SM5.0 CRETI |
示例 2:用于读取模拟量输入值的定时中断
LAD | STL | ||
MAIN Network 1 | 扫描时,调用子例程 0。 | Network 1 LD SM0.1 CALL SBR_0 | |
SBR 0 | 将定时中断 0 | Network 1 LD SM0.0 MOVB 100, SMB34 ATCH INT_0, 10 ENI | |
Network | 的时间间隔设置为 100 | ||
1 | ms。 | ||
将定时中断 0 | |||
(事件 10)连接到 | |||
INT_0。 | |||
全局中断启用。 | |||
INT 0 Network 1 | 每 100 ms 读取一次 AIW16 的值。 | Network 1 LD SM0.0 MOVW AIW16, VW100 |
示例 3:中断事件指令
LAD | STL | ||
SBR 1 Network 1 | HSC 指令向导: 设置控制位,写入预设值。 | Network 1 LD SM0.0 MOVB 16#A0, SMB47 MOVD +6, SMD52 ATCH HSC1_STEP1, 13 | |
PV = 6 | |||
连接中断 | |||
HSC1_STEP1: | |||
CV = PV(对于 HC1) | |||
组态 HSC 1。 | |||
SBR 1 Network 2 | 机器振动引起的不必要中断。 | Network 2 LD SM0.0 CEVNT 13 |