APP下载

工业机器人软按键的开发和应用*

2010-09-11王健强童育华孙纯哲

制造技术与机床 2010年7期
关键词:调用按键菜单

王健强 童育华 孙纯哲

(①合肥工业大学,安徽合肥 230009;②巨一自动化装备有限公司,安徽合肥 230051)

工业机器人软按键的开发和应用*

王健强①②童育华①孙纯哲②

(①合肥工业大学,安徽合肥 230009;②巨一自动化装备有限公司,安徽合肥 230051)

基于KUKA工业机器人的开发软件UserTech,研究了一种创建软按键的方法,应用于白车身机器人自动化焊装线中,并阐述了软按键控制设备的过程。用软按键代替传统的硬件,降低了设备的成本,提高了焊装线整线控制的柔性,节约了现场空间,方便了对设备的维护。

工业机器人 白车身机器人焊装线 UserTech 软按键

随着制造业的高速发展,工业机器人已成为其中不可缺少的核心装备。机器人的应用可大大提高生产设备的自动化水平,从而提高劳动生产率及企业的产品质量,提高企业的整体竞争力。目前,在含有机器人的自动化生产线中,对设备的控制都是采用在现场安装控制柜,并在控制柜上安装各种控制按钮,或者在生产线线体的触摸屏中设定软按键的方法来达到控制目的。这些方法耗费了大量额外的硬件和人力成本,由于位置固定,操作人员操作时不能完全看清楚现场状况,降低了劳动效率,增加了设备维护的难度。本文从KUKA工业机器人开发软件UserTech着手,在机器人示教器上创建软按键,将现场需要控制的信号集中到机器人示教器的软按键上,在机器人程序里定义控制变量,然后将变量与机器人的软按键相对应,实现现场逻辑控制,在实际的生产线中取得了良好效果。

1 KRL语言及软按键创建方法

1.1 KRL语言

KRL[1](KUKA Robot Language)是一种高度开放的语言,为了用户使用方便,并根据机器人应用的不同场合,KUKA机器人公司开发了一些机器人通用的工艺包,例如点焊包、弧焊包、涂胶包等,同时它也集成了用户开发新功能的技术包UserTech。UserTech是一种面向对象的技术包,用户只要使用描述性的KRL语言就能创建新的功能。软按键就是使用这种功能开发的新的应用实例。

在KRL语言中,常用的一些语言格式如下:

(1)程序的定义语句

DEFTP Name...:定义程序的开始。

ENDTP:指定程序的结束。

(2)对象声明语句

DECL STATKEYBAR:定义一组状态按键。

DECL STATKEY:定义一个状态按键。

SET:给一个或一组状态按键分配新的功能。

(3)脚本的定义语句

DEFSCRIPT ...:定义脚本的开始。

ENDSCRIPT:定义脚本的结束。

CASE,

CASE ELSE:在 SWITCH...ENDSWITCH 控制结构中定义一个分支。

DO:执行脚本。

MESSAGE:在机器人示教器的消息框里显示消息。

SETVAR:将一个变量写入系统内部的KRL变量中。

SHOWVAR:读取一个变量。

SWITCH...:指定一个控制结构的开始。

ENDSWITCH:指定一个控制结构的结束。

(4)创建一个新的状态按键

DECL STATKEY Name=

