王懿,张爱霞,郭瑞岩,张成良
(1.中国石油大学(北京),北京 102249;2.中国石油集团海洋工程有限公司,北京 100028)
水下机器人在海洋作业环境中发挥重要作用,如何保证水下机器人所携带的多自由度机械臂系统在流阻影响下的控制精度,是水下机器人安全作业的关键. 水下机械臂在流阻作用下的运动预测既需要常规方法描述机械臂空间运动及其特性,又需要结合水动力学中流体作用于机械臂各关节的阻力矩,才能最终准确得到控制系统所需要的关节力和力矩[1].
在国内外相关研究中,Kawamura等[2]和Sakagami等[3]提出了一种水下机器人机械手动力学分析方法,通过计算机迭代学习得到了流体附加质量、流体阻力和浮力等水动力影响因素. Padir等[4]研究了两种携带同一刚性负载的UVMS系统,提出了将广义速度与任务空间速度结合的运动学模型. 国内水下机器人方面,中国科学院沈阳自动化研究所的范云龙[5]和张钰[6]分别设计了五功能和七功能的中等负载水下电动机械手,基于Kane方法建立了考虑机械臂深海工作环境中流体阻力的动力学模型. 肖治琥[7]基于Lagrange方法建立了考虑流体阻力作用下的水下三自由度机械手系统动力学模型,并开展了船池对照试验以验证其动力学模型. 林江[8]设计了专用水下三关节电动机械手(autonomous underwater vehicle,AUV),通过Newton-Euler动力学递推算法进行了动力学分析和力矩影响研究. 高涵等[9]基于微分变换法建立了水下机械手简化动力学模型,对比分析了流体水阻力系数和附加质量力系数对关节力矩的影响,并得到了浮力力矩的影响大于搅水力矩的结论.
本文针对一种应用于深水环境的六自由度机械臂,基于Denavit-Hartenberg方法(D-H方法)进行了运动学分析,综合运用迭代Newton-Euler矢量力学方法和Morison方程进行了动力学分析并得到六自由度机械臂各关节的水动力矩.
在多自由度机械臂的运动学方程建立之前,首先通常采用标准D-H方法来确定各相邻关节轴线的位置关系,D-H方法将关节之间的连杆视为刚体,在机械臂每个连杆上建立一个坐标系,通过齐次坐标变换来实现两个连杆上坐标的变换,在多连杆串联的系统中,多次使用齐次坐标变换,就可以建立首末坐标系的关系. 空间中相邻两个关节轴线的公垂线为机械臂等效连杆的长度,用ai-1表示,而参数di表示沿着公轴线方向的偏置距离;将相邻两关节轴线投影到其公垂线所在平面上,二者的夹角称为两轴线的扭角αi-1,扭角αi-1的方向由右手法则确定;相邻的两个连杆之间由关节轴连接,当二者不在同一平面时,通常用θi来表示机械臂关节角.
如图1所示的六自由度机械臂各连杆均固连于对应坐标系下的旋转关节,由D-H方法得到连杆参数如表1所示.
表1 六自由度机械臂D-H参数表
(1)
六自由度机械臂是一种复杂非线性变量耦合的自动控制系统,对于这类系统的动态控制除了需要掌握其空间位置和姿态以外,还需要了解其运动控制所必要的力和力矩.
机械臂的链式结构特性使其力和力矩需通过前一连杆向后一连杆传递,因此可以通过建立连杆间的速度传递关系来进一步实现力和力矩的求解. 在各旋转关节的角度和角速度已知的情况下,可以根据机械臂运动学和各连杆坐标系质量分布得到驱动关节电机所需要提供的输出力矩. 基于上述迭代思想,根据Newton-Euler公式可以将机械臂关节驱动力和力矩分为以下两步进行计算:
① 连杆1向连杆n的速度、加速度迭代计算.
根据速度迭代计算,可以得到对于第i+1个旋转关节的角速度,有
(2)
(3)
连杆i+1坐标系原点线加速度为
(4)
连杆i质心线加速度为
(5)
(6)
(7)
② 连杆n向连杆1力、力矩迭代计算.
在得到相邻连杆的力和力矩结果之后,可以通过力和力矩平衡方程得到:
作用在连杆i上的所有力的矢量和
(8)
作用在连杆i上的所有力矩之和
(9)
对于柱体任意高度Z处的水平流体阻力为
(10)
对于单位柱高的圆柱体上水平流体阻力为
(11)
τH=τD+τM=
(12)
式中:τD为流体拖曳力矩;τM为附加质量力矩.
运动Newton-Euler迭代法对水下多自由度机械臂建立形式如下的动力学方程为
(13)
根据多自由度机械臂连杆间速度传递矩阵,可计算获得各连杆速度相对于坐标系{i}原点的线速度矢量. 例如:关节1(基关节)固连于地面静止端,关节轴线竖直向上所在坐标系为{1}坐标系. 机械臂连杆间速度传递的基本假设为基坐标系{0}的原点速度为0,考虑连杆2、连杆3以及连杆5的运动形式,可以得到关节1(基关节)所受流体拖曳力矩τD为
(14)
分别将其连杆速度矢量代入流体阻力矩计算公式中,可得关节1所受附加质量力矩τM为
自然景观是地理知识的重要组成部分,因此新时期小学语文教师在实际展开教学活动的过程中,要想实现地理知识的有效渗透,结合教学内容有针对性进行自然景观相关知识的讲解具有重要意义。
(15)
考虑到电机通常安装在运动关节的位置上,假定机械臂连杆的质量分布集中于关节旋转中心,则每个连杆的质心矢量为
(16)
机械臂基座固定不动,因此有:
(17)
根据六自由度机械臂Newton-Euler动力学公式,代入迭代方程式(2)~(9)中,可以得到六自由度机械臂动力学方程正解中各连杆速度和加速度. 相邻连杆的转动变换公式由连杆变换矩阵正向递推可以得到机械臂各连杆的角速度、角加速度、线加速度、质心线加速度. 例如:最靠近机械臂基座的连杆1的速度、加速度迭代计算公式为
(18)
而相邻的连杆2速度、加速度迭代计算公式为
(19)
类似地,通过设定机械臂各连杆的角度变化函数可以分别得到连杆3、4、5、6的速度和加速度正向递推结果. 而通过将求得的各连杆速度和加速度代入式(12)~(15)中可以反向递推得到六自由度机械臂各连杆的力和力矩.
基于上述建立的考虑流阻影响的水下机械臂动力学模型,采用Matlab软件进行仿真分析. 通过设计六自由度机械臂各运动关节的角度变化函数,来定量研究水下机械臂连杆和关节所受的力与力矩,并通过对比静水环境和空气环境两种条件下的关节力矩差异来分析流体阻力对水下机械臂关节驱动力矩的影响. 六自由度机械臂的前三关节为起承载作用的主关节,分别采用斜率较大的角度变化函数;后三关节均为精确操作的腕关节,采用相同的斜率较为平缓的角度变化函数. 关节1~6的关节角度的函数变化如图2所示.
基于六自由度机械臂水下动力学方程和图2所示,机械臂运动轨迹可求得连杆坐标系下各关节所受的流体拖曳力矩τD和附加质量力矩τM,二者的矢量和为关节所受的流体阻力矩τH. 其中关节1所受的流体阻力矩τH以及拖曳力矩τD和附加质量力矩τM如图3所示,而关节2至关节6的拖曳力矩τD和附加质量力矩τM如图4(a)和图4(b)所示.
根据上述六自由度机械臂水动力方式解算方法,结合图2规划的机械臂运动轨迹,可得到空气中关节1(基关节)的驱动力矩τA如图5所示.
将空气中关节1的驱动力矩τA与关节所受的流体阻力矩τH结合,可得到其在水下条件下所受到的力矩τB. 下图6(a)~(c)分别表示了0~3 s、3~4 s以及4~5 s的空气中条件下关节1力矩τA和水下条件下关节1力矩τB的变化对比情况.
当机械臂6个关节按图2设计的关节角变化曲线运动时,空气中关节1(基关节)的最大驱动力矩达106.0 N·m(t=0.57 s时),反向驱动力矩最大达-62.2 N·m(t=2.40 s时). 而考虑流体作用力时,距离关节1较近的关节2(肩关节)关节3(肘关节)所受的的流体拖曳力矩τD和附加质量力矩τM较大,因此关节力变化曲线受前三个关节的影响较大,关节1(基关节)的水下最大驱动力矩可达108.7 N·m(t=0.57 s时),水下反向驱动力矩最大可达-65.3 N·m(t=2.40 s时). 通过分析图6所示关节1在空气中关节力矩τA和水下关节力矩τB的变化曲线,可以得到各个区间二者的差值与空气中力矩的比值,即水动力对关节驱动力的影响因子γ.
由此可见,在上述机械臂运动轨迹条件下,关节1所受最大流体阻力矩相对于机械臂空气中驱动力矩的影响最大可达8.696%. 因此在设计水下机械臂的运动控制系统时,需要考虑其水动力对控制力矩的影响.
基于迭代Newton-Euler方法和Morison公式建立了考虑流体阻力影响的水下六自由度机械臂的动力学模型,通过Matlab软件求解了动力学方程以及水动力学流体阻力项,并通过案例分析研究了流体阻力对机械臂驱动力的影响程度. 得到如下主要结论:
① Newton-Euler迭代法在处理多自由度机械臂动力学方程建模的问题时,物理参数意义明确,且极大降低了算法求解的计算量,利用计算机编程可以完成诸如机械臂等复杂多刚体的动力学分析需求;
② 按照设计关节角变化曲线运动且不考虑关节摩擦时,六自由度机械臂关节1(基关节)最大瞬时流体水阻力矩占其空气中关节力矩的比例可达8.696%;
③ 对于水下机械臂的控制系统,流体阻力矩的存在增加了控制难度,影响了其末端执行机构的定位精度,因此需要在设计控制策略时考虑水阻力矩的影响.