舰船科学技术  2022, Vol. 44 Issue (2): 111-116    DOI: 10.3404/j.issn.1672-7649.2022.02.020   PDF    
基于收缩理论的水下无人航行器轨迹跟踪控制
王嘉玺1, 高德峰2, 麻彩朋1, 唐煜3, 姜大鹏1,4     
1. 中山大学 海洋工程与技术学院, 广东 珠海 519082;
2. 中国船舶工业综合技术经济研究院, 北京 100081;
3. 墨西哥国立自治大学, 墨西哥城 04510;
4. 南方海洋科学与工程广东省实验室(珠海), 广东 珠海, 519080
摘要: 考虑水下无人航行器的轨迹跟踪控制,在水动力系数已知的条件下,基于收缩理论设计了全局指数收敛的理想控制器。首先,对收缩理论进行简要的介绍。与常用的李雅普诺夫方法不同,收缩理论在进行控制系统的设计和稳定性分析时,采用虚位移验证系统的稳定性,避免因无明确平衡点信息而带来的阻碍,从而更容易证明控制系统的稳定性。接着,介绍了水下无人航行器的运动学和动力学模型,基于收缩理论设计了理想控制器,并证明了控制器的稳定性。最后对水下无人航行器进行了轨迹跟踪控制仿真,仿真结果验证了本文控制算法的有效性。
关键词: 水下无人航行器     收缩理论     轨迹跟踪控制    
Contraction based trajectory tracking control of unmanned underwater vehicle
WANG Jia-xi1, GAO De-feng2, MA Cai-peng1, TANG Yu3, JIANG Da-peng1,4     
1. School of Marine Engineering and Technology, Sun Yat-Sen University, Zhuhai 519082, China;
2. China-Shipbuilding Industry Technical and Economic Institute, Beijing 100081, China;
3. Universidad Nacional Autonoma de Mexico, Mexico City 04510, Mexico;
4. Southern Marine Science and Engineering Guangdong Laboratory (Zhuhai), Zhuhai 519080, China
Abstract: Considering the trajectory tracking control of unmanned underwater vehicle, an ideal controller with global exponential convergence is designed based on the contraction theory under the condition that the hydrodynamic coefficient is known. First of all, the contraction theory is briefly introduced. Different from the commonly used Lyapunov method, the contraction theory uses virtual displacement to verify the stability of the control system in the design and stability analysis of the control system, which avoids the hindrance caused by the lack of clear equilibrium point information. As a result, it is easier to prove the stability of the control system. Then, the kinematics and dynamics model of the unmanned underwater vehicle is introduced, the ideal controller is designed based on the contraction theory, and the stability of the controller is proved. Finally, the trajectory tracking control simulation of the unmanned underwater vehicle is carried out, and the simulation results verify the effectiveness of the proposed control algorithm.
Key words: unmanned underwater vehicle     contraction theory     trajectory tracking control    
0 引 言

水下无人航行器的运动具有非线性、耦合性以及时变性等特征,其运动过程难以用准确的数学模型描述。最早人们将其运动模型简化为线性模型进行PID线性控制,后来为了改善控制效果,对经典PID线性控制进行了非线性优化,如模糊PID控制[1]、PID神经网络解耦控制[2]等。而直接对非线性系统进行控制,现今常用的方法是李雅普诺夫法。该方法主要是通过构造一个李雅普诺夫函数,通过系统稳定性判定来进行非线性控制器的分析设计。目前常用的非线性控制策略如鲁棒控制[3]、自适应控制[4-5]和滑模控制[6]大多都是基于李雅普诺夫函数进行系统稳定性分析和设计的。曹晓明[7]针对未知海流干扰提出了一种采用反步法和动态面技术的水下无人航行器三维轨迹跟踪控制器,并结合李雅普诺夫理论验证系统的闭环稳定性,通过仿真验证完成轨迹跟踪控制任务。虽然针对非线性控制常用李雅普诺夫理论验证其系统稳定性,但是目前并没有普遍适用的李雅普诺夫函数构造方法,这成为用李雅普诺夫方法进行控制器设计的最大困难之一[8]

收缩理论由Lohmiller和Slotine于1998年正式提出[9],文献[10-11]提出收缩分析方法是基于微分分析的,与传统的李雅普诺夫方法有明显的区别,并对收缩域、收敛性等数学理论进行详细推导和说明。文献[12]将收缩分析用于飞行器和有时延的水下航行器中,在设计控制器时保证系统在全局收缩域内的指数收敛性,并进行了仿真验证。文献[13]对收缩理论和李雅普诺夫理论意义下的稳定性即增量稳定性和平衡点稳定性进行详细说明,论证了收缩理论意义下有更强的稳定性。

文献[14]在收缩理论状态稳定性分析的基础上,讨论了水下航行器的增量稳定性,并提出一种递推构造控制器的方法,能够实现增量稳定性。文献[15]在之前的基础上提出了一个水下无人航行器轨迹跟踪的积分反步法控制律,并进行了三自由度的运动仿真验证了控制的有效性。文献[16]基于收缩理论设计了四旋翼飞行器的轨迹跟踪控制器,通过分析系统增量的稳定性,证明系统收敛,并通过数值仿真证明了能够精准地完成轨迹跟踪控制。文献[17]基于收缩理论设计了船舶动力定位的自适应反步控制律,并通过数值仿真验证控制器对海况具有良好鲁棒性。文献[18]用收缩理论讨论了水下航行器的增量稳定性问题,并基于稳定性分析设计了水下航行器的轨迹控制器,通过仿真方法证明了该方法的有效性。

