motoman机器人示教编程方法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
机器人示教编程方法
张爱红 张秋菊
江南大学机械工程学院,江苏无锡 214000
摘要:针对工业机器人,本文介绍了不同的示教编程方法并且分析了机器人语言系统的构成,最后阐述了用于MO TOMAN
工业机器人的在线示教编程方法及其虚拟示教编程方法。关键词:机器人;示教;再现中图分类号:TP242 文献标识码:A 文章编号:1001-2265(2003)04-0047-03
Programming method for robot teaching
ZHAN G Aihong ZHAN G Qiuju
Abstract :In this paper ,several different programming methods for robot teaching ,classification and composing about robot lan 2guage system as well as the teaching method used in MO TOMAN industrial robot are described.K ey w ords :robot ;teach ;
play
图1 位姿示教框图
1 引言
用机器人代替人进行作业时,必须预先对机器人发出指示,规定机器人进行应该完成的动作和作业的具体内容。这个过程就称为对机器人的示教或对机器人的编程。对机器人的示教有不同的方法,要想让机器人实现人们所期望的动作,必须赋予机器人各种信息,首先是机器人动作顺序的信息及外部设备的协调信息;其次是与机器人工作时的附加条件信息;再次是机器人的位置和姿态信息。前两个方面很大程度上是与机器人要完成的工作以及相关的工艺要求有关,位置和姿态的示教通常是机器人示教的重点。
2 示教的分类
目前机器人位姿的示教大致有两种方式:直接示教和离线示教,而随着计算机虚拟现实技术的快速发展,出现了虚拟示教编程系统。位姿示教框图见图1。
2.1 直接示教
所谓直接示教,就是指我们通常所说的手把手示教,由人直
接搬动机器人的手臂对机器人进行示教,如示教盒示教或操作杆示教等。在这种示教中,为了示教方便以及获取信息的快捷而准确,操作者可以选择在不同坐标系下示教,例如,可以选择在关节坐标系(Joint Coordinates )、直角坐标系(Rectangular Co 2ordinates )以及工具坐标系(Tool Coordinates )或用户坐标系(Us 2er Coordinates )下进行示教。2.2 离线示教
离线示教与直接示教不同,操作者不对实际作业的机器人直接进行示教,而是脱离实际作业环境生成示教数据,间接地对机器人进行示教。在离线示教法(离线编程)中,通过使用计算
机内存储的机器人模型(CAD 模型),不要求机器人实际产生运动,便能在示教结果的基础上对机器人的运动进行仿真,从而确定示教内容是否恰当及机器人是否按人们期望的方式运动。2.3 虚拟示教编程
直接示教面向作业环境,相对来说比较简单直接、适用于批量生产场合,而离线编程则充分利用计算机图形学的研究成果,建立机器人及其环境物模型,然后利用计算机可视化编程语言Visual C ++(或Visual Basic )进行作业离线规划、仿真,但是它在作业描述上不能简单直接,对使用者来说要求较高。而虚拟示教编程充分利用了上述两种示教方法的优点,也就是借助于虚拟现实系统中的人机交互装置(例如:数据手套、游戏操纵杆、力觉笔杆等)操作计算机屏幕上的虚拟机器人动作,利用应用程序界面记录示教点位姿、动作指令并生成作业文件(3.JBI ),最后下载到机器人控制器后,完成机器人的示教。
3 机器人语言分类及其语言系统的构成
3.1 机器人语言分类
上述示教方法的实现都离不开机器人语言的掌握。目前,人们一般按照作业描述水平的高低将机器人语言分为三类:动作级、对象级和任务级。其中动作级语言是以机器人的运动作为描述中心,由一系列命令组成,一般一个命令对应一个动作,语言简单,易于编程,缺点是不能进行复杂的数学运算。而对象级语言是以描写操作物之间的关系为中心的语言。相比较而言任务级是比较高级的机器人语言,这类语言允许使用者对工作任务要求达到的目标直接下命令,不需要规定机器人所做的每一个动作的细节。只要按某种原则给出最初的环境模型和最终的工作状态,机器人可自动进行推理计算,最后生成机器人的动作。3.2 机器人语言系统的组成
机器人语言系统构成如图2所示。
从模块化的思想考虑,机器人语言系统主要包括以下几种模块:
(1)主控程序模块
●对来自示教盒/面板的请求给予相应的服务。
7
42003年第4期
图2
机器人语言系统构成
图3 MO TOMAN 机器人示教系统的组成
●任务的调度安排。
(2)运动学模块
此模块是机器人运动的关键,包括机器人运动学的正、反解以及路径规划,完成机器人的关节、直线、圆弧插补功能。
(3)外设控制模块
实现对机器人系统有关的外围设备的控制。(4)通信模块
支持主机和示教盒、PLC 及伺服单元的通信。(5)管理模块
提供方便的机器人语言示教环境;支持对示教程序的示教、编辑(插入、删除、拷贝)、装入、存储等操作;完成系统各功能之间的切换。
(6)机器人语言解释器模块对机器人语言的示教程序进行编译、扫描及语言法检查,最后解释执行。
(7)示教模块
利用示教盒来改变操作机末端执行器的位置和姿态。(8)报警模块
对出错信息的处理及响应。
4 机器人指令的功能分析
机器人指令从功能可以概括为如下几种:运动控制功能、环境定义功能、运算功能、程序控制功能、输入、输出功能等。
运动控制功能是其中非常重要的一项功能,机器人运动轨迹的控制方式有两种:CP 控制方式和PTP 控制方式。无论采用哪一种控制方式,目前工业机器人语言大多数以动作顺序为中心,通过使用示教这一功能,省略了作业环境内容的位置姿态的计算。具体而言对机器人运动控制的功能可分为:1)运动速度设定2)轨迹插补方式(分为:关节插补、直线插补以及圆弧插补)3)动作定时4)定位精度的设定以及5)手爪、焊枪等工具的控制等。除此之外还包括工具变换、基本坐标设置和初始值的设置、作业条件的设置等功能,这些功能的实现往往在具体的程序编制中体现。
5 MOT OMAN 工业机器人示教
5.1 在线示教的实现
(1)示教系统的组成
本系统主要由6自由度机械手(SV3X )、机器人控制柜(XRC )、示教盒、上位计算机和输入装置组成。控制柜与机械手、微机、示教盒间均通过电缆连接,输入装置(游戏操纵杆)连接到了微机的并行端口L PT (或声卡接口)上,如图3所示。
(2)示教系统的设置
示教前的系统设置包括:1)零位标定2)特殊点设置3)控
制器时钟设置4)干涉区域设置5)操作原点设置6)工具参数标定7)用户坐标设置8)文件初始化等。限于篇幅,本文只介绍机器人的“零位标定”:首先利用示教盒切换到管理模式(Man 2age Mode )下,按照操作顺序选取[TOP MENU ]、接着选取[ROBO T]菜单的[HOME POSITION ]子菜单,然后将机器人移动到零位,选取所有的轴(ALL ROBO T AXIS ),实现零位标定(注:零位也就是关节脉冲为零的位置,作为以后输入脉冲的基准),其他设置方法与此类似。
(3)示教程序的输入NOP
MOVJ VJ =10.00TIMER T =1.00DOU T O T #(1)ON MOVL P000V =276TIMER T =1.00DOU T O T #(1)ON CALL JOB :TEST END
示教前,需要打开控制器再现面板上的伺服电源、选取示教模式,同时点亮示教盒上的示教锁。登录示教作业名后,系统自动为程序加上两行语句:“NOP ”、“END ”以作为程序的开始和结束标志。按住示教盒背面的三位开关当伺服电源停止闪烁时,在某一坐标系下(可以从关节、直角、工具或用户坐标系中选取)移动机械手至某一位姿后输入示教指令,编辑指令参数,回车,此时系统将记录当前位姿参数,以便回放再现时调用。MO 2TOMAN 机器人采用的编程语言为INFORMII ,属于动作级编
程语言(参见“机器人示教指令程序”
),具有上文介绍的机器人语言指令功能。不同类型的机器人指令仅在指令的具体表述上有差异。MOVJ 、MOVL 描述了回放时的轨迹插补方式:前者指关节插补、后者指直线插补。TIMER 描述了定时时间,通过调用“DOU T O T #(1)ON/OFF ”实现工具的开关,CALL 语句则
8
4 组合机床与自动化加工技术