基于示教学习和自适应力控制的机器人装配研究*

2020-05-26 13:42陈鹏飞
机电工程 2020年5期
关键词:插孔障碍物力矩

陈鹏飞,赵 鑫,赵 欢

(华中科技大学 数字制造装备与技术国家重点实验室,湖北 武汉 430074)

0 引 言

机器人装配操作是机器人研究与应用的一个重要领域。在机器人装配过程中,由于环境的不确定性,装配件和环境之间会发生接触和碰撞,因此,工业机器人完成精密装配作业是件极具挑战的任务。为了保证装配成功,机器人必须具备一定的柔顺性[1]。机器人装配的过程包括搜孔和插孔。

目前,机器人搜孔的方法主要分为离线编程搜孔和示教搜孔[2]。离线编程搜孔根据与孔的接触力离线规划搜孔轨迹。Ibrahim F等[3]采用螺旋运动搜索圆形孔,通过轴与环境的各个方向的接触力变化判断是否搜孔成功,但是该方法不适用于其他形状的孔搜索;Zheng等[4]、Young等[5]、Xu等[6]提出了根据与孔边缘的接触力调整运动方向生成搜孔轨迹,能够成功搜索四边形孔,但该方法需要对接触状态建模,或者反复确定多个接触力阈值。离线编程有环境中的障碍物以及与孔接触状态的信息难以建模的缺陷,且搜孔时间过长。

若机器人在搜孔时,学习人示教的经验,则能提高搜孔效率。而当孔的位置大致已知时,人能凭着经验调整四边形轴位置以及绕着Z轴旋转角度;当接触到孔的边缘后,根据接触力改变运动方向,进而完成搜孔过程。Mustafa W等[7]、Tang等[8]和Zhao等[9]采用示教搜孔的方法,通过人感受与环境的接触力变化改变运动方向,但搜孔的初始位置变化后需要重新示教轨迹;Dennis等[10]通过人类经验搜索对轨迹采样的方法泛化至初始位置变化,且在示教的区域安排新任务,但其在孔附近存在障碍物,且初始点位置若选择在未示教的区域,则无法生成新的搜孔轨迹。

目前,机器人插孔利用传统的阻抗控制方法对未知环境没有自适应能力,会使得与环境的接触力矩误差较大。Gullapali等[11]将自学习方法运用到阻抗控制中;Tarokh等[12]研究未知环境下力跟踪的模糊自适应控制算法,得到接触力/扭矩和调整位移之间的关系。但前者需要利用大量的示教数据训练得到力和位置的映射关系,后者利用接触力矩直接生成机器人的位置会产生较大的接触力矩误差。Lu等[13]利用自适应调整率对机器人末端参考位置进行修正;Jung等[14]利用机器人与环境的力误差和自适应参数来调整阻抗参数,但以上两种方法输入接触力误差和阻抗参数之间为线性关系,在环境刚度变化时对接触矩波动减小范围有限。Zhen等[15]和Chen等[16]用模糊控制调节阻抗参数或者PD参数来提高力跟踪的精度。

当插孔时,悬臂梁刚度变化,若仍然使用相同的Z轴接触力Fz插孔,则会使得绕着X/Y轴旋转的力矩波动变化较大,而现有工作中期望接触力都是不变的,无法适应环境刚度变化的情况。

示教搜孔轨迹泛化包括获取示教数据、训练TP-GMM、利用高斯混合回归模型(GMR)生成新的初始点变化且避开障碍物的搜孔轨迹。自适应力控制插孔过程主要包括模糊自适应控制器,调节阻抗控制中Z轴期望接触力适应环境刚度变化,以此减小插孔时接触力矩的波动和误差。

针对目前机器人搜孔时轨迹泛化、插孔时减小接触力矩误差等问题,笔者提出示教学习和自适应力控制插孔的策略。

1 基于示教学习的搜孔设计

笔者采用人示教搜索方形轴孔:障碍物位于方形轴与方形孔之间,在搜孔的过程中,轴需要绕过障碍物与方形孔中心位置重合,且与方形孔的方向对齐。

首先获取人示教搜孔数据,并根据是否与孔产生接触力分为两段轨迹:第1段轨迹没有与孔产生接触力但需要避开障碍物,第2段轨迹则是根据与孔产生的接触力而改变轴运动方向完成搜孔;然后利用TP-GMM对初始位置变化后的第1示教段轨迹进行训练,用GMR对第1段轨迹中坐标变换后的高斯模型回归,即可得到初始点位置变化且能够避开障碍物的第一段新的搜孔轨迹;最后与示教时第2段回归的轨迹组合得到新的搜孔轨迹。