目前关于收缩理论在水下无人航行器的运动控制方法中应用较少,考虑水下无人航行器的复杂非线性的六自由度运动,基于收缩理论,设计了航行器的轨迹跟踪控制律,并借助六自由度的水下无人航行器动力学模型,通过数值仿真验证设计的控制器的轨迹跟踪效果。

1 收缩理论基础

对收缩理论的分析方法[9,19]进行简要总结,并对控制模型和控制目的进行针对性设计。首先对收缩理论的基础知识进行简单介绍。考虑一个非线性系统:

$ \dot{x}=f\left(x,t\right),x\left({t}_{0}\right)={x}_{0}, \forall t\in {R}_+ ,$ (1)

其中: $ x\left(t\right)\in {R}^{n} $ 是状态向量, $ f:{R}^{n}\times {R}_{+}\to {R}^{n} $ 是连续可微且正完备的向量场。在式( $ 1 $ )中引入虚位移的概念,记作 $ \delta x $ ,虚位移表示同一时刻空间中2个点之间的微小线性增量,通过收缩理论考虑邻近轨迹的收敛性可以得到系统的全局稳定性,因为邻近轨迹的收敛意味着系统在空间上的收敛。

所以式(1)的动态微分形式可以表示为 $\mathit{\delta }\dot{\mathit{x}}= $ $ \mathit{J}\left(x,t\right)\mathit{\delta }\mathit{x}$ ,其中雅克比矩阵为 $\mathit{J}\left(x,t\right)= $ $ \dfrac{\partial f}{\partial x}(x,t)$ 。定义广义雅克比矩阵为 $ {\mathit{J}}_{\mathit{G}}\left(x,t\right)=\mathit{\Theta }\mathit{J}\left(x,t\right){\mathit{\Theta }}^{-1} $ ,其中 $ \mathit{\Theta } $ $ n\times n $ 的可逆矩阵。如果存在 $ \lambda > 0 $ 使得 $ \forall x\in \mathcal{X} $ $t\geqslant {t}_{0}$ ,那么可以说系统(1)收缩于一个以 $\mathcal{M}={\mathit{\Theta }}^{{\rm{T}}}\mathit{\Theta }$ 为度量的凸集合 $\mathcal{X}\subseteq {{R}}^{{n}}$ 中。

$ {\mathit{J}}^{\rm{T}}\left(x,t\right)M+MJ\left(x,t\right)\leqslant -2\lambda ,$ (2)

条件( $ 2 $ )等价于 ${\mathit{J}}_{\mathit{S}}\left(x,t\right)\leqslant -\lambda \mathit{I}$ $ \forall x\in X $ ,其中 ${\mathit{J}}_{\mathit{S}}=\dfrac{\mathit{J}+{\mathit{J}}^{{\rm{T}}}}{2}$ 为雅可比矩阵的对称部分, $ \mathit{I} $ 是对应维数的单位矩阵。集合 $ \mathcal{X} $ 被称为收缩域, $ \lambda $ 是收缩速率。如果 $\mathcal{X}={{R}}^{{n}}$ ,那么收缩是全局的。当 $ \lambda =0 $ 时,系统( $ 1 $ )是半收缩的。

在度量 $ \mathcal{M} $ 下轨迹间距离的平方定义为:

$ V=\mathit{\delta }{\mathit{x}}^{{\rm{T}}}\mathcal{M}\mathit{\delta }\mathit{x} ,$

在条件( $ 2 $ )下,它的时间导数为:

$ \dot{V}=\mathit{\delta }{\mathit{x}}^{{\rm{T}}}\left[{\mathit{J}}^{{\rm{T}}}\left(x,t\right)\mathcal{M}+\mathcal{M}\mathit{J}\left(x,t\right)\right]\mathit{\delta }\mathit{x}\leqslant -2\lambda \mathit{\delta }{\mathit{x}}^{{\rm{T}}}\mathcal{M}\mathit{\delta }\mathit{x}。$

因此,在度量 $ \mathcal{M} $ 下的任意一对轨迹之间的距离指数收敛到0。本文对控制器设计的稳定性分析主要通过收缩理论中关于分层系统的收缩,其性质表示为定理1.1和引理1.2 。

定理1.1 (分层系统的收缩)假设2个可能不同维度的系统

$ \begin{split} &{\dot{x}}_{1}={f}_{1}\left({x}_{1},t\right) ,\\ &{\dot{x}}_{2}={f}_{2}\left({x}_{1},{x}_{2},t\right),\end{split}$ (3)

其虚位移为 ${\left[\mathit{\delta }{\mathit{x}}_{1}^{{\rm{T}}}\mathit{\delta }{\mathit{x}}_{2}^{{\rm{T}}}\right]}^{{\rm{T}}}$ ,其导数形式为

$ \begin{array}{c}\frac{{\rm{d}}}{{\rm{d}}t}\left[\begin{array}{c}\mathit{\delta }{\mathit{x}}_{1}\\ \mathit{\delta }{\mathit{x}}_{2}\end{array}\right]=\left[\begin{array}{cc}{F}_{1}& 0\\ {F}_{21}& {F}_{2}\end{array}\right]\left[\begin{array}{c}\mathit{\delta }{\mathit{x}}_{1}\\ \mathit{\delta }{\mathit{x}}_{2}\end{array}\right]\end{array},$ (4)

如果在状态空间的一些区域中 ${F}_{1}≔\dfrac{\partial {f}_{1}}{\partial {x}_{1}}$ ${F}_{2}≔\dfrac{\partial {f}_{2}}{\partial {x}_{2}}$ 为一致负定的,并且 ${F}_{21}≔\dfrac{\partial {f}_{2}}{\partial {x}_{1}}$ 有界,那么整个系统( $ 3 $ )在这个域内都收缩。

在文献[20]中给出定理1.1的一个特例,该特例允许 $ {x}_{2} $ 子系统半收缩。

