大数跨境

硬核文章:UR机器人关节标定和机器人运动学标定原理和方法

硬核文章:UR机器人关节标定和机器人运动学标定原理和方法 AirkingRobots艾科伯特科技
2024-12-15
0
导读:重复定位精度:简单说,是机器人多次返回同一个编程位置的准确性,这和机器人的*绝对精度不一样,这个精度可以通过标定来改善。如果机器人有一个示教位置,每次机器人返回位置都在0.1毫米之内,那么我们可以说机

关节标定和机器人运动学标定原理和方法


目   录

1. 优傲机器人标定的原理和目的Principle & Purpose of UR robot Calibration 4

1.1 优傲机器人什么时候需要标定 when need Calibration of UR robot 4

1.2 优傲机器人为什么需要标定Why need Calibration  of UR robot 5

1.3 优傲机器人技术标定的原理Technical Principle of UR robot Calibration 6

2. 优傲机器人标定方法 How to Calibration UR robot 7

2.1 优傲机器人关节标定 Joint Calibration of UR robot 7

2.2 优傲机器人运动学标定 Kinematics Calibration of UR robot 14


优傲机器人标定的原理和目的 Principle and purpose of UR Robot Calibration

1.1 优傲机器人什么时候需要标定 When need Calibration of UR Robot

我们这里所说的机器人标定是指6关节机器人的重复定位精度的标定,所以我们需要解释一下什么是6关节机器人的重复定位精度,它是起什么作用的?

重复定位精度:简单说,是机器人多次返回同一个编程位置的准确性,这和机器人的*绝对精度不一样,这个精度可以通过标定来改善。如果机器人有一个示教位置,每次机器人返回位置都在0.1毫米之内,那么我们可以说机器人的重复定位精度是0.1毫米。

*注:绝对精度——机器人可以到达命令位置的接近性,,当测量机器人绝对位置,并且和命令位置相比较,这个偏差值是绝对精度。绝对位置可以通过诸如视觉系统或红外线等外部传感器改善;绝对精度随着机器人速度、工作范围的位置和负载的变化而变化。

重复定位精度是机器人的最重要的指标,ISO 9283提出了一个测量重复定位精度的方法, 就是机器人示教一个位置,然后机器人从其他4个位置返回这个示教点,产生的误差;重复定位精度就是用*标准背离方法在x、y、z三个维度上量化这个指标;随着机器人工作范围、速度和负载的改变,重复定位精度也会不同,ISO 9283中重复定位精度的测量条件是最大速度和最大负载,所以这个值应该比轻负载和慢速时要低一些。在工业应用中,重复定位精度也和末端执行器的精度有关,例如夹爪和夹爪上的手指。如果现场的工作场景是机器人通过夹爪拾取一个螺钉,并把螺钉插入一个孔中,这种工作对机器人而言很容易失败,需要在工艺和结构设计(如用锥形引导槽)帮助机器人。

*标准背离——在统计学中,标准背离就是量化数值的变量或离散性。

对于优傲机器人,新出厂机器人需要做运动学标定,具体方法下面章节会讲到;另外,机械臂在使用过程中,如果更换某一个关节,也需要做标定。

1.2 优傲机器人为什么需要标定 Why need Calibration  of UR robot

工业机器人生产出来后,由于元器件和装配的误差,每一台机器人的运动精度水平会存在差异,有的精度好一些,有的比较差;为了弥补这个误差,需要做机器人的标定,标定的目的就是改善机器人的重复定位精度

优傲机器人技术标定的原理

Technical Principle of UR robot Calibration

机器人标定是为机器人运动学结构来标定某些参数,例如机械臂6个轴之间的相对位置,根据纠错建模不同,标定有三种不同的方式;第一层标定仅仅考虑报告的关节位移值和实际值之间的差异,第二层标定也就是我们所说的运动学标定,考虑包括角度补偿值和关节长度补偿值等全部机械臂几何标定;第三层标定,也叫非运动学标定,除了几何标定,还考虑诸如刚性、关节形变和摩擦力。通常第一层和第二层的标定已经可以满足大多数实际应用。

几个名词解释:

精度标准和误差来源:ISO 9283提出了工业机器人行为的标准,并建议了得到合适的参数的测试方法,最重要的标准也是最常用的标准是位姿精度(pose accuracy)位姿重复定位精度(pose repeatability)。当机器人运动到手动示教好的位置,重复定位精度是特别重要的;如果机器人程序是同过3D模拟生成(离线编程),机器人精度更是至关重要。主要几个影响因素包括关节补偿值、关节长度偏离和角度偏差。

测量系统:工业机器人位姿测量现在存在几种不同的方法,例如接触参考部件、用超声波距离传感器、激光干涉仪、经纬仪、卡尺或激光三角测量仪。这些公司可以提供测量和标定系统:Bluewrist, Dynalog, RoboDK, FARO Technologies, Creaform, Leica, Metris, Metronor, Wiest, Teconsult和Automated Precision,Inc

数学原理:通过测量系统达到的机器人偏差可以通过数值方法最小化,必须开发一个机械臂几何结构的完整的运动学模型,这样就能通过数学方法优化计算这些参数,一般的系统行为可以用输入输出矢量模型描述,变量k、l、m、n和它们的衍生物可以描述单矢量空间的维度,最小残余偏差r的目的是指明来自两个用欧几里得模型输出矢量的矢量p的优化参数。

结论:工业机器人位置精度的变化来自于生产商、年龄和机器人类型,用运动学标定的方法,在大多数情况下,这些误差能够小于1毫米。一种典型的6轴机器人标定方法如下:

https://robodk.com/videos/Robot-calibration.mp4

(用激光跟踪器和立体相机)

光学CMM标定:https://robodk.com/videos/Robot-Calibration-with-OpticalCMM.mp4


优傲机器人标定的方法 How to Calibration UR robot

优傲机器人关节标定 Joint Calibration of UR Robot

当我们更换一个机械臂或一个关节后,需要重新标定机器人;在优傲机器人中已经提供了这样的功能,可以帮助我们完成标定:

(如果在更换某一个关节或机械臂后,重新初始化,一般会有一个自动更新固件的过程;如果没有,说明新的关节或机械臂的固件版本与更换之前一致)

  1. 在示教器“专家模式”下,点击"Kinematics Calibration"按钮

(2) 这样我们来到标定屏幕,也可以发现在“欢迎屏幕”下有一个新的按钮,叫“标定机器人”,这样可以在以后可以直接返回标定屏幕。

(3) 在屏幕上会出现一个新的选项卡“校准”,选择"Program correction - by key-waypoints".

这里给了一个类似于“拾取和放置”的简单的指导程序,取放点就是两个关键路点(key-waypoints)

(4) 通过点击“加载程序”选择程序:

(5) 在程序中选择一个路点,在程序树中,这个路点是显示为斜体并且是未定义的路点图标;这个叫做“pick”的路点被选择。


(6) 点 "Change this waypoint" 重新定义被选择的路点


(7) 引导到“移动”选项卡,移动机器人到新的位置并且点 "OK"。

调整工具位置

为了使这种方法更好用,调整匹配的工具位置(CTP)来补偿机器人末端点是重要的,典型的取料CTP定位如下:

_ 工具中心点将要到抓料点

_ 物料的末端位置是放料点

这个值将在重新定义路点中使用,CTP可以在每一个关键路点(key-waypoint)中单独定义,并且改善和修正精度。选择的TCP就是安装设置下默认的TCP参数。

(8) 通过点"Change CTP"设置匹配工具位置(CTP)

(9) 改变CTP坐标,并且点OK

(10) 这样就完成重新定义 "pick" 这个关键路点,在程序树中,这个重新定义的路点不再显示为斜体字并且图标显示为一个已经定义过的路点;继续重复步骤5-9,指导所有关键路点被重新定义。

也有可能增加来自于多个程序的关键路点,这通过增加附加程序并且选择并重新定义关键路点,用前面描述的步骤4-10

(11) 如果关键路点分布于多个程序,选择程序树的最上面一栏,按“加载程序”,并且从第4步重复前面提过的步骤。

当选择"Correction model"时,可以看到所有重新定义的关键路点

每一个在程序中被标记的关键路点,显示在上图和下图中


可以通过点击"Delete"从模块中删除被选择的关键路点

修正程序:关键路点被重新定义后,在正常加载程序时,程序能被修正。

(12) 从“程序”选项卡或“文件”菜单顶部加载被修正的程序