1.1 TP-GMM

TP-GMM[17]主要目的是基于一组表征任务特征的参数生成运动轨迹。在不同坐标系下,通过传感器获得每一个采样点,通过坐标系变换计算得到,即:

(1)

高斯混合模型(GMM)对人示教搜孔的数据建模,其概率模型如下:

(2)

式中:x—搜孔的轨迹相对初始点位置的坐标;N(x|μk,∑k)—混合模型中的k个分量;μk,∑k—第k个高斯分量的均值和协方差矩阵;πk—第k个高斯分量的混合系数。

对示教搜孔的数据利用E-M算法估计高斯混合模型中的参数。

根据示教时是否与孔产生接触力,将轨迹分段后,初始点变化后轨迹的高斯混合模型计算如下:

(3)

(4)

在机器人搜孔过程中,任务参数表示任务空间的约束,其决定运动轨迹的形状。在参考坐标系变化时,需要利用TP-GMM建模出新的高斯模型参数,使得初始位置变化时新生成的轨迹能够避开障碍物。

1.2 示教搜孔轨迹泛化

笔者提出的示教搜孔轨迹泛化的方法由3部分组成:

(1)示教数据的获取。获取轴运动时的平面坐标以及姿态,通过轴是否与孔产生接触力对搜孔任务分割;

(2)训练TP-GMM模型。TP-GMM模型训练搜孔过程中的子任务,通过最小化示教轨迹与泛化轨迹误差得到新任务的高斯模型参数;

(3)新任务的轨迹泛化。通过之前训练的新任务的模型参数,利用GMR回归即可生成新的搜孔轨迹。

示教数据的获取主要包括人示教的过程、示教数据获取、以及数据处理等以下几个步骤:

(1)示教过程。人执行搜索方形轴孔的过程主要包括轴在孔的表面移动,绕着Z轴旋转,同时越过障碍物到达孔的边缘;然后根据与孔的接触力调整轴搜孔的位置与姿态,最终完成搜孔;

(2)示教数据获取。它是通过OpTitraker系统捕捉轴在X/Y平面的坐标位置(x,y)和绕Z轴方向旋转的角度θ。该系统包括多个相机和放置于轴上端的标记球。相机通过捕捉轴上端反光的标记球位置来获取轴的位姿。在数据采集过程中尽可能平稳、快速地完成搜孔过程,避免造成较大数据噪声;

(3)数据处理。首先获取从搜孔的初始位置开始到孔中心的位姿信息;然后为了进一步减少坐标表现出偏离轨迹趋势的数据,需要对实际采集的数据进行滤波处理,保证运动均匀性和平稳性。滤波的方法采用滑动平均滤波算法,即取一段时间内数据的平均值作为某时刻的位置与姿态;最后将滤波完成后的数据和初始位置作差,得到位置与姿态的变化量,然后归一化到同一大小区间,作为TP-GMM模型的输入数据。

概率模型训练过程包括示教轨迹的分段、TP-GMM模型训练。完成模型训练后,根据新的初始点位置信息得到需要泛化的轨迹概率模型。示教搜孔轨迹按照是否与孔产生接触力和避开障碍物分为两段:第一段不与孔产生接触力但是需要避开障碍物;第二段与孔产生接触力,利用人的经验通过接触力改变搜孔轨迹完成搜孔。轴在第一段轨迹中需要避开障碍物,在该阶段利用TP-GMM模型进行训练,在初始位置变化后生成的轨迹仍然能绕过障碍物。而在后续的阶段则仍然利用原来人示教的轨迹进行搜孔。

首先,在对第一阶段的轨迹进行TP-GMM训练后,即可得到初始点位置变化的搜孔轨迹的高斯模型参数;然后,利用GMR得到时间t和相对位置坐标x的概率条件分布P(x/t)。当给定输入时间t,即可获得机器人搜孔时末端轴的相对位置x,进而得到机器人末端的位置;最后,通过对示教学习泛化的搜孔轨迹仿真,利用UR机器人验证新的轨迹能否成功搜孔。

2 自适应力控制插孔

笔者将机器人所需要装配的孔放置在悬臂的不锈钢板上。插孔的过程中,需要使得Z轴接触力Fz处于最佳的状态,最终使绕着X/Y轴旋转的力矩尽可能为0力矩,达到良好的力/位跟踪效果。

