基于重构容错的智能水下机器人定深运动控制

2015-11-11 01:33万磊张英浩孙玉山李岳明何斌
兵工学报 2015年4期
关键词:推进器执行器控制策略

万磊, 张英浩, 孙玉山, 李岳明, 何斌

(哈尔滨工程大学 水下机器人技术重点实验室, 黑龙江 哈尔滨 150001)



基于重构容错的智能水下机器人定深运动控制

万磊, 张英浩, 孙玉山, 李岳明, 何斌

(哈尔滨工程大学 水下机器人技术重点实验室, 黑龙江 哈尔滨 150001)

为保证智能水下机器人(AUV)在部分运动执行器出现故障的情况下,仍可在一定深度下顺利完成相应任务,提出一种定深容错运动控制策略。该控制策略针对某型智能水下机器人垂向推进器的故障,从实用角度出发,基于重构容错控制思想,同时结合自抗扰控制(ADRC)方法进行具体的控制器设计和实现。该控制策略中包括两种定深控制器设计,分别为垂推正常工况下和垂推故障情况下的定深控制,试图依靠相关故障信息,通过重构替换实现容错控制。在仿真实验中,该控制策略于不同环境干扰下进行了相应测试,并与结合PID方法的定深控制器进行了比较。结果表明,基于重构容错控制思想,并结合自抗扰控制方法的定深容错控制策略不仅有效,同时具有更好的抑制干扰作用,从而可以为机器人提供更优的控制效果。

控制科学与技术; 智能水下机器人; 容错运动控制; 重构容错; 自抗扰控制方法; 定深控制

0 引言

随着人类对海洋探测与开发的不断深入,可进行自主作业的智能水下机器人(AUV)受到越来越广泛的重视。其作为一类人工智能系统,需要具有高度的自主性、可靠性以及海洋环境适应性,才能完成复杂环境下的相应任务。对AUV而言,控制系统的容错控制能力是保障其能在故障情况下,安全运行的最后一道防线。

当前对于AUV的容错控制,从公开的资料可知,主要集中在两个方面:一方面是针对AUV上的传感器进行容错控制方法研究[1-3],如Liang等[1]通过使用滑动观测器来更换故障传感器输出的方式,进行容错控制策略的制定;朱大奇等[2]通过使用有限脉冲响应(FIR)滤波器输出替代故障传感器信号,进而实现传感器故障下的容错控制。另一方面是针对AUV上的运动执行器进行容错控制方法研究[4-6],如Podder等[4]通过在AUV上安装冗余推进器,建立冗余推进器的推力分配方案,从而达到容错控制的目的;Choi等[5]针对一安装有两台垂向推进器和4台水平推进器的AUV进行容错控制研究,试图建立在特定故障情况下使其完成三维特定路径跟踪的控制方法。但是,不论是针对“传感器的容错控制”,还是针对“运动执行器的容错控制”,各位学者的研究思路都基本一致,那就是针对出现的故障,尝试选用合适的新方法对原有出现故障的部分进行“替代”。由于AUV的很多任务都是在其到达指定深度之后开始的,因而研究AUV的定深容错控制,将具有重要的现实意义。

本文将根据前人研究问题的思路,从实用角度出发,尝试根据重构容错控制的思想,结合自抗扰控制器,来建立某型AUV的定深容错控制策略,并期望通过这种方式实现AUV在复杂环境下的定深运动。

1 AUV执行器布置及运动模型建立

1.1坐标系建立及控制对象执行器布局

为描述问题方便,本文在AUV垂向运动面共建立两个坐标系,分别是大地坐标系Eξζ({N})和艇体坐标系Oxz({B}),见图1所示。{N}的原点E可选择地球上任意一点,Eξ轴常以AUV的主航向为正,Eζ轴位于轴Eξ所在的垂直面,将轴Eξ顺时针旋转90°即是,{N}是AUV运动的惯性坐标系;{B}的原点O与AUV的重心G重合,Ox轴、Oz轴的位置确定方法与{N}中的规定相似。

图1 {N}坐标系和{B}坐标系的示意图Fig.1 General frameworks of {N} and {B}

本文研究对象是哈尔滨工程大学水下机器人技术国防科技重点实验室设计的某型AUV,其主体大致成细长回转体,艇体艉部安装有舵、翼和主推等运动执行器各1套,同时在主艇体的近艏部和近艉部分别安装有垂向推进器各1台,该AUV的运动执行器相关布置如图2所示,其中HF、VF1、VF2、L1和L2分别表示主推产生的推力、艏垂推产生的推力、艉垂推产生的推力、艏垂推距艇体重心的距离和艉垂推距艇体重心的距离。

