硬件中断与诊断中断

用户要使用中断,必须首先在硬件组态中使能中断,并将OB40和OB82下载到PLC中。

1. 硬件中断,触发OB40

FM350-2支持的硬件中断:

详细中断信息可参考OB40的局部变量OB40_POINT_ADDR(byte8-11),OB40执行的同时会刷新它的局部变量。OB40_POINT_ADDR的具体含义见下表:

1) 连续计数、单次计数、周期计数模式下
计数器通道 OB40局部变量byte偏移地址 bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0
0 8         计数值与比较值相等 溢出 关闭硬件门 打开硬件门
1 8 计数值与比较值相等 溢出 关闭硬件门 打开硬件门        
2-7 9-11 与Byte8相同
2) 测量模式下
计数器通道 OB40局部变量byte偏移地址 bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0
0 8         超出设定的上下限范围 测量结束 关闭硬件门 打开硬件门
1 8 超出设定的上下限范围 测量结束 关闭硬件门 打开硬件门        
2-7 9-11 与Byte8相同
3) 比例计数模式
计数器通道 OB40局部变量byte偏移地址 bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0
0 8 溢出 计数值与比较值4相等 计数值与比较值3相等 计数值与比较值相2等 计数值与比较值1相等 关闭硬件门 打开硬件门
2-7 9-11 与Byte8相同

 

2. 诊断中断触发OB82,模块故障等亮起。

可以触发诊断中断的条件:

详细诊断信息可参考DS0、DS1。DS0是OB82局部变量的byte8-11,OB82执行时会自动刷新所有的局部变量,DS0的详细含义见下表:

byte bit 含义 原因/处理办法

Event ID

0 0 模块停止工作 有诊断事件发生即置位 8:x:00
1 内部故障 有内部故障发生即置位 8:x:01
2 外部故障 有外部故障发生即置位 8:x:02
3 通道故障 有通道故障发生即置位 8:x:03
6 未组态模块参数 组态模块参数 8:x:06
7 不正确的模块参数 可进一步查询诊断信息(参考“无用户程序时调试模块”),检查组态 8:x:07
1 0-3 种类 数值固定为‘8’  
4-7 通道信息 数值固定为‘1’  
2 3 看门狗错误 模块损坏,或存在强干扰 8:x:33
3 6 硬件中断丢失 检查组态,检测到的硬件中断没有被用户程序或CPU确认 8:x:46

DS1长度是16字节,需要调用FC5(DIAG_RD)将其读到Counter_DB的DBW212中,详细含义参看下表:

byte bit 含义 原因/处理办法 Event ID
4 0-6 通道种类 数值固定为‘70H’  
  7 通道种类 数值固定为‘0’  
5 0-7 诊断信息长度 数值固定为‘8’  
6 0-7 总通道数 数值固定为‘8’  
7 0 通道故障矢量 通道位  
8 4 NAMUR编码器电源故障 NAMUR编码器 8:x:94
  6 NAMUR编码器信号故障 短路或断线 8:x:96
9 4 NAMUR编码器电源故障 NAMUR编码器 8:x:94
  6 NAMUR编码器信号故障 短路或断线 8:x:96
10 4 NAMUR编码器电源故障 NAMUR编码器 8:x:94
  6 NAMUR编码器信号故障 短路或断线 8:x:96
11 4 NAMUR编码器电源故障 NAMUR编码器 8:x:94
  6 NAMUR编码器信号故障 短路或断线 8:x:96
12 4 NAMUR编码器电源故障 NAMUR编码器 8:x:94
  6 NAMUR编码器信号故障 短路或断线 8:x:96
13 4 NAMUR编码器电源故障 NAMUR编码器 8:x:94
  6 NAMUR编码器信号故障 短路或断线 8:x:96
14 4 NAMUR编码器电源故障 NAMUR编码器 8:x:94
  6 NAMUR编码器信号故障 短路或断线 8:x:96
15 4 NAMUR编码器电源故障 NAMUR编码器 8:x:94
  6 NAMUR编码器信号故障 短路或断线 8:x:96

FC5"DIAG_RD"功能块:

名称 行参类型 数据类型 含义
DB_NO 输入 FM350-2模板对应的Counter_DB块编号
RET_VAL 输出 INT SFC51的返回值

OB82中的例程:

L DB1.DBW12 //本例子中Counter_DB是DB1

L #OB82_MDL_ADDR

==I //判断是否是FM350-2模块产生的中断

CALL FC 5

DB_NO :=W#16#1

RET_VAL :=MW4