水中航行器控制分配技术应用现状
2020-03-09李岳明王小平张英浩庞家明闫力新
李岳明,王小平,张英浩,庞家明,闫力新
(哈尔滨工程大学船舶工程学院 水下机器人技术重点实验室,黑龙江 哈尔滨 150001)
0 引 言
近年来,过驱动航行器越来越流行,例如飞行器F-22战机,水下航行器X舵潜艇,陆地上的独立四轮驱动汽车。过驱动航行器采用多操纵面布局,相比于传统布局,能提供多种操纵面组合方式进行运动控制,极大提高了机动性、操纵性、容错性。增加操纵面的同时也带来复杂的控制分配问题,控制分配相关研究始于20世纪90年代,经过几十年的研究发展,飞行器控制分配技术已经比较成熟,常见的控制分配方法有广义伪逆法、加权伪逆分配法、直接分配法、链式分配法、数学规划法等[1-3],以及考虑动态约束的动态分配[4-5]。
相比飞行器,水中航行器(包括特种船舶、海洋平台、智能水下机器人等)在控制分配技术的研究还不够深入。将来人们必将对水中航行器的操纵性提出更高的要求,X-舵潜艇是一种具有代表性的过驱动水中航行器,德国212A型潜艇,荷兰“海象”级潜艇都采用了X-舵,X-舵拥有比十字舵更小的回转半径等优点。现代船舶设计中,船舶通过装备多个推进器、舵、减摇鳍等执行机构来提高操纵性,981海洋钻井平台就配备8台全方位推进器[6]。除船舶外,许多ROV和AUV也涉及过驱动控制分配[7],沈阳自动化研究所研制了一型X-舵AUV[8],但是采用对角联动的控制方式,是独立四舵X舵的一种特殊操纵组合方式。关于AUV的控制分配技术研究并不多见,特别是在基于舵的控制分配技术方面。已经成功应用于水中航行器的控制分配方法有伪逆法、伪逆再分配法[9]、最优化分配法[10]、不动点迭代[11]、数学规划法[12]等。本文重点分析水中航行器的控制分配技术应用研究现状,并对将来的发展方向做一个展望。
1 过驱动航行器
过驱动系统是一类控制输入数(执行机构数量)多于输出数(期望产生力矩数)的系统,其基本思想是采用多组执行机构实现近似的控制效果,并通过控制分配将控制指令合理、有效地分配到各个执行器上。过驱动系统不仅可以提高航行器的机动性,可靠性,并且具备灵活的操控组合方式,能提高系统容错性。具有代表性的过驱动航行器对象如图1所示,采用X舵的AUV,拥有4个独立的舵叶。图2为采用X舵的德国212A型潜艇,图3为上海交通大学研制的配备8台推进器的深海作业型ROV,图4为法国ECA公司的Alistar 3000型AUV。
图1 X-舵AUVFig. 1 X-rudder AUV
图2 德国212A型潜艇Fig. 2 German 212A submarine
2 控制分配问题描述
对于虚拟控制指令v(t)∈Rn,操纵面输入为u(t)∈Rm。实际输入与期望控制力矩的映射可以表示为f:。操纵面与期望力矩之间的线性关系可以表示为:
图3 上海交通大学4 500米级ROV“海马”号Fig. 3 Shanghai Jiaotong University 4 500 m ROV Haima
图4 法国ECA Alistar 3 000 AUVFig. 4 The ECA Alistar 3000 AUV of France
约束条件式中:B为控制效率阵;u为 所有执行机构组成的操纵向量;v为期望操纵力矩,在水下机器人中,由俯仰力矩、偏航力矩和滚转力矩组成;和分别为所有执行机构约束向量。
非线性的分配关系可表示为:
3 水上航行器推力控制分配
文献[13]论述对于船舶运动控制,通常安装多个可以实时改变推力和转矩的执行机构,包括螺旋桨、舵、鳍等装置,由它们共同产生控制器计算得到系统所需要的力和力矩,而控制分配技术是关键。
3.1 基于增加约束的控制分配法
在船舶增加了各种操纵机构后,控制分配的组合方式也变得多样化,这给求解问题带来一定难度。基于约束的控制分配是其中简单有效的控制分配方法。增加约束后,求解未知数的个数等于方程个数,将多解问题变为一个求解线性方程组唯一解的问题,使计算简单方便,但解的精度可能不高,也不一定是最优解。增加约束条件主要靠经验,但同时也要根据实际目的,遵守简单实用的原则。文献[14]将此方法用于控制分配,分配模型如下:
式中:τ为所需推力(矩);E为推进器配置矩阵;F 为各个推进器产生的力(矩)矩阵。由于求得τ有4个未知量,但是只有3个等式,因此会有无穷解,甘永在其论文中提出了增加约束的一种控制分配方法,例如增加
文献[15]也将此方法用于水下机器人的控制分配。
3.2 伪逆法
控制分配技术中应用最广,最具代表性的当属伪逆控制分配,许多的控制分配方法都是以伪逆控制分配为基础进行开发。伪逆法[16]具有计算量小和易于实现等优点,但没有考虑操纵面的饱和(位置和偏转速率)约束限制,也不能实现可达集的全覆盖。Bordignon等[17]通过F-18HARV实验得出伪逆法只可实现可达集中的部分虚拟指令,最好的情况也只能达到其中的42.7%。
这里所介绍的伪逆是Moore-Penrose逆矩阵,可以通过证明矩阵的伪逆是唯一的[18],欠定方程组的伪逆解是方程组的一个可行解,如下:Bu
式中: 为 的伪逆矩阵,为一个可行解。基于伪逆法控制分配方法还有伪逆加权分配法。
3.3 链式分配法
Roger Skjetn等[9]提出了基于伪逆法的通用递归算法用于控制分配,并且为期望产生的各方向力矩设定优先级,这样做的好处是:递归设计将确保首先在最高优先级控制方向上使用可用控制容量,然后在次要方向上使用剩余容量,依此类推。换句话说,避免在无法实现可行性的情况下违反τ的所有方向,而只是那些只有最低优先级的可行性。此方法与文献[19]中应用于飞行器的链式分配法大同小异,其算法步骤如下:
步骤1:
式中:f1为第1优先级需要产生的力矩。如果步骤1的分配已经满足要求,计算将结束,并且f2,r为0,如若不满足要求,将跳到步骤2。
步骤2:
如果步骤2仍然不满足,将会产生步骤3,以此类推,直到满足分配要求,或者无法再继续分配为止。这样就保证了即使超出了执行器约束,船舶总体上仍然会朝着期望的方向运动,违反的只是低优先级的分配。此方法在一艘极地航行的船舶上进行了实验,效果良好。
3.4 数学规划法
数学规划法也是常用的控制分配方法,可将控制分配问题转化为线性规划问题。序列二次规划方法(Sequential Quadratic Programming,SQP)是其中求解约束问题的最有效方法之一。其基本思想是:在每一步迭代步骤通过求解一个二次规划子问题来确立一个下降方向,以减少价值函数来取得步长,重复这些步骤直到求得原问题的解。文献[14,20]中就使用了二次规划分配法。
数学规划法是以某一个优化目标函数而设计的一种方法,用此方法求得解能达到最优,并且在满足约束以及其他要求的情况下能够保证分配精度。
4 水下机器人控制分配
目前,已经开发出了功能各样水下机器人,用于满足各种不同的作业需求。常见的有载人潜水器;ROV,即遥控无人潜水器,无人水下航行器的一种,通过脐带缆与母船连接,母船为其提供能源,功能多种多样。AUV,其自带能源,自推进,自主控制的潜器,不需要母船为其供电,通过自身携带的能源,航程从几十千米到几千千米不等。3.2节提到的伪逆法也应用于水下机器人。
4.1 加权伪逆再分配法
Edin Omerdic和Geoff Roberts[21]在2004年针对ROV提出了一种加权伪逆再分配法。首先假定推力大小与输入为线性关系,并且执行器产生力矩u与期望力矩τ的映射关系也为线性,表示为:
首先根据推进器的布置与安装情况求出操纵矩阵B,在矩阵B中加入W权重矩阵,用伪逆法求出一个可行解:
在2016年的印度控制会议上,Mohit.achada等[22]提出了一种加权力矩分配方法,用于控制分配,并且对超出约束的分配结果进行截断处理。
4.2 数学规划算法
数学规划法不仅应用于船舶控制分配中,也应用于水下机器人。文献[23]将其用于7 000 m载人潜水器有约束非线性控制分配,并且其采用的半物理仿真平台实验表明该优化控制分配算法的正确性和有效性,在控制量过大时,该算法可以给出稳定的优化解。文献[24]将其用于舵桨联控式水下机器人容错控制,对比于单纯的加权伪逆法,能够解决控制量超出饱和限制的问题。
4.3 不动点迭代法
不动点迭代法是研究较多的方法之一,它利用递归不动点紧缩算法,易于编程实现,对于大多数输入指令是快速而有效的。Omerdicd等将此方法用于过驱动的URISROV。小型AUV都不会装备太多的推进器,因为其携带的能源有限,为了满足操纵性要求,一般会装备水平舵与垂直舵,也有装备X-舵的AUV,拥有4个可以独立运作的舵叶,直接对其舵角进行控制分配。张英浩等[11]针对X-舵的运动控制提出了一种基于Levy flight理论的控制分配方法,并且与基于伪逆不动点迭代的控制分配方法做了对比。迭代格式为:
式中:µ,v 为随机矩阵。基于Levy flight理论的控制分配方法可以达到原先的伪逆迭代控制分配一样的效果,但是却减少了舵的操纵量。
4.4 智能分配法
智能分配是一种新型的控制分配方法,与数学规划法不同,其不需要依赖目标优化函数的梯度信息,可以设计更接近系统实际情况的凸空间集搜索,收敛快,最终解的精度高,例如粒子群优化算法。但是智能控制分配算法计算量比较大,对硬件要求高。刘通[25]在研究气垫船舵桨联合控制分配问题上应用了粒子群优化算法。
除了以上分配方法,用于水下机器人的还有基于约束的控制分配[15],以及Tarun Kanti Podder等[26]的将控制律与控制分配结合的分配方式。
5 结 语
水中航行器在控制分配技术应用了许多控制分配方法,例如伪逆法、伪逆再分配、数学规划、不动点迭代等。在AUV的研究当中,航程是一个重要的指标,而控制分配方法的优劣可以很大程度上影响能源的消耗,将来必将对AUV、ROV的操纵性提出更高的要求,更多的过驱动水下机器人将被设计出来,因此有必要继续研究控制分配技术。现阶段水下机器人的控制分配还存在以下几个问题:
1)将期望产生的力矩与输入看作是线性关系,实际上多为非线性关系,这与实际情况不符。
2)推进器与推进器之间,执行器与载体的耦合效应没有充分考虑。
3)没有考虑执行器的动态约束,例如舵的偏转速度,执行舵角越大,舵到达指定位置的时间越长。
对于将来控制分配技术的发展,智能控制分配有很大潜力,智能控制分配收敛速度快、精度高,结果一般能达到最优,而且适合解决控制分配当中的非线性问题。例如采用神经网络的控制分配,拥有强大的非线性逼近能力。现在可用于控制分配的智能算法包括神经网络、粒子群优化、遗传算法等。但是人工智能对硬件要求比较高,而水下机器人搭载的硬件设备少,性能不够高,如何将人工智能融入到控制分配中,还需要更多的研究。