图2 AUV运动执行器布置示意图Fig.2 Layout of an AUV’s motion executers

1.2运动学及动力学模型的建立

由文献[7]可知,当AUV在垂直面内运动时,其运动学模型及动力学模型可分别表示为(1)式和(2)式。

(1)

(2)

C(V)为向心力矩阵,可表示为

D(V)为阻尼矩阵,可表示为

2 AUV自抗扰控制器的设计

2.1自抗扰控制基本思想

目前的控制方法有很多,考虑到AUV实际运动的非线性以及工作环境的复杂性,所以尝试采用自抗扰控制(ADRC)方法进行AUV执行器的控制设计。ADRC是由韩京清提出的一种控制方法[8],其继承了传统PID“基于误差,消除误差”的思想,并使用新设计的非线性反馈来克服一些传统PID控制的缺点,具有超调小、控制精度高以及抗扰能力强等特点。

2.2ADRC控制器的设计

ADRC控制器主要包括:跟踪微分控制器(TD)、扩张状态观测器(ESO)、误差的非线性反馈(NLSEF)以及扰动估计补偿等部分。若以2阶ADRC控制器建立AUV纵向速度控制器为例[9],则其信息流框架如图3所示。

图3 AUV纵向速度ADRC控制器的信息流框架Fig.3 Information flow frame work of an AUV’s longitudinal velocity controller based on ADRC

图3所示的ud和u分别为期望纵向速度和AUV纵向速度输出,其他变量为ADRC控制器计算所需的中间变量。TD、ESO、NLSEF及扰动估计补偿各自都有若干种算法[10]。本文根据控制需求,将图2中TD、ESO、NLSEF及扰动估计补偿的算法分别设计如下所示。

TD:

(3)

式中:r为快速因子;h0为滤波因子;h为积分步长;fh为一个计算过程量。

ESO:

(4)

式中:β01、β02、β03为增益系数;δ为可调参数。

NLSEF:

x3=-fhan(e1,e2,r,h).

(5)

扰动估计补偿:

x4=x3-z3×b-1,

(6)

式中:b为可调参数。

(3)式~(5)式中fhan(·)和fal(·)的定义如文献[10]中所述。通过ADRC,可以将纵向速度的控制问题,转化为纵向速度偏差e1和纵向速度偏差变化率e2的镇定问题。在无外界干扰下,调整合适的控制参数后,分别设置期望速度ud为1 kn、2 kn和3 kn,则该速度控制器的控制效果如图4所示。

图4 ADRC纵向速度控制效果图Fig.4 Control results of an AUV’s longitudinal velocity controller based on ADRC

由图4可见,基于ADRC的纵向速度控制器具有良好的控制效果,并且可根据AUV运动执行器的实际情况,通过调整TD的参数来控制响应速度。

3 AUV的定深运动容错控制策略

3.1AUV的运动容错控制思路

对于AUV的运动容错控制而言,可简单将其分为“硬容错”和“软容错”两大类。“硬容错”是指单纯通过对重要运动执行器及易发生故障的部分提供备份实现容错,如在AUV的艉部呈“十字”对称安装推进器,当一台推进器出现故障时,就可以利用其它仍正常的推进器继续工作;“软容错”是指利用系统中不同部件在功能上的冗余来实现容错,如重构容错控制和鲁棒容错控制等[11]。基于“硬容错”的方法可靠性好,但需要消耗较多硬件资源,成本较高;而基于“软容错”的方法在硬件实现和软件设计方面灵活性较大,并且在成本方面,相比“硬容错”而言,消耗较低。由于一般情况下都会考虑AUV的艇体空间以及造价成本的限制问题,因而在AUV的运动容错控制方面不会完全采用“硬容错”,而是会在一定的硬件可靠性条件下,更倾向于使用“软容错”方法。

3.2AUV定深运动的重构容错

重构容错控制,指在设置故障诊断的基础上,根据诊断提供的信息,对故障部件进行隔离,并利用原有部件的功能冗余,使系统利用剩下的部件继续工作[12]。重构容错控制要求系统具有一定的冗余性,并使重构后的系统性能尽可能接近原有状态。从1.1节中可知,对于AUV在Eξζ二维面内,存在主推、垂推和翼等3个自由度的运动执行器,即该AUV在垂直面内的运动控制上具有冗余性。因而,针对垂向推进器的故障,可以根据重构容错控制的思想,设计图5所示的定深容错控制策略,即当垂推工作正常时,AUV只通过垂向推进器来达到指定深度,之后再执行下一步的任务;当垂推工作出现故障时,可以将垂向推进器关闭隔离,然后开启主推,通过与翼的联合控制来达到指定深度,之后再执行下一步的任务。

