跳到主要内容

4.1 本章简介

本章介绍机器人学相关的基础知识,熟悉本章内容有助于更好地理解和掌握控制系统及机器人的使用。

4.2 坐标系

空间中的任一物体(工具、工件等)都有六个自由度:三个平动自由度 + 三个旋转自由度。三个平动自由度构成位置;三个旋转自由度构成姿态;这六个自由度合起来统称位姿。物体的位姿,可以用附着其上的坐标系来描述,一般采用笛卡尔坐标系(以下简称坐标系)。
机器人是一种多自由度机构,典型的作业方式,是在法兰固定一个工具,执行相对外部工件的运动。这种作业方式,可以用坐标系及其相对运动来描述。
xCore 系统中包含的坐标系参见下图:

4.2
编号 坐标系 意义

A

法兰坐标系

定义在机器人法兰盘中心位置;
法兰坐标系相对基坐标系定义。

B

工具坐标系

定义在工具末端;
当工具为手持(普通工具)时,工具坐标系相对法兰坐标系定义;
当工具为外部工具时,工具坐标系相对用户坐标系定义。

C

基坐标系

定义在机器人基座的中心位置;
基坐标系相对世界坐标系定义;
注意:如果机器人不是默认安装方式,例如倒装、斜装,需要先进行基坐标系标定。

D

工件坐标系

定义在工件上的坐标系;
当工件为外部工件(普通工件)时,工件坐标系相对用户坐标系定义;当工件为手持工件时,工件坐标系相对法兰坐标系定义。

E

用户坐标系

在定义工件坐标系时充当参考系,不单独使用;
用户坐标系相对世界坐标系定义。

F

世界坐标系

世界坐标系一般作为基准坐标系,该坐标系并没有具体的位置;单机器人正常安装时,默认与机器人基坐标系重合;当涉及多机器人或外部设备协同时,可以通过将他们的世界坐标系统一到同一个坐标系,实现运动基准的统一。

4.3 奇异

机器人的工作空间中存在若干特殊的位姿,机器人可以使用无数种不同的关节配置到达,这些位姿被称为奇异点。奇异点会导致控制系统在基于笛卡尔空间位姿计算关节角度时出现问题。
机器人执行关节运动时,不存在奇异性问题。
当机器人执行靠近奇异点的笛卡尔空间轨迹时,某些关节的速度可能会非常快,可能导致报错,机器人运行中止。

4.3.1 典型机器人奇异位置

不同构型的机器人,有不同的奇异位置。下面介绍部分机器人构型的典型奇异位置。

4.3.1.1 工业六轴机器人奇异位置
奇异 构型 说明

肩部奇异

1 1

机器人腕心位于 1 轴轴线上时。

腕部奇异

1 2

当 4 轴和 6 轴轴线重合(5 轴角度为 0)时。

肘部奇异

1.3

当腕心、2 轴转轴、3 轴转轴位于一条直线上时。

4.3.1.2 ER PRO 协作机器人奇异位置

ER RPO协作机器人的奇异可以分为如下情况:

奇异 构型 说明

2 轴奇异

2 1

当 2 轴角度等于 0° 时,机器人求解逆解时无法区分 1 轴与 3 轴角度。

4 轴奇异

2 2

当 4 轴角度为 0,机器人沿平行于 3 轴或 5 轴方向的运动受到限制。这种奇异状态会使机器人的手腕根部丧失一个运动自由度(手腕根部无法沿手臂轴向的运动)。此时求解逆解时, 3 轴和 5 轴的位置无法求解。

6 轴奇异

2 3

当机器人 6 轴角度等于 0° 时,机器人求解逆解无法区分 5 轴与 7 轴角度。

腕心奇异

2 4

当腕心位于 1 轴正上方时,机器人求解逆解无法准确给定 1 轴角度。

4.3.2 奇异规避

奇异问题源自机器人构型,无法完全避免。在实际任务编程中,如遇到机器人必需通过奇异点附近的情况,可以考虑通过降低部分约束(例如姿态或路径精度等),让机器人顺利穿越奇异点。

xCore 控制系统也提供多种奇异规避方法:

方法一

4轴锁定

开启该奇异规避方法前,需将机器人4轴运动到0度或者±180度。开启该形式奇异后,机器人将保持4轴不动,在保证TCP位置准确的前提下,以一种特殊的形式进行姿态插补。
可参考RL指令 SingAreaLockAxis4 on/off 和 jog模式章节。

方法二

笛卡尔牺牲姿态插补

开启该奇异规避方法后,可通过改变机器人形态,以通过腕关节类型奇异。注意:使用此功能,机器人运动时的手腕形态与示教的有可能不同(不仅是通过奇异点的示教点,后续示教点的形态也有可能不同)。

方法三

关节空间插补

开启该奇异规避方法后,控制系统会对后续的笛卡尔轨迹进行奇异性检测,直到关闭该功能。
不含奇异点的笛卡尔轨迹,按照普通轨迹进行运动。含有奇异点的笛卡尔轨迹,控制系统检测到奇异点后,围绕奇异点,将轨迹P0P1切割为P0Pcut1、Pcut1Pcut2、Pcut2P1三段,其中P0Pcut1和Pcut2P1依然沿着原轨迹运动进行笛卡尔插补,Pcut1Pcut2则采用关节空间插补。三段轨迹间采用转弯区平滑过渡,如下图所示。 4.3.2
具体使用,参考RL指令 SingAreaJointWay。