当机器人刚开始插入孔中时,利用基于六自由度阻抗控制器的恒力跟踪算法使得机器人具有柔顺性。其能够实时根据与孔的接触力矩大小调整末端轴的姿态。当轴与孔产生较大的接触力时,能够通过调整轴的位移量使得轴与孔的接触力为期望接触力0。最后利用模糊自适应控制调节Z轴方向期望接触力Fz,减小绕X/Y轴力矩的波动速度和误差变化。

为了使机器人末端所持的轴与孔接触时具备柔顺性,笔者通过阻抗控制建立机器人位置误差和力误差之间的动态关系。利用二阶模型来表达两者关系如下:

(5)

式中:M—惯性矩阵,M∈R6×6;D—阻尼矩阵,D∈R6×6;K—刚度矩阵,K∈R6×6;Δxdc—机器人末端位移向量,Δxdc∈R6×1;Ef—接触力/扭矩误差向量,Ef∈R6×1。

为了使得力传感器测量得到的力即为实际轴与孔产生的接触力,需要对机器人末端的轴6个方向的接触力/力矩进行重力补偿。机器人插孔时除Z轴方向的接触力外,其他方向的期望接触力/力矩均为0,保证机器人末端的轴与孔不产生较大实际的接触力。

针对插孔过程中环境刚度的变化,笔者利用模糊自适应控制器,调节Z轴插孔期望接触力的大小。在基于阻抗控制的位置内环,模糊调节器的输入为:

ef=Fd-fx

(6)

def=ef(i)-ef(i-1)

(7)

式中:ef,def—X轴旋转的接触力矩误差及其变化率;Fd—X轴期望接触力/力矩;fx—力传感器测量得到的实际绕X轴接触力/力矩;ef(i)—第i时刻的接触力/力矩误差;ef(i-1)—第i-1时刻的接触力/力矩误差。

模糊自适应控制器分为模糊化、模糊推理、模糊决策3个部分。其中,模糊化是将输入、输出量首先归一化到模糊子集。在离散域中,输入和输出变量是等同的,根据模糊规则定义输入、输出变量的语言值均被分为7个模糊子集(NB,NM,NS,ZE,PS,PM,PB),其分别对应的数值为[-3,-2,-1,1,2,3]。

模糊化利用下式,通过缩放因子建立变量和不同模糊域的关系,即:

(8)

式中:ki,ko—输入和输出的缩放因子;[Dh,Dl]—离散域变量范围;[Rh,Rl]—实际变量的范围。

输入扭矩误差论域设定为[-1.5,1.5];输入扭矩误差的变化率的论域设定为[-0.6,0.6];输出变量论域设定为[-2,2],因此,ki=1.3,ko=0.27。

模糊化后,模糊推理建立模糊规则过程。在建立模糊规则之前,所有变量的隶属度函数将所有变量映射到[0,1]之间的隶属度值。三角函数作为所有变量的隶属度函数。

模糊决策是为了获得输出插孔的期望接触力Fz的模糊量。根据输入的模糊规则的值,控制器利用查表法获得输出的模糊量,然后乘上输出量的缩放系数,即可得到实际的期望接触力。

3 机器人装配试验

3.1 示教学习搜孔试验

示教搜孔实验过程中,用OpTitrack系统捕捉人手持轴从初始位置搜孔的路径,仅仅记录下轴在X/Y平面的坐标位置(x,y)和绕Z轴方向旋转的角θ,示教多次后得到较为平滑的轨迹。相机分布在搜孔平台的周围,方形轴上方附着标记球,方形孔固定在虎钳上,保持静止不动。且方形轴与方形孔之间存在障碍物,需要绕过障碍物才能完成搜孔过程。

示教的轨迹为4条,将采集的三维空间轴的位姿数据归一化处理后,用GMM对三维空间中的轨迹建模,GMR得到回归轨迹。

示教轨迹建模与回归轨迹如图1所示。

图1 示教轨迹建模与回归轨迹

示教轨迹与初始点变化后新任务的轨迹如图2所示。

图2 示教轨迹和初始点变化后新任务的轨迹

利用TP-GMM在未示教的区域生成轨迹,相比现有的示教学习方法(如GMM),其优势在于不需要人再次在初始位置示教轨迹,只需知道泛化位置相对初始位置的坐标,然后模仿在初始位置人示教的经验,并重新生成搜孔轨迹,提高轨迹生成效率。

机器人装配试验图如图3所示。

图3 机器人装配试验图

图3中,方形轴固定在机器人的末端,方形孔固定在虎钳上,保持静止不动。搜孔过程包括两段轨迹:第1条轨迹包括从新的搜孔初始点B到终止点C,在该过程中需要避开障碍物;第2条轨迹从终止点C到整条轨迹的终点D所在的位置。图3中从C到D的1段轨迹是示教时轴在孔的边缘与孔接触力的变化调整运动所得。第1段从A到C生成的示教轨迹与孔没有产生接触力,且存在障碍物,故仅对第1段轨迹泛化,生成从B到C能够避开障碍物运动轨迹,再和从C到D的一段轨迹组合为新的搜孔轨迹。