图5 AUV一般定深容错控制策略Fig.5 Information flow frame work of an AUV’s depth fault-tolerant control

进行这样的控制策略设计主要有两点原因:1)垂推正常工作时,AUV上的两个垂推都需要进行工作,一方面是保证AUV的深度控制,另一方面则是要保证将AUV的纵倾限定在一定范围内,因为纵倾过大会导致艇体上安装的部分传感器失灵,如超短基线发射器;2)一般情况下,AUV在定深情况下都会做巡航任务,对于垂向推进器而言,在AUV存在较大纵向速度时,垂向推进器的输出效率会有很大的削弱,这种条件下使用垂向推进器不会产生明显的控制效果,而使用舵翼控制则效果显著。基于以上两点,在一般定深任务中,当垂向推进器出现故障时,则不考虑垂推是否可以部分运行,都会直接将2台垂推完全关闭,改由“主推+翼”的定深控制方式进行重构取代。

下面分别说明“双垂推”控制和“主推+翼”控制两种工况下的控制器设计和实现:

1) 垂推正常情况下,“双垂推”控制。控制输入力为τ=[0,Z,0]T,通过设计深度ADRC控制器可以得到Z的具体数值,然后根据(7)式进行2台垂推的推力分配。

(7)

θd=A×(ζ-ζd)-1,

(8)

式中:θd为期望纵倾角;ζd为期望深度;A为可控参数。根据AUV的实际运动性能进行选择A,若AUV的机动性较好,则可将A取大些;若机动性较差,则应适当取小些。

图6 故障条件下AUV定深容错控制的信息流框架Fig.6 Information flow frame work of an AUV’s depth control method when vertical thrusters are in fault

AUV的深度和纵倾ADRC控制器的设计与2.2节中纵向速度控制器的设计相似。所以说,利用重构容错的方式,在AUV的执行器出现故障时,进行容错控制的本质就是在故障诊断的基础上,隔离故障执行机构,然后根据AUV任务需求,重新进行推力控制率设计的过程。

垂推故障有时存在特殊情况,此种情况是指AUV中只有1台垂向推进器出现故障,且所执行的任务为“低速定深巡航”时,可以在“主推+翼”的控制方式基础上,加入“垂推”,即“垂推+主推+翼”控制。因为此时垂向推进器并未因纵向速度的增加而出现输出效率的大幅衰减,且低速时翼的控制效果不明显。这种情况下,控制过程的信息流框架与图6中相似,不同之处在于“垂向输入”。在这种情况下,“垂向输入”不为0,而是应在垂向建立“垂推ADRC控制器”。以“艏垂正常,艉垂故障”为例,则此时控制力输入为τ=[X,VF1,M]T. 同时,由于只有艏垂工作,这样会额外产生VF1×L1的纵倾力矩。因而在AUV到达指定深度后,若想减弱甚至消除这种纵倾力矩的影响,则需要垂推自身进行调节,并通过翼协助进行平衡,即可通过设定某“特定纵倾角范围”,当AUV的纵倾角在这个特定范围内的时候,控制以深度为主;当AUV的纵倾角超过这个特定范围的时候,则暂时放弃深度控制,而改为纵倾控制。

“艉垂正常,艏垂故障”的情况与上述情况类似,在此不再赘述。

4 AUV容错控制仿真

4.1关于控制对象及仿真说明

控制对象的艇长4.5 m,质量700 kg,转动惯量Iy=1 430 kg·m2,其他仿真所需相关无因次化水动力系数如表1所示。

表1 AUV部分无因次化水动力系数

仿真所用AUV翼,在不同航速ud下的部分升力曲线如图7所示,可知翼在低速时的控制能力有限。

图7 不同航速下AUV翼的升力曲线Fig.7 Lift curves of AUV’s wing at different velocities

在进行仿真之前,需进行如下假设:

1)忽略环境干扰对垂向推力器的影响;

2)垂向推力器在正常工作状态下,正转和反转时具有相同的推力效果;

3)故障诊断是准确的,不存在误报、漏报等情况,一旦垂向推进器出现故障,就认为该推力器已经完全不能工作;

4)在垂向水深(Eζ向)环境中,存在如图8所示的随机干扰力。

图8 垂向随机干扰力Fig.8 Vertical disterbance

设定ADRC控制器的相关参数:

1)积分步长:h=0.01;

2)TD参数:h0=0.01,r=0.02;

4)NLSEF参数:r=0.02;

5)扰动估计补偿参数:b=1.

4.2定深容错仿真及结果分析

