想知道多更多资料请关注东莞机器人之家公众号。

1)用户自定义的提示信息说明
① 提示信息不在信息缓存器中管理。
② 提示信息只能通过按键 “OK” 或 “ 全部 OK” 删除。
③ 提示信息适用于显示通用信息。
④ 仅仅生成提示信息。可能会检查信息提示是否成功到达。
⑤ 由于对提示信息不进行管理,故可生成约 3 百万条提示信息(所有类型)。
2)用户自定义的提示信息编程
① 将主程序载入编辑器
② 为以下对象声明工作变量:
a .发送人、信息号、信息文本 (自 KrlMsg_T)
b.具有 3 个用于参数的参数的数组 (自 KrlMsgPar_T)
c. 通用信息提示选项 (自 KrlMsgOpt_T)
d. “handle ”(作为 INT)
③ 用所需的值对工作变量进行初始化
④ 给函数调用 Set_KrlMsg(…) 编程
⑤ 需要时分析 “handle”,以确定是否成功生成
⑥ 关闭并保存主程序
3)KUKA 标准函数提示信息方面的编程如下:
DEF SET_MSG0011 ()
DECL KRLMSG_T mymessage
DECL KRLMSGPAR_T Parameter[3]
DECL KRLMSGOPT_T Option
DECL INT handle,counter
counter = 888
handle = 0
mymessage={modul[] "MrXin", Nr 1988, msg_txt[] "My first Message %1"}
Option= {VL_STOP FALSE, Clear_P_Reset TRUE, Clear_P_SAW FALSE, Log_to_DB TRUE}
Parameter[1] = {Par_Type #VALUE}
Parameter[2] = {Par_Type #EMPTY}
Parameter[3] = {Par_Type #EMPTY}
Parameter[1].PAR_INT = counter
handle = Set_KrlMsg(#NOTIFY, mymessage, Parameter[ ], Option)
HALT
END

4)KUKA 标准函数提示信息方面的编程详细讲解如下:
1):定义作者(来源)、编号、内容(关键字)
使用系统预定义结构体 KRLMSG_T
① 本章节中所提到的结构体都是系统预先构建好的,直接声明结构体变量使用即可。
mymessage={modul[] "MrXin", Nr 1988, msg_txt[] "My first Message %1"}
上面红色部分分别为作者、编号、和消息要显示的内容。
编号:由用户自定义,与系统无关,便于用户对信息进行识别。
内容:内容中的%1是通配符(占位符),表示这里要显示的是一个变量。内容作为字符串来显示,要显示变量,不可以直接把变量名字填入到字符串中。如果把变量名 counter 直接填入到字符串中,则系统会显示 My Message counter ,而不是显示 My firstMessage 800。
2) 定义占位符
① 占位符一共有3个,分别是%1、%2、%3。
这一步主要是说明占位符是否有使用。如果使用了,占位符的数值从哪个变量获得。
使用系统预定义结构体 KRLMSGPAR_T
DECL KRLMSGPAR_T Parameter[3]
② 此处必须是长度为3的数组,因为系统默认有三个占位符。
对于占位符%1,上述例子使用了,并且%1的数值来源于叫做counter的INT类型变量,所以
Parameter[1] = {Par_Type #VALUE}
Parameter[1].PAR_INT = counter
其中Parameter[1] 表示%1;#value:表示%1使用了;INT和counter:表示%1从一个叫做counter的整型变量获得数值。
对于第二个占位符%2和第三个占位符%3,例子未使用,所以
Parameter[2] = {Par_Type #EMPTY}
Parameter[3] = {Par_Type #EMPTY}
其中Parameter[2]和Parameter[3]分别表示%2和%3;#EMPTY:表示未使用。因为这两个占位符没有使用,所以也不需要规定他们从哪里获得数值。
3)定义信息生成后的选项
定义信息生成之后的一些操作选项
使用系统预先定义的结构体 KRLMSGOPT_T
DECL KRLMSGOPT_T Option
Option= {VL_STOP FALSE, Clear_P_Reset TRUE, Clear_P_SAW FALSE, Log_to_DB TRUE}
VL_STOP: 生成信息时,是否打断预进指针,true为打断;
Clear_P_Reset:生成信息后,进行程序复位或退出程序操作,这条信息是否删除, true 为删除;
Clear_P_SAW :生成信息后,进行语句行选择操作后,这条信息是否删除, true 为删除;
Log_to_DB:是否将信息记录到数据库中,true 为记录。
4)生成信息
使用系统自带的函数Set_KrlMsg生成信息。
函数有返回值,返回值是信息在缓存中的地址,类型是INT。
int handle
handle = Set_KrlMsg(#NOTIFY, mymessage, Parameter[ ], Option)
其中#NOTIFY表示要生成提示信息。
如果要生成其他类型信息:
#QUIT :确认信息;#STATE:状态信息;#WAITING :等待信息。
往期精彩回顾如下:

