优傲机器人运动编程与轨迹优化
北京艾科伯特Airking Robots是UR优傲机器人,Robotiq机器人工具的合作伙伴,专注协作机器人和移动机器人的技术公司。关注微信公众号 Airkingrobots
1.介绍introduction 4
1.1方案目的 4
1.2硬件设备列表 4
2.方案描述 Proposal Description 4
2.1三种路点 4
2.2变量路点的用法 4
2.3坐标系与位姿变量关系 6
2.4选择恰当的安装位置 8
2.5选择合适的移动指令 8
2.6设置合理的加减速度 9
2.7设置适宜的交融半径 10
3.方案总结 Proposal Description 10
本文主要介绍优傲机器人运动指令的使用及轨迹优化的方法。
对提高动作连贯和节拍有借鉴意义。
本方案应用以下版本虚拟机演示:URSIm-3.3.4-310
机器人的路点分为三种分别是:固定路点、相对路点、变量路点。固定路点由机器人示教得到,每次执行时机器人将运到到固定位置。相对路点的确立需要示教两个点,机器人会计算出两个点的差值,每次执行时机器人将把当前位置累加上固定差值作为目标路点。变量路点由一个位姿变量来指定机器人的运动位姿。
变量路点是用位姿变量表示的路点。我们忽略机器人外形特点,只关注机器人上的两个笛卡尔坐标系,工具坐标系和参考坐标系,机器人的位姿参数就是描述工具坐标系在参考坐标系下的位置。
优傲机器人位姿变量的格式是p[0,0,0,0,0,0]这样的。前三位代表xyz单位是m,后三位代表rxryrz单位是rad。
不同机器人对于旋转的表达不太一样,优傲机器人采取旋转矢量表示法,同时优傲机器人提供了rpy角和旋转矢量的转换脚本。
位姿变量的用法比较灵活,机器人有许多内部函数可以对位姿变量进行处理。下面举一个简单的例子。
机器人工具端固定安装了一个针尖,针尖的TCP已设置完成,针尖朝向设置成TCP的Z+,在机器人运动到任意位置后我需要让机器人顺着针尖方向前进100mm该如何编程。
对于优傲机器人我们发现很多地方会涉及到坐标系和位姿。
坐标系关系 | 参数 | 固定坐标系(参考对象) | 移动坐标系(描述对象) |
A | 位姿点位 | 基座坐标系 | 法兰中心 |
B | TCP数据 | 法兰中心 | 自定义TCP |
C | 特征变量 | 基座坐标系 | 自定义特征 |
D | 位姿点位 | 基座坐标系 | 自定义TCP |
E | 位姿点位 | 自定义特征 | 自定义TCP |
下图是机器人四个坐标系位置模型。
。
下图用箭头表示坐标系之间的关系。
B表示自定义工具(TCP_1)在自定义特征(点_1)下的位置。显示如下。
对于关系图我们可以看出箭头之间有一些关系,我们可以用类似向量的方法来理解。
两个箭头首尾相加得到新的箭头。例如:
A+B=D
然而首尾箭头不能交换顺序。
箭头可以先取反再相加。
A=D+(-B)
B=( -A)+D
这里的加法对应的脚本是pose_trans(p from, p from to),机器人没有减法这用pose_inv(p from)
举个例子在程序中我们如何得到E所表示的数据。
程序
机器人程序
p≔pose_trans(pose_inv(点_1_var),get_actual_tcp_pose())
等待: 0.01
机器人根据现场空间及工作区域选择安装方式和安装位置。
机器人的工作点要尽量放在远近适中的位置。点位太近机器人关节转动量过大。点位太远机器人力臂长关节受力过大。高速高负载可能会造成保护性停止。
Movej和movel
Movej关节运动是关节匀速运动,TCP不匀速且轨迹不确定。Movel直线运动是TCP匀速直线运动。
这里要注意的是movel所指的直线是针对设定TCP的直线运动。也就是说当我们用手拖动示教两点让机器人做movel运动是TCP设置的不同会导致机器人运动的轨迹不同。
Movel和movep
Movel和movep的区别两者都表示直线运动但是两者的区别在添加了交融半径之后。前者在转角处速度会降低而movep一直是匀速。速度降低的好处是保证直线时高速同时降低转角时的机器人受力状况。一直匀速的好处是可以满足某些工艺的要求但是缺点是整体速度没办法达到最快。
一般来讲movej能发挥机器人的最大速度,movel的轨迹最可控。实际应用中我们大多会搭配来使用
例如在搬运过过程中的三个步骤提起-水平移动-放下一般采取movl-movej-movel的运动方式。
抬起放下过程中物品和台面接触我们要保证整个运动竖直,水平移动过程中物品悬空中间干涉少用movej快速流畅。
机器人的运动速度是个大家关心的问题,速度将直接影响机器人动作的节拍。
衡量movej的用角速度和角加速度。设置范围分别是0-192和0-2292。关节运动是针对单个关节的,一般可设置的速度机器人都可以达到。衡量movel的用线速度和线加速度。设置范围分别为0-3000和0-150000。
直线运动是针对TCP的移动,速度由6关节速度合成得到各个关节的瞬时速度和机器人当前姿态有关。在某些情况下机器人TCP速度不快但是机器人仍然会报关节超速的错误这是正常的,这是由机器人运动学原理决定的并非机器人故障。
所以我们说的机器人额定线速度1m最高3m只是一个参考值,需要我们根据经验判设定合理的轨迹和速度。
一般不建议设置最快的速度和加速度,机器人动作很多耗时在等待信号和夹抓动作,提高机器人速度的性价比并不高,就像在城市开车节省时间最有效的方法是找一条好的路线而不是靠加速。建议角速度设置0-180线速度设置0-1000加速度设定为速度的三倍左右。
频繁的加减速对机器人不利,因此我要尽量减少不必要的停顿。在轨迹规划中我们往往会设置运动的过渡点。我们并不希望机器人在此点停留,因此我们可以设置交融半径。交融半径设定的大小根据现场情况而定,在不干涉的情况下可以尽量设置大些。设置交融半径避免停顿可以大大节省时间类比停站少的列车耗时就短。
本方案介绍了机器人坐标系之间的联系和位姿路点的定义,强化用户对位姿的理解和应用。同时总结了机器人运动编程时要注意的一些事项。
更多技术参考, 公众号文章:
Airking Robots
北京艾科伯特科技有限公司,是专注协作机器人和移动机器人的技术公司,Airking Robots——艾科伯特立足于航空/航天,专注于机器人智能制造方向,Airking Robots是优傲机器人,Robotiq等协作机器人方向中国区域金牌提供商
商务联系:
更多案例请关注公众号:
手机:13161062216
邮箱:info@airkingrobots.com
网址:www.airkingrobots.com