工业机器人分析
课程内容
内容:
机器人基本知识
工业机器人工作原理
弧焊机器人离线编程及标定技术
机器人焊接系统的组成及特点
主要参考教材:
林尚扬等,《焊接机器人及其应用》 机械工业出版社, 2000年7月
吴林等,《智能化焊接技术》国防工业出版社,2000年8月
陈善本等,《焊接过程现代控制技术》 哈工大出版社, 2001年5月
机器人焊接的特点
早期的焊接自动化程度低,基本是手工操作,产品质量不稳定,甚至出现某个产品只能由某个人或某几个人完成的情况,出现了“王麻子菜刀”、“张小泉剪刀”、“张氏陀螺”。
手工操作受操作人员情绪等个人状态的影响,产品质量不稳定。所以现代企业要尽量摆脱这种对专门人员的依赖,采用自动化的机器设备来保证产品质量及效率。
20世纪70年代:工业机器人技术被应用到焊接领域,焊接自动化程度发生了质的飞跃,焊接质量及效率得到显著提高。
机器人焊接的特点
根据对产品的适应能力,焊接自动化系统可以分为:
“刚性”自动化系统,也称专机,主要针对大批量定型产品,特点为成本低、效率高,但适应的产品单一。一旦产品换型,生产线就要更换。
“柔性”自动化系统,主要指通过编程可改变操作的机器,产品换型时,只需通过改变相应程序,便可适应新产品。机器人属于典型的具有柔性的设备。
随着市场经济的快速发展,企业的产品从单一品种大批量生产变为多品种小批量,要求生产线具有更大的柔性。所以焊接机器人在生产中的应用越来越广泛,机器人焊接已成为焊接自动化的发展趋势。
机器人焊接的特点
采用机器人焊接,具有如下优点:
易于实现焊接产品质量的稳定和提高,保证其均一性;
提高生产率,一天可24小时连续生产,机器人不会疲倦;
改善工人劳动条件,可在有害环境下长期工作;
降低对工人操作技术难度的要求;
缩短产品改型换代的准备周期,减少相应的设备投资;
可实现小批量产品焊接自动化;
可作为数字化制造的一个环节。
第一章 机器人工作原理
第一节 机器人基本知识
第二节 机器人工作原理
第一节 机器人基本知识
一 机器人的概念
二 机器人的发展及现状
三 机器人的分类
四 工业机器人常用术语
一、机器人的概念
“Robot”的来源
1920年,捷克作家Karel Capek的科幻剧《Rossum‘s Universal Robots》(罗萨姆的万能机器人),剧中描写了一批能从事各项劳动、听命于人的机器,取名为“Robota”(捷克语),含义为:forced worker (奴隶)。
英语:Robot
德语:Robot
日语:ロボツト
俄语:робот
汉字:机器人
Karel Capek (1890-1938)
一、机器人的概念
机器人的定义:国际上对机器人的定义很多
The Webster dictionary (Webster, 1993) : “An automatic device that performs functions normally ascribed to humans or a machine in the form of a human.” 一个自动化设备,它能执行通常由人执行的任务;或一个人型的机器
美国机器人学会(The Robot Institute of America,1979) : “A reprogrammable, multifunctional manipulator designed to move materials, parts, tools, or specialized devices through various programmed motions for the performance of a variety of tasks.” 一个可再编程的多功能操作器,用来移动材料、零部件、工具等;或一个通过编程用于完成各种任务的专用设备。
ISO,1987: 工业机器人是一种具有自动控制的操作和移动功能,能完成各种作业的可编程操作机。
二、工业机器人的发展及现状
1954年,美国人 和设计了一台可编程的机器人
1961年,他们生产了世界上第一台工业机器人“Unimates”,并获得了专利
1962年,Engleberger 成立了Unimation公司,他被称为“机器人之父”
日本从上世纪70年代中后期开始开发工业机器人,15年后就成为产量最多、应用最广的世界工业机器人“王国”。
Unimates 机器人
二、工业机器人的发展及现状
2000年,统计数据表明,全世界工业机器人总量为757,000台,其中
日本,402,200台
美国, 92,900台
德国, 81,200台
新加坡,5,300台
台湾, 6,400台
这些机器人中45%为焊接机器人(点焊、弧焊)
我国大陆地区工业机器人用户700多家,拥有工业机器人约3500台,其中焊接机器人约1000台,与国外的差距是明显的。
值得欣喜的是,我国机器人应用发展较快,1996年我国焊接机器人仅为500台,目前以每年30%以上的速度增长。
二、工业机器人的发展及现状
主要机器人厂家
日本:Motoman、OTC、Panasonic、FANUC等
美国:Adept等
欧洲:奥地利IGM、德国CLOOS、KUKA、瑞典ABB
韩国:HYUNDAI
沈阳新松
FANUC
三、机器人的分类
机器人分类方法很多
按照技术水平划分:
第一代:示教再现型,具有记忆能力。目前,绝大部分应用中的工业机器人均属于这一类。缺点是操作人员的水平影响工作质量。
第二代:初步智能机器人,对外界有反馈能力。部分已经应用到生产中。
第三代:智能机器人,具有高度的适应性,有自行学习、推理、决策等功能,处在研究阶段。
三、机器人的分类
按照基本结构划分:
直角坐标型, 也称“机床型”
圆柱坐标型
球坐标型
全关节型
三、机器人的分类
按照受控运动方式划分:
点位控制(PTP)型,Point to Point, 如点焊、搬运机器人
连续轨迹控制(CP)型,Continous Path,如弧焊、喷漆机器人
按驱动方式划分:
气压驱动(压缩空气)
液压驱动(重型机器人,如搬运、点焊机器人)
电驱动(电动机),应用最多
三、机器人的分类
按照应用领域划分:
工业机器人,面向工业领域的多关节机械手或多自由度机器人。
特种机器人,用于非制造业的各种机器人,服务机器人、水下机器人、农业机器人、军用机器人等
三、机器人的分类
华宇I型弧焊机器人
三、机器人的分类
弧焊机器人 点焊机器人
三、机器人的分类
伐根机器人 摘果机器人
三、机器人的分类
擦玻璃机器人 无人潜水器
三、机器人的分类
排爆机器人 外科手术机器人
三、机器人的分类
双足仿人机器人 球机器人
三、工业机器人常用术语
自由度(degree of freedom, DOF ),物体能够对坐标系进行独立运动的数目称为自由度,对于自由刚体,具有6个自由度。通常作为机器人的技术指标,反映机器人灵活性,对于焊接机器人一般具有5-6个自由度
位姿(Pose),指工具的位置和姿态。
末端操作器(End Effector), 位于机器人腕部末端,直接执行工作要求的装置,如夹持器、焊枪、焊钳等
额定负载(Payload),也称为持重
弧焊机器人:5~20kg
点焊机器人:50~200kg
三、工业机器人常用术语
工作空间(Working Space),机器人工作时,其腕轴交点能在空间活动的范围。
重复位姿精度(Pose Repeatability),在同一条件下,重复N次所测得的位姿一致程度。
轨迹重复精度(Path Repeatability),沿同一轨迹跟随N次,所测得的轨迹之间的一致程度
第二章 机器人运动学分析
第一节 位置和姿态的表示
第二节 坐标变换
第三节 机器人连杆参数及连杆坐标系
第四节 连杆坐标变换及运动学方程
第五节 运动学逆问题的相关问题
机器人运动学的研究内容
一般可以将机器人看作是一个开链式多连杆机构,始端连杆就是机器人的机座,末端连杆与工具相连,相邻连杆之间用一个关节连接在一起。
机器人运动学包括两方面问题:
运动学正问题:已知各关节角值,求工具在空间的位置和姿态。实际上,这是建立运动学方程的过程。
运动学逆问题:已知工具的位姿,求各关节角值,这是求解运动学方程的问题。
第一节 位置和方位的表示
为了描述机器人本身各连杆之间、机器人和环境之间的运动关系,通常将它们看作刚体。
刚体的位置和姿态描述
在直角坐标系{A}中,任意一点P的位置可以用3×1列向量表示。称为位置矢量
第一节 位置和方位的表示
为了确定刚体B的姿态(也称方位),设一个坐标系{B}与该刚体固接。用坐标系的三个单位主矢量xB, yB,zB相对于参考坐标系{A}的方向余弦组成的3×3矩阵表示刚体B相对于坐标系{A}的姿态。
称为旋转矩阵,也可表示成:
旋转矩阵是正交的。
第一节 位置和方位的表示
按照上述定义,绕 x 轴旋转了θ 角的旋转矩阵,为
同样也可以写出R(y,θ),R(z,θ)
总之,用位置矢量描述刚体的位置,用旋转矩阵描述刚体的姿态(方位)
第一节 位置和方位的表示
为了完全描述刚体B在空间的位置和姿态,通常将刚体B与某一坐标系相固接,通常记为{B},{B}的原点一般选在刚体B的特征点上,如质心或对称中心等。对弧焊机器人中的焊枪可以将原点选在焊枪电极端部。
则相对于参考坐标系{A},用位置矢量ApB0和旋转矩阵 分别描述{B}原点位置及坐标系的方位,即刚体B的位置和姿态可由坐标系{B}来描述:
当表示位置时,旋转矩阵为单位阵;
当表示姿态时,位置矢量等于零。
第二节 坐标变换
1、坐标平移
坐标系{B}与{A}具有相同的方位,但{B}的原点与{A}的原点不重合,则空间任意点P在{A}中的描述可以表示为:
称为坐标平移方程
第二节 坐标变换
2、坐标旋转
坐标系{B}与{A}原点重合,但两者的方位不同,则空间任意点P在{A}中的描述可以表示为:
称为坐标旋转方程
3、一般变换
坐标系{B}与{A}既不共原点,方位亦不同,此时,
第二节 坐标变换
4、齐次坐标变换
用4×1列向量表示三维空间坐标系中的点:
称为齐次坐标,齐次坐标具有不唯一性。引入齐次坐标后,一般变换变为:
第二节 坐标变换
称为齐次变换矩阵
第二节 坐标变换
举例:如果
xB与yA同向;yB与zA同向;zB与xA同向。
则,
第三节 机器人连杆参数及连杆坐标系
对于一个6自由度机器人,有6个连杆和6个关节组成。编号时,机座称为连杆0,不包含在这6个连杆内,连杆1与机座由关节1相连,连杆2通过关节2与连杆1相连,依此类推。
关节1
关节2
关节3
关节4
关节5
关节6
连杆0
连杆1
连杆2
连杆3
连杆4
连杆5
连杆6
如前所述,可以将机器人看作是一个开链式多连杆机构,始端连杆就是机器人的机座,末端连杆与工具相连,相邻连杆之间用一个关节连接在一起。
第三节 机器人连杆参数及连杆坐标系
1、连杆参数
(1)连杆长度ai-1
连杆两端轴线间的距离
连杆i-1
轴i-1
轴i
(2)连杆扭角
连杆两端轴线间的夹角,方向为从 i-1轴到 i 轴
第三节 机器人连杆参数及连杆坐标系
2、连杆连接参数
(1)连杆之间的距离di
ai , ai-1 之间的距离
(2)关节角
ai , ai-1 之间的夹角,方向为从 ai-1 到 ai
连杆i-1
轴i-1
轴i
连杆i
第三节 机器人连杆参数及连杆坐标系
以上定义为一般情况,对运动链的两端,有一些习惯约定:
如果关节1为转动关节,则1是可变的,习惯上约定d1=0
如果关节1为移动关节,则d1是可变的,习惯上约定1 =0
这些约定同样适用于关节n
所以,每个连杆可以由四个参数 来描述,其中
描述的为连杆i-1本身的性质, 描述的为连杆i-1 和连杆i之间的关系。
当机器人的连杆链制作完成后,如果为转动关节,i 为变量,若为移动关节,则di 为变量,其余参数为常量。所以对于一个6自由度机器人,用18个参数描述其固定部分,用6个关节变量描述其变动部分,这种描述方法成为D-H法。(Denavit 和 Hartenberg提出的)
第三节 机器人连杆参数及连杆坐标系
3、连杆坐标系
为了确定各连杆之间的相对运动关系,在各连杆上分别建立一个坐标系。与机座固接的坐标系记为{0},与连杆 i 固接的坐标系记为{i}
坐标系{i-1}的建立过程:
zi-1与轴i-1重合,一般指向关节i-1
xi-1与ai-1重合,指向关节i
yi-1按右手法则确定,yi-1=zi-1×xi-1
原点取在轴i-1与ai-1交点上
连杆i-1
轴i-1
轴i
连杆i
第三节 机器人连杆参数及连杆坐标系
对于基坐标系{0},一般约定当关节1变量为零时,{0}与{1}重合
对于末端连杆坐标系{n},也约定,当关节n-1为零时,{n}与{n-1}重合
连杆参数在坐标系中的含义:
连杆i-1
轴i-1
轴i
连杆i
第四节 连杆坐标变换及运动学方程
在各连杆上建立坐标系之后,可以进行连杆坐标系之间的变换。{i}到{i-1}的变换矩阵用 表示。
根据连杆坐标系的定义, {i}到{i-1}的变换如下:
先假设{i}与{i-1}重合
得到坐标系{i}
第四节 连杆坐标变换及运动学方程
这就是连杆坐标系之间的转换矩阵,机器人制作完成后,每个关节只有一个变量,
对于转动关节
对于移动关节
第四节 连杆坐标变换及运动学方程
将个连杆变换矩阵相乘,可得
这就是机器人的运动学方程,描述的是末端连杆(工具)相对于基坐标系之间的变换矩阵与关节变量的之间的关系。
如果通过传感器获得各关节变量的值,就可以确定机器人末端连杆上工具的位置和姿态。这样就解决了机器人的正运动学问题。
第五节 运动学逆问题的相关问题
运动学方程
对于机器人运动学逆问题,即已知末端位姿,求各关节变量值,也就是已知 求 (求运动学方程的根)
在运动学方程两端左乘 ,对于6自由度机器人,有
求解时,一般不是联立求解12个方程,而是找出方程右端的常数项,令其与左端相应项相等,即找出仅含有θ1 的方程,求出θ1
将θ1 代入上面方程中,利用同样方法,可以依次求出θ2θ3θ4 θ5θ6
求解时,需要直觉观察与经验,也可以采用数值解法(复杂)。
第五节 运动学逆问题的相关问题
1、解的存在性和工作空间
指机器人能否到达所指定的位姿。
例如,对于平面2R机械手,可直观地写出其运动学方程
运动学逆问题:
第五节 运动学逆问题的相关问题
p点在圆环内有解
通常将解存在的区域称为机器人的工作空间。分为2类:
灵活工作空间,工具能以任意姿态到达的目标点集合;
可达工作空间,机器人工具至少能以一个姿态到达的目标点集合。
对于本例,灵活工作空间只有一个点。
如果末端再增加一个转动关节,则灵活空间会变大。即自由度增多,机器人变灵活。
第五节 运动学逆问题的相关问题
2、解的唯一性和最优解
随着自由度的增多,运动学方程的解越多,即达到空间某一位姿,各关节变量可以有多种不同的组合。如3R机械手当前的位姿,有两组解。
对于6自由度机器人,解的数量最多可达16个。
右图为PUMA560机器人,工具在当前位姿条件下,具有8组解。
第五节 运动学逆问题的相关问题
如何选取?
避免碰撞;
最短行程;
多动小关节,少动大关节;
机器人动力学:运动与受力之间的关系
正问题:根据关节驱动力矩,计算操作臂的运动(位移、速度、加速度);
逆问题:已知机器人运动轨迹对应的位移、速度、加速度,求所需每个关节的驱动力矩;
第三章 机器人驱动与控制技术
第一节 驱动电机
第二节 位置控制
第一节 驱动电机
电动机是机器人驱动系统中的执行元件。
常采用的电动机为:
步进电机
直流伺服电机
交流伺服电机
第一节 驱动电机
步进电机
经常应用于开环控制系统,特点为具有较大的低速转矩,可不配减速器,直接驱动。主要分为三类:
永磁式步进电动机:转子由磁性材料制成,具有低力矩、低速度、低成本的特点。一般用于计算机外围设备(打印机、光驱等)
变磁阻式步进电动机:没有磁性材料,不通电时,没有保持力矩,也称感应式步进电机
混合式步进电动机:上述原理的结合,是目前应用越来越广的一种。
第一节 驱动电机
直流伺服电机
20世纪80年代中期以前被广泛使用,优点为易于控制,缺点是需要定期维护,速度不能太高,功率不能太大。
定子磁场是永磁铁提供的,线圈中通入电流,产生转矩,转一个角度后,需要换向器改变电流方向。受换向器(电刷)影响,需要定期维护,且速度不能太高。由于线圈绕在转子上,散热问题不易解决,功率不能太大。
第一节 驱动电机
交流伺服电动机
转子是永磁的,线圈绕在定子上,没有电刷。线圈中通交变电流。转子上装有码盘传感器,检测转子所处的位置,根据转子的位置,控制通电方向。
由于线圈绕在定子上,可以通过外壳散热,可做成大功率电机。没有电刷,免维护。是目前在机器人上应用最多的电动机。
第一节 驱动电机
和步进电机相比,伺服电机有以下几点优势: 1、实现了位置,速度和力矩的闭环控制;克服了步进电机失步的问题; 2、高速性能好,一般额定转速能达到2000~3000转; 3、抗过载能力强,能承受三倍于额定转矩的负载,对有瞬间负载波动和要求快速起动的场合特别适用; 4、低速运行平稳,低速运行时不会产生类似于步进电机的步进运行现象。
5、电机加减速的动态相应时间短,一般在几十毫秒之内;
6、发热和噪音明显降低。
第一节 驱动电机
减速机
目前,机器人普遍采用交流伺服电机驱动,为了提高控制精度,增大驱动力矩,一般均需配置减速机。通常配备RV减速机(精度高、刚性好)
第二节 位置控制
机器人是由多轴(关节)组成,每轴的运动都影响机器人未端的位置和姿态。如何协调各轴的运动,使机器人未端完成要求的轨迹, 是需要解决的问题。
由于绝大多数机器人是关节式运动形式,很难直接检测机器人未端的运动,只能对各关节进行控制。属于半闭环系统,即仅从电动机轴上闭环。
位置控制器
功率放大
光电码盘
给定位置
M
位置反馈
速度反馈
电流反馈
第二节 位置控制
目前机器人基本操作方式为示教再现,示教时,不能将轨迹上的所有点都示教一遍,一是费时,二是占用大量的存储器。
实际上,对于有规律的轨迹,仅示教几个特征点。对直线轨迹,仅示教两个端点;对圆弧轨迹,示教三点(起点、终点、中间点),轨迹上其它中间点的坐标通过插补方法获得。
逆运动学
关节位置控制
轨迹的示教点位姿
反馈
插补算法
中间
位姿
关节
电机1
上位计算机
伺服控制器
关节位置控制
反馈
关节
电机2
第二节 位置控制
插补方式:
定时插补 每隔一定时间插补一次,插补时间间隔Ts一般不超过25ms
定距插补 每隔一定距离插补一次,可避免快速运动时,定时插补造成的轨迹失真。但也受伺服周期限制。
插补算法:
直线插补 将两示教点之间按照直线规律计算中间点坐标。
圆弧插补
按圆弧规律计算中间点。
第二节 位置控制
直线插补
设机器人末端要从Po运动到Pe,运动速度v,插补时间间隔Ts
直线长度:
插补间隔内的行程:d=vTs
插补的总步数:N=int( L/d ) + 1
各方向上的增量:
各插补点的坐标:
第二节 位置控制
圆弧插补
空间不共线三点P1,P2,P3构成一段圆弧。
首先进行坐标变换,把空间圆弧变换为平面圆弧。
原点与圆弧的圆心重合,Z轴为外法线方向。
如果ZR与Z0夹角为α ,XR与X0夹角为θ
OR在基坐标系中的坐标为(x0,y0,z0)
第二节 位置控制
对于平面圆弧:
半径R
总的圆心角φ
Ts时间内的角位移Δ θ=TsV/R
插补步数:N= φ/Δ θ+1
小结:1、将示教点坐标转换为{R}坐标值
2、按平面圆弧插补算法,得到插补点坐标(xR,yR)
3、转换到基坐标系中
第四章 弧焊机器人编程技术
第一节 机器人的编程基础
第二节 弧焊机器人离线编程技术
第一节 机器人的编程基础
通过前面的知识,我们知道,机器人是一个软件可控的机电装置,可通过编程定义其作业内容。
目前,对机器人编程的方式可以分为以下三种:
示教编程
机器人语言编程
离线编程
第一节 机器人的编程基础
1、示教编程
示教编程是目前工业机器人广泛使用的编程方法,根据任务的需要,将机器人末端工具移动到所需的位置及姿态,然后把每一个位姿连同运行速度、焊接参数等记录并存储下来,机器人便可以按照示教的位姿再现。
示教方式有两种:
手把手示教
示教盒示教
第一节 机器人的编程基础
示教盒
控制器
现场
示教编程的优点:
不需要预备知识和复杂的计算机装置,方法简单、易于掌握。
示教编程的缺点:
占用生产时间,难于适应小批量、多品种的柔性生产需要;
编程人员工作环境差、强度大,一旦失误,会造成人员伤亡或设备损坏;
编程效率低。
第一节 机器人的编程基础
2、机器人语言
机器人语言提供了一种通用的人与机器人之间的通讯手段。它是一种专用语言,用符号描述机器人的运动,与常用的计算机编程语言相似。
1973年,Stanford人工智能实验室开发了第一种机器人语言-WAVE语言。
1974年,该实验室开发了AL语言
1979年,Unimation公司开发了VAL语言(类似于BASIC)
1984年,该公司推出了VAL II语言
其他的机器人语言:IBM公司的AML语言及AUTOPASS语言、MIT的LAMA语言、Automatix公司的RAIL语言等。
第一节 机器人的编程基础
根据作业描述水平的高低,机器人语言通常分为三级:
动作级:
每一个指令对应于一个动作,如 MOVE TO < destination >,优点为:语句简洁,易于编程,缺点为:不能进行复杂的运算,不能接受传感器信息。VAL属于动作级。
对象级:
是描述操作物体间关系使机器人动作的语言。具有运动控制(与动作级语言类似的功能)、处理传感信息、通信和数字运算、良好的扩展性(用户可根据需要增加指令)等特点。AML、AUTOPASS属于对象级。
任务级:
是比较高级的机器人语言,允许操作人员下达直接命令,不必规定机器人的动作细节。如:焊接工件A,需要非常高的智能,目前还没有真正的任务级语言。
第一节 机器人的编程基础
. EDIT DEMO
. PROGRAM DEMO
? OPEN
? APPRO PICK 50
? SPEED 30
? MOVE PICK
? CLOSEI
? DEPART 70
? APPROS PLACE 75
? SPEED 20
? MOVES PLACE
? OPENI
? DEPART 50
? E
启动编辑状态
VAL 响应
下一步手张开
运动至距PICK位置50mm处
下一步降至30%满速
运动到PICK位置
闭合手
后退70mm
运动至距PLACE位置75mm处
下一步降至20%满速
运动至PLACE位置
在下一步之前手张开
后退50mm
退出编辑状态
VAL程序举例:将物体从位置1(PICK)搬运到位置2(PLACE)
第一节 机器人的编程基础
0000 NOP
0001 MOVJ VJ=
0002 MOVL V=800
0003 ARCON ASF#(1)
0004 MOVL V=100
0005 ARCOF
0006 END
空操作
以10%关节速度移动到焊缝起点附近一点
以800mm/min速度移动到焊缝起点
按照文件ASF#(1)的参数起弧
按照100mm/min的焊接速度焊接
熄弧
结束
MOTOMAN XRC控制器语言:焊接一段直线焊缝
第一节 机器人的编程基础
3、离线编程
在计算机中建立设备、环境及工件的三维模型,在这样一个虚拟的环境中对机器人进行编程。
机器人离线编程(Off Line Programming,OLP)系统是机器人语言编程的拓展,它充分利用了计算机图形学的成果,建立机器人及其工作环境的模型,再利用一些规划算法,通过对图形的控制和操作在离线的情况下进行编程。
OLP
控制器
现场
第一节 机器人的编程基础
离线编程的优点
减少机器人不工作时间
改善了编程环境;使编程者远离危险的工作环境
提高了编程效率与质量;可使用高级语言对复杂任务编程
便于和CAD系统集成, 实现CAD/CAM/Robotics一体化。
示教编程
离线编程
需要实际机器人系统和工作环境
编程时机器人停止工作
在实际系统上试验程序
编程的质量取决于编程者的经验
很难实现复杂的机器人轨迹路径
需要机器人系统和工作环境的图形模型
编程不影响机器人工作
通过仿真试验程序
用规划技术可进行最佳参数及路径规划
可实现复杂运动轨迹的编程
第二节 弧焊机器人离线编程技术
1、发展与现状
2、机器人离线编程原理
3、执行级弧焊机器人离线编程系统
4、任务级弧焊机器人离线编程系统
第二节 弧焊机器人离线编程技术
如前所述,机器人离线编程是在一个虚拟的环境中对机器人进行编程。在计算机内建立机器人及其工作环境的模型,再利用一些规划算法,通过对图形的控制和操作在离线的情况下进行编程。
1、发展与现状
国外机器人离线编程的研究起步较早,从70年代开始进行这方面的研究工作。自80年代以来,由于机器人离线编程软件是机器人应用与研究不可缺少的工具,美国、英国、法国、德国、日本等许多大学实验室、研究所、制造公司对机器人离线编程与仿真技术进行了大的研究,并开发出原型系统和应用系统。这些软件有些已经商品化,对机器人技术发展以及在各行业的推广应用发挥了巨大的作用。
第二节 弧焊机器人离线编程技术
国外主要离线编程系统
第二节 弧焊机器人离线编程技术
PLACE(Position Layout and Cell Evaluator)是由美国McAuto公司开发的机器人软件的模块之一。该软件还包括BUILD、COMMAND和ADJUST模块。该软件是早期比较著名的的软件之一,用于设计、评价机器人制造单元和机器人离线编程。
第二节 弧焊机器人离线编程技术
ROBCAD是Tecnomatix公司八十年代推出的、运行在SGI工作站、UNIX操作系统下的大型机器人设计、仿真和离线编程系统。该软件由六大模块组成:机械设计、建模模块(Mechanical Modeling)、工作单元布置模块(Workcell Layout)、任务描述模块(Task Description)、仿真模块(Simulation)、机械制图模块(Drafting)和数据管理模块(Data Management)。机械设计、建模模块主要完成机器人及环境的几何建模、运动机构如机器人、设备的运动学建模,并具有数据查询、文件管理等功能。
Workspace是Robot Simulations公司开发的第一个商品化的基于微机的机器人仿真与离线编程软件。该软件采用了ACIS作为建模核心,与一些基于微机的CAD系统如AutoCAD做到了很好的数据交换。
第二节 弧焊机器人离线编程技术
IGRIP,美国Deneb公司产品,卓越的图形功能,不仅可运行在SGI、HP等工作站上,也可运行在高档PC机上。
第二节 弧焊机器人离线编程技术
装甲车壳体焊接自动化系统仿真
第二节 弧焊机器人离线编程技术
国内机器人离线编程技术研究情况
第二节 弧焊机器人离线编程技术
机器人离线编程技术是以CAD和图形仿真为基础的技术。因其显著优点,引起国内外的诸多研究与开发,并出现了一些专业公司,推动了离线编程技术的实用化。与国外相比,我国的机器人离线编程技术还有很大的差距,主要体现在以下几点:
几何建模:国外商品化系统的几何建模功能比较强,且与其他外部CAD系统具有数据交换接口。国内自主开发的系统由于投入小, 功能较弱, 缺少与外部CAD系统的数据交换接口。
专业化:国外系统除提供通用性的功能之外,为了提高编程效率,往往在通用系统之上开发专业化的模块,如IGRIP中的点焊、弧焊等。而国内的通用系统则无专业化模块。
标定:国外系统大多将标定作为主要模块之一,而国内还缺少这方面的研究。
机器人程序下载:国外商品化系统都有多种机器人的接口,可以方便地上下载这些机器人的程序。而国内系统还主要停留在仿真阶段,缺少与实际机器人的接口,很少有关于机器人程序下载与执行的报道。
第二节 弧焊机器人离线编程技术
2、机器人离线编程原理
如前所述,机器人离线编程是在一个虚拟的环境中对机器人进行编程。在计算机内建立机器人及其工作环境的模型,再利用一些规划算法,通过对图形的控制和操作在离线的情况下进行编程。
一般离线编程系统主要包括:
用户接口
机器人及环境的建模
运动学计算
轨迹规划
动力学仿真
并行操作
传感器仿真
通信接口
误差校正
第二节 弧焊机器人离线编程技术
用户接口:一般工业机器人提供两个用户接口:一个用于示教编程,另一个用于语言编程。作为机器人语言的拓展,离线编程系统把机器人语言作为用户接口的一部分,另外用户接口的一个重要部分,是对机器人系统进行图形编辑,一般设计成交互式,可利用鼠标操作机器人的运动。
机器人及环境的建模:这是离线编程的前提,必须构建机器人、夹具、零件和工具的三维几何模型,最好直接采用零件和工具的CAD模型。所以离线编程系统应包括CAD建模子系统,可以集成到CAD平台上。若为独立系统,应具备与外部CAD文件的转换接口。
运动学计算:离线编程系统需要进行图形仿真、碰撞检测等任务,需要进行运动学计算,包括正运动学及逆运动学计算。要求与机器人控制器采用一致的逆运动学算法,或直接提供直角坐标给机器人控制器,由控制器进行逆运动学计算。
第二节 弧焊机器人离线编程技术
轨迹规划:离线编程系统除了对机器人静态位置进行运动学计算外,还应该对机器人在工作空间的运动轨迹进行仿真。由于不同机器人厂家所采用的轨迹规划算法差别很大,离线编程系统应对机器人控制器中所采用的算法进行仿真。轨迹规划模块根据起点、终点位置及约束条件,输出中间点位姿、速度、加速度的时间序列。还应该具备可达空间计算及碰撞检测等功能。
动力学仿真:如果机器人工作在高速及重负载的情况下,必须考虑动力学特性,以防止产生比较大的误差。
第二节 弧焊机器人离线编程技术
并行操作:有些场合常涉及到两个或多个机器人同时完成一个作业,有时,既使一个机器人工作,也常需要和变位机、传送带等系统配合。因此,离线编程系统应能对多个设备进行同时仿真。可以采用多处理器技术,通常采用单处理器分时操作(多任务系统)。
第二节 弧焊机器人离线编程技术
传感器仿真:在实际机器人系统中,可能装有各种传感器。在离线编程系统中,对这些传感器进行建模并仿真是很重要的。传感器主要分局部的和全局的两类,局部传感器有力觉、触觉和接近觉传感器。
触觉阵列的几何模型分解成一些小块,检查每个几何块与物体间的干涉,确定接触情况。
接近觉传感器也可利用几何模型件的干涉检查来仿真,将长方体分成许多小块,与物体相交的块数可以表示接近的程度。
利用相交部分的体积可以仿真力觉传感器。
第二节 弧焊机器人离线编程技术
通信接口:连接离线编程系统与机器人控制器。利用通信接口可以把仿真系统所生成的机器人运动程序转换成机器人控制器可以接受的的代码。由于不同厂家生产的机器人所用的语言系统不同,是离线编程系统的通信接口的通用性受到限制。
误差的校正:离线编程系统中的仿真模型与实际机器人模型存在误差,需要对这些误差进行校正。
误差源:机器人连杆制造误差、传动间隙、机器人刚度不足、相同型号机器人的不一致性、控制器的数字精度、温度等外部环境的影响
可增加标定模块及传感器补偿
第二节 弧焊机器人离线编程技术
关节级(Joint Level)
例如: 将关节4向正方向移动30度
执行级(Manipulator Level)
例如:将焊枪沿X轴反方向移动100毫米
对象级(Object Level)
例如:将焊缝5变换到15度上坡焊位置
任务级(Task Level )
例如:焊接焊缝3
弧焊机器人离线编程系统的分类
第二节 弧焊机器人离线编程技术
3、执行级弧焊机器人离线编程系统
开发方式:在高性能PC机和AutoCAD2000平台上,运用其开发工具 ——ObjectARX进行二次开发。
总体结构:
ARX
程序
建模
模块
运动
仿真
路径
模块
编程
模块
图形
示教
程序
转换
碰撞
检测
标定
模块
AutoCAD 2000
用户界面
动画
生成
程序
上载
第二节 弧焊机器人离线编程技术
建模模块:
离线编程系统中的建模模块要完成以下几个方面的任务:
部件建模;
设备建模;
工作单元设计和布置。
工作单元由机器人设备和变位机设备以及环境物组成,而设备又由不同数目的部件组成,部件和部件之间由各种关节联接或直接连接。
第二节 弧焊机器人离线编程技术
建立的工作单元实例
部件装配成设备的流程图
第二节 弧焊机器人离线编程技术
路径模块:
首先引入标签点(Tag Point)的概念。在离线编程系统中,标签点是一个以笛卡尔坐标系图形为基础的对象,其图形表征了机器人运动中的工具坐标系的位姿,其内部还可记录着该点的焊接工艺参数。标签点图形是由三个互相垂直的一定长度直线、标签点名称以及X、Y、Z字符组成,不随用户观察视点变化,便于用户观察与利用。
路径(Path)是一系列标签点的集合。路径分为普通路径和焊接路径,普通路径只记录机器人运动过程,而在焊接路径中,标签点还要记录其性质如起弧点、熄弧点等,以及焊接参数。一条路径必须属于某个部件。
第二节 弧焊机器人离线编程技术
路径功能是离线编程的一大特点,使得机器人工具的运动过程能可视的记录下来,以便于用户的编辑,也可保存相应位置点的工艺参数。用户可以利用提供的命令对单个标签点或整条路径进行修改,从而改变机器人工具的运动过程或焊接参数,这要比示教编程的方便得多。由于路径属于部件,所以路径将与部件一起运动。这样,当工件重新装夹或变位机运动时,用户以前的工作将随路径被一起保留下来,而避免了示教方式所需的重新示教操作。因此,路径功能使离线编程的效率比示教编程的效率高得多。
平焊
上坡焊
第二节 弧焊机器人离线编程技术
编程模块:
为了用语言描述机器人工作单元的工作过程,定义了机器人执行级离线编程语言(MOPL)。MOPL是一种解释性的语言,可对系统图形进行实时操作。利用MOPL中的命令书写程序,便可实现机器人工作单元的离线编程。
ProgramStart,编程开始
$Device,指定当前设备
$Motype,指定当前运动类型
$Speed,指定当前运动速度
MoveTo,工具移动到某一标签点
MoveHome,设备移动到零位
MoveJoint,移动设备的某个关节
MoveJoints,移动设备的多个关节
MoveAlong,工具沿某条路径移动
MoveVia,经中间标签点移到目标标签点
OrientTag,变位机标签点
MoveRelative,工具以笛卡尔方式相对移动
//,注释语句
执行级离线编程器
第二节 弧焊机器人离线编程技术
程序实例:
ProgramStart
$Device= robot
$Speed=
MoveJoints To
MoveTo seam_1
$Motype= Straight
$Speed=
MoveAlong seam From 2 To 16
$Motype= Joint
MoveHome
第二节 弧焊机器人离线编程技术
程序转换模块:
通过离线编程器编制的MOPL程序只能在离线编程系统内进行仿真,不能直接下载给机器人。而且各种机器人接受的机器人语言各不相同,因此需要将MOPL文件转换为特定机器人可接受的程序。
MOPL
程序
程序转换模块
特定的机
器人程序
程序转换模块的作用
第二节 弧焊机器人离线编程技术
自定义的九自由度机器人程序的基本格式
2 P
ASX 引弧标志及焊接参数设定
AE 熄弧标志
END 程序结束标志
序号
运动方式代码
机器人关节角
变位机关节角
机器人速度
变位机时间
第二节 弧焊机器人离线编程技术
MOPL文件
机器人类型
机器人程序
进度显示
程序转换器
结构
程序转换器的界面
第二节 弧焊机器人离线编程技术
机器人程序转换实例
第二节 弧焊机器人离线编程技术
碰撞检测模块:
碰撞检测是机器人离线编程系统的必要功能之一。在CAD技术中,碰撞检测也称为实体求交。
在机器人工作单元中,有众多个部件,如果每两个部件之间都进行碰撞检测,则每一步碰撞检测将花费相当长的时间。为了解决这一问题,需要用户根据自己的知识判断可能发生碰撞的部件。因此,需要提供一种记录用户指定的可能发生碰撞的部件的功能。该功能也称为碰撞检测列表。
碰撞检测列表的结构 碰撞检测列表对话框
第二节 弧焊机器人离线编程技术
碰撞检测结果
焊枪与工件发生碰撞 传感器与变位机发生碰撞
第二节 弧焊机器人离线编程技术
4、任务级弧焊机器人离线编程系统
近年来,机器人离线编程技术发展迅速,逐渐向自动编程方向发展,出现了任务级离线编程(Task Level OLP)概念,它采用更高级的指令系统,用户只需要输入简单的命令,即可完成编程工作,例如用户发出“焊接零件A”的指令,系统便会自动生成零件A上的焊缝轨迹,根据零件的材料及结构形式,自动给出焊接工艺参数等,并自动转换成机器人控制程序。也可称为“傻瓜编程”。
与执行级离线编程相比,任务级离线编程要用更抽象的编程命令编程。为了使抽象的任务级编程命令能够解释成具体的执行级编程命令,不但需要被焊工件的各种信息,而且需要根据这些信息规划合适的焊接工艺参数和机器人运动路径。因此,机器人弧焊任务级离线编程需要如下支撑技术:
焊接工件特征建模技术
焊接参数规划技术
弧焊机器人路径规划技术
第二节 弧焊机器人离线编程技术
焊接工件特征建模技术:
对于任务级的离线编程系统,不仅要得到工件几何模型,还要得到工件的加工信息(如焊缝位姿、板厚、材料和坡口等等)。通过实体模型只能得到工件的几何要素,不能得到上述加工信息,而从实体几何信息中往往不能正确或根本无法提取上述加工信息,因此无法实现任务级离线编程对焊接工艺和弧焊机器人路径的推理和求解。这同其它CAD/CAM系统面临的问题是一样的,因此必须进行焊接工件的特征建模。
特征是用来生成设计、分析设计或评价设计的元素。由于在弧焊机器人离线编程系统中,焊接工件的特征模型需要为后续的焊接参数规划、机器人路径规划模块提供充分的设计数据和加工信息,所以特征是否全面准确地得到定义与划分,就成了直接影响后继程序使用的一个重要问题。
第二节 弧焊机器人离线编程技术
焊接工件特征的分类和组织
焊接工件特征
板特征
接头特征
坡口特征
材料
形状
…
形式
焊缝
…
形状
尺寸
…
板特征包括形状、材料、尺寸等和板相关的特征。
接头特征包括形式特征、焊缝特征和装配特征等。焊缝特征包括焊缝的形状(圆弧或直线)、关键焊缝点的位置姿态及其他信息(如和其他特征之间的关系等等)。装配特征是指记录焊板之间相对位置和拓扑关系的一组特征(如板号、板之间的面和边,对应的关键点等)。
坡口特征指坡口形状、尺寸等信息。
第二节 弧焊机器人离线编程技术
焊接工件数据模型
在实际焊接结构中,焊板由焊接接头以一定顺序相连接,并且由于不同形式的焊接接头(如对接、角接等等)都有其固定的分类和描述位置形状的参数,这使得焊接连接与装配连接有相同之处。因此,焊接工件特征建模可以看作一种装配,板相当于零件,而接头相当于装配关系。
这里假定一个接头由两个板相连,而一个板上则可以连接多个接头。
第二节 弧焊机器人离线编程技术
特征建模系统
第二节 弧焊机器人离线编程技术
建模系统的主界面及建模结果
第二节 弧焊机器人离线编程技术
焊接参数规划技术:
在某些商品化的离线编程软件(如WorkSpace、IGRIP等)中,机器人弧焊所需的焊接参数都是由编程人员手工输入的,这样不仅使编程出错的几率增多,而且增加了编程的工作量。在任务级离线编程中,利用以人工智能技术为基础的焊接参数规划器自动确定焊接参数,将有效地提高机器人编程的效率和质量。
用户首先是在特征建模模块进行焊接结构的设计,并确定了工件材质、板厚、接头类型、坡口类型等参数,焊接参数规划器是根据这些参数去检索事例库,如果事例库中存在匹配的事例,则直接提供;若事例库中没有匹配的事例,程序自动进行智能推理,以便给出满足要求的焊接参数。
焊接参数分类
焊前准备参数
(焊接方法,焊丝等)
焊接过程参数
(电流,电压等)
第二节 弧焊机器人离线编程技术
焊接参数规划器的结构
第二节 弧焊机器人离线编程技术
基于RBR和CBR的焊前准备参数规划模块
RBR - Rule-Based Reasoning
CBR – Case-Based Reasoning
第二节 弧焊机器人离线编程技术
基于CBR和ANN的焊接过程参数规划模块
ANN - Artificial Neural Network
第二节 弧焊机器人离线编程技术
弧焊机器人路径规划技术:
焊接路径规划是指在焊接过程中确定实现最佳焊接质量的弧焊机器人系统各路径点处的各关节值。焊接路径规划存在如下约束:弧焊机器人系统的运动学闭链约束、弧焊机器人和工件或卡具之间不发生碰撞、各关节值在关节限制之内、机器人灵活度优于最差灵活度。
焊接路径规划的目标是实现最佳焊接质量。
直接影响焊接质量的因素有两方面:
因焊枪避碰原因而导致实际焊枪姿态偏离理想姿态
弧焊机器人系统运动的平稳性。
所以,焊接路径规划可分成两步:
第一步是最小化焊枪姿态偏离理想姿态的程度(工具级规划)
第二步是最优化弧焊机器人系统各关节运动的平稳性(机器人级规划)
第二节 弧焊机器人离线编程技术
弧焊机器人系统运动的平稳函数
式中:
优化模型:
第二节 弧焊机器人离线编程技术
焊接工件
特征建模
机器人焊接
参数规划
弧焊机器人
路径规划
任务级编程
执行级编程
第二节 弧焊机器人离线编程技术
程序编写
与编辑
命令解释
焊接工件
特征数据库
焊接参数
规划器
机器人
路径规划
辅助
规划
任务级
编程程序
程序转化
路径
用户界面
执行级
编程程序
任务级离线编程器的结构