引理1.2(半收缩)给出一个非线性系统

$ \begin{array}{c}\dot{x}=\left[\begin{array}{c}{\dot{x}}_{1}\\ {\dot{x}}_{2}\end{array}\right]=\left[\begin{array}{c}{f}_{1}\left({x}_{1},{x}_{2},t\right)\\ {f}_{2}\left({x}_{1},{x}_{2},t\right)\end{array}\right]\end{array} ,$ (5)

设定雅克比矩阵的对称部分为

$ \begin{array}{c}{\mathit{J}}_{\mathit{s}}=\left[\begin{array}{cc}{F}_{1s}\left({x}_{1},{x}_{2},t\right)& 0\\ 0& {F}_{2s}\left({x}_{1},{x}_{2},t\right)\end{array}\right]\end{array},$ (6)

假设

$ {F}_{1s}\left({x}_{1},{x}_{2},t\right)\leqslant -{\mathrm{\lambda }}_{1}I\text{,}{\lambda }_{1} > 0 ,$ (7)
$ {F}_{2s}\left({x}_{1},{x}_{2},t\right)\leqslant -{\mathrm{\lambda }}_{2}I\text{,}{\lambda }_{2}\geqslant 0 。$ (8)

那么:

1)如果 $ {\lambda }_{2} > 0 $ ,系统( $ 5 $ )收缩且它的轨迹以指数形式互相收敛。

2)如果 ${\lambda }_{2}\geqslant 0$ ,系统( $ 5 $ )半收缩且 $ {x}_{1} $ 的轨迹互相渐进收敛,而 $ {\mathit{\delta }}_{\mathit{x}2} $ 保持有界。

简单介绍完收缩理论的基础知识后,再对六自由度的水下无人航行器动力学模型进行建模

2 六自由度水下无人航行器动力学建模

水下无人航行器的运动描述为随体坐标系相对于惯性坐标系的运动[21]。这里使用的惯性坐标系是固定在地球某个位置的NED坐标系{ $ I-xyz $ }, $ z $ 轴平行于重力方向指向地心,随体坐标系{ $ B-{x}_{B}{y}_{B}{z}_{B} $ }固定于水下无人航行器,其中 $ {x}_{B} $ 轴过水下无人航行器的重心且平行于水下无人航行器的前后方向,当水下无人航行器在水平面时 $ {z}_{B} $ 轴与 $ z $ 轴重合。

对于1个全驱动的六自由度水下无人航行器,运动方程可定义为:

$ \dot{\mathit{\eta }}=J\left({\mathit{\eta }}_{2}\right)\nu ,$ (9)
$ M\dot{\mathit{\nu }}=-C\left(\mathit{\nu }\right)\nu -D\left(\mathit{\nu }\right)\nu -g\left({\mathit{\eta }}_{2}\right)+\tau 。$ (10)

其中, ${\mathit{\eta }}^{{\rm{T}}}=\left[{\mathit{\eta }}_{1}^{{\rm{T}}}{\mathit{\eta }}_{2}^{{\rm{T}}}\right]$ ${\mathit{\eta }}_{1}^{{\rm{T}}}=\left[xyz\right]\in {{R}}^{3}$ 为水下无人航行器的位置, ${\mathit{\eta }}_{2}^{{\rm{T}}}=\left[\varphi \theta \psi \right]\in {{R}}^{3}$ 为欧拉角形式下的水下无人航行器的姿态角,这两者都表示在NED坐标系下。水下无人航行器的速度 ${\mathit{\nu }}^{{\rm{T}}}=\left[{\mathit{\nu }}_{1}^{{\rm{T}}}{\mathit{\nu }}_{2}^{{\rm{T}}}\right]$ 在随体坐标系中表示为线速度 ${\mathit{\nu }}_{1}^{{\rm{T}}}=\left[uvw\right]\in {{R}}^{3}$ 和角速度 ${\mathit{\nu }}_{2}^{{\rm{T}}}=\left[pqr\right]\in {{R}}^{3}$ $\mathit{\tau }\in {{R}}^{6}$ 为控制力、力矩。

运动方程中的转换矩阵 $ \mathit{J}\left({\mathit{\eta }}_{2}\right) $ 表示为:

$ \begin{array}{c}J\left({\mathit{\eta }}_{2}\right)=\left[\begin{array}{cc}\mathit{R}\left({\mathit{\eta }}_{2}\right)& 0\\ 0& \mathit{T}\left({\mathit{\eta }}_{2}\right)\end{array}\right]\end{array},$ (11)

其中由随体坐标系转换为NED坐标系的旋转矩阵 $R\left({\eta }_{2}\right)\in {S}{O}\left(3\right)$ 为:

$ \begin{array}{c}R\left({\mathit{\eta }}_{2}\right)=\left[\begin{array}{ccc}{c}_{\theta }{c}_{\psi }& {s}_{\theta }{c}_{\psi }{s}_{\varphi }-{s}_{\psi }{c}_{\varphi }& {s}_{\theta }{c}_{\psi }{c}_{\varphi }+{s}_{\psi }{s}_{\varphi }\\ {c}_{\theta }{s}_{\varphi }& {s}_{\theta }{s}_{\psi }{s}_{\varphi }+{c}_{\psi }{c}_{\varphi }& {s}_{\theta }{s}_{\psi }{c}_{\varphi }-{c}_{\psi }{s}_{\varphi }\\ -{s}_{\theta }& {c}_{\theta }{s}_{\varphi }& {c}_{\theta }{c}_{\psi }\end{array}\right]\end{array},$ (12)

其中 ${c}_{(\cdot )}=\mathit{{\rm{cos}}}\left(\cdot \right)$ ${s}_{(\cdot )}={\rm{sin}}(\cdot )$ ${t}_{(\cdot )}={\rm{tan}}(\cdot )$

$ \mathit{T}\left({\mathit{\eta }}_{2}\right) $ 通过 $ {\dot{\mathit{\eta }}}_{2}=\mathit{T}\left({\mathit{\eta }}_{2}\right){\mathit{\nu }}_{2} $ 将角速度 $ {\mathit{\nu }}_{2} $ 与欧拉角速率 $ {\dot{\mathit{\eta }}}_{2} $ 关联起来, $ \mathit{T}\left({\mathit{\eta }}_{2}\right) $ 和它的逆矩阵为:

$ \begin{array}{c}T\left({\mathit{\eta }}_{2}\right)=\left[\begin{array}{ccc}1& {s}_{\varphi }{t}_{\theta }& {c}_{\varphi }{t}_{\theta }\\ 0& {c}_{\theta }& -{s}_{\varphi }\\ 0& \frac{{s}_{\varphi }}{{c}_{\theta }}& \frac{{c}_{\varphi }}{{c}_{\theta }}\end{array}\right],\\{\mathit{T}}^{-1}\left({\mathit{\eta }}_{2}\right)=\left[\begin{array}{ccc}1& 0& -{s}_{\theta }\\ 0& {c}_{\varphi }& {c}_{\theta }{s}_{\theta }{s}_{\varphi }\\ 0& -{s}_{\varphi }& {c}_{\varphi }\end{array}\right]。\end{array}$ (13)

根据文献[21, 22]可将式( $ 10 $ )中的各参数矩阵表示为:

$ \begin{array}{c}M={\mathit{M}}_{\mathit{R}\mathit{B}}+{\mathit{M}}_{\mathit{A}}=\left[\begin{array}{cc}m{\mathit{I}}_{3\times 3}& -m\mathit{S}\left({r}_{g}^{b}\right)\\ m\mathit{S}\left({r}_{g}^{b}\right)& {\mathit{I}}_{\mathit{O}}\end{array}\right]+\left[\begin{array}{cc}{\mathit{A}}_{11}& {\mathit{A}}_{12}\\ {\mathit{A}}_{21}& {\mathit{A}}_{22}\end{array}\right]\end{array}。$ (14)

其中, $ m $ 为水下无人航行器的质量, $ {\mathit{I}}_{3\times 3} $ 为单位矩阵, $ {\mathit{I}}_{\mathit{O}} $ 为惯性矩阵, $ {\mathit{r}}_{g}^{b}={\left[{x}_{g}{y}_{g}{z}_{g}\right]}^{\mathrm{T}} $ 为在固定坐标系下坐标系原点到航行器重心的矢量, $ \mathit{S}\left(\lambda \right) $ 为斜对称矩阵, $ {\mathit{A}}_{\mathit{i}\mathit{j}} $ 为附加质量项。包含附加质量的惯性矩阵 $\mathit{M}\in {\rm{R}}^{6\times 6}$ 满足 $\mathit{M}={\mathit{M}}^{{\rm{T}}} > 0 。$

$ \begin{array}{c}C\left(\mathit{\nu }\right)={\mathit{C}}_{\mathit{R}\mathit{B}}+{\mathit{C}}_{\mathit{A}}=\\ \left[\begin{array}{cc}{0}_{3\times 3}& -m\mathit{S}\left({\mathit{\nu }}_{1}\right)-m\mathit{S}\left({\mathit{\nu }}_{2}\right)\mathit{S}\left({\mathit{r}}_{g}^{b}\right)\\ -m\mathit{S}\left({\mathit{\nu }}_{1}\right)-m\mathit{S}\left({\mathit{\nu }}_{2}\right)\mathit{S}\left({\mathit{r}}_{g}^{b}\right)& -\mathit{S}\left({{\mathit{I}}_{\mathit{O}}\mathit{\nu }}_{2}\right)\end{array}\right] +\\\left[\begin{array}{cc}{0}_{3\times 3}& -m\mathit{S}({\mathit{A}}_{11}{\mathit{\nu }}_{1}+{\mathit{A}}_{12}{\mathit{\nu }}_{2})\\ -m\mathit{S}({\mathit{A}}_{11}{\mathit{\nu }}_{1}+{\mathit{A}}_{12}{\mathit{\nu }}_{2})& -m\mathit{S}({\mathit{A}}_{21}{\mathit{\nu }}_{1}+{\mathit{A}}_{22}{\mathit{\nu }}_{2})\end{array}\right]。\\[-10pt]\end{array} $ (15)

其中受附加质量影响的科氏力和回转力矩阵 $\mathit{C}\left(\mathit{\nu }\right)\in $ $ {{R}}^{6\times 6}$ 为斜对称矩阵且满足

$ \begin{array}{c}C\left(\mathit{\nu }\right)=-{\mathit{C}}^{{\rm{T}}}\left(\mathit{\nu }\right),\forall \nu \in {{R}}^{6},\end{array} $ (16)
$ \begin{split}D\left(\mathit{\nu }\right)=&{\mathit{D}}_{\mathit{S}}+{\mathit{D}}_{\mathit{N}}=-diag\left(\right.{X}_{u}+{Y}_{v}+{Z}_{w}+{K}_{p}+{M}_{q}+\\&{N}_{r}\left.\right) -diag\left(\right.{X}_{\left|u\right|u}\left|u\right|+{Y}_{\left|v\right|v}\left|v\right|+{Z}_{\left|w\right|w}\left|w\right|+{K}_{\left|p\right|p}\left|p\right|+\\&{M}_{\left|q\right|q}\left|q\right|+{N}_{\left|r\right|r}\left|r\right|\left.\right)。\\[-10pt]\end{split} $ (17)

其中摩擦和水动力阻尼矩阵 $\mathit{D}\left(\mathit{\nu }\right)\in {{R}}^{6\times 6}$ 且满足

$ D\left(\mathit{\nu }\right)={\mathit{D}}^{{\rm{T}}}\left(\mathit{\nu }\right) > 0,\forall \nu \in {{R}}^{6} ,$ (18)
$ \begin{array}{c}g\left({\mathit{\eta }}_{2}\right)=\left[\begin{array}{c}\left(W-B\right){s}_{\theta }\\ -\left(W-B\right){c}_{\theta }{s}_{\varphi }\\ -\left(W-B\right){c}_{\theta }{c}_{\varphi }\\ -\left({y}_{g}W-{y}_{b}B\right){c}_{\theta }{c}_{\varphi }+\left({z}_{g}W-{z}_{b}B\right){c}_{\theta }{s}_{\varphi }\\ \left({z}_{g}W-{z}_{b}B\right){s}_{\theta }+\left({x}_{g}W-{x}_{b}B\right){c}_{\theta }{c}_{\varphi }\\ -\left({x}_{g}W-{x}_{b}B\right){c}_{\theta }{s}_{\varphi }-\left({y}_{g}W-{y}_{b}B\right){s}_{\theta }\end{array}\right]。\\[-10pt]\end{array} $ (19)

其中, $W=m\mathrm{·}g$ 为航行器的重力, $B=\rho \mathrm{·}V\mathrm{·}g$ 为航行器的浮力。

3 轨迹跟踪控制器设计

通过给出期望的位置 $ {\mathit{\eta }}_{1\mathit{d}} $ 和方向角 $ {\mathit{\eta }}_{2\mathit{d}} $ 来定义一条期望轨迹,其期望的位置和方向角的变化率分别为 ${\dot{\mathit{\eta }}}_{1\mathit{d}}和{\dot{\mathit{\eta }}}_{2\mathit{d}}$ 。以上参数均为一致连续且有界,并表达在NED坐标系中。定义 ${\mathit{\eta }}_{d}^{{\rm{T}}}=\left[{\mathit{\eta }}_{1d}^{{\rm{T}}}{\mathit{\eta }}_{2d}^{{\rm{T}}}\right],{\dot{\mathit{\eta }}}_{d}^{{\rm{T}}}=\left[{\dot{\mathit{\eta }}}_{1\mathit{d}}^{\mathit{{\rm{T}}}}{\dot{\mathit{\eta }}}_{2d}^{{\rm{T}}}\right]$ 。控制目标是 $ \mathit{\eta }\left(t\right)\to {\mathit{\eta }}_{\mathit{d}}\left(t\right),\dot{\mathit{\eta }}\left(t\right)\to {\dot{\mathit{\eta }}}_{\mathit{d}}\left(t\right) $ ,即期望轨迹和实际轨迹指数收敛。

由此轨迹跟踪控制律为

$ \begin{split}\tau =&M{\dot{\mathit{\nu }}}_{\mathit{r}}+C\left(\mathit{\nu }\right){\mathit{\nu }}_{\mathit{r}}+D\left(\mathit{\nu }\right){\mathit{\nu }}_{\mathit{r}}+g\left({\mathit{\eta }}_{2}\right)\\&-{\mathit{J}}^{{\rm{T}}}\left({\mathit{\eta }}_{2}\right)\left(\mathit{\eta }-{\mathit{\eta }}_{\mathit{d}}\right)-{K}_{D}\left(\mathit{\nu }-{\mathit{\nu }}_{\mathit{r}}\right) 。\end{split}$ (20)

其中 ${K}_{D}={K}_{D}^{{\rm{T}}} > 0$ 是控制器的微分增益。参考速度 $ {\mathit{\nu }}_{\mathit{r}} $ 和它的导数为:

$ \begin{array}{c}{\mathit{\nu }}_{\mathit{r}}={\mathit{J}}^{-1}\left({\mathit{\eta }}_{2}\right){\dot{\mathit{\eta }}}_{\mathit{r}}\text{,}{\dot{\mathit{\eta }}}_{\mathit{r}}={\dot{\mathit{\eta }}}_{\mathit{d}}-{\mathit{K}}_{\mathit{P}}\left(\mathit{\eta }-{\mathit{\eta }}_{\mathit{d}}\right)\text{\text{,}}\end{array} $ (21)
$ \begin{array}{c}{\dot{\mathit{\nu }}}_{\mathit{r}}={\mathit{J}}^{-1}\left({\mathit{\eta }}_{2}\right)\left({\ddot{\mathit{\eta }}}_{\mathit{r}}-\dot{\mathit{J}}\left({\mathit{\eta }}_{2}\right){\mathit{\nu }}_{\mathit{r}}\right)。\end{array} $ (22)

其中 ${K}_{P}={K}_{P}^{{\rm{T}}} > 0$ 是控制器的比例增益, $ {\dot{\mathit{J}}}^{-1}=-{\mathit{J}}^{-1}\dot{\mathit{J}}{\mathit{J}}^{-1} $

控制流程如图1所示。

图 1 控制流程图 Fig. 1 Flow chart of control process

定理3.1 式(20)~ 式(22)定义的闭环控制律以式(9)~ 式(10)为控制对象,使 ${\left[{\mathit{\eta }}^{{\rm{T}}}{\dot{\mathit{\eta }}}^{{\rm{T}}}\right]}^{{\rm{T}}}$ 在初始条件 ${\boldsymbol{\varOmega}} = \left\{\left[{\mathit{\eta }}^{{\rm{T}}}{\mathit{\nu }}^{{\rm{T}}}\right]\in{{R}}^{6}\right|\left|\theta \right| < \dfrac{{\text{π}} }{2}\Big\}$ 下以指数方式收敛于 ${\left[{\mathit{\eta }}_{d}^{{\rm{T}}}{\dot{\mathit{\eta }}}_{d}^{{\rm{T}}}\right]}^{\mathrm{{\rm{T}}}}$ ,其中 $ \theta $ 为纵摇角。

