- {{item.name}}
硬件中断与诊断中断
- 0
- 76
硬件中断与诊断中断
用户要使用中断,必须首先在硬件组态中使能中断,并将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,模块故障等亮起。
可以触发诊断中断的条件:
- 计数器通道错误
- 不正确的组态参数
- 看门狗错误
- 硬件中断丢失
- 信号线检测出NAMUR编码器报告错误
- NAMUR编码器8.2V电源故障
详细诊断信息可参考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
剩余80%未阅读,请登录查看大全章节内容
- 评论
-
分享
扫码分享
- 收藏 收藏
- 点赞 点赞
- 纠错 纠错
{{item.nickName}}