(13) 机器人控制器检测是否有一个合适的可修正的程序,并且提问你是否想修正这个程序;需要修正程序,点"CorrectWaypoints"

(14) 当程序修正完成后会有另一个弹出窗口,程序修正需要花一些时间,请保持耐心;如果修正失败,请再次核实关键路点,并改善它们的精度

(15) 程序修正之后并且被保存之前,建议:通过运行程序或使用单独路点的“机器人移至此处”功能让机器人运动并通过关键路点来验证修正的程序,然后用新名字保存。注意:一旦被修正的程序被保存了,它将被覆盖并且不能再次修正它;如果需要更好的精度,可以增加附加的关键路点到模型中并且重复第12步

(16) 当程序测试完成后,保存这个程序,程序将按照预想的工作

(17) 从第12步重复修正其他的程序

优傲机器人运动学标定 Kinematic Calibration of UR Robot

优傲机器人的运动学标定是由优傲机器人公司CTO Esben先生发明,并申请专利保护的“双臂标定方法”实现的。

这个方法要求使用优傲提供的双臂标定套件(备件号:185500),和一对带CB3控制箱的UR3、UR5或UR10机器人。机器人基座和工具端用专用的组件连接在一起,这样就形成一个已知固定距离的闭环链,被连接的机器人用协调运动方式执行移动到不同的路点,这样就创造一组机器人手臂长度和旋转角度的数据,如D-H参数(Denavit-Hartenberg参数)

双臂标定的执行步骤请参考优傲机器人手册《Kinematic Calibration Manual for CB3》Version1.1.0,第2章“Dual Robot Calibration”。每一台机器人的标定完成后,所生成的标定参数会保存在机器人系统文件/root/.urcontrol/calibration.conf

这是一个标定参数的例子:

[mounting]

delta_theta = [ 4.28676882292126958e-05, -0.216911462555724466, -0.0270891527328391037, 0.244010527667556681, -4.65219968527462677e-05, 2.46746571912303342e-05]

delta_a = [ 4.60393459244478093e-05, 0.00984657430569568781, 0.0113156996596481818, 0.000215175693055182158, -1.7500285470095691e-05, 0]

delta_d = [ 0.000109567669586640992, 88.7181207535329861, -101.941314063301078, 13.2241375850004772, 0.000118960858805874925, 0.00028540012818960292]

delta_alpha = [ 0.0006632669731743146, -0.00103122385896467082, 0.00717349529266358282, -0.000432479301582189279, 0.000382731481139986229, 0]

joint_checksum = [ 0x2ca7c091, 0x780a4dec, 0x712c1031, 0xb972e276, 0xf9800b55, 0x3199e1f2]

calibration_status = 2 # 0 == notInitialized / 1 == notLinearised / 2 == Linearised

joint_raw_offset = [ 0xd23244, 0xd26abd, 0x524181, 0xfddecf, 0xfd4da1, 0x7c8421]

joint_selftest_data_crc = [ 0x18afde52, 0x43bf4ce0, 0x516651a8, 0xa95cac67, 0xd117707d, 0xcf58cd06]


更多技术参考, 公众号文章:

医疗手术机器人研发框图


机器人教学成套方案


机器人末端成套产品

Airking Robots

北京艾科伯特科技有限公司,是专注协作机器人和移动机器人的技术公司,Airking Robots——艾科伯特立足于航空/航天,专注于机器人智能制造方向,Airking Robots是优傲机器人,Robotiq等协作机器人方向中国区域金牌提供商

商务联系:


更多案例请关注公众号:

手机:13161062216

邮箱:info@airkingrobots.com

网址:www.airkingrobots.com



【声明】内容源于网络
0
0
AirkingRobots艾科伯特科技
北京艾科伯特科技有限公司(Airking Robotics)是UR机器人,Robotiq,Robosense等机器人领域的金牌授权商,我们面向教育行业,航空航天,工业,生命科学等领域,致力于让协作机器人、移动机器人实现人机交互。
内容 78
粉丝 0
AirkingRobots艾科伯特科技 北京艾科伯特科技有限公司(Airking Robotics)是UR机器人,Robotiq,Robosense等机器人领域的金牌授权商,我们面向教育行业,航空航天,工业,生命科学等领域,致力于让协作机器人、移动机器人实现人机交互。
总阅读65
粉丝0
内容78