2.793

2018影响因子

(CJCR)

  • 中文核心
  • EI
  • 中国科技核心
  • Scopus
  • CSCD
  • 英国科学文摘

留言板

尊敬的读者、作者、审稿人, 关于本刊的投稿、审稿、编辑和出版的任何问题, 您可以本页添加留言。我们将尽快给您答复。谢谢您的支持!

姓名
邮箱
手机号码
标题
留言内容
验证码

基于自适应RBF神经网络的超空泡航行体反演控制

李洋 刘明雍 张小件

李洋, 刘明雍, 张小件. 基于自适应RBF神经网络的超空泡航行体反演控制. 自动化学报, 2020, 46(4): 734-743. doi: 10.16383/j.aas.2018.c170387
引用本文: 李洋, 刘明雍, 张小件. 基于自适应RBF神经网络的超空泡航行体反演控制. 自动化学报, 2020, 46(4): 734-743. doi: 10.16383/j.aas.2018.c170387
LI Yang, LIU Ming-Yong, ZHANG Xiao-Jian. Adaptive RBF Neural Network Based Backsteppting Control for Supercavitating Vehicles. ACTA AUTOMATICA SINICA, 2020, 46(4): 734-743. doi: 10.16383/j.aas.2018.c170387
Citation: LI Yang, LIU Ming-Yong, ZHANG Xiao-Jian. Adaptive RBF Neural Network Based Backsteppting Control for Supercavitating Vehicles. ACTA AUTOMATICA SINICA, 2020, 46(4): 734-743. doi: 10.16383/j.aas.2018.c170387

基于自适应RBF神经网络的超空泡航行体反演控制


DOI: 10.16383/j.aas.2018.c170387
详细信息
    作者简介:

    刘明雍  西北工业大学教授.主要研究方向为群集控制, 地磁仿生导航, 水下航行体导航, 制导与控制. E-mail: liumingyong@nwpu.edu.cn

    张小件   西北工业大学航海学院博士研究生.主要研究方向为水下航行体制导律设计. E-mail:xiaojiansin@mail.nwpu.edu.cn

    通讯作者: 李洋   西北工业大学航海学院博士研究生.主要研究方向为水下超空泡航行体导航与控制.本文通信作者.E-mail: liyang_116@yeah.net
  • 本文责任编委 倪茂林
  • 基金项目:

    国家自然科学基金 51379176

    国家自然科学基金 61473233

Adaptive RBF Neural Network Based Backsteppting Control for Supercavitating Vehicles

More Information
    Author Bio:

    LIU Ming-Yong   Professor at the School of Marine Science and Technology, Northwestern Polytechnical University. His research interest covers control of flocking system, bio-inspired geomagnetic navigation and navigation guidance and control of underwater vehicle

    ZHANG Xiao-Jian   Ph.D. candidate at the School of Marine Science and Technology, Northwestern Polytechnical University. His research interest covers guidance and control of underwater vehicle

    Corresponding author: LI Yang   Ph.D. candidate at the School of Marine Science and Technology, Northwestern Polytechnical University. His research interest covers navigation and control of underwater supercavitating vehicle. Corresponding author of this paper
  • Recommended by Associate Editor NI Mao-Lin
  • Fund Project:

    National Natural Science Foundation of China 51379176

    National Natural Science Foundation of China 61473233

图(14)
计量
  • 文章访问数:  1274
  • HTML全文浏览量:  1679
  • PDF下载量:  153
  • 被引次数: 0
出版历程
  • 收稿日期:  2017-07-12
  • 录用日期:  2017-12-06
  • 刊出日期:  2020-04-24

基于自适应RBF神经网络的超空泡航行体反演控制

doi: 10.16383/j.aas.2018.c170387
    基金项目:

    国家自然科学基金 51379176

    国家自然科学基金 61473233

    作者简介:

    刘明雍  西北工业大学教授.主要研究方向为群集控制, 地磁仿生导航, 水下航行体导航, 制导与控制. E-mail: liumingyong@nwpu.edu.cn

    张小件   西北工业大学航海学院博士研究生.主要研究方向为水下航行体制导律设计. E-mail:xiaojiansin@mail.nwpu.edu.cn

    通讯作者: 李洋   西北工业大学航海学院博士研究生.主要研究方向为水下超空泡航行体导航与控制.本文通信作者.E-mail: liyang_116@yeah.net
  • 本文责任编委 倪茂林

摘要: 针对超空泡航行体姿轨控制普遍存在的模型不确定性问题进行相关研究.为此, 首先对其动力学特性进行分析, 并建立了超空泡航行体的动力学名义模型, 随后将其改写为不确定反馈系统, 然后利用反演控制方法设计超空泡航行体姿轨控制器, 针对模型中的未知函数利用径向基函数(Radial basis function, RBF)神经网络进行逼近并补偿, 由基于Lyapunov稳定理论设计的自适应方法计算神经网络的权重, 并给出稳定性证明.仿真研究验证了控制器设计的有效性.

本文责任编委 倪茂林

English Abstract