针对上述控制对象,在MATLAB/Simulink中进行运动仿真,得到如下结果:

1)垂推正常工作情况下,将期望深度设定为6 m,则定深控制效果如图9所示。

图9 垂推正常情况下定深6 m控制效果图Fig.9 Control result at 6 m in depth when vertical thrusters are in normal

在干扰存在情况下,深度ADRC控制器可以完成定深控制,并且可以从初始状态以近乎没有超调的方式进入稳态。其中,在进入稳态之前的深度变化率与垂向推进器的性能相关;在进入稳态之后会存在一些波动,这是由于外界干扰力有时会超过垂向推进器的调节能力造成的。

2)在垂推故障的一般情况下,根据容错控制策略,将定深控制方法切换为“主推+翼”控制,设定于3 kn航速下进行定深控制,为显示结合ADRC方法的容错控制器效果,将其仿真结果与在工程中广泛应用的PID控制器效果相对比。设定PID控制器的参数为:KP=500,KI=40,KD=1 300.

除在先前随机干扰条件下进行定深6 m的仿真外,还另外添加1组在垂向存在正弦干扰为f=10sin 0.5t条件下定深3 m的仿真。则在垂推故障的情况下,结合ADRC方法的定深控制和结合PID的定深控制对比结果如图10和图11所示。

图10 垂推一般故障情况下定深3 m和定深6 m控制对比图Fig.10 Control results at 3 m and 6 m in depth when both vertical thrusters are in fault

从图10可知,在不改变控制参数的前提下,两种基于“重构容错”思想,但结合不同控制方法设计的定深容错控制器均可以在干扰下完成相应深度控制,说明两种控制方法均具有较好的可扩展性,单从“定深控制角度”来说,二者控制水平几乎相当。

但从AUV的“期望任务执行角度”考虑,结合ADRC的容错控制方法要具有更优的效果,因为从图11可看出,这种控制器在整个定深过程中,以及进入稳态之后,相比而言都具有更小的纵倾变化,这将更有利于AUV上的声学设备,如侧扫声纳、浅剖声纳以及其他传感器的稳定工作,保证了AUV在执行相应任务中的高精度数据采集。

图11 垂推一般故障情况下定深6 m的纵倾对比效果及虚线框部分放大图Fig.11 Pitch control results at 6 m in depth when both vertical thrusters are in fault and enlarged detail of the dashed frame

图12 艉垂故障情况下定深4 m的控制对比图Fig.12 Control results at 4 m in depth when stern vertical thruster is in fault

图13 艉垂故障情况下定深4 m的纵倾对比效果及虚线框部分放大图Fig.13 Pitch control results at 4 m in depth when stern vertical thruster is in fault and enlarged detail of the dashed frame

控制结果表明,除在深度控制外,结合ADRC的容错控制方法在AUV的纵倾控制中,同样具有更优的响应速度以及控制精度。

5 结论

本文主要研究了基于重构容错思想,并结合ADRC的定深容错控制策略的实现。分别设计了AUV在垂推正常工作情况下和出现故障情况下的深度控制方法。仿真实验表明,该控制策略可以完成定深控制,并且在与结合传统PID的容错控制对比实验中表明,结合ADRC的控制器能够对外界干扰具有更好的抑制作用,可以在AUV处于部分执行器故障的情况下,带来更稳定的控制效果。本文当前只是进行了二维面内单故障条件下,深度容错控制的研究,因而,对于二维面内多故障条件下,甚至更复杂三维空间运动的容错控制研究,将是下一阶段的主要研究方向。

References)

[1]Liang X, Zhang J, Li W. Sensor fault tolerant control for AUVs based on replace control[J]. Sensors and Transducers, 2013, 158(11): 408-413.

[2]朱大奇, 陈亮, 刘乾. 一种水下机器人传感器故障诊断与容错控制方法[J]. 控制与决策,2009, 24(9):1335-1339.

ZHU Da-qi, CHEN Liang, LIU Qian. Sensor fault diagnosis and fault-tolerant control method of underwater vehicles[J]. Control and Decision, 2009, 24(9):1335-1339. (in Chinese)

[3]方少吉,王丽荣,朱计华. 水下机器人传感器容错控制技术的研究[J].机器人,2007,29(2):155-159.

FANG Shao-ji, WANG Li-rong, ZHU Ji-hua. Sensor fault-tolerant control of an autonomous underwater vehicle[J]. Robot, 2007,29(2):155-159. (in Chinese)

[4]Podder T K, Sarkar N. Fault-tolerant control of an autonomous underwater vehicle under thruster redundancy[J]. Robotics and Autonomous Systems,2001,34(1):39-52.

