2. 奥克斯集团有限公司 变频技术研究所,浙江 宁波 315191
2. Frequency Conversion Technology Institute , AUX Group Limited, Ningbo 315191, China
海洋蕴含着丰富的矿产资源、生物资源、可再生能源等。然而,深海环境极端复杂。自主水下航行器(Autonomous Underwater Vehicle, AUV)以其航程远、可重复使用等特点,成为了人类认识和探索海洋领域必不可缺的工具。精确的路径跟踪控制是AUV实现自主航行的关键技术之一,受到国内外学者的广泛关注。
Jose等[1]针对编队AUV的路径跟踪控制,将多个分层任务结合在基于零空间的行为算法中,以安全引导六自由度AUV跟踪控制。Habib Choukri等[2]提出一种改进的自抗扰控制器,用于在海浪和海流引起的显著变化扰动下AUV的路径跟踪控制,实现在周期性干扰的情况下进行高性能跟踪。Tanakitkorn等[3]针对工作在一定航速范围内的过驱动型悬停AUV,提出了一种滑模航向控制方法,即使受到外部干扰,也能产生一致和稳健的性能,王宁等[4]提出一种基于有限时间观测器的制导控制方法。该方法能在有限时间内精确获取未知侧滑角,显著提升了跟踪的控制精度。Liang等[5]利用自适应积分视线制导和非线性迭代滑模控制器解决了欠驱动AUV在复杂曲线下的路径跟踪问题。王伟等[6]针对容错控制,提出一种容错转向样机系统,实现动力学控制、自主故障检测与容错控制。
现有的研究工作大多围绕特定控制算法或策略开展,如滑模控制[7 − 8]、PID控制[9 − 10]、反步控制[11 − 12]等。但这些算法未能综合考虑AUV路径跟踪控制的各项关键性能指标,同时也伴随着抖振、鲁棒性差、响应时间长等局限性与待改进之处。考虑到AUV运动系统具有时变性、强耦合性、非线性特征及控制约束条件,而模型预测控制(MPC)具有前馈-反馈特性、自适应能力强等优点,并能解决其他控制方法不易解决的多变量约束问题。因此,本文选择MPC作为控制算法解决AUV的三维路径跟踪控制问题。
1 基础知识与问题描述 1.1 基础知识引理1 [13]考虑如下系统:
{˙ε1=ε2−P1sig(n+1)/(n+1)22(ε1),˙ε2=−h−P2sign(ε1)。 | (1) |
式中:
AUV在实际的水下航行中具有强耦合、强非线性和复杂度高等特点,因此在建立AUV模型时,不能忽略系统内部未建模动态和外部干扰,并要考虑障碍物的约束。本文忽略横摇运动的影响,建立五自由度数学模型如下:
{˙η=Rg−v′v,M˙v=τ−C(v)v−D(v)v−g(η)+τδ。 |
式中:η为AUV的位姿状态;
Ry,z=[cosψcosθ−sinψcosψsinθ00sinψcosθcosψsinψsinθ00−sinθ0cosθ000001000001/cosθ], |
M(v)=diag(m11,m22,m33,m44,m55), |
D(v)=diag(d11,d22,d33,d44,d55), |
g(η)=[0,0,0,ρg∇GMLsin(θ),0]T, |
C(v)=[000m33w−m22v0000m11u000−m11u0−m33w0m11u00m22v−m11u000]。 |
本文引入虚拟向导概念,在参数化的期望路径上引入Serret-Frenet坐标系,跟踪误差模型:
{˙xe=Ucosψecosθe+ye˙ψFcosθF−ze˙θF−utar,˙ye=Usinψecosθe−xe˙ψFcosθF−ze˙ψFsinθF,˙ze=−Usinθe+ye˙ψFsinθF+xe˙θF,˙θe=q−˙α−cc(ϖ)˙ϖ,˙ψe=r/cosθ+˙β−ct(ϖ)˙ϖ。 | (2) |
假设1 欠驱动AUV的期望路径,连续可微,并且期望路径的一阶导数和二阶导数均有界。
假设2 假设系统内部的不确定项和外部扰动构成的混合不确定项
考虑欠驱动AUV的动力学模型和路径跟踪误差模型,在假设成立的前提下,设计基于非线性模型预测控制的欠驱动AUV三维路径跟踪避障控制方法,实现欠驱动AUV在有界未知环境干扰和模型未知的条件下,仍能有效跟踪期望路径并避免与障碍物之间发生碰撞。
2 三维路径跟踪控制方法设计本文将控制器设计分为三部分:制导部分、控制部分以及有限时间扩张状态观测器部分。本文设计的制导律在遇到障碍物时由变速视线制导(SVLOS)切换到人工势场制导,通过计算势场合力对AUV的影响,设计制导律来躲避障碍物。
1)构建全局引力势场
引力势场引导着AUV抵达或跟踪目标点。主要与目标和AUV的实时位置和速度差相关。其中,AUV受到来自势场引力作用的强弱与相对距离
Uatt(p,v)=12kapρ2pog(po,pg)+12kavρ2vog(vo,vg)。 | (3) |
式中:
{ρpog(po,pg)=√(pox−pgx)2+(poy−pgy)2,ρvog(vo,vg)=√(vox−vgx)2+(voy−vgy)2。 | (4) |
吸引力
Fatt=Fattp+Fattv=kapρpog→npog+kavρvog→nvog。 | (5) |
式中:Fattp为位置差产生的吸引力,用单位向量
2)构建全局斥力势场
人工势场法以其易于表达、计算小、易于实现和高实时性而在机器人路径规划中得到广泛应用。传统斥力势场存在局部极小值和目标不可达的问题,需作进一步改进。
如图1所示,根据传统人工势场的不足,改进后的斥力势场在设计中考虑了欠驱动AUV与障碍物之间的距离因素,改进后的斥力势场将障碍物环境分为3个区域。当禁止区(PZ)存在障碍物时,导航方案将不考虑目标的引力,并不受任何约束尽可能地避开障碍物。当欠驱动AUV进入避碰操纵区(CZ)时,AUV将躲避区域内的静态障碍物。探测区(DZ)表示欠驱动AUV的探测范围。改进的斥力势场函数如下式:
![]() |
图 1 基于区域划分的人工势场制导框架图 Fig. 1 Frame diagram of artificial potential field guidance based on region division |
Urep(p,v)={12krp(ρ−1pog−R−11)2, 0⩽ρpog<R1,12krp(ρ−1pog−R−12)2ρ2pog+χ,R1⩽ρpog<R2,|θpob−θvob|⩽Φ1,12krp(ρ−1pog−R−13)2ρ2pog,R2⩽ρpog<R3,|θpob−θvob|⩽Φ2,0, others。 | (6) |
式中:
通过对斥力势场函数
Frep={Frepp1, 0⩽ρpob<R1,Frepp2+Frepp3+Frepv1+Frepv2,R1⩽ρpog<R2,|θpob−θvob|⩽Φ1,Frepp4+Frepp5,R2⩽ρpog<R3,|θpob−θvob|⩽Φ2。 | (7) |
斥力函数的具体设计如下式:
{Frepp1=−krp(ρ−1pog−R−11)(1/ρ2pog)→npob,Frepp2=−krp(ρ−1pog−R−12)(ρ2pog/ρ2pog)→npob,Frepp3=krp(ρ−1pog−R−12)2ρpog→npob,Frepp4=−krp(ρ−1pog−R−13)(ρ2pog/ρ2pog)→npob,Frepp5=krp(ρ−1pog−R−13)2ρpog→npob。 | (8) |
式中:
{Frepv1=−krve‖vo−vb‖cos(π2ΦΦ1)→lpob,Frepv2=−krve‖vo−vb‖cos(π2ΦΦ1)→lvob。 | (9) |
式中:
3)结合SVLOS获取参考路径的制导律
出于实际AUV能耗考虑,本文人工势场设计中只考虑水平面避障角制导,即在一个方向执行避障操作,可以有效节省能耗,又不会因为避障转向方向优先级问题产生算法错误。在一个由静止的障碍物和目标形成的人工势场中,欠驱动AUV在任何时刻,任何一个位置所受到来自障碍物产生的斥力和目标产生的引力的共同作用下,通过动态虚拟制导点形成一个光滑且安全合理的局部期望路径。具体表达式如下:
{˙xd=udcosψd,˙yd=udsinψd,ψd=θFtotal。 | (10) |
式中:
为了改进传统LOS跟踪固定速度所欠缺的灵活性,设计SVLOS制导律的设计如下:
ud=ku√y2e+z2e+Δ2ψ。 | (11) |
式中:
{θLOS=arctan(ze/zeΔθΔθ),ψLOS=−arctan(ye/yeΔψΔψ)。 | (12) |
式中:
重新设计的攻角
{θd=θF+θLOS+αd,ψd=ψF+ψLOS−βd。 | (13) |
角度误差可改写为
utar=Udcosθecosψe+ktxe。 | (14) |
式中:
构造如下Lyapunov函数
V1=12(x2e+y2e+z2e)。 | (15) |
假设
˙V1=xe˙xe+ye˙ye+ze˙ze。 | (16) |
根据路径跟踪误差模型和前述定义可知:
˙V1=−ktx2e+yeUdsinψecosθe−zeUdsinθe=−ktx2e−Ud√y2e+Δ2ψΔθ√z2e+Δ2θy2e−Ud√z2e+Δ2θz2e⩽−2kV1V1⩽0。 | (17) |
式中:
接着,使用误差变量
V2=12θ2e+12ψ2e。 | (18) |
构造期望纵倾角速度
{qd=˙θd−kθ(θ−θd),rd=cosθ(˙ψd−kψ(ψ−ψd))。 | (19) |
式中:
˙V2=θe(˙θd−q)+ψe(˙ψd−rcosθ)=−kθθ2e−kψψ2e⩽−2kV2V2⩽0。 | (20) |
式中:
由于在实际工况中,通常很难精确地获得真实欠驱动AUV的准确模型。故针对控制器模型参数未知,含有模型不确定项的前提下,设计一种有限时间扩张状态观测器补偿系统模型参数未知和环境干扰构成的总扰动项。
首先,依据欠驱动AUV的数学模型:
\dot{\boldsymbol{v}}=\boldsymbol{M}^{-1}\left(\boldsymbol{\tau}_{\delta}-\boldsymbol{C}(\boldsymbol{v})\boldsymbol{v}-\boldsymbol{D}(\boldsymbol{v})\boldsymbol{v}-\boldsymbol{g}(\boldsymbol{\eta})\right)+\boldsymbol{M}^{-1}\boldsymbol{\tau}。 | (21) |
令
定义有限时间扩张状态观测器(FESO)的状态变量
\left\{\begin{gathered}\dot{\boldsymbol{x}}_1=\boldsymbol{x}_2+\boldsymbol{\mu},\\ \dot{\boldsymbol{x}}_2=\boldsymbol{h}。\\ \end{gathered}\right. | (22) |
式中:
定理 1 为了抑制欠驱动AUV的内部和外部总扰动项,提高欠驱动AUV路径跟踪系统的鲁棒性,将混合扰动项视为扩张状态,对于增广系统有限时间扩张状态观测器可以设计为:
\left\{ \begin{gathered} {{\dot \hat {\boldsymbol{x}}}_1} = {{\hat {\boldsymbol{x}}}_2} - {{\boldsymbol{L}}_1}{\text{si}}{{\text{g}}^{{3 \mathord{\left/ {\vphantom {3 4}} \right. } 4}}}({{\hat {\boldsymbol{x}}}_1} - {{\boldsymbol{x}}_1}) + {\boldsymbol{\mu}},\\ {{\dot \hat {\boldsymbol{x}}}_2} = - {{\boldsymbol{L}}_2}{\text{si}}{{\text{g}}^{{3 \mathord{\left/ {\vphantom {3 4}} \right. } 4}}}({{\hat {\boldsymbol{x}}}_1} - {{\boldsymbol{x}}_1})。\\ \end{gathered} \right. | (23) |
式中:
证明 定义观测误差
\left\{ \begin{gathered} {{\boldsymbol{e}}_1} = {{\hat {\boldsymbol{x}}}_1} - {\boldsymbol{v}} , \\ {{\boldsymbol{e}}_2} = {{\hat {\boldsymbol{x}}}_2} - {\boldsymbol{f}}。\\ \end{gathered} \right. | (24) |
结合式(24)对观测器误差求导可以得到:
\left\{ \begin{gathered} {{\dot {\boldsymbol{e}}}_1} = - {{\boldsymbol{L}}_1}{\text{si}}{{\text{g}}^{{3 \mathord{\left/ {\vphantom {3 4}} \right. } 4}}}({{\boldsymbol{e}}_1}) + {{\boldsymbol{e}}_2} ,\\ {{\dot {\boldsymbol{e}}}_2} \in - {{\boldsymbol{L}}_2}{\text{si}}{{\text{g}}^{{3 \mathord{\left/ {\vphantom {3 4}} \right. } 4}}}({{\boldsymbol{e}}_1}) - {\boldsymbol{h}} + [ - {{\boldsymbol{M}}_f},{{\boldsymbol{M}}_f}] 。\\ \end{gathered} \right. | (25) |
利用引理1所设计的有限时间扩张状态观测器可以在有限时间内收敛到0。
{\hat {\boldsymbol{x}}_1} \equiv {\boldsymbol{v}},{\hat {\boldsymbol{x}}_2} \equiv {\boldsymbol{f}}({\boldsymbol{\eta}} ,{\boldsymbol{v}}) 。 | (26) |
由上即可证得,观测误差可以在有限时间内稳定,证毕。
2.3 NMPC跟踪控制器本文采用NMPC方法,使纵荡速度u、纵倾角
离散时间形式的代价函数(目标函数)二次型的形式如下:
\begin{aligned} \min J(k)=& \sum_{i-0}^{N-1}\left(\|e(k+f \mid k)\|_{Q}^{2}+\|{\boldsymbol{u}}(k+i \mid k)\|_{R}^{2}\right)+ \\ & \left\|x\left(N, x_{k}\right)-x_{\operatorname{ref}}(N+k)\right\|_{\rho}^{2}。\end{aligned} | (27) |
\begin{array}{ll}\text{ s.t. } \overline{{\boldsymbol{x}}}\left(i+1,\overline{{\boldsymbol{x}}}_k\right)={\boldsymbol{x}}\left(i,{\boldsymbol{x}}_k\right)+Tf,\\ \overline{{\boldsymbol{x}}}\left(i+1,\overline{{\boldsymbol{x}}}_k\right)\in {\boldsymbol{X}},{\boldsymbol{u}}\left(i,x_k\right)\in {\boldsymbol{U}},\\ e(k+1)=\overline{{\boldsymbol{x}}}_{k+1}-{\boldsymbol{x}}_{{\mathrm{ref}}},\\ \overline{{\boldsymbol{x}}}\left(N,\overline{{\boldsymbol{x}}}_k\right)-x_{{\mathrm{ref}}}(N+k)\in {\boldsymbol{E}}_r。\end{array} | (28) |
式中:
AUV的初始位置为:
![]() |
图 2 有干扰和障碍物的三维路径跟踪 Fig. 2 Three-dimensional path-following with disturbances and obstacles |
![]() |
图 4 AUV与障碍物的相对距离变化曲线 Fig. 4 Variation curve of relative distance between AUV and obstacle |
由图2可知,在相同初始条件下,本文提出的改进人工势场法结合SVLOS-NMPC控制器与传统人工势场法在三维空间下路径跟踪避障控制对比发现:在遭遇障碍物时,基于本文控制算法下的欠驱动AUV能迅速地对障碍物做出反应,其路径跟踪过程流畅且无明显抖动。
从图3可以看出,在改进的人工势场法作用下,欠驱动AUV能有效地避开障碍物,并在进入操作避碰区域时执行避障,有效缩短了避障时间,提高任务执行效率。相比之下,传统人工势场法的路径跟踪控制器虽然同样能有效躲避障碍物,但在避障响应开始和结束时间都远没有改进方法更有效。
![]() |
图 3 带有扰动和障碍物的三维路径跟踪平面图 Fig. 3 Three-dimensional path-following plan with disturbances and obstacles |
![]() |
图 5 路径跟踪误差曲线 Fig. 5 Path-following error curve |
由图6可以看出,在有控制力约束下相较于传统人工势场法在避障过程中保证了控制力的平滑变化,未产生明显的抖振,降低了螺旋桨与方向舵的损耗,也保证了跟踪控制的稳定性和鲁棒性。
![]() |
图 6 控制力输出曲线 Fig. 6 Control force output curve |
![]() |
图 7 总扰动项和观测值 Fig. 7 Total disturbance terms and observations |
图7表示本文所提出的FESO对未知动力学模型参数项和外部环境干扰的总扰动项观测曲线。可以看出,所提出的FESO,可以实现对总扰动项的精准估计。
4 结 语本文针对欠驱动AUV内部模型未知、外部未知环境干扰以及有障碍物约束的三维路径跟踪控制与安全避碰控制问题,提出了基于人工势场法和有限时间扩张状态观测器的NMPC路径跟踪控制器。首先,使用人工势场法设计制导律来躲避障碍物,设计有限时间扩张状态观测器来估计混合扰动项。最后,为验证欠驱动AUV三维路径跟踪避障控制系统的稳定性,进行了对比仿真实验。结果显示,在模型存在建模误差和模型未知的情况下,FESO-NMPC控制器可以有效解决模型未知问题,在遭遇障碍物阻拦的情况下,能有效地跟踪改进制导律来躲避障碍物。从而验证了所设计的控制器方法的有效性。
[1] |
MATOUŠ J, PETTERSEN KY, VARAGNOLO D, et al. Singularity-free formation path following of underactuated AUVs[J]. IFAC-PapersOnLine, 2023, 56(2): 6731-6738. DOI:10.1016/j.ifacol.2023.10.378 |
[2] |
LAMRAOUI HC, QIDAN Z. Path following control of fully-actuated autonomous underwater vehicle in presence of fast-varying disturbances[J]. Applied Ocean Research, 2019, 86: 40-46. DOI:10.1016/j.apor.2019.02.015 |
[3] |
TANAKITKORN K, WILSON PA, TURNOCK SR, et al. Sliding mode heading control of an overactuated, hovercapa- ble autonomous underwater vehicle with experimental verification[J]. Journal of Field Robotics, 2018, 35(3): 396-415. DOI:10.1002/rob.21766 |
[4] |
WANG N, SUN Z, YIN J, et al. Finite-time observer based guidance and control of underactuated surface vehicles with unknown sideslip angles and disturbances[J]. IEEE Access, 2018, 6: 14059-14070. DOI:10.1109/ACCESS.2018.2797084 |
[5] |
LIANG X, QU X, WAN L, et al. Three-dimensional path following of an underactuated AUV based on fuzzy backstepping sliding mode control[J]. International Journal of Fuzzy Systems, 2018, 20: 640-649. DOI:10.1007/s40815-017-0386-y |
[6] |
WANG W, CHEN Y, XIA Y, et al. A fault-tolerant steering prototype for x-rudder underwater vehicles[J]. Sensors, 2020, 20(7): 1816. DOI:10.3390/s20071816 |
[7] |
STOKEY RP, ROUP A. Development of the REMUS 600 autonomous underwater vehicle[C]//Proceedings of Oceans 2005 MTS, 2005.
|
[8] |
夏元清, 付梦印, 邓志红, 等. 滑模控制和自抗扰控制的研究进展[J]. 控制理论与应用, 2013, 30(2): 137-147. DOI:10.7641/CTA.2013.20498 |
[9] |
MARTHINIUSSEN R, VESTGARD K, et al. HUGIN-AUV concept and operational experiences to date[J]. Oceans' 04 MTS, 2004(2): 846-850. |
[10] |
裴志远. 基于改进LOS引导律与ESO估计漂角的无人船路径跟踪控制方法[D]. 北京: 中国石油大学(华东), 2021.
|
[11] |
ROPER D, HARRIS CA, SALAVASIDIS G, et al. Autosub long range 6000: A multiple-month endurance AUV for deep-ocean monitoring and survey[J]. IEEE Journal of Oceanic Engineering, 2021, 46(4): 1179-1191. DOI:10.1109/JOE.2021.3058416 |
[12] |
崔恒银. 双体无人船路径跟踪控制研究[D]. 大连: 大连海事大学, 2021.
|
[13] |
ZHAO L, ZHANG B, YANG H, et al. Finite-time tracking control for pneumatic servo system via extended state observer[J]. IET Control Theory and Applications, 2017, 11(16): 28. |