基于能量模型的柔性关节机械臂参数辨识方法*
2020-04-22王文辉
□ 王文辉
上海交通大学 机械与动力工程学院 上海 200240
1 研究背景
准确的动力学参数是提高机械臂控制性能和动力学仿真的基础,且传统的基于刚性关节的动力学参数辨识方法大多不能直接运用在柔性关节机械臂上。近年来,考虑柔性特征的关节建模和控制方法得到了学者关注。Spong[1]将柔性关节等效为恒定刚度的线性扭转弹簧,建立了柔性关节动力学模型。Al-Ashoor等[2]建立了关节刚度阻尼模型,并且基于该模型提出了柔性关节的自适应控制方法。目前针对柔性关节的参数辨识方法,大多基于关节刚度阻尼模型。
柔性关节的动力学参数辨识方法根据是否需要附加传感器可以分为两类。第一类方法通过附加辨识所需的传感器,可以得到更加精确的辨识结果。第二类方法通过对已有的传感器数据进行差分处理,或者对关节施加特定激励,可以获得额外的信息,并且在不附加传感器的情况下实现参数的辨识[3]。目前,这两类辨识方法大多集中在关节内部参数的辨识和低自由度机械臂动力学参数的辨识方面。考虑到实际使用的多自由度高性能协作机械臂大多安装有力矩传感器和双编码器,笔者针对具有双编码器和关节力矩传感器的柔性关节机械臂提出一种基于能量模型的柔性关节机械臂参数辨识方法,并且在六自由度柔性关节机械臂上验证了这一方法的有效性。
2 关节动力学模型
在关节电机端和减速器的输出端各安装一个位移传感器,在减速器和输出连杆之间安装关节扭矩传感器,关节结构如图1所示。图1中,qm为电机转子位移,τm为电机转矩,q为关节输出位移,τ为减速器输出力矩,r为减速器减速比,Bm为电机转子的转动惯量,B为输出连杆的转动惯量。
笔者将关节中谐波减速器和力矩传感器所产生的弹性近似等效为恒定刚度的线性弹簧元件,将关节内产生的阻尼近似等效为线性黏性阻尼元件,建立如图2所示关节动力学模型[4]。图2中,K为关节刚度,D为关节阻尼,Fs、Fv分别为库仑摩擦力和黏性摩擦力。
在关节内部,存在如下关系式:
(1)
(2)
3 机械臂能量模型
机械臂由连杆和关节构成,由于连杆与对应的关节固定连接,因此笔者将关节的惯性参数计入与关节固定连接的连杆惯性参数内。由此可见,机械臂的动力学模型参数包括连杆的惯性参数,关节的库伦摩擦因数、黏性摩擦因数、刚度系数及阻尼系数[5]。关节i和与其固定连接的连杆i所具有的动力学参数构成向量Xi为:
Xi=[Ixxi,Ixyi,Ixzi,Iyyi,Iyzi,Izzi,mixi,miyi,
mizi,mi,Fsi,Fvi,Ki,Di]
(3)
式中:Ixxi、Ixyi、Ixzi、Iyyi、Iyzi、Izzi为连杆i在原点位于连杆i质心的坐标系中的惯性张量矩阵中的参数;xi,yi,zi为连杆i的质心位置在连杆i固连坐标系中的三维坐标;mi为连杆i的质量;Fsi为关节i的库仑摩擦因数;Fvi为关节i的黏性摩擦因数;Ki为关节i的关节刚度;Di为关节i的关节阻尼。
基于文献[6]的结论,可以根据机械臂的构型计算由机械臂惯性参数和惯性参数线性组合构成的惯性参数最小集。通过辨识理论可以直接辨识惯性参数最小集中的参数。
机械臂从静止状态到运动过程中某一时刻的能量变化可以描述为:
(4)
由于电机转子的质量远小于连杆的质量,并且电机转子的平动速度远慢于转动速度,因此可以忽略电机转子平动对机械臂能量产生的影响。机械臂功能Ek为:
(5)
考虑关节模型,可以得到:
(6)
式中:τ为由各个关节输出端力矩组成的向量。
机械臂的重力势能Ep为:
(7)
机械臂的动能和重力势能均可以表示为连杆惯性参数的线性化形式。
弹性部分存储的能量Es和阻尼部分耗散的能量ED分别为:
(8)
(9)
库伦摩擦耗散的能量Efs和黏性摩擦耗散的能量Efv分别为:
(10)
(11)
最终可以得到机械臂在运动过程中输入能量与各参数的线性关系为:
(12)
式中:E为机械臂动力学参数与机械臂能量的线性关系函数;Y为由机械臂动力学参数构成的向量。
4 动力学参数辨识
通过在机械臂的运动过程中力矩传感器采集的力矩信号,以及电机端和输出端的位移、速度信号,可以计算某一时间段内向机械臂系统输入的能量,并建立机械臂动力学参数的线性方程。在一段运动过程中多次采样,可以构建机械臂动力学参数的线性方程组:
Einput=HY+w
(13)
式中:Einput为每一个采样时段内由输入能量构成的向量;H为每一个采样时段内由建立的线性方程中各动力学参数的系数构成的矩阵;w为误差向量。
通过最小二乘法求解,使误差向量的二范数最小,可以求得需要辨识的机械臂动力学参数。
为减小传感器噪声对辨识结果的影响,提高参数辨识的精度,需要对辨识过程中使用的激励轨迹进行优化[7]。考虑到观测矩阵的条件数表征了传感器误差与辨识结果误差之比的上限,笔者将减少观测矩阵的条件数作为激励轨迹的优化目标,选取有限傅里叶级数作为激励轨迹[8]。
5 参数辨识试验
笔者针对装有双编码器和力矩传感器的六自由度柔性关节机械臂进行参数辨识试验。辨识试验使用的机械臂构型如图3所示,实物如图4所示,其Denavit-Hartenberg(DH)参数见表1。表1中,a为机械臂的杆长,α为机械臂的扭转角,d为机械臂的偏距[9]。
表1 机械臂DH参数
试验采取五阶傅里叶级数作为激励轨迹,运动周期为10 s。根据试验所使用的机械臂的性能,确定各个关节可行的速度上限为1.5 rad/s,加速度上限为3 rad/s2。考虑到机械臂的构型,为防止运动过程中发生碰撞,将关节的位移范围限制在-1.5~1.5 rad之间。根据上述条件,求得激励轨迹,如图5所示。
对于编码器采集到的位移信号和力矩传感器采集到的力矩信号,经过时域平均处理后,再经过低通滤波器处理。对位移信号采用中心差分法,获得了速度数据,避免滞后效应对辨识结果所产生的影响[10]。根据机械臂的位移、速度与力矩信号,计算运动过程中的能量输入和观测矩阵,通过最小二乘法估算机械臂的动力学参数。
为验证参数辨识结果的准确性,笔者基于另一条轨迹进行交叉验证试验。试验采集了运动过程中的实际力矩数据,使用基于柔性关节模型和刚性关节模型两种辨识方法得到的动力学参数,并根据两组动力学参数和运动过程中的位移、速度、加速度信息,分别计算了关节力矩的理论值。
试验结果对比如图6所示。图6中实线为运动过程中实际采集到的力矩值,虚线为基于柔性关节模型辨识结果计算得到的理论力矩值,点划线为基于刚性关节模型辨识结果计算得到的理论力矩值。计算两组计算值在每个关节上与实际测量值的均方根误差,结果见表2。
表2 辨识结果力矩计算值均方根误差 (N·m)
由图6和表2的结果可知,对于负载较高的关节,两种方法都可以实现比较准确的力矩预测;对于负载较低的关节4、关节5、关节6,基于柔性关节模型的辨识方法在精度上更具有优势。
6 结束语
笔者基于六自由度柔性关节机械臂的柔性关节特征,将关节的刚度和阻尼特性引入机械臂的动力学参数最小集,通过基于能量模型的辨识方法实现了参数的辨识。
试验结果显示,这一方法相对传统的基于刚性关节模型的辨识方法在精度上更具有优势。当然,由于关节力矩传感器及位移传感器的精度问题,最终辨识结果仍有一定误差,一部分关节计算力矩与实际力矩相差较大,这是未来需要完善的方向。