更多内容请点击 R工控人 关注
********************************
如何获取更多经典文章?
关注 R工控人,定期分享实用资料与技术解答!!!
众所周知,任何一种设备在出现故障都应该出现故障信息及故障代码,以便使用者进行故障排除及设备维护。否则,使用者在出现故障时则束手无策,只能等待设备原厂专家来处理,这样不仅不方便使用者,也不会给设备开放商提供远程排故带来便利。
1.库卡故障代码
如上图所为库卡示教器SmartHMI上信息框的截图,全部展开可以显示4条信息,并且每条信息的结构都一样,包含如下内容元素:
信息元素 | 说明 |
信息类型 | 类型包括:确认/状态/提示/等待信息,如图:状态信息 |
时间日期 | 包含信息生成的时间及日期; |
信息代号 | KSS15101表示:第15101条系统信息 |
信息内容 | 信息具体内容 |
如下图为部分KSS信息及代号,比如00001为紧急停止:
2.库卡故障相关的系统变量:
DECL ERROR_T $ERR |
该系统变量$ERR包含所出现的故障的所有信息,它允许依据故障的类型对具体的故障进行处理,该变量为结构体类型,包含以下元素:
$ERR元素 | 数据类型 | 意义 |
.Number | INT | 当前故障的故障ID,比如:1422-值无效 |
.Line_Nr | INT | KRL程序中触发故障的程序行 |
.Module[] | CHAR[24] | 触发故障的KRL主程序名 |
.UP_Name[] | CHAR[24] | 触发故障的KRL子程序名 |
.Interpreter | PROG_INT_E | 触发故障的解释器 |
.Int_typ | INT_TYP_E | 触发故障的中断类型 |
.Int_Prio | INT | 触发故障的中断等级 |
对具体的故障进行处理需要使用指令:On_Error_Proceed
DEF MAIN ()
$Out[1]=FALSE
Interrupt DECL 10 When $Out[1] Do INT_UP($ERR)
Interrupt ON 10
Pulse ($Out[1], False, 0.2)
Wait Sec 10
END
DEF INT_UP (parERR : OUT)
DECL ERROR_T parERR
UP_2 (parErr)
END
DEF UP_2 (myERR : OUT)
DECL ERROR_T pareterERR, locErr
locErr = myErr ?
END
3.库卡故障相关的系统函数及子程序:
函数/子程序 | 说明 |
ERR_CLEAR(Error_T:OUT) | 清除与$ERR相关的过程故障信息 |
ERR_RAISE(Error_T:OUT) | 产生与$ERR相关的过程故障信息 |
INT MBX_REC(INT MBX_ID :IN,STOPMESS MESS:OUT) | 读取信箱里Stopmess |
INT GET_MSGBUFFER(MSGBUF_T MSGBUF[100] :OUT) | 从信息缓存器获取信息 |
BOOL ISMESSAGESET(INT MESSAGENO :IN) | 检查固定故障代码的故障是否位于信息缓存器内 |
其中结构体说明:
(1).Error_T结构如下:
STRUC ERROR_T INT NUMBER, PROG_INT_E INTERPRETER, INT_TYP_E INT_TYPE, INT INT_PRIO, LINE_NR, CHAR MODULE[24], UP_NAME[24], TRIGGER_UP_TYPE TRIGGER_TYPE
(2).Stopmess结构如下:
STRUC STOPMESS INT CONFNO,GRO,MESSNO,STATE,CAUSE_T CAUSE
(3).MsgBuf_T结构:
STRUC MSGBUF_T MSGBUFMSGTYPE_T TYPE, INT NR, CHAR MODUL[24], MSG_TXT[80], KRLMSGPARTYPE_T PAR_TYPE1, CHAR PAR_TXT1[40], KRLMSGPARTYPE_T PAR_TYPE2, CHAR PAR_TXT2[40], KRLMSGPARTYPE_T PAR_TYPE3, CHAR PAR_TXT3[40], INT HANDLE
4.总结:
利用这些较为系统的系统变量以及函数/子程序,用户可以依据故障的类型对具体的故障进行处理,此外,用户也可以将故障ID发送给外部设备(例如:PLC),外部设备收到故障ID,通过索引将故障ID与信息关联,最终显示在外部设备的人机界面上。
********************************
更多内容请点击 R工控人 关注
欢迎大家问题留言,沟通交流
关注 R工控人,定期分享实用资料与技术解答!!!