稳定性证明

通过使用收缩分析工具进行证明。从初始条件 $\varOmega$ 开始,控制律式( $ 20 $ )和式( $ 21 $ )可以整理为:

$ \begin{array}{c}{\dot{\mathit{\eta }}}_{\mathit{d}}=J\left({\mathit{\eta }}_{2}\right){\mathit{\nu }}_{\mathit{r}}+{\mathit{K}}_{\mathit{P}}\left(\mathit{\eta }-{\mathit{\eta }}_{\mathit{d}}\right)\end{array}, $ (23)
$ \begin{split}M{\dot{\mathit{\nu }}}_{\mathit{r}}=&-C\left(\mathit{\nu }\right){\mathit{\nu }}_{\mathit{r}}-D\left(\mathit{\nu }\right){\mathit{\nu }}_{\mathit{r}}-g\left({\mathit{\eta }}_{2}\right)+\\&{\mathit{J}}^{{\rm{T}}}\left({\mathit{\eta }}_{2}\right)\left(\mathit{\eta }-{\mathit{\eta }}_{\mathit{r}}\right)+{\mathit{K}}_{\mathit{D}}\left(\mathit{\nu }-{\mathit{\nu }}_{\mathit{r}}\right)+\tau ,\end{split} $ (24)

根据控制器和被控对象式(9)~ 式(10)设虚拟系统为:

$ \begin{array}{c}{\dot{\mathit{\xi }}}_{1}=J\left({\mathit{\eta }}_{2}\right){\mathit{\xi }}_{2}+{K}_{P}\left(\mathit{\eta }-{\mathit{\xi }}_{1}\right),\end{array} $ (25)
$ \begin{split}M{\dot{\mathit{\xi }}}_{2}=&-C\left(\mathit{\nu }\right){\mathit{\xi }}_{2}-D\left(\mathit{\nu }\right){\mathit{\xi }}_{2}-g\left({\mathit{\eta }}_{2}\right)+\\&{\mathit{J}}^{T}\left({\mathit{\eta }}_{2}\right)\left(\mathit{\eta }-{\mathit{\xi }}_{1}\right)+{\mathit{K}}_{\mathit{D}}\left(\mathit{\nu }-{\mathit{\xi }}_{2}\right)+\tau 。\end{split} $ (26)

虚拟系统 ${\mathit{\xi }}^{{\rm{T}}}=\left[{\mathit{\xi }}_{1}^{{\rm{T}}}{\mathit{\xi }}_{2}^{{\rm{T}}}\right]$ 在任意的初始条件下有2个特解为 ${\mathit{\xi }}^{{\rm{T}}}=\left[{\mathit{\eta }}^{{\rm{T}}}{\mathit{\nu }}^{{\rm{T}}}\right]$ ${\mathit{\xi }}^{{\rm{T}}}=\left[{\mathit{\eta }}_{d}^{{\rm{T}}}{\mathit{\nu }}_{r}^{{\rm{T}}}\right]$ ,分别对应被控对象和控制器的轨迹。该虚拟系统的虚位移为:

$ \begin{array}{c}M\delta \dot{\mathit{\xi }}=J\left({\mathit{\eta }}_{2},\mathit{\nu }\right)\delta \xi ,\end{array} $ (27)

其中:

$ \mathit{\delta }{\mathit{\xi }}^{{\rm{T}}}=\left[\mathit{\delta }{\mathit{\xi }}_{1}^{{\rm{T}}}\mathit{\delta }{\mathit{\xi }}_{2}^{{\rm{T}}}\right],\mathit{M}={\rm{diag}}\left[{\mathit{I}}_{6}\mathit{M}\right] , $
$ \begin{array}{c}J\left({\mathit{\eta }}_{2},\mathit{\nu }\right)=\left[\begin{array}{cc}-{\mathit{K}}_{\mathit{P}}& \mathit{J}\left({\mathit{\eta }}_{2}\right)\\ -{\mathit{J}}^{T}\left({\mathit{\eta }}_{2}\right)& -\left(\mathit{C}\left(\mathit{\nu }\right)+\mathit{D}\left(\mathit{\nu }\right)+{\mathit{K}}_{\mathit{D}}\right)\end{array}\right]。\end{array} $ (28)

$ \mathcal{M} $ 作为度量。距离的平方在度量 $\mathit{V}=\delta {\xi }^{{\rm{T}}}\mathcal{M}\delta \xi$ 下随时间的变化为:

$ \begin{array}{c}\dot{\mathit{V}}=2\delta {\xi }^{{\rm{T}}}M\delta \dot{\xi }=2\delta \xi {\mathit{J}}_{\mathit{S}}\delta \xi ,\end{array} $ (29)

其中:

$ {\mathit{J}}_{\mathit{S}}=\dfrac{\mathit{J}+{\mathit{J}}^{{\rm{T}}}}{2},$
$ \begin{array}{c}{\mathit{J}}_{\mathit{S}}\left(\nu \right)=-\left[\begin{array}{cc}{\mathit{K}}_{\mathit{P}}& {0}_{6\times 6}\\ {0}_{6\times 6}& \left(\mathit{D}\left(\mathit{\nu }\right)+{\mathit{K}}_{\mathit{D}}\right)\end{array}\right]\leqslant \left[\begin{array}{cc}{\mathit{K}}_{\mathit{P}}& {0}_{6\times 6}\\ {0}_{6\times 6}& {\mathit{K}}_{\mathit{D}}\end{array}\right]。\end{array} $ (30)