{<TOPTEXT[]String,>

按键顶部文字

<CENTERTEXT[]String,>

按键中心文字

<BOTTOMTEXT[]String,>

按键底部文字

<PICTURE[]String,>

按键图标所在的文件位置

<NEED_MODEOP Int,>

按键使能时机器人所处的操作模式

(5)创建一个新的状态按键组

DECL STATKEYBAR Name=

{<STATKEY[1]Name,>

<STATKEY[2]Name,>

<STATKEY[3]Name,>

<STATKEY[4]Name >}

Name是状态按键的名称

1.2 软按键创建方法

在UserTech技术包中,首先需要创建一个后缀为kfd的文件,以备机器人运行时调用。软按键的定义都是在此文件中,其创建方法如图1。

图1中,“写入菜单”用于将创建的软按键组写入操作界面的菜单中,以便使用其功能时调用。在编写程序时,采用由下至上的模式,首先考虑需要创建的软按键数量,根据其数量定义程序中“状态按键组”的数量;然后在定义的每组状态按键中定义单个“状态按键”,并且给每个按键编写“对应事件”,以赋予相关的功能;最后通过编写“脚本程序”,将软按键显示在操作界面中,并把程序中定义的相关操作信息显示在“消息窗口”中。“用户自定义”用于在程序的开头定义整个程序中所使用的变量。

2 软按键在白车身焊装线中的应用

图2所示为国内某大型汽车厂某车型白车身机器人焊装线的一个点焊工作站,机器人软按键已成功应用于此工作站中。工作站中有4台机器人,整条焊装线实现全自动运行。以图2中的机器人为例,在调试及实际生产过程中需要控制的变量有机器人的启动(START)、停止(STOP)以及错误消息的复位(RESET)。为了节省车间的空间,扩大机器人的工作范围,防止机器人与白车身运动时的碰撞,为机器人设计了气动滑台,因此要控制机器人在滑台上的前进(Go ahead),后退(Go back),以及机器人运动到位后的锁紧和松开(Lock and Unlock)。在焊接过程中,焊枪需要修磨,换电极帽等,因此还要控制焊枪的修磨(TIP DRESS),更换电极帽(CHANGE TIP),更换完成(CHANGE FINISH)等信号。以上信号用软按键来控制大大提高了工作效率,节省了成本。

3 软按键的创建实例剖析

要实现以上信号的控制功能,传统的做法是设计一个控制柜,在控制柜的面板上安装很多按钮,并通过硬线的方式连接到PLC上,通过PLC来控制设备。如图3所示,这种做法增加了成本,降低了生产效率。

本文将通过在图4所示的软按键创建区创建软按键的方法来实现。结合图1所示的创建软按键的流程图,具体创建步骤如下:

(1)在软件平台上创建调用软按键组的菜单

如图4所示的软件平台,要在软按键设置区创建软按键,首先要在软件平台上创建调用软按键组的菜单按键。KUKA机器人程序里专门有用于创建菜单的按键,在机器人配置文件MenueKeyUser中定义调用软按键组的菜单,在SOFTKEYS和MOVE中添加以下内容:

其中:FunctionButton为创建的软按键菜单名称;KREISLER为调用的软按键文件;KREISLER_BAR是在KREISLER文件中创建的软按键组;mDISPSET是一个中间变量;MENU#mTechstatuskeys指定了菜单位于statuskeys子菜单目录下;1说明菜单位于从上到下的第二个位置。其结果Function Button如图5所示。

(2)软按键程序的创建

首先建立菜单中所调用的软按键文件 kreisler.kfd,然后在此文件中编写程序。在定义单个软按键时,都是通过功能和模式的组合来定义的,其过程如图6所示。

通过指定的功能调用每个模式,然后在每个模式中调用每个按键的事件,完成单个软按键的定义。具体过程如下:

根据现场需要控制的量定义功能键的组数。

本例中在每个模式下定义了四个按键,即四组功能键,前三组KEY_FUNCTION用于设置所需的变量。START、Go ahead和TIP DRESS属于第一组功能KEY_FUNCTION1;RESET、Lock and Unlock 和 CHAGE TIP属于第二组功能KEY_FUNCTION2;STOP、Go ahead和CHAGE FINISH属于第三组功能KEY_FUNCTION3。而定义的最后一组功能按键 FUNC1、FUNC2和FUNC3属于KEY_BUTTON_MOD,用于模式的切换功能。

②根据变量的数量定义模式的组数

本例中有9个变量,前面定义了3组功能,因此需要定义3组模式才能满足9个变量。定义START、RESET、STOP和FUNC1为一个START UP模式。图3中所示通过模式和功能找到单个按键,并对其定义,如在START UP模式下。定义START按键方式如下:

③编写按键按下和弹起状态的脚本

每个按键都有按下和弹起的状态,每种状态对应了一个独立事件。因此,需要为每个按键编写按下和弹起事件的脚本。以START按键为例,初始状态为FALSE,当按键被按下事件发生时执行以下脚本:

START按键设置其中间变量名为USER_BUTTON1,以上语句的功能是USER_BUTTON1=TURE,并且USER_BUTTON1与配置文件中定义的按键名称相同。同理,当按键被释放时,执行如下脚本:

即实现USER_BUTTON1=FALSE功能。

其余软按键的创建与此相同。最终所有软按键的结果如图7所示,在机器人示教器中的结果如图8所示。

4 软按键的工作原理

在车间现场操作时,只需要按下相关的按键即可执行相应的动作,实现了软按键的功能。在机器人程序里软按键控制设备的过程如图9。

当人工按下软按键时,所创建的软按键的中间变量由定义的初始状态变成另一种对立状态。如在程序里定义的软按键的默认状态USER_BUTTON=FALSE,按下之后USER_BUTTON=TURE。然后通过SPS文件将中间变量赋值给输出中间变量。如定义的输出中间变量O_BUTTON=USER_BUTTON。机器人程序里含有IO模块,在机器人的配置文件$config中,定义了每个按键信号所对应的输出口。如SIGNAL O_BUTTON$OUT[n],n是机器人的输出口。通过机器人的IO口将输出中间变量状态输出,然后通过现场总线连接到现场PLC,最后到达控制设备。

机器人开机后,SPS[2]程序就在后台自动运行,因此可以实时将中间变量传递给输出中间变量。中间变量、输出中间变量、机器人IO口都在$config配置文件[3]中定义。中间变量的名称与软按键文件中定义的软按键的名称相同,最终实现了软按键控制设备的功能。

5 结语

本文基于KUKA机器人的开发软件UserTech,介绍了机器人软按键开发的语言KRL以及创建软按键的方法。结合机器人在汽车白车身焊装线中的应用,阐述了软按键代替传统硬件接线的优势,并详细介绍了创建软按键的方法以及软按键在实际的生产线中控制设备的过程。软按键的使用为企业节约了成本,节省了生产线现场空间,并且增加了系统的柔性和可靠性。本文提出的这种软按键的创建方法和工程应用案例,经过了实践的考验,可靠性很高,使用效果良好,具有很强的借鉴意义。

[1]KRC2/KR C3 User Tech 2.2 .KUKA Roboter GmbH

[2]KRC2/KR C3 Expert Programming KUKA System Software(KSS)Release 5.1 BETA .KUKA Roboter GmbH

[3]KRC2/KR C3 Configuration KUKA System Software(KSS)Release 5.1 BETA.KUKA Roboter GmbH

如果您想发表对本文的看法,请将文章编号填入读者意见调查表中的相应位置。

Development and Application of Industrial Robot Soft Key

WANG Jianqiang①②,TONG Yuhua①,SUN Chunzhe②
( Hefei University of Technology,Hefei 230009,CHN;②JEE Automation Equipment Co.,Ltd.,Hefei 230051,CHN)

A way of creating soft key has been studied which has been used in BIW(Body In White)robot automation welding line,and the process of controlling the devices by soft key has been expounded based on the KUKA robot software UserTech.Applying the soft key to replace the traditional hardware can reduce the cost of equipments,improve the flexibility of whole welding line,save the plant room and make the maintenance and servicing conveniently.

Industrial Robot;BIW Robot Welding Line;UserTech;Soft Key

TP242.2

A

* 安徽省重大科技攻关项目(项目编号:07010201011)

王健强,男,1964年生,博士,教授,主要研究方向:先进制造技术,智能机器人系统控制等。

p

2009-11-26)

10726

猜你喜欢

调用按键菜单
基于有限状态机的按键检测程序设计
中国新年菜单
核电项目物项调用管理的应用研究
系统虚拟化环境下客户机系统调用信息捕获与分析①
按键消抖在单片机和FPGA实验教学中的应用
本月菜单
一种多方向导光按键结构设计
利用RFC技术实现SAP系统接口通信
一个“公海龟”的求偶菜单
B超机按键的替换与维护