[5]Choi J K, Kondo H, Shimizu E. Thruster fault-tolerant control of a hovering AUV with four horizontal and two vertical thrusters[J]. Advanced Robotics,2014,28(4):245-256.

[6]Yang K C H, Yuh J, Choi S K. Fault-tolerant system design of an autonomous underwater vehicle-ODIN: an experimental study[J]. International Journal of Systems Science,1999,30(9):1011-1019.

[7]施生达.潜艇操纵性[M]. 北京:国防工业出版社,1995:149-159.

SHI Sheng-da. Submarine maneuverablity[M].Beijing: National Defence Industry Press, 1995:149-159. (in Chinese)

[8]韩京清. 自抗扰控制器及其应用[J]. 控制与决策, 1998, 13(1):19-23.

HAN Jing-qing. Auto-disturbances-rejection controller and its applications[J]. Control and Decision, 1998, 13(1):19-23. (in Chinese)

[9]Sun Y S, Zhang Y H, Zhang G C, et al. Path tracking control of Underactuated AUVs based on ADRC[C]∥Proceedings of 2013 Chinese Intelligent Automation Conference: Intelligent Automation & Intelligent Technology and Systems. Yangzhou, China: Spring Verlag, 2013:609-615.

[10]韩京清.自抗扰控制技术—估计补偿不确定因素的控制技术[M].北京:国防工业出版社,2009:243-261.

HAN Jing-qing. Active disturbance rejection control technique—the technique for estimating and compensating the uncertainties[M]. Beijing: National Defense Industry Press, 2009:243-261. (in Chinese)

[11]周东华, Ding X. 容错控制理论及其应用[J].自动化学报,2000,26(6):788-794.

ZHOU Dong-hua, Ding X.Theory and applications of fault tolerant control[J].Acta Automatica Sinica, 2000,26(6):788-794. (in Chinese)

[12]王仲生.智能故障诊断与容错控制[M].西安:西北工业大学出版社,2007:66-91

WANG Zhong-sheng. Intelligent fault diagnosis and fault tolerant control[M].Xi’an:Northwest Industrial University Press,2007:66-91. (in Chinese)

[13]李岳明, 万磊,孙玉山,等.考虑剩余浮力影响的欠驱动水下机器人深度控制[J].控制与决策,2013,28(11):1741-1744.

LI Yue-ming, WAN Lei, SUN Yu-shan, et al. Depth control of underactuated autonomous underwater vehicle considering residual buoyancy influence[J]. Control and Decision, 2013,28(11):1741-1744. (in Chinese)

AUV’s Depth Control Based on Reconstructive Fault-tolerant Control

WAN Lei, ZHANG Ying-hao, SUN Yu-shan, LI Yue-ming, HE Bin

(Science and Technology on Underwater Vehicle Laboratory, Harbin Engineering University, Harbin 150001, Heilongjiang, China)

A depth fault-tolerant control strategy is proposedto make sure an autonomous underwater vehicle (AUV) can finish the expected tasks successfully when its one or more motion executers are in fault. The control strategy is based on reconstructable fault-tolerant control theory, and the active disturbance rejection control (ADRC) is used to achieve the design and implementation of controllers. The strategy includes two control methods, in which one is used when the motion executers work in normal and the other is used when one or more motion executers are in fault. These two methods can change from one to another according to the fault diagnosis of the executers. In simulation experiment, the control strategy is tested in different environmental disturbances and compared with the strategy with PID. The results show that the depth fault-tolerant control strategy based on reconstructable fault-tolerant control theory and ADRC is not only effective but also has stronger disturbance resistance.

control science and technology; autonomous underwater vehicle; fault-tolerant control; reconstructable fault-tolerant control; active disturbance rejection control method; depth control

2014-05-23

中国博士后科学基金第5批特别资助项目(2012T50331);国家“863”计划项目(2008AA092301-2)

万磊(1965—),男,研究员。E-mail:wanlei@hrbeu.edu.cn

TP242

A

1000-1093(2015)04-0723-08

10.3969/j.issn.1000-1093.2015.04.022

猜你喜欢
推进器执行器控制策略
ROV平导管推进器水动力性能模拟研究
多场下压电喷油器执行器电学特性试验研究
更正说明
自动驾驶汽车执行器故障冗余算法
计及SOC恢复的互联电网火储联合AGC控制策略研究
基于递归模糊神经网络的风电平滑控制策略
基于CFD扇翼推进器敞水性能预报分析
X-431实测篇2010年奔驰B200空调执行器电机学习
现代企业会计的内部控制策略探讨
发挥考核“指挥棒”“推进器”作用