由于式( $ 16 $ )和式( $ 18 $ )中参数矩阵的特性,因此, $\dot{\mathit{V}}\leqslant $ $ -2{\lambda }_{c}\mathit{V}$ ,这个虚拟系统在度量 $ \mathcal{M} $ 下收缩,收缩速率 ${\lambda }_{c}= $ $ \mathit{{\rm{min}}}\left\{{\lambda }_{{\rm{max}}}\left({K}_{D}\right),{\lambda }_{{\rm{max}}}\left({K}_{P}\right)\right\}/{\lambda }_{{\rm{max}}}\left(\mathcal{M}\right)$ 。所以,在 $\varOmega$ 中的任何初始条件下, $\left[{\mathit{\eta }}^{{\rm{T}}}{\mathit{\nu }}^{\mathit{{\rm{T}}}}\right]$ 都指数趋近于 $\left[{\mathit{\eta }}_{d}^{{\rm{T}}}{\mathit{\nu }}_{r}^{{\rm{T}}}\right]$ 。由式(9)和式(22)可知, $ \dot{\mathit{\eta }}-{\dot{\mathit{\eta }}}_{d}=\mathit{J}\left({\mathit{\eta }}_{2}\right)\left(\mathit{\nu }-{\mathit{\nu }}_{\mathit{r}}\right)-{\mathit{K}}_{\mathit{P}}(\mathit{\eta }-{\mathit{\eta }}_{\mathit{d}}) $ 以指数形式趋近于0 。

4 仿真与分析

为了说明所提出的基于收缩理论的水下无人航行器运动控制的有效性,将REMUS AUV作为研究对象进行数值仿真试验。该水下无人航行器[22]的物理参数和水动力参数如表1表2所示。基于实际考虑各个方向速度最大值设置为 $4\rm\;{m}/\rm{s}$ ,仿真平台为Matlab,选取的时间步长 $ t=0.01\;\mathrm{s} $ ,仿真时间 $ T=100\;\mathrm{s} $

表 1 AUV的物理参数 Tab.1 The physical parameters of AUV

表 2 水动力系数 Tab.2 Hydrodynamic coefficient
4.1 水平面正弦轨迹跟踪控制仿真

首先进行深度不变的水平面运动的二维正弦运动仿真,设定的期望轨迹为:

$ \left\{\begin{array}{l}{x}_{d}=\dfrac{1}{2}t,\\ {y}_{d}=5{\rm{sin}}\left(\dfrac{{\text{π}} }{10}t\right)。\end{array}\right. $

水下无人航行器的起始点为 $ (0,-5) $ ,初始速度为 $0\;\mathrm{m}/\mathrm{s}$ 。控制器参数为 $K_P={\rm{diag}}\left(\mathrm{10,10,10}\right);K_D= {\rm{diag}} $ $ (100,100,100)$ 。水下无人航行器的运动轨迹和期望轨迹如图2所示,轨迹跟踪误差如图3所示,航行速度变化如图4所示。

图 2 水平面正弦运动时水下无人航行器的期望轨迹与仿真轨迹 Fig. 2 The desired trajectory and simulation trajectory of the UUV in the horizontal plane sine motion

图 3 水平面正弦运动时无人水下航行器的轨迹误差 Fig. 3 The trajectories error of the UUV in the horizontal plane sine motion

图 4 水平面正弦运动时水下无人航行器的速度时历曲线 Fig. 4 The velocity time history curve of the UUV in the horizontal plane sine motion

其中,轨迹误差为x方向和y方向的绝对误差,速度U为合速度。以上仿真结果可以看出,在水平面正弦轨迹的轨迹跟踪仿真中,设定的期望轨迹起点为 $ \left(\mathrm{0,0}\right) $ ,幅值为5 m,周期为 $ 20\;\mathrm{s} $ ,仿真轨迹跟踪效果良好,误差在5 $ \mathrm{s} $ 内收敛于0,与轨迹变化呈同周期小幅波动。航行器的速度在10 $ \mathrm{s} $ 内也达到稳定,随运动轨迹呈周期性波动。

4.2 空间螺旋轨迹跟踪控制仿真

然后针对六自由度的空间运动开展仿真试验,设定的期望轨迹为:

$ \left\{\begin{array}{l}{x}_{d}=5{\rm{cos}}\left(\dfrac{{\text{π}} }{10}t\right),\\ {y}_{d}=5{\rm{sin}}\left(\dfrac{{\text{π}} }{10}t\right),\\ {z}_{d}=t。\end{array}\right. $

水下无人航行器的起始点为 $ (\mathrm{0,0},0) $ ,初始速度为 $0\;\mathrm{m}/\mathrm{s}$ 。控制器参数为 $K_P={\rm{diag}}\left(\mathrm{10,10,10,10,10,10}\right); $ $ K_D={\rm{diag}}\left(\mathrm{20,20,20,20,20,20}\right)$ 。水下无人航行器的运动轨迹和期望轨迹如图5所示,轨迹跟踪误差如图6所示,航行速度变化如图7所示。

图 5 空间螺旋运动时无人水下航行器的期望轨迹与仿真轨迹 Fig. 5 The desired trajectory and simulation trajectory of the UUV in space spiral motion

其中,轨迹误差为3个方向的绝对误差,速度U为合速度。在空间螺旋轨迹的轨迹跟踪仿真中,设定的期望轨迹起点为 $ (5,\mathrm{0,0}) $ ,圆形轨迹半径为5 m,周期为20 s。仿真轨迹跟踪效果良好,误差在 $ 5\;\mathrm{s} $ 内收敛于0,与轨迹变化呈同周期小幅波动。航行器的速度在 $ 5\;\mathrm{s} $ 内也达到稳定,在2 $ \mathrm{m}/\mathrm{s} $ 左右小幅波动。

图 6 空间螺旋运动时无人水下航行器的轨迹误差 Fig. 6 The trajectories error of the UUV in space spiral motion

图 7 空间螺旋轨迹运动时水下无人航行器的速度时历曲线 Fig. 7 The velocity time history curve of the UUV in space spiral motion

该结果有效验证了本文所设计控制算法的有效性,能够实现六自由度水下无人航行器的水下三维运动的轨迹跟踪控制,控制效果良好。

5 结 语

收缩理论作为一种新的方法,在系统稳定性分析和控制器设计上有广阔的应用前景。以水下无人航行器为研究对象,考虑参数已知条件下航行器的轨迹跟踪控制问题,基于收缩理论设计了全局指数收敛的理想控制器,并对已知模型的水下无人航行器进行了轨迹跟踪控制仿真。仿真结果验证了基于收缩理论的水下无人航行器轨迹跟踪控制器能够使航行器准确跟踪期望轨迹,且收敛速度较快,具有较好的控制效果。

参考文献
[1]
骆晓玲, 王子含. 基于模糊PID的水下航行器运动控制研究[J]. 电子测量技术, 2020, 43(19): 53-56.
[2]
王芳荣, 阚如文, 王昕, 等. 无人水下航行器PID神经网络解耦控制[J]. 吉林大学学报(工学版), 2012, 42(S1): 387-391.
[3]
DU Jia-lu, HU Xin, MIROSLAV K, et al. Robust dynamic positioning of ships with disturbances under input saturation[J]. Automatica, 2016, 73(6): 207-214.
[4]
ANTONELLI G, CACCAVALE F, CHIAVERINI S, et al. A novel adaptive control law for underwater vehicles[J]. IEEE Transactions on Control Systems Technology, 2003, 11(2): 221-232. DOI:10.1109/TCST.2003.809244
[5]
LI Ji-Hong, LEE Pan-Mook. Design of an adaptive nonlinear controller for depth control of an autonomous underwater vehicle[J]. Ocean Engineering, 2005, 32: 2165-2181. DOI:10.1016/j.oceaneng.2005.02.012
[6]
蒋沛立. 欠驱动AUV水平面轨迹跟踪控制算法研究[D]. 成都: 电子科技大学, 2020.
[7]
曹晓明. 海流扰动下无人水下航行器的动态面反演轨迹跟踪控制[J/OL]. 系统工程与电子技术: 1−11[2021−03−12]. http://kns.cnki.net/kcms/detail/11.2422.TN.20210112.1308.002.html.
[8]
方勇纯. 非线性控制理论[M]. 北京: 清华大学出版社, 2009.
[9]
LOHMILLERW, SLOTINE J J E.. On contraction analysis for nonlinear systems[J]. Automatica, 1998, 34(6): 683-696. DOI:10.1016/S0005-1098(98)00019-3
[10]
LOHMILLER W, SLOTINE J J E. On the metric observers for nonlinear systems[C] //Proceeding of the 1996 IEEE International Conference on Control Applications, Dearborn, 1996: 320−326.
[11]
AGHANNAN N, ROUCHON P. An intrinsic observer for a class of lagrangian systems[J]. IEEE Transactions on Automatic Control, 2003, 48(6): 936-945. DOI:10.1109/TAC.2003.812778
[12]
LOHMILLERW, SLOTINE J J E.. Control system design for mechanical systems using contraction theory[J]. IEEE Transactions on Automatic Control, 2000, 45(5): 984-989. DOI:10.1109/9.855568
[13]
JOUFFROY J, SLOTINE J J E. Methodological remarks on contraction theory[C] //Proceedings of 43rd IEEE Conference on Decision and Control. Atlantis, Paradise Island, Bahamas, 2004: 2537−2543.
[14]
MAJEED MOHAMED, SWAROOP S. Incremental input to state stability of underwater vehicle[J/OL]. IFAC-PapersOnLine, 2016, 49(1): 41−46.
[15]
MOHAMED M, Rong Su. Contraction based tracking control of autonomous underwater vehicle[J/OL]. IFAC-PapersOnLine, 2017, 50 (1): 2665−2670.
[16]
张果, 卢天秀, 曹立佳, 等. 四旋翼飞行器自适应收缩反步控制[J]. 电光与控制, 2020, 27(1): 26-31,41.
[17]
张玉芳, 刘长德. 基于收缩理论的船舶动力定位自适应反步控制[J]. 中国造船, 2020, 61(04): 85-94. DOI:10.3969/j.issn.1000-4882.2020.04.010
[18]
MOHAMED M, RONG Su. Contraction based tracking control of autonomous underwater vehicle[C]// International Federation of Automatic Control, 2017: 2665−2670.
[19]
WEI Wang, SLOTINE J J E. On partial contraction analysis for coupled nonlinear oscillators[J]. Biological Cybernetics, 2005, 92(1): 38-53. DOI:10.1007/s00422-004-0527-x
[20]
Soon-Jo Chung, SLOTINE J J E. Cooperative robot control and concurrent synchronization of lagrangian systems[J]. IEEE Transactions on Robotics, 2009, 25(3): 686-700. DOI:10.1109/TRO.2009.2014125
[21]
FOSSEN T I. Handbook of marine craft hydrodynamics and motion control[M]. John Wiley & Sons, 2011.
[22]
PRESTERO T. Verification of a six-degree of freedom simulation model for the REMUS autonomous underwater vehicle[D]. Massachusetts Institute of Technology, 2001.
基于收缩理论的水下无人航行器轨迹跟踪控制
王嘉玺, 高德峰, 麻彩朋, 唐煜,