2. 中国船舶重工集团有限公司第七一〇研究所,湖北 宜昌 443003
2. The 710 Research Institute of CSIC, Yichang 443003, China
自治水下机器人系统是一种典型的非线性强耦合系统。由于AUV工作环境复杂、水动力参数难以精确求解等原因,AUV非线性系统的运动控制问题成为控制领域的研究热点。张利军等[1]针对垂直面欠驱动自治水下机器人定深控制问题,仅使用可测量的深度和纵摇角信息,基于反演法设计自适应输出反馈控制器。俞建成等[2]提出了基于广义动态模糊神经网络的水下机器人直接自适应控制方法,通过在线自适应学习算法构建水下机器人的逆动力学模型。提出了基于网络结构的水下航行器直接自适应控制器,利用Lyapunov稳定理论,证明了基于该控制器的水下航行器控制系统闭环稳定性。Lee等[3]为提高鲁棒性、解决系统耦合项纵向速度对航向的影响,设计了性能较好的AUV深度L1自适应控制器。
AUV轨迹跟踪控制的目标是设计有效的控制律,使其从初始状态跟踪参考轨迹,并保证跟踪位置误差的全局一致渐进稳定[4 – 5]。目前研究成果采用的控制方法主要有传统PID控制方法、滑模控制方法、反演控制方法、神经网络法。由于传统PID参数需要适应模型参数的变化,而AUV动力学模型参数存在不确定性,因此很难满足需要。胡志强等[6]提出了USV系统航向在线自优化 PID(比例、积分、微分)控制算法。
变结构滑模控制凭借其强鲁棒性,在AUV的轨迹跟踪控制中取得了一些成果[7 – 8]。魏延辉等[9]提出一种基于解耦模型的多控制器联合控制方法。对解耦后的 AUV运动模型进行轨迹跟踪控制器的设计,为轴向和侧向运动设计自适应反演滑模控制器,为首向运动设计带有干扰观测器的自适应终端滑模控制器。Conte等[10] 采用滑模控制律提出一种小型水面船跟踪水下目标的轨迹跟踪控制系统,取得了满意的效果。Zool H. Ismail等[11]提出了一种基于鲁棒动态区域的滑模控制并应用于水下航行器的轨迹跟踪,并与模糊滑模和自适应模糊控制进行比较,取得了满意的效果。Gao等[12]将AUV六自由度运动模型解耦成垂直和水平面2部分,并且分别设计了有效的滑模控制器。Hnagil J等[13] 针对存在未知干扰的AUV三维运动,采用二阶滑模控制器,通过实验证明控制器能够提高轨迹跟踪的精度。贾鹤鸣等[14]提出了基于神经网络的自适应输出反馈控制方法来研究水下机器人三维轨迹跟踪,控制器由基于动态补偿器的输出反馈控制项、神经网络自适应控制项和鲁棒控制项。Liu等[15]提出了一种基于模糊神经网络的鲁棒自适应控制策略,用模糊神经网络是用来估计反演控制律。反演控制策略是AUV常用的控制方法。Lionel L等[16]提出的基于反步控制与Lypaunov函数的AUV非线性路径跟踪控制方法,Jon E R等[17]将反步控制与模型反馈控制结合应用于欠驱动水下机器人控制之中。
本文针对三维水下航行环境中AUV航迹精确跟踪问题,提出了自适应反演滑模跟踪控制器。基于Lyapunov稳定理论分析了整个闭环系统的稳定性。在Matlab软件上通过对光滑的指令航线进行跟踪仿真,结果表明所设计的控制器可以很好地克服时外界干扰,取得较好的航迹跟踪效果。
1 AUV数学模型通常用六自由度数学模型来描述AUV的复杂运动,假设其具有截面、切面和断面3个严格对称的对称面,且假设重力和浮力相等。2个参考坐标系为惯性坐标系和载体坐标系。根据牛顿欧拉公式,AUV的运动学和动力学方程为:
$\left\{ \begin{array}{l} {\dot{ \eta }} = {{J}}\left( {{\eta }} \right){{\nu }},\\ {{M\dot \nu }} + {{C}}\left( {{\nu }} \right){{\nu }} + {{D}}\left( {{\nu }} \right) + {{g}}\left( {{\eta }} \right) = {{\tau }} + {{d}}{\text{。}} \end{array} \right.$ | (1) |
为了简化轨迹跟踪控制器的设计,这里将横滚自由度忽略掉,式中
由式(1)可以得到
${{{M}}^*}\left( {{\eta }} \right){\ddot{ \eta }} + {{{C}}^*}\left( {{{\nu }}, {{\eta }}} \right){\dot{ \eta }} + {{{D}}^*}\left( {{{\nu }}, {{\eta }}} \right){\dot{ \eta }} + {{{g}}^*}\left( {{\eta }} \right) = {{{J}}^{ - {\rm T}}}\left( {{\eta }} \right){{\tau }}, $ | (2) |
式中:
${{{M}}^*}\left( {{\eta }} \right) = {{{J}}^{ - {\rm T}}}\left( {{\eta }} \right){{M}}{{{J}}^{ - 1}}\left( {{\eta }} \right), $ |
$ {{{C}}^*}\left( {{{\nu }}, {{\eta }}} \right) = {{{J}}^{ - {\rm T}}}\left( {{\eta }} \right)\left[{{{C}}\left( {{\nu }} \right) + {{M}}{{{J}}^{-1}}\left( {{\eta }} \right){\dot{ J}}\left( {{\eta }} \right)} \right]{{{J}}^{ - 1}}\left( {{\eta }} \right), $ |
$ {{{g}}^*}\left( {{\eta }} \right) = {{{J}}^{ - {\rm T}}}\left( {{\eta }} \right){{g}}\left( {{\eta }} \right), $ |
$ {{{D}}^*}\left( {{{\nu }}, {{\eta }}} \right) = {{{J}}^{ - {\rm T}}}\left( {{\eta }} \right){{D}}\left( {{\nu }} \right){{{J}}^{ - 1}}\left( {{\eta }} \right){\text{。}} $ |
控制目标为设计一个自适应鲁棒控制器使AUV状态向量跟踪预定三维航迹,跟踪误差趋近于0。
1)反演控制律
航迹跟踪控制的目的是设计控制律满足式AUV系统状态
定义第1个Lyapunov函数为
${{{V}}_1} = \frac{1}{2}{{e}}_1^{\rm T}{{{e}}_1}, $ | (3) |
所以有
${{\dot{ V}}_1} = {{e}}_1^{\rm T}{{\dot{ e}}_1} = {{e}}_1^{\rm T}\left( {{\dot{ \eta }} - {{{\dot{ \eta }}}_r}} \right){\text{。}}$ | (4) |
取虚拟控制量为
${\dot V_1} = {{e}}_1^{\rm T}\left( { - {{{\varsigma }}_{\text{1}}}{{{e}}_1} + {{{e}}_2}} \right) = - {{e}}_1^{\rm T}{\varsigma _1}{{{e}}_1} + {{e}}_1^{\rm T}{{{e}}_2}{\text{。}}$ | (5) |
由AUV系统方程得
$\begin{split} {{{\dot{ e}}}_2} & = {\ddot{ \eta }} + {{{\varsigma }}_{\rm{1}}}{{{\dot{ e}}}_1} - {{{\ddot{ \eta }}}_r}=\\ & {{{M}}^{* - 1}}[{{{J}}^{ - {\rm T}}}\left( {{{\tau }} + {{d}}} \right) - {{{C}}^*}{\dot{ \eta }}-\\ & {{{D}}^*}{\dot{ \eta }} - {{{g}}^*}]\; - {{{\varsigma }}_{\rm{1}}}{{{\dot{ e}}}_1} - {{{\ddot{ \eta }}}_r}{\text{。}} \end{split}$ | (6) |
2)滑模项的推导
由于传统的反演控制方法无法克服扰动,这里通过引入滑模项,保证控制系统的鲁棒性。
设滑动面s=e2,定义第2个Lyapunov函数为
${{{V}}_2} = {{{V}}_1} + \frac{1}{2}{{{e}}_2}^{\rm T}{{{\varsigma }}_2}{{{M}}^*}{{{e}}_2}, $ | (7) |
式中
$ \begin{split} {{{\dot{ V}}}_2} =& {{{\dot{ V}}}_1} + {{{e}}_2}^{\rm T}{{{\varsigma }}_2}{{{M}}^*}{{{\dot{ e}}}_2} = - {{e}}_1^{\rm T}{\varsigma _1}{{{e}}_1} + {{e}}_1^{\rm T}{{{e}}_2}+\\ & {{{e}}_2}^{\rm T}{{{\varsigma }}_2}\left[ {{{J}}^{ - {\rm T}}}\left( {{{\tau }} + {{d}}} \right) - {{{C}}^*}{\dot{ \eta }} - {{{D}}^*}{\dot{ \eta }} \right.-\\ & \left. {{{g}}^*} - {{{M}}^*}{{{\varsigma }}_{\rm{1}}}{{{\dot{ e}}}_1} - {{{M}}^*}{{{\ddot{ \eta }}}_r} \right]{\text{。}} \end{split}$ | (8) |
为了使
$ \begin{split} {{\tau }} =& {{J}}[{{{C}}^*}{\dot{ \eta }} + {{{D}}^*}{\dot{ \eta }} + {{{g}}^*} + {{{M}}^*}{{{\varsigma }}_{\rm{1}}}{{{\dot{ e}}}_1}+\\ & {{{M}}^*}{{{\ddot{ \eta }}}_r} - {{{e}}_2} - {{{\varsigma }}_2}^{ - 1}{{{e}}_1} - \lambda {\mathop{\rm sgn}} {\left( {{{e}}_2^{\rm T}{{{\varsigma }}_2}} \right)^{\rm T}}]\text{,} \end{split}$ | (9) |
将式(9)代入
$\begin{split} &{{{\dot{ V}}}_2} = - {{e}}_1^{\rm T}\varsigma {{{e}}_1} - {{{e}}_2}^{\rm T}{{{\varsigma }}_2}{{{e}}_2} - {{{e}}_2}^{\rm T}{{{\varsigma }}_2}\left[ {\lambda {\mathop{\rm sgn}} {{\left( {{{e}}_2^{\rm T}{{{\varsigma }}_2}} \right)}^{\rm T}} - }\right.\\ &\leqslant \left.{{{J}}^{ - {\rm T}}}{{d}} \right]{{e}}_1^{\rm T}\varsigma {{{e}}_1} - {{{e}}_2}^{\rm T}{{{\varsigma }}_2}{{{e}}_2} - \left| {{{{e}}_2}^{\rm T}{{{\varsigma }}_2}} \right|\left( {\lambda - \left| {{{{J}}^{ - {\rm T}}}{{d}}} \right|} \right){\text{。}}\;\;\;\; \end{split}$ | (10) |
式中d为外界干扰,在实际中通常是有界的。如果保证
采用本文控制设计的方法,在Matlab环境下通过控制AUV在不同参考航迹下进行轨迹跟踪,同时也对PID控制器作用下的AUV轨迹跟踪进行对比,从而验证本文提出的滑模反演法的有效性。
AUV主要参数如表1所示。
同时假设AUV受到的环境干扰为
$\begin{split} &{{d}}\left( t \right) = [10\sin \left( {0.1t - {\text{π}} /4} \right),12\sin \left( {0.1t - {\text{π}} /6} \right),\\ &5\sin \left( {0.1t \!\!-\!\! {\text{π}} /3} \right),\;5\sin \left( {0.1t \!\!-\!\! {\text{π}} /6} \right),5\sin \left( {0.1t \!\!-\!\! {\text{π}} /4} \right)]{\text{。}} \end{split}$ | (11) |
1)给定期望航迹为一光滑三维航迹:
$\begin{split} &\left( {x,y,z} \right) = (\sin (0.02{\text{π}} t),\cos (0.01{\text{π}} t),\;\\ & \sin (0.01{\text{π}} t) + 2\cos (0.01{\text{π}} t)){\text{。}} \end{split}$ | (12) |
图1和图2分别给出了在设计的控制器和传统PID控制器作用下单独每个坐标轴上的跟踪曲线,图3和图4为在设计的控制器作用下的仿真结果,图3为AUV三维空间航迹跟踪曲线,图4为每个坐标轴的上跟踪误差。从图中可以看出,反演滑模控制器控制的AUV能很好地跟踪上期望轨迹,而且分别在x,y,z轴上跟踪误差小。和传统PID控制器相比,能更好的克服外界干扰,避免初始时的过调,具有较强的鲁棒性,从而使AUV快速准确的实现轨迹跟踪。
2)设定AUV航迹制导器生成的期望航迹点为
$ \left( {{x_i}, {y_i}, {z_i}} \right) = \left( {R \times \cos \left( {i \times 15^\circ } \right), R \times \sin \left( {i \times 15^\circ } \right), \left( {i + 1} \right) \times d} \right), $ |
其中R=10,d=2,由期望航迹点拟合产生三维航迹进行跟踪控制。
在螺旋线为期望轨迹的前提下,图5和图6分别为在本文设计的控制器和传统PID控制器作用下单独每个坐标轴上的跟踪曲线,图7和图8为在设计的控制器作用下的仿真结果。从仿真结果可以看出,反演滑模控制器控制的AUV能很好地跟踪上期望轨迹且分别在x,y,z轴上跟踪误差小。和图6所示传统PID控制器结果相比,能更好地克服外界干扰,避免初始时的不稳定,具有较强的鲁棒性,从而使AUV快速准确的实现轨迹跟踪。
本文针对自治水下航行器的三维轨迹跟踪问题,利用反演滑模算法构造了轨迹跟踪控制器,在给定的光滑航迹下进行控制系统的仿真验证,并且与PID控制器的作用效果进行对比。由结果可以看出设计的控制器能使AUV能够快速有效跟踪期望轨迹,具有较高的跟踪精度,而且能够有效地抑制外界干扰,达到理想的控制效果,具有较强的鲁棒性。
[1] |
张利军, 齐雪, 赵杰梅, 等. 垂直面欠驱动自治水下机器人定深问题的自适应输出反馈控制[J]. 控制理论与应用, 2012, 29(10): 1371-1376. |
[2] |
俞建成, 张艾群, 王晓辉, 等. 基于模糊神经网络水下机器人直接自适应控制[J]. 自动化学报, 2007, 33(8): 840-846. |
[3] |
LEE K W, KEUM W, SINGH S N, et al. Multi input submarine control via L1 adaptive feedback despite uncertainties[J]. Journal of System and Control Engineers, 2014, 228(5): 330-347. |
[4] |
朱大奇, 杨蕊蕊. 生物启发神经动力学模型的自治水下机器人反演跟踪控制[J]. 控制理论与应用, 2012, 29(10): 1309-1316. |
[5] |
周超, 曹志强, 王硕. 微小型仿生机器鱼设计与实时路径规划[J]. 自动化学报, 2008, 34(7): 772-777. |
[6] |
胡志强, 周焕银, 林扬, 等. 基于在线自优化PID算法的USV系统航向控制[J]. 机器人, 2013, 35(3): 263-268. |
[7] |
BAGHERI A, MOGHADDAM J J. Simulation and tracking control based on neural-network strategy and sliding-mode control for underwater remotely operated vehicle[J]. Neurocomputing, 2009, 72(8): 1934-1950. |
[8] |
WALLACE M B, MAX S D, EDWIN K. Depth control of remotely operated underwater vehicles using an adaptive fuzzy sliding mode controller[J]. Robotics and Autonomous Systems, 2008, 56(8): 670-677. DOI:10.1016/j.robot.2007.11.004 |
[9] |
魏延辉, 周卫祥, 贾献强, 等. AUV模型解耦水平运动多控制器联合控制[J]. 华中科技大学学报(自然科学版), 2016, 44(4): 37-42. |
[10] |
CONTE G, DE CAPUA G P, SCARADOZZI D. Designing the NGC system of a small ASV for tracking underwater targets[J]. Robotics and Autonomous Systems, 76 (2016) 46–57.
|
[11] |
ZOOL H I, MOHDB M M, VINA W E, et al. A robust dynamic region- based control scheme for an autonomous underwater vehicle [J]. Ocean Engineering, 111 (2016) 155–165.
|
[12] |
GAO Fu-dong, PAN Cun-yun, HAN Yan-yan, et al. Nonliear traiectory tracking control of a new autonomous underwater vehicle in complex sea conditions[J]. Journal of Central South University, 2012, 19(7): 1859-1868. DOI:10.1007/s11771-012-1220-1 |
[13] |
HNAGIL J, MINSUNG K, SON CHEOL Y. Second order sliding mode controller for autonomous underwater vehicle in the presence of unknown disturbances[J]. Nonlinear Dynamics, 2014, 78(1): 183-196. DOI:10.1007/s11071-014-1431-0 |
[14] |
贾鹤鸣, 张利军, 齐 雪, 等. 基于神经网络的水下机器人三维航迹跟踪控制[J]. 控制理论与应用, 2012, 29(7): 877-883. |
[15] |
LIU Yan-cheng, LIU Si-yuan, WANG Ning. Fully-tuned fuzzy neural network based robust adaptive tracking control of unmanned underwater vehicle with thruster dynamics[J]. Neurocomputing, 2016, 196: 1–13.
|
[16] |
JON E R, ASGEIR J S. Model-based output feedback control of slender-body underactuated AUVs: theory and experiments[J]. IEEE Transactions on Control Systems Technology, 2008, 16(5): 930-946. DOI:10.1109/TCST.2007.916347 |
[17] |
LIONEL L, BRUNO J. Robust nonlinear path-following control of AUV[J]. IEEE Journal of Oceanic Engineering, 2008, 33(2): 89-102. DOI:10.1109/JOE.2008.923554 |