注意:

  • 机器人在奇异点附近,关节的运动幅度往往很大,请确认是否必须使用奇异规避指令,优先推荐通过改变轨迹点位来规避奇异点。

  • 使用奇异规避指令时,在机器人正式作业前,请先确认加上奇异规避指令后机器人的轨迹符合作业需求,再进行正式作业。

  • 机器人在奇异点附近,关节运动幅度往往很大,使用前请确认周围环境。

  • 鉴于上述原因,如果机器人运行点位或程序运行逻辑受外部信号影响,使用前,请仔细确认程序逻辑和轨迹。

上述三种奇异规避具体特征如下:

方式与特点 4轴锁定 笛卡尔牺牲姿态插补 关节空间插补

运动特征

1.开启该指令前,需先将机器人4轴运动到0度或者±180度。
2.开启该指令后,机器人在接下来的运动指令中保持4轴不动。

1.开启该指令后,机器人改变手腕形态,工具姿态发生变化,以便通过有腕关节奇异点的轨迹。
2.运动时的手腕形态与示教的有时不同,不仅通过奇异点的示教点,而且以后的示教点的形态也有可能变更。

1.轨迹中奇异点前后的一部分,采用关节插补(MoveAbsJ)的形式运动,剩余部分采用原笛卡尔轨迹的本身运动方式运动,两种方式间采用转弯区过渡。

轨迹形式是否改变

1.位置轨迹不变。
2.特殊姿态插补方式。

1.位置轨迹不变。
2.改变姿态插补方式。

1.位置轨迹改变。
2.姿态轨迹改变。

目标点可达性

机器人运动空间,部分可达。即4轴为0度,或者±180度的目标点位可达。

机器人运动空间,部分可达。

机器人全运动空间可达。

转弯区特征

1.同类型轨迹间支持生成转弯区,即SingAreaLockAxis4 on和SingAreaLockAxis4 off之间的运动轨迹间支持生成转弯区。
2.不同类型间不支持生成转弯区,即SingAreaLockAxis4 on/off指令前后的运动轨迹间不支持生成转弯区。

1.同类型轨迹间支持生成转弯区,即SingAreaWrist on和SingAreaWrist off之间的运动轨迹间支持生成转弯区。
2.不同类型间,轴空间轨迹和奇异规避轨迹之间,可生成转弯区。笛卡尔空间路径和奇异规避轨迹,不可生成转弯区。

奇异规避轨迹之间,奇异规避轨迹与普通轨迹间均可生成转弯区。

前瞻特征

打断前瞻,即SingAreaLockAxis4 on/off为阻塞指令。机器人运动到SingAreaLockAxis4 on前一条轨迹,控制系统才会继续解析奇异规避指令。同理,机器人运动到SingAreaLockAxis4 off前一条运动指令,控制系统才会继续解析后续指令。

不打断前瞻。

不打断前瞻。

奇异规避强制性

强制,开启锁轴后,所有运动笛卡尔运动指令均采用锁轴所对应的特殊插补形式进行插补,直到关闭锁轴功能。

强制,开启牺牲姿态奇异规避后,所有运动笛卡尔运动指令均采用锁轴对应的特殊插补形式进行插补,直到关闭牺牲姿态奇异规避功能。

不强制,开启该奇异规避后,控制系统自动检测每一条笛卡尔运动轨迹中是否含有奇异点。仅包含奇异点的轨迹会采用特殊的形式插补,不包含奇异点的轨迹依然采用普通路径的运动形式进行插补。
注意:开启后会增加控制系统计算量,非必要不开启。

适用场景

1.法兰平行于基座或者沿基座z轴运动的轨迹。
2.机器人运动过程中允许保持4轴不动,例如码垛。

不在意路径的姿态精度,也不在意机器人以何种形式到达目标点,仅追求能够到达目标点笛卡尔位置。

不在意路径的位置精度和姿态精度,也不在意机器人以何种形式到达目标点,仅追求能够到达目标点。

支持机型

工业标准六轴系列(XB,NB型号),协作xMate CR/SR

工业标准六轴系列(XB,NB型号),协作xMate CR/SR

工业标准六轴系列(XB,NB型号)

是否支持Jog

支持

不支持

不支持

4.4 转弯区

机器人的运动,一般是依次执行用户编程设定的多条轨迹。通常这些轨迹间并非光滑连接,而是存在各种各样的“尖点”。这些“尖点”的存在,使得机器人在执行一条轨迹时,必须先在该轨迹末尾停止运动,才能开始下一条轨迹。为了使机器人能够在不同轨迹间连续运动,必须消除上述“尖点”,可以通过“转弯区”将不同轨迹平滑地连接起来。见下图:

4 4

转弯区类型包括笛卡尔空间转弯区和轴空间转弯区。关于转弯区的详细定义和具体参数,可以参考下文“RL指令”-“zone”章节。