李洋, 刘明雍, 张小件. 基于自适应RBF神经网络的超空泡航行体反演控制. 自动化学报, 2020, 46(4): 734-743. doi: 10.16383/j.aas.2018.c170387
引用本文: 李洋, 刘明雍, 张小件. 基于自适应RBF神经网络的超空泡航行体反演控制. 自动化学报, 2020, 46(4): 734-743. doi: 10.16383/j.aas.2018.c170387
LI Yang, LIU Ming-Yong, ZHANG Xiao-Jian. Adaptive RBF Neural Network Based Backsteppting Control for Supercavitating Vehicles. ACTA AUTOMATICA SINICA, 2020, 46(4): 734-743. doi: 10.16383/j.aas.2018.c170387
Citation: LI Yang, LIU Ming-Yong, ZHANG Xiao-Jian. Adaptive RBF Neural Network Based Backsteppting Control for Supercavitating Vehicles. ACTA AUTOMATICA SINICA, 2020, 46(4): 734-743. doi: 10.16383/j.aas.2018.c170387
  • 常言道: "兵贵神速", 航速是影响海战装备作战性能的重要指标.超空泡航行体的出现, 大幅降低了水下环境的阻力限制, 使水下航行体达到前所未有的航速, 也因此吸引了众多研究者的关注.与此同时, 伴随超空泡的出现, 其姿轨控制难以实现的问题也随之而来.由于航行体被空泡包裹, 失去大部分浮力, 导致纵平面内受力失衡, 航行体的鲁棒性降低, 易受干扰影响, 给超空泡航行体的姿轨控制带来极大挑战.这方面与传统鱼雷相比, 超空泡航行体更接近空中飞行器[1].

    传统意义上, 根据航行速度的不同将超空泡航行体分为4类[2], 对此4类按空泡包裹的不同又可分为两类, 即"全包裹超空泡航行体"和"非全包裹超空泡航行体".前者速度较高, 一般在70~1 000 m/s, 后者速度较低, 通常为0~70 m/s.

    目前, 研究大多集中于全包裹超空泡技术, 即空泡完全包裹航行体, 且主要集中于50~200 m/s速度下的航行体空泡滑行方案, 该方案中只有头部空化器与水长时间接触, 尾部呈周期性浸水滑行状态.针对滑行力这一复杂的非线性项进行了诸多研究. Kirschner等[1]研究了空泡结构对航行体动力学模型的影响. Vanek等[3]对超空泡航行体纵向动力学模型非线性项里的滑行力进行重点研究, 并通过滚动时域控制对航行体进行了跟踪控制研究. Dzielski等[4]建立了全包裹超空泡航行体的非线性模型并利用反馈线性化进行处理. Mao等[5]对超空泡航行体的非线性控制进行了多方面的研究, 给出了详细的数学建模方法, 并据此分别设计了滑模控制器、Quasi-LPV控制器, 高增益观测器以及饱和补偿器, 用以解决超空泡航行体航行控制问题.考虑尾舵效率$n$的不确定性, 将其视为未知参量并通过自适应控制的方法实现对超空泡航行体的跟踪控制[6]. Li等[7]考虑空泡变化的时延效应, 并进行了相关实验研究. Kawakami等[8]通过仿真和实验对不同空化数、弗劳德数等参数对空泡的影响进行了详细的分析研究. Sanabria等[9]对超空泡航行体的建模、控制分别进行了分析, 并搭建了超空泡航行体的半实物仿真平台对理论结果进行了验证.

    本文研究的是非全包裹超空泡航行体, 如图 1所示.非全包裹超空泡, 即空泡提前闭合于航行体尾部, 航行体的空化器及尾部均与水接触, 其航速一般为50~70 m/s[2], 尾部额外受到浮力及机动时造成的尾部压差.非全包裹超空泡不仅是全包裹超空泡从无到有所必然经历的过渡过程, 也是可以独立维持稳定的航行状态, 该状态下的航行体虽然速度较低, 但配合合理的人工通气也可以实现降低流体阻力的效果.另外, 一些特殊航行体上的特殊装置要求必须与水接触, 例如超空泡潜艇的鱼雷发射管, 磁流体矢量控制装置等.空泡形态的改变也势必对航行体的动力学特性造成较大影响, 因此十分有必要对非全包裹状态下的超空泡航行体进行相关研究工作.遗憾的是, 目前国内外相关研究文献较少.仅Yuan等[10]对自然空泡的CFD (Computational fluid dynamics)模型进行了诸多研究, 对非全包裹型、尾部闭合型以及尾迹闭合型空泡的形态进行了不同攻角和空化数下的对比.其研究表明不同空泡形态下的航行体动力学特性差距较大, 有必要针对不同空泡形态下的航行体进行研究. Kim等[11]将非全包裹超空泡看作是一种过渡阶段, 并对此状态下的航行体设计了自适应神经网络控制器实现定值控制.但是该文献并未给出具体的航行体动力学模型.

    图  1  非全包裹超空泡航行体模式

    Figure 1.  Incomplete-encapsulated supercavitating vehicle

    跨介质航行状态给航行体的姿轨控制带来更多的挑战, 严格意义上, 很难建立准确的超空泡航行体模型.空泡轮廓的形变, 空泡边缘的不规则气泡, 均会造成航行体动力学特性发生改变.由于空泡形变或者不规则气泡带来的影响是不可测得的, 对航行体的姿轨控制系统造成了诸多不确定性.以往对超空泡航行体的研究多从如何处理模型中的复杂非线性项入手, 然后基于所谓准确的模型设计控制律.理论模型与实际航行体之间的不确定性和未知误差被人为忽略, 这也对控制律的作用效果产生了一定影响.因此, 在设计控制器过程中, 有必要将模型不确定性因素考虑在内.

    神经网络是一种在系统存在较大不确定性时, 能够依靠自身非线性映射的功能, 逼近任意非线性函数, 显著提高控制器性能的有效途径[12].对基于RBF神经网络的自适应非线性控制研究也引起了国内外学者的广泛关注[13-15]. RBF (Radial basis function)神经网络被用于逼近双足机器人模型的未知项[16]. Sun等[17]设计了基于神经网络的自适应观测器和滑模自适应输出反馈控制器, 用于解决机械臂存在不确定性和外界干扰的情况下的鲁棒轨迹跟踪问题.针对一些未知非线性离散系统, 利用神经网络可以辨识出未知的控制系统[18].另外, 自适应神经网络经常与反演法相结合来解决许多高阶复杂系统的控制问题[19-21].

    本文以非全包裹超空泡航行体为研究对象, 设计有头部空化器及尾部的直接侧向力装置作为执行机构, 对其进行动力学建模, 在考虑模型不确定性的基础上, 设计了基于RBF神经网络的反演控制器, 用于解决航行体的姿轨控制问题, 同时, 利用RBF神经网络逼近并补偿模型中的不确定项.仿真实验证明该控制器具有较好的控制效果.

    • 非全包裹超空泡航行体主要参数源自高速超空泡航行体基准模型[4].

      对纵平面运动分析, 使用的地面坐标系和体坐标系$ O_e-X_eY_eZ_e $如图 2所示.体坐标$ O_b-X_bY_bZ_b $原点$ O_b $取为重心, 三轴分别为沿航行体发射方向水平的$ X_b $轴, 垂直于$ X_b $轴且水平向右的$ Y_b $轴及垂直于$ X_bO_bY_b $平面竖直向下的$ Z_b $轴[2, 7].

      图  2  坐标系

      Figure 2.  The reference frame

      非全包裹下超空泡航行体受力如图 3所示.

      图  3  航行体受力分析

      Figure 3.  The vehicle force analysis

      本文所建立的动力学模型与传统超空泡航行体模型的最大区别在于航行体尾部受力情况的不同.传统模型中的尾部受力包括尾舵受力、推力及尾部滑行力, 而本文中的模型尾部受力包括尾部浮力$ F_b $、推力$ F_\text T $、直接侧向力$ F_v $、流体阻力$ F_f $及尾部压差$ \Delta\; F_p $.受力的不同造成了两者动力学特性的差异.除尾部受力外, 航行体受力还包括头部空化器所受流体升力$ F_c^z $、阻力$ F_c^x $及自身重力$ F_g^z $.利用动量方程及角动量方程可以将超空泡航行体的非线性方程描述为:

      $$ \begin{align} &m\left[ {\begin{array}{*{20}{c}} {\dot u + qw - vr}\\ {\dot v + ur - pw}\\ {\dot w + pv - uq} \end{array}} \right] = {F_T} + {F_c} + {F_g} + {F_w}\\ &\left[ {\begin{array}{*{20}{c}} {{J_x}\dot p + qr({J_z} - {J_y})}\\ {{J_y}\dot q + pr({J_x} - {J_z})}\\ {{J_z}\dot r + pq({J_y} - {J_x})} \end{array}} \right] = {\pmb M_c} + {\pmb M_w} \end{align} $$ (1)

      其中, $ (u, v, w) $和$ (p, q, r) $分别为速度和角速度在各方向上的分量, $ (J_x, J_y, J_z) $分别为绕三轴的转动惯量, $ m $为质量. $ F_w $为尾部沾湿部分的受力.

      记航行体总长度为$ L $, 俯仰角为$ \theta $, 深度为$ z $, 航行体的轴向速度恒定.空化器距离重心的长度为$ l_c $, 直接侧向力作用点距重心长度为$ l_f $, 则有[11]

      $$ \begin{eqnarray} {l_c} = \frac{{17}}{{28}}L, \quad {l_f} = \frac{{11}}{{28}}L \end{eqnarray} $$ (2)
    • 空泡模型是航行体动力学方程的重要组成部分.在无浮力作用下, 空泡的轴线与航行体轴线基本重合, 在空泡每一点上的纵截面都是圆形.空泡的整体形状就是通过对这些包裹航行体的圆截面进行整合而得到的.这些圆截面不依赖航行体动力学特性, 仅随时间变化, 从一开始形成并扩大到其最大直径, 然后收缩直至消失.反映空泡特性的一个重要参数是空化数$ \sigma_c $:

      $$ \begin{eqnarray} \sigma_c = \frac{p_\infty-p_c}{ 0.5\rho {V^2}} \end{eqnarray} $$ (3)

      其中, $ p_\infty $为静压力, $ p_c $为空泡内部压力.空化数是影响空泡轮廓的重要参数之一.当航行体在某个深度范围内进行匀速航行时, $ p_\infty $是定值, 又由于航速恒定, 因此, 空化数可以由空泡内部压力$ p_c $控制, 有

      $$ \begin{eqnarray} \sigma_c = {F_r}^{-4}+{F_r}^{-2}\left({F_r}^{-4}+\frac{0.073}{4Q_{\rm in}}\right)^\frac{1}{2} \end{eqnarray} $$ (4)

      其中, $ F_r $为弗劳德数, 且有$ F_r = {V}/{\sqrt {gh}} $, $ h $是航行深度, $ Q_{\rm in} $为通气率, 以m$ ^3 $/s为单位.一旦航速恒定, 也就意味着$ F_r $是不变的, 空泡轮廓只依赖于通气率, 有半经验公式

      $$ \begin{eqnarray} r\left( x_c \right) = r{\left( {2\sqrt {\frac{{{c_d}}}{{\ln \left( \frac{1}{\sigma _c} \right)}}} \frac{x_c}{R} - \frac{{{\sigma _c}}}{{\ln \left(\frac{1 } {\sigma _c} \right)}}\frac{{{{x_c}^2}}}{{{R^2}}}} \right)}^\frac{1}{2} \end{eqnarray} $$ (5)

      其中, $ r(x_c) $为空泡始于空化器端, 长度为$ x_c $处的半径. $ c_d $是阻力系数, $ R $是航行体半径.图 4表示了基于Savchenko模型[2]下的不同空化数所对应的不同空泡轮廓.其中的横坐标表示空泡长度与航行体长度的比值, 纵坐标表示的是空泡半径与空化器半径的比值.

      图  4  不同空化数下的空泡轮廓

      Figure 4.  Cavity profiles according to the varying cavitation numbers

      图 4中不难看出, 不同的空化数下, 空泡的长度和半径也是变化的.由式(4)可知, 航速一定的情况下, 可以通过改变通气率实现控制空泡轮廓的目的, 且空泡的长度和半径是随着空化数的降低而增加的.

    • 当空化器偏转时, 示意图如图 5所示.作用于空化器上的流体动力可分解为沿$ x $轴方向的$ {F_c}^x $以及沿$ z $轴方向的$ {F_c}^z $分别为:

      $$ \begin{eqnarray} F_c^x = - {L_c}\sin ({\delta _c} - \alpha_c ) - {D_c}\sin (\alpha_c - {\delta _c}) \end{eqnarray} $$ (6)
      $$ \begin{eqnarray} F_c^z = - \frac{1}{2}0.82\rho {S_c}{V^2}(1 + \sigma )\left(\frac{w}{V} - \frac{{{l_c}q}}{V} + {\delta _c}\right) \end{eqnarray} $$ (7)

      图  5  空化器示意图

      Figure 5.  Cavitator

      其中, $ \alpha_c $为空化器攻角, $ \delta _c $为空化器偏角, $ \rho $为流体密度, $ S_c $为空化器横截面积, $ L_c $和$ D_c $分别表示流体作用于空化器上的升力及阻力:

      $$ \begin{eqnarray} \begin{aligned} {L_c} = & \frac{1}{2}\rho {V^2}{S_c}c{l_c} = \frac{1}{2}\rho {V^2}{S_c}0.82(1 + \sigma ) \times\\&\cos (\alpha_c + {\delta _c}) \sin (\alpha_c + {\delta _c})\\ {D_c} = & \frac{1}{2}\rho {V^2}{S_c}c{l_d} = \\ & \frac{1}{2}\rho {V^2}{S_c}0.82(1 + \sigma ) {\cos ^2}(\alpha_c + {\delta _c}) \end{aligned} \end{eqnarray} $$ (8)
    • 忽略燃料消耗而产生的航行体质量改变, 重力方向沿$ Z_e $轴方向, 在体坐标系下, 其表达式为

      $$ \begin{align} &{F_g}^x = - mg \sin{\theta}\\ &{F_g}^z = mg \cos{\theta} \end{align} $$ (9)
    • 因为空泡的非完全包裹, 导致航行体尾部有部分浸入水中, 该部分主要受到三种力, 分别为浮力$ F_b $、尾部压差$ \Delta F_p $和流体阻力$ F_f $.如图 6所示.

      图  6  沾湿尾部受力

      Figure 6.  Forces acting on the wetted body

      尾部浸入水中的体积可以根据空泡的外形计算得到, 体坐标系下尾部所受浮力计算公式为

      $$ \begin{eqnarray} {F_b}^z = -\rho v_{wet} g \cos{\theta} \end{eqnarray} $$ (10)

      其中, $ v_{wet} $表示尾部浸入水中的体积.

      尾部阻力主要是流体粘性阻力, 作用在沾湿尾部的流体阻力表达式为

      $$ \begin{align} &F_f = -\frac{1}{2}\rho{S_f}V^2C_f\\ & C_f = \frac{0.075}{(\lg{R_e}-2)^2} \end{align} $$ (11)

      其中, $ F_f $表示的是作用在沾湿尾部的流体粘性阻力的大小, 方向与航行体前向速度方向相反, $ R_e $为雷诺数.

      尾部压差主要是由机动时尾部与水接触的角度及截面积不同造成, 经验公式计算[5]:

      $$ \begin{eqnarray} \Delta F_p = -\frac{1}{2}\rho{V^2}S_fcl_f \rm{sgn}(\theta) \end{eqnarray} $$ (12)

      其中, $ S_f $为受力面的最大横截面积, $ cl_f $为升力系数.此处的压差不同于全包裹超空泡中的尾部滑行力, 尾部压差来源于航行体机动时, 来自航行体尾部所受到的流体力差.

      本文中, 忽略航行体轴向速度的变化, 不考虑空泡的记忆效应.空泡的存在, 导致航行体轴线方向与速度方向基本一致, 攻角较小, 为了便于计算, 忽略攻角的影响.可以得到纵平面内如下二维动力学方程:

      $$ \begin{align} m(\dot w - uq) & = F_c^z + F_g^z + F_v^z + F_b^z + \Delta F_p^z\\ {J_y}\dot q & = F_c^z{l_c} + F_v^z{l_f} + F_b^z{l_f} + \Delta F_p^z{l_f} \end{align} $$ (13)

      其中, $ J_y $表示$ Y_b $轴方向上的转动惯量.

      在文献[4, 6]模型基础上, 选取航行体的重心深度$ z $、俯仰角$ \theta $、纵向速度$ w $、纵向角速度$ q $为状态变量; 空化器偏角$ \delta_c $和尾部直接侧向力$ F_v $为控制输入.建立超空泡航行体动力学模型如下:

      $$ \begin{eqnarray} \begin{array}{l} \dot z = w - V\theta \\ \dot \theta = q\\ \left[ {\begin{array}{*{20}{c}} {\dot w}\\ {\dot q} \end{array}} \right] = {M_1}\left[ {\begin{array}{*{20}{c}} z\\ \theta \end{array}} \right]+M_2 \left[ {\begin{array}{*{20}{c}} w\\ q \end{array}} \right] + {B}u + {F} \end{array} \end{eqnarray} $$ (14)

      其中, $ M_1 $, $ M_2 $, $ B $, $ F $均为系统的系数矩阵. $ M_1 = \begin{bmatrix} 0 & \frac{K_2}{m}\\0 & \frac{{K_2}{l_f}}{m{J_y}} \end{bmatrix} $, $ M_2 = \begin{bmatrix}-\frac{K_1}{mV} & \frac{{K_1}{l_c} + m{V^2}}{mV}\\-\frac{{{K_1}{l_c}}}{{V{J_y}}} & - \frac{{{K_1}l_c^2}}{V{J_y}} \end{bmatrix} $, $ B = \begin{bmatrix} -\frac{K_1\mu}{m} & \frac{\mu}{m}\\ \frac{{K_0}l_cl_f}{J_y} & \frac{K_0l_f}{J_y} \end{bmatrix} $, 且满足$ B $非奇异.另外$ {\pmb F} = {\begin{bmatrix} g+\frac{1}{m}F_b & \frac{{F_b}l_f}{J_y} \end{bmatrix}}^\text{T} $, $ K_0 = \frac{1}{2}\rho{V^2}S_f\sin(\alpha_c) $, $ K_1 = \frac{0.82}{2}\rho{V^2}S_c(1+\sigma), \; K_2 = \frac{1}{2}\rho{V^2}S_fcl_f $.

    • 为了便于控制器设计, 非全包裹超空泡航行体模型(14)可以表达为

      $$ \begin{align} \dot {\pmb x}_1& = A_1{\pmb x}_1+{\pmb x}_2\\ \dot {\pmb x}_2& = f({\pmb x}_1, {\pmb x}_2)+g({\pmb x}_1, {\pmb x}_2){\pmb v}+{\pmb F} \end{align} $$ (15)

      其中, $ {\pmb x}_1 = [z, \theta]^\text T $, $ {\pmb x}_2 = [w, q]^\text T $, $ A_1 = \begin{bmatrix}0 & -V\\0 & 0 \end{bmatrix} $, $ g({\pmb x}_1, {\pmb x}_2) = [g_1, g_2]^\text T = [\mu, K_0L_f]^\text T $, $ f({\pmb x}_1, {\pmb x}_2) = [f_1, f_2]^\text T = [M_1, M_2][{\pmb x}_1, {\pmb x}_2]^\text T $, $ Bu = [u_{b1}, u_{b2}]^\text T = [g_1v_1, g_2v_2]^\text T $.

      系统输出为

      $$ \begin{equation} {\pmb y} = {\pmb x}_1 \end{equation} $$ (16)

      由于空泡的包裹, 许多系统参数(例如受力面的横截面积等变量)不能直接测量或计算得到, 因此, 将含有未知变量的系数矩阵$ f({\pmb x}_1, {\pmb x}_2) $和$ g({\pmb x}_1, {\pmb x}_2) $考虑作为系统模型中的未知项.控制的目的就是要设计一个反演控制器用于解决航行体姿态的跟踪控制问题, 同时针对模型中的未知项设计自适应RBF神经网络控制器.注意到由于神经网络的逼近功能只能在某些紧集内实现, 因此, 做如下两条假设:

      假设1. 所有变量均是有界的, 即$ \mid f(\cdot)\mid\leq f_{\max} $, $ \mid g(\cdot)\mid\leq g_{\max} $, $ \forall x_i\in\Omega\in {\bf R}^n $.

      假设2. $ f(\cdot) $和$ g(\cdot) $为光滑函数.

    • RBF神经网络对一个连续函数$ f(x) $的逼近可以表述为

      $$ \begin{equation} {\pmb f(x)} = {\pmb W}^\text{T}{\pmb \phi(x)}+{\pmb \epsilon(x)} \end{equation} $$ (17)

      其中, $ x\in {\bf R}^n $为输入向量, $ W\in {\bf R}^m $为权重, $ \epsilon(x) $是逼近误差, $ {\pmb \phi(x)} = [\phi_1(x), \phi_2(x), \cdots, \phi_n(x)]^\text{T} $, $ \phi_i(x) $是径向基函数, 高斯RBF函数为

      $$ \begin{equation} {\pmb \phi_i(x)} = \exp\left(-\frac{\Vert{x-c_i}\Vert^2}{2{b_i}^2}\right), \quad i = 1, 2 \end{equation} $$ (18)

      其中, $ c_i $, $ b_i $分别是第$ i $个神经元的中心位置和宽度.

      为保证RBF神经网络逼近任意函数的有效性, 做第三条假设:

      假设3. 存在一最优权重$ W^* $, 对任意给出的小的正数$ \zeta $, 系统逼近误差$ \eta $均满足:

      $$ \begin{equation} \eta = \Vert{f(\cdot)-\hat{f}(\cdot, \pmb W^*)}\Vert<\zeta \end{equation} $$ (19)
    • 定义跟踪误差$ {\pmb e_1} = {\pmb x}_1-{\pmb x}_d $, 式中$ {\pmb x}_d $是设定信号.则

      $$ \begin{align} \dot {\pmb e}_1 = &\dot {\pmb x}_1-\dot {\pmb x}_d = \\&A_1\pmb x_1+\pmb x_2-\dot {\pmb x}_d \end{align} $$ (20)

      其中, $ \pmb x_d = [x_{d1}, x_{d2}]^\text T $.

      考虑$ x_2 $为虚拟控制输入, 同时定义

      $$ \begin{equation} \pmb x_2 = \pmb e_2+\dot{\pmb x}_d-c_1{\pmb e_1}-A_1{{\pmb x}_d} \end{equation} $$ (21)

      其中, $ \pmb e_2 = [e_{21}, e_{22}]^\text T $可以从如下式子计算获得

      $$ \begin{equation} {\pmb e_2} = {\pmb x_2} - {\dot {\pmb x}_d} + {c_1}{\pmb e_1} + {A_1}{{\pmb x}_d} \end{equation} $$ (22)

      定义第一个Lyapunov函数

      $$ \begin{equation} V_1 = \frac{1}{2}{\pmb e_1}^\text T{\pmb e_1} \end{equation} $$ (23)

      对$ V_1 $两边求导得

      $$ \begin{align} \dot{V}_1 = &{\pmb e_1}^\text T\dot{\pmb e}_1 = \\&\pmb e_1^\text T({A_1}{\pmb e_1} + {\pmb e_2} - {c_1}{\pmb e_1}) = \\&\pmb e_1^\text T{\pmb e_2}+\pmb e_1^\text T({A_1-{c_1}}){\pmb e_1} \end{align} $$ (24)

      令$ c_1 = A_1 $, $ \dot V_1 $可以简化为

      $$ \begin{equation} \dot {V_1} = \pmb e_1^\text T\pmb e_2 \end{equation} $$ (25)

      从式(22), 可以注意到

      $$ \begin{align} {\dot {\pmb e}_2} = &\left[ {\begin{array}{*{20}{c}} {{{\dot e}_{21}}}\\ {{{\dot e}_{22}}} \end{array}} \right] = \left[ {\begin{array}{*{20}{c}} {{{\dot x}_{21}}}\\ {{{\dot x}_{22}}} \end{array}} \right] -\\& \left[ {\begin{array}{*{20}{c}} {{{\dot x}_{d1}}}\\ {{{\dot x}_{d2}}} \end{array}} \right] - V\left[ {\begin{array}{*{20}{c}} {{e_{12}} + {{\dot x}_{d2}}}\\ 0 \end{array}} \right] \end{align} $$ (26)

      联合式(15)和(26), 可以得到

      $$ \begin{align} \dot e_{21} = &f_1+g_1v_1+F_1-\ddot x_{d1}-V(e_{12}+ \dot x_{d2}) = \\&g_1(g_1^{-1}f_1+v_1+g_1^{-1}\Delta_1)\\ \dot e_{22} = &g_2(g_2^{-1}f_2+v_2+g_2^{-1}\Delta_2) \end{align} $$ (27)

      其中, $ \Delta_1 = F_1-\ddot x_{d1}-V(e_{12}+\dot x_{d2}) $, $ \Delta_2 = F_2-\ddot x_{d2} $, $ F_1 = \frac{1}{m}F_b $, $ F_2 = \frac{{F_b}l_f}{J_y} $

      至此, 间接控制输入可以设计为

      $$ \begin{equation} u_{bi} = -f_i-g_i\Delta_i-k_ie_{2i}, \; \; \; i = 1, 2 \end{equation} $$ (28)

      其中, $ k_i $是设计参数, 满足$ k_i > 0, i = 1, 2 $.

      然而, 由于系统存在不确定性和外界干扰, 函数$ f(\pmb x_1, \pmb x_2) $和$ g(\pmb x_1, \pmb x_2) $均未知.在实际中, 控制输入不能直接应用.因此, 利用RBF神经网络对未知项进行逼近.

      定义

      $$ \begin{equation} f_i = \pmb W_i^{\rm T}\pmb \varphi_i(x), \; g_i = \pmb N_i^{\text T}\pmb \xi_i(x), \; \; i = 1, 2 \end{equation} $$ (29)

      因此, $ \dot e_{2i} $可以重写为

      $$ \begin{equation} \dot e_{2i} = [\pmb W_i^{\text *{\rm T}}\pmb \varphi_i(x)+u_{bi}+\pmb N_i^{\text *{\rm T}}\pmb \xi_i(x)\Delta_i], \; \; \; i = 1, 2 \end{equation} $$ (30)

      其中, $ \pmb W_i^{\text *{\rm T}} $和$ \pmb N_i^{\text *{\rm T}} $是逼近未知项$ f_i $和$ g_i $最优权重.

      另外, 间接控制输入可以改写为

      $$ \begin{equation} u_{bi} = -\pmb W_i^{\rm T}\pmb \varphi_i(x)-\pmb N_i^{\text T}\pmb \xi_i(x)\Delta_i-k_ie_{2i}, \; \; \; i = 1, 2 \end{equation} $$ (31)

      实际控制输入$ \pmb u $为$ \pmb u = B^{-1}[u_{b1}, u_{b2}]^\text T $.

      将式(31)代入式(30), 可以得到

      $$ \begin{align} \dot e_{2i} = g_i[\tilde{\pmb W}_i^{\rm T}\pmb \varphi_i(x)+\tilde{\pmb N}_i^{\text T}\pmb \xi_i(x)\Delta_i-k_ie_{2i}+d_i], \\ i = 1, 2 \end{align} $$ (32)

      其中, $ d_i $是神经网络的估计误差, 可以表示为

      $$ \begin{equation} d_i = [f_i-\pmb W_i^{\text *{\rm T}}\pmb \varphi_i(x)]+[g_i-\pmb N_i^{\text *{\rm T}}\pmb \xi_i(x)]\Delta_i \end{equation} $$ (33)

      且$ d_i $有界, 满足$ |d_i| < \varepsilon $, $ \varepsilon $是常量, 且满足$ \varepsilon > 0 $.

      定义第二个Lyapunov函数的第一部分

      $$ \begin{equation} V_{21} = V_1+\frac{1}{2}e_{21}^2+\frac{1}{2}\tilde{\pmb W_1}^\text T\Gamma_{11}^{-1}\tilde{\pmb W_1}+\frac{1}{2}\tilde{\pmb N_1}^\text T\Gamma_{12}^{-1}\tilde{\pmb N_1} \end{equation} $$ (34)

      其中, $ \Gamma_{1i} = \Gamma_{1i}^\text T > 0 $, 为自适应增益矩阵, $ g_1 > 0 $.

      将$ V_{21} $对时间求导, 同时将式(32)代入得

      $$ \begin{align} \dot V_{21} = &\dot V_1+e_{21}\dot e_{21}-\tilde{\pmb W_1}^\text T\Gamma_{11}^{-1}\dot {\pmb W}_1- \tilde{\pmb N_1}^\text T\Gamma_{12}^{-1}\dot {\pmb N}_1 = \\&\dot V_1+e_{21}\{[\tilde{\pmb W}_1^{\rm T}\pmb \varphi_1(x)+\tilde{\pmb N}_1^{\text T}\pmb \xi_1(x)\Delta_1-k_1e_{21}+\\&d_1]\}-\tilde{\pmb W_1}^\text T\Gamma_{11}^{-1}\dot {\pmb W}_1-\tilde{\pmb N_1}^\text T\Gamma_{12}^{-1}\dot {\pmb N}_1 = \\&\dot V_1+\tilde{\pmb W}_1^\text T(e_{21}\pmb \varphi_1(x)-\Gamma_{11}^{-1}\dot {\pmb W}_1)+\\&\tilde{\pmb N}_1^\text T(e_{21}\pmb \xi_1(x)\Delta_1-\Gamma_{12}^{-1}\dot {\pmb N}_1)- k_1e_{21}^2+e_{21}d_1 \end{align} $$ (35)

      由上可以得出第一组权重的自适应律为

      $$ \begin{align} \label{adaptive1} &\dot {\pmb W}_1 = \Gamma_{11}[e_{21}\pmb \varphi_1(x)-r_1{\pmb W}_1]\\&\dot {\pmb N}_1 = \Gamma_{12}[e_{21}\pmb \xi_1(x)\Delta_1-\beta_1{\pmb N}_1] \end{align} $$ (36)

      其中, $ r_1 $和$ \beta_1 $是较小的常数, 主要用来改进当逼近误差$ d_1 $存在下系统的鲁棒性, 同时也避免权值$ \pmb W $和$ \pmb N $瞬时漂移过大.

      将自适应律(36)代入式(35), 可得

      $$ \begin{align} \dot V_{21} = &\pmb e_1^\text T\pmb e_2+r_1\tilde{\pmb W}_1^{\rm T}\pmb W_1+\beta_1\tilde{\pmb N}_1^{\text T}\pmb N_1-k_1e_{21}^2+\\&e_{21}d_1 \end{align} $$ (37)

      类似的, 第二个Lyapunov函数的第二部分$ \dot V_{22} $可以表示为

      $$ \begin{align} \dot V_{22} = &\pmb e_1^\text T\pmb e_2+r_2\tilde{\pmb W}_2^{\rm T}\pmb W_2+\beta_2\tilde{\pmb N}_2^{\text T}\pmb N_2-k_2e_{22}^2+\\&e_{22}d_2 \end{align} $$ (38)

      此外, 另一组自适应律为

      $$ \begin{align} &\dot {\pmb W}_2 = \Gamma_{21}[e_{22}\pmb \varphi_2(x)-r_2\pmb W_2]\\&\dot {\pmb N}_2 = \Gamma_{22}[e_{22}\pmb \xi_2(x)\Delta_2-\beta_2\pmb N_2] \end{align} $$ (39)

      为保证$ e_2 $可趋近于0, 定义第二个Lyapunov函数为

      $$ \begin{equation} V_2 = V_{21}+V_{22} \end{equation} $$ (40)

      求导得

      $$ \begin{align} \dot V_2 = &2\pmb e_1^\text T\pmb e_2-\pmb e_2^\text Tk\pmb e_2+\pmb d^\text T\pmb e_2+\\&\sum\limits_{i = 1}^2 {r_i\tilde{\pmb W}_i^\text T\pmb W_i}+\sum\limits_{i = 1}^2 {\beta_i\tilde{\pmb N}_i^\text T\pmb N_i} \end{align} $$ (41)

      其中, $ k = \text {diag}\{k_1, k_2\} $.

      关于耦合项$ \tilde{\pmb W}_i^\text T\pmb W_i $或者$ \tilde{\pmb N}_i^\text T\pmb N_i $, 有

      $$ \begin{align} r_i\tilde{\pmb W}_i^\text T\pmb W_i = &r_i\tilde{\pmb W}_i^\text T(\pmb W_i^*-\tilde{\pmb W}_i)\leq\\& r_i\parallel{\tilde{\pmb W}_i}\parallel\parallel \pmb W_i^*\parallel-r_i\parallel\tilde{\pmb W}_i\parallel^2\leq\\&\frac{r_i\parallel \pmb W_i^*\parallel^2}{2}-\frac {r_i\parallel\tilde{\pmb W}_i\parallel^2}{2}\\ \beta_i\tilde{\pmb N}_i^\text T\pmb N_i = &\beta_i \tilde{\pmb N}_i^\text T(\pmb N_i^*-\tilde{\pmb N}_i) \leq\\& \beta_i\parallel{\tilde{\pmb N}_i}\parallel \parallel \pmb N_i^*\parallel-\beta_i\parallel\tilde{\pmb N}_i \parallel^2\leq\\&\frac{\beta_i\parallel \pmb N_i^* \parallel^2}{2}-\frac {\beta_i\parallel\tilde{\pmb N}_i \parallel^2}{2} \end{align} $$ (42)

      由式(42), 可得

      $$ \begin{align} \dot V_2\leq & 2\pmb e_1^\text T\pmb e_2-\pmb e_2^\text Tk\pmb e_2+\varepsilon^\text T\pmb e_2+\\&\sum\limits_{i = 1}^2\bigg({\frac{r_i\parallel \pmb W_i^*\parallel^2}{2}-\frac {r_i\parallel\tilde{\pmb W}_i\parallel^2}{2}}\bigg)+\\&\sum\limits_{i = 1}^2 \bigg({\frac{\beta_i\parallel \pmb N_i^*\parallel^2}{2}-\frac {\beta_i\parallel\tilde{\pmb N}_i\parallel^2}{2}}\bigg)\leq\\&-\pmb e_2^\text Tk\pmb e_2-\sum\limits_{i = 1}^2\bigg(\frac {r_i\parallel\tilde{\pmb W}_i\parallel^2}{2}+\\&\frac {\beta_i\parallel\tilde{\pmb N}_i\parallel^2}{2}\bigg)+H\leq\\&-\lambda_{\min}k\parallel \pmb e_2\parallel^2-\bigg(\frac {r_{\min}\parallel\tilde{\pmb W}\parallel^2}{2}+\\&\frac {\beta_{\min}\parallel\tilde{\pmb N}\parallel^2}{2}\bigg)+H \end{align} $$ (43)

      其中, $ H = \sum_{i = 1}^2\bigg({\frac{r_i\parallel W_i^*\parallel^2}{2}+\frac{\beta_i\parallel N_i^*\parallel^2}{2}}\bigg)+\varepsilon^\text Te_2+2e_1^\text Te_2 $. $ (\cdot)_{\min} $是$ (\cdot)_i $的最小值, $ i = 1, 2 $, $ \lambda_{\min}(k) $是矩阵$ k_f $的最小的特征值.因此, 能够保证$ \dot V_2 < 0 $只要满足:

      $$ \begin{equation} \parallel \pmb e_2\parallel\leq \sqrt{\frac{H}{\lambda_{\min}(k_f)}} \end{equation} $$ (44)

      $$ \begin{equation} \parallel\tilde{\pmb W}\parallel \leq \sqrt{\frac{2H}{r_{\min}}} \end{equation} $$ (45)

      $$ \begin{equation} \parallel \tilde{\pmb N}\parallel \leq \sqrt{\frac{2H}{\beta_{\min}}} \end{equation} $$ (46)

      注1. 考虑闭环系统(14)主要由状态变量(14), 控制输入(31), RBF神经网络权重(36), (39)以及设计参数(如$ r_i, \beta_i, k, \Gamma_{ij} $等)组成, 这些参量的初始状态均为有界量, 那么可以得到:

      1) 当$ t\geq0 $时, 系统中的所有参量仍然是有界的;

      2) 通过恰当的设计参数, 系统输出$ y $将会取得较好的跟踪效果[22].

      注2. 在上述推导过程中, 可以发现减小$ r_i $和$ \beta_i $有助于降低$ \varepsilon_i $; 增加$ k_i $将导致控制算法的增益增加.然而, 过小的$ r_i $和$ \beta_i $将无法阻止在神经网络逼近误差存在的情况下, RBF神经网络的权值偏移到较大的值[19].故在实际应用中, 为了达到较好的控制效果, 应该谨慎设计系统参数.

      注3. 由于矩阵乘法一般不满足乘法交换率, 故本文中为$ e_2 $中的每个元素设计了单独的Lyapunov函数$ V_{21} $和$ V_{22} $, 然后设计一个新的Lyapunov函数$ V_2 = V_{21}+V_{22} $来保证$ e_2 $可以收敛到0附近的较小区间内.这种方法可以应用在其他类似的系统.

    • 仿真实验主要分两部分:一部分是将设定信号设置为阶跃信号; 另一部分是将设定信号设置为任意非线性信号进行验证控制器的有效性.

      系统初始状态为$ [z\; \theta\; w\; q]^\text T = [0.2\; 0\; 0.5\; 0]^\text T $, 速度$ V = 50 \text m/\text s $.神经网络结构$ \pmb W_1^\text T\pmb \varphi_1(x) $以及$ \pmb W_2^\text T\pmb \varphi_2(x) $均为4-9-2, 中心$ c_i $位于$ [-4, 4] $, 宽度$ b_i = 5 $.神经网络结构$ \pmb N_1^\text T\pmb \xi_1(x) $以及$ \pmb N_2^\text T\pmb \xi_2(x) $均为2-9-2, 中心$ c_i $位于$ [-4, 4] $, 宽度$ b_i = 4 $.上述控制器的其他设计参数分别为$ k = \text {diag}\{3, 3\} $, $ \Gamma_{1i} = \Gamma_{2i} = 2 $, $ r_i = \beta_i = 0.15 $.初始权重$ W_i = N_i = 0.5 $.其余系统参数与文献[23]相同, 具体为重力加速度$ g = 9.81 \text m/{\text s^2} $, 空化器半径$ r = 0.019 \text m $, 航行体半径$ R = 0.05 \text m $, 航行体总长$ L = 1.8 \text m $, 空化数$ \sigma = 0.03 $.

    • 针对上述设计出的控制器, 将设定信号考虑为阶跃信号, 表达式有

      $$ \begin{align} {z_d} & = \left\{ \begin{array}{l} 0, \;\;\;t < 1.25 \rm{s}\\ 1, \;\;\;t \ge 1.25 \rm{s} \end{array} \right.\\ \theta_d& = 0 \end{align} $$ (47)

      仿真结果如图 7~图 9所示.

      图  7  深度$z$及俯仰角$\theta$设定信号与实际跟踪响应

      Figure 7.  Desired trajectory and actual trajectory of $z$ and $\theta$

      图  8  纵向速度$w$及俯仰角速度$q$状态响应

      Figure 8.  State responses of $w$ and $q$

      图  9  控制输入响应

      Figure 9.  Control inputs response

      由上述仿真结果可以看出, 设定信号在1.25 s时产生阶跃信号, 深度$ z $与俯仰角$ \theta $均能较好地跟踪设定信号, 仅在信号发生突变的较短时间内产生抖动.由文献[6]可知空化器偏转的极限为25 $ ^\circ $, 本文设计的尾部直接侧向力通过实验验证的极限为120 N左右, 由图 9可知, 系统产生的控制输入均未达到执行机构的极限, 可保证系统的稳定性.

    • 为了验证上述控制方法对系统输出的跟踪控制效果, 设计了如下跟踪信号:

      $$ \begin{align} z_d& = 0.15\cos(t)+0.4\sin(3t)\\ \theta_d& = -\frac{1}{V}\dot z_d \end{align} $$ (48)

      图 10~图 12反映了控制器(31)、自适应律(36)和(39)跟踪设定信号$ x_d $的响应曲线.其中, 图 10描述了深度$ z $和俯仰角$ \theta $的跟踪效果.图 10中可以观测到这两个状态变量都能够很好地跟踪设定信号, 这说明神经网络对未知函数的逼近十分有效.图 10中, 深度$ z $在0.4 s左右完全跟踪上设定信号, 而俯仰角$ \theta $只用时0.2 s左右即可与设定信号吻合, 这主要由于俯仰角的变化为快时变环节, 在直接侧向力作用下, 优先受影响的是俯仰角, 因此俯仰角能更快地跟踪上设定信号.纵向速度$ w $和纵向角速度$ q $响应曲线如图 11所示.由图 11中可以看出, 除了纵向速度因初始值较大导致超调量较大以外, 两者均在零域附近变化, 幅值较小, 符合超空泡航行体一般航行规律.控制输入响应曲线的波动与纵向速度$ w $和纵向角速度$ q $曲线类似, 都是位于零域附近的小范围波动, 但是与直接侧向力有正有负不同的是, 空化器偏角几乎全为正.这是由于在超空泡航行体机动过程中, 空化器偏角要持续产生一定的升力来抵消航行体的重力作用.

      图  10  深度$z$及俯仰角$\theta$设定轨迹与实际跟踪响应

      Figure 10.  Desired trajectories and actual trajectories of $z$ and $\theta$

      图  11  纵向速度$w$及俯仰角速度$q$状态响应

      Figure 11.  Longitudinal velocity $w$ and Pitching angular velocity $q$ responses

      图  12  控制输入响应

      Figure 12.  Control inputs response

      图 13图 14分别反映了$ f_i $和$ g_i $的估计值与真值的吻合情况.实际应用中, 函数$ f_i $和$ g_i $本身并无实际物理意义, 但其包含了多个未知参量, 并且未知参量与已知量又相互耦合, 无法利用单一参量的自适应方法获得, 故将其作为未知函数利用神经网络进行估计.由图中可以看出, 所提出的自适应律(36)和(39)较好地估计了文中设定的未知项, 也再次证明RBF神经网络对不确定性系统中的未知项的估计作用.

      图  13  $f_1$, $f_2$与其估计值

      Figure 13.  $f_1$, $f_2$ and its estimation

      图  14  $g_1$, $g_2$与其估计值

      Figure 14.  $g_1$, $g_2$ and its estimation

    • 本文针对超空泡航行体姿轨控制系统普遍存在的不确定性问题, 首先, 对非全包裹状态下的超空泡航行体进行动力学建模得到其名义模型; 然后, 设计了反演控制器, 并利用RBF神经网络逼近并补偿系统中的不确定项; 最后, 利用多个Lyapunov函数的组合保证了系统稳定性.文中保证$ \dot V_2 < 0 $的条件只是充分条件, 较为保守, 在以后的研究工作中可以考虑利用相关优化理论[24]对参数的选择进行优化.

参考文献 (24)

目录

    /

    返回文章
    返回