通过试验验证,新生成的轨迹能成功搜孔。

3.2 自适应力控制插孔实验

试验平台包括UR5机器人,弹簧安装在力传感器之间具有缓冲作用;孔固定在变刚度的不锈钢悬臂梁上。实验分两步:

(1)将轴与需要插入的孔预先设置较小的偏置量,通过X/Y轴的力矩调节角度位移量,使得接触力矩为期望接触力矩。

当Fz逐渐变化时,绕Y轴角度位移差随Z轴接触期望力变化的曲线如图4所示。

图4 角度位移差随Z轴期望接触力变化曲线

图4中,机器人角度位移差Δxdc从0逐渐增大至最大值,然后减小为0,并在Z轴位置保持平衡;Fz逐渐从15 N增大至30 N时,Δxdc的最大值从-0.000 11 rad到-0.000 23 rad逐渐增大,且到达最大值所需时间逐渐变小;同时,实验中绕X轴力矩Mx和Δxdc变化趋势相同。由此得到:Fz越大,Mx越大,机器人角度位置调整速度越快,在相同的时间内角度位移更大。

当机器人对悬臂的不锈钢板插孔,刚开始插入孔中调整姿态时,钢板的刚度最小,相同的位移量所产生的绕X轴力矩Mx较小。当缓慢接触上时,钢板的刚度增大,相同的位移量所产生的Mx逐渐增大。因此,在刚开始对变刚度不锈钢板插孔时,为避免Mx波动较大,Fz应该由大变小,使得在最开始接触时Mx逐渐由大变小,角度位移调整速度由快变慢。故Fz调节规则如表1所示。

表1 Fz调节规则表

(2)机器人对悬臂不锈钢板插孔。轴孔的间隙误差为0.05 mm。第一次实验保持Fz=20 N不变,第二次在同一个初始位置插孔,利用模糊控制调节Fz由25 N减小至15 N。

两次插孔实验中,机器人Z轴实际接触力变化曲线如图5所示。

图5 机器人Z轴实际接触力变化曲线

绕X轴力矩误差Mx变化曲线如图6所示。

图6 机器人绕X轴力矩误差Mx变化曲线

第一次实验中,实际的Z轴接触力从30 N逐渐减小至25 N;第二次实验实际的接触力在20 N~25 N范围内波动。整体来看,在5 s~11 s时,轴调整期望接触力适应环境刚度变化。

第一次实验Mx主要在-0.2 N/m~0.2 N/m之间,比后者整体约减小30%。且在11 s~14 s时,变形梁形变基本稳定,形变量较小,两次实验实际竖直接触力基本趋于一致。但前者Mx较为平稳地从0.2 N/m增大到0.4 N/m;而后者Mx先稳定在最小值-0.3 N/m,然后突然增大到0.4 N/m。

以上两个实验现象说明:在最开始插孔阶段,随着环境刚度变化,若一直保持恒力接触孔,则会导致Mx较大;在后续变形梁形变稳定后继续调节时,波动范围较大,且变化速度较快;而利用模糊控制调节Fz由大变小能够适应环境刚度的变化,Mx相比恒力期望接触力减小30%;在变形梁形变稳定后,角度位移调整速度由快变慢,最终使得Mx的波动减小,变化速度减缓。

4 结束语

(1)本文提出了基于示教学习的搜孔轨迹泛化策略:主要包括获取示教数据、训练TP-GMM、GMR回归3个部分;

(2)采用六自由度阻抗控制使机器人具有柔顺性,并利用自适应模糊控制改变Z轴期望接触力,适应插孔时环境刚度的变化;

(3)研究结果表明:在存在障碍物的情况下,对于不同初始点位置的搜孔策略成功搜孔;在插孔过程中,调节期望Z轴接触力大小相比,其不变时绕X轴方向力矩波动速度低,且误差减小了30%。

猜你喜欢
插孔障碍物力矩
一种制动器力矩测量系统的研制及应用
高低翻越
SelTrac®CBTC系统中非通信障碍物的设计和处理
赶飞机
连接器插孔分离力异常分析与改进研究
会“劈叉”的插座
连接器刚性插针接触对的插入力研究
发动机阻力矩计算和起动机介绍
33°插座
弹性负载力矩下舵偏转角度的测量方法