4.5 前瞻机制

前瞻(Lookahead)是指在机器人运动过程中,控制系统提前处理当前机器人正在执行指令之后的程序指令,引入前瞻机制有如下好处:

  • 可以获得前方轨迹的速度、加速度要求以及机器人本身的限制条件信息,以便规划性能最优的控制策略;

  • 根据编程的转弯区设置规划转弯区轨迹;

  • 获取靠近软限位/边界、靠近奇异点等异常状态,以便提前进行处理。

关于前瞻机制更详细的介绍,参考下文“编程”-“关于RL程序”-“RL程序调试”章节。

4.6 力控

4.6.1 力控简介

机器人力控制是机器人末端与外部环境存在力交互的控制过程。在非接触类机器人运动控制过程中,只关注位置控制过程(速度与精度);当与环境存在接触时,纯位置控制要求机器人和环境必须具有非常高的精度,避免位置偏差引起的接触力对机器人和环境造成损坏。
与单纯位置控制不同,机器人力控制在与环境交互过程中引入力/力矩反馈回路,并通过力/力矩反馈回路改变机器人的运动特性,从而起到与外部环境动态交互的作用。在机器人与外部环境存在偏差或不确定性时,力控会智能地调整预设的位置轨迹,消除位置偏差引起的内力,保证交互过程的平稳安全。

4.6.2 阻抗控制

相比传统工业机器人,xMate 协作机器人关节中配置了扭矩传感器,这使其能够精准的感知关节扭矩。关节的扭矩信息使得 xMate 协作机器人能够通过阻抗来实现力控制,阻抗控制使得机器人具有非常柔顺的交互行为。这意味着机器人与环境的交互相当于一个虚拟的弹簧刚度、阻尼系统。此时,机器人对外力具有敏感性,外力的作用能够使机器人偏离预先设定的轨迹。而外力的作用消失后,机器人能够具有一定的回弹效果。

4.6.2

阻抗运动过程中,在环境中的外力作用下,机器人的实际位置会偏离期望位置一定距离,偏离的距离取决于阻抗刚度和外力的大小,偏差的具体数值可以通过外力和阻抗刚度的比值得到。如上图,阻抗控制模式下,阻抗刚度设置为 K,外力 Fext 的作用下,机器人的当前位置 Pcur 会偏离期望位置 Pdes,位置偏差为 Δx。此偏差引起的阻抗力和外力会达到最终的平衡。阻抗各方向的刚度可以单独设置,各方向阻抗力为此方向阻抗刚度和位置偏差的乘积,各方向阻抗力最终合成总的阻抗力。如下图,阻抗模式下,在外力的作用下机器人当前位置 Pcur 偏离期望位置 Pdes。X、Y 方向的偏差分别为 Δx、Δy,阻抗刚度分别为 Kx、Ky,阻抗力分别为 Fx、Fy。总的阻抗力 F = Fx + Fy。

4.6.2 2

4.6.3 力控搜索

人手在工件装配的过程中,会感受装配过程中力的变化,当感受到阻碍的时候(工件卡住),会尝试通过抖动,来使工件顺利安装。力控制使得机器人也具有这样的手法,也即搜索运动,支持绕轴旋转的正弦搜索运动和平面内的莉萨如搜索运动。搜索运动是在机器人既定运动的基础上叠加的额外运动,搜索运动使得机器人表现出一定的抖动,从而能够在装配过程中更好的克服阻碍。
下图是一个正弦搜素运动过程:

4.6.3 1

1

期望轨迹

2

实际轨迹(期望轨迹 + 搜索运动)

3

搜索运动幅值

4

搜索运动周期

所谓莉萨如搜索运动,指的是平面内两个相垂直的方向分别施加一个正弦搜索运动,两方向正弦搜索运动的频率往往成一定的比例。例如下图所示为 XY 平面类的莉萨如搜索运动,其中 X 和 Y 方向搜索运动频率的比值为2:1,中心点 Pstart 为期望位姿点,Xamp 为 X 方向搜索运动的幅值,Yamp 为 Y 方向搜索运动的幅值。

4.6.3 2

4.6.4 力控应用

工业机器人的力控应用场景大致可以分为两类:恒力跟踪和力控装配。

4.6.4.1 恒力跟踪

如下图,在恒力跟踪应用场景中,机器人保证与曲面之间的接触力保持一个恒定值 Fdes,同时机器人能够顺应曲面起伏的变化。恒力跟踪主要应用在打磨、去毛刺等应用场景。

4.6.4.1
4.6.4.2 力控装配

机器人装配工艺中,如果使用纯位置控制,由于位置、建模误差,机器人很容易就会碰撞到工件上,从而造成工件或机器人的损伤。而在基于力控制的装配工艺中,机器人在感受到外力超过一定范围(工件卡住),会尝试施加额外的搜索运动(抖动)来克服阻碍,从而使工件得以顺利安装。如下图,左边纯位置控制在装配过程中会发生碰撞,右边力控制在装配过程中,通过期望力Fdes将机器人推入装配孔,通过搜索运动Foverlay克服安装过程工件卡死的情况。

4.6.4.2