Technical articles
基于模型驱动架构概念的自主水下航行器控制器的MBSE应用
引言
近几十年来,水下航行器已广泛用于许多军事应用。特别是,自主水下航行器(AUV)在开发民用应用以提高经济效益方面具有重要意义,例如海洋勘探,环境监测,测绘以及灾难和海啸警报。
AUV的控制器设计一直是一个挑战,因为控制器与复杂水下环境中的AUV动力学密切相关。AUV控制器可以由离散模型、连续模型及其在混合动态系统(HDS)中的相互作用组成,如混合自动机(HA)建模。传统的控制方法通常用于实现复杂系统,以使其对控制器更有效,它们也被用于构建AUV控制器。下面介绍一些应用于AUV的传统控制技术。
1、应用于AUV的传统控制技术
李雅普诺夫稳定性被证明是非常活跃的,然而,所需航路点的稳定性不足以跟踪水平平面轨迹。比例-积分-微分(PID)调节器被证明非常适合在跟踪水平平面轨迹时的AUV中使用。使用这种方法可以成功执行第一次自主航行。尽管如此,PID控制器还是需在没有大干扰的情况下控制AUV。线性二次(LQ)控制器呈现了平均稳定结果。反步方法被证明能够在高环境噪声条件下控制欧拉横滚、俯仰和偏航(RPY)角。滑动模式控制器(SMC)在单独应用时没有给出良好的结果,因为它似乎缺乏对AUV动力学的适应。因此,在一些研究反步,神经网络,计算扭矩方法和数字滤波器(如扩展/无迹卡尔曼滤波器(EKF / UKF))的研究中,通过使用控制技术来提高其AUV性能,SMC得到了改进。
上述评估导致我们选择PID和反步的组合来执行AUV控制器的连续模型演化,称为积分反步(IB)技术。
在开发新的AUV应用的生命周期时,还必须考虑可重用性,以降低成本和资源。对象管理组织(OMG)标准化了统一建模语言(UML),该语言是用于可视化,指定,构造和记录软件密集型系统工件的行业标准。系统建模语言(SysML)由OMG标准化用于系统工程。SysML是UML的扩展,可以提供简单但功能强大的构造,用于对各种系统工程问题进行建模。然而,UML和SysML的缺点是它们缺乏对已开发系统的内部连续行为的演变进行建模的能力。
另一方面,基于模型的系统工程(MBSE)方法由INCOSE形式化,以在复杂系统的开发生命周期中对整个工件进行稳健建模。在对MBSE方法的调查中发现了系统工程方法的例子,包括Magic Grid,Harmony-SE,面向对象的系统工程方法(OOSEM),系统工程的合理统一过程(RUP-SE),状态分析方法和对象过程方法(OPM)。模型驱动架构(MDA)由OMG标准化,用于将系统操作规范与系统如何使用其平台功能的细节分开。MDA 的三个主要目标是通过架构关注点分离实现可移植性、互操作性和可重用性。在这里,可移植性允许在新的或多个平台上实现相同的解决方案,互操作性创建了可以轻松与其他系统集成和通信并使用各种资源应用的系统,而可重用性构建了可以在不同上下文中的许多不同应用中重用的解决方案。Sebastián等人通过在2008年至2018年期间对软件工程中的MDA文献进行系统映射来调查MDA应用。实际上,MDA的原则可以在统一架构框架(UAF)中使用,以加强系统的互操作性。在许多商业应用中,实时SysML / UML已与上述基于模型的系统工程方法相结合。因此,MBSE方法和MDA的功能可以与实时UML和SysML结合使用,以详细描述开发系统的工件。
在上述评估点的基础上,本工作侧重于构建基于MBSE方法的混合控制模型,结合MDA概念、实时UML/SysML和HA,使我们能够集中实现AUV控制器。设计的控制工件可以定制和重复使用,以部署在各种AUV平台上。本研究将用于控制的AUV动态模型与MDA特征的特化相结合,由平台专用模型(PSM)、平台独立模型(PIM)和计算独立模型(CIM)组成。最后,部署了在自由面上运行的微型鱼雷形自主水下航行器的平面轨迹跟踪控制器,并通过仿真实验进行了评估。
本研究的三个主要贡献如下:
2、用于控制的AUV动力学模型
AUV的六个运动被海军架构师和海洋工程师协会(SNAME)定义为摇摆,浪涌,滚动,升沉,偏航和俯仰(表1)。
表 1.海军架构师和海洋工程师协会(SNAME)水下航行器的标识
根据水下航行器的制导、导航和控制,惯性系中的运动学模型和AUV主机系中的动力学模型可以分别写成方程(1)和(2)。
在惯性系中,η = [η1T,η2T]T由位置η1 = [x,y,z]T和方向η2 = [ϕ,θ,ψ]T组成。而回到自身框架中,速度ν= [v1T,v2T]T包括线速度v1= [u,v,w]T和角速度 v2 = [p,q,r]T。模型矩阵M、C(ν)和D(ν)分别表示惯性、科里奥利和阻尼,而 g(η)是重力和浮力的矢量。在公式(2)的右侧,τ(v,u)是作用在AUV上的合力和力矩的矢量,u表示控制输入。
状态空间离散性模型可用于模拟AUV的控制演化,该模型用于通过使用EKF或UKF方法估计AUV的状态;控制系统的运动可以描述为公式(3)所示。
x=,xk是x第k个时刻的状态变量向量,uk和yk分别是系统的输入和输出,以及hk,wk和vk分别是测量功能、递增过程和测量噪声。
3、AUV的一般控制架构
AUV的物理架构由以下子系统组成:制导子系统;导航子系统;和控制子系统。这些子系统有自己的任务,但它们也必须合作以允许主体完成其任务。图1显示了SysML中的模块定义图,其中描述了子系统的交互。
图1.自主水下航行器(AUV)的自主架构模块定义图
根据上述AUV动态和控制架构,以及第2节中描述的HDS的定义,AUV控制器可以被视为HDS,其动态行为可以通过HA建模,并通过视线(LOS)导航性实现。
4.1 AUV 控制器的 CIM
基于第3节描述的AUV的动力学和控制框架,AUV控制器的主要用例模型如图2所示。图 3 a,b描述了路径跟踪场景的案例研究,其中“跟踪所需轨迹”用例的状态机使用实时 UML/SysML 约定的序列和状态图显示。
图2.开发的AUV的用例模型
图3.(a)期望的轨迹跟踪场景,以及(b)用于执行“跟踪所需轨迹”用例的本地状态机
在这项工作中,为AUV的运动学和动力学模型提出了一个实现的功能模块图(图4),如方程(1)和(2)中所述,以获得控制器的内部连续演变,其中Ωdi,i=是所需的转速,应用于AUV的n个致动器,以及ΣT和τφ,θ,Ψ是作用在AUV执行器上的总输出力和力矩。
图4.用于实现AUV控制器持续演进的功能模块图
如前所述,IB扩展与控制李雅普诺夫功能(CLF)相结合可用于许多AUV控制应用。这也应用于深度控制、位置控制和姿态控制的功能块(图4),它们参与了连续演进。PID稳压器也用于电机控制的功能块。本研究没有关注这些AUV控制技术的分解,因为它们是在许多AUV应用中开发的。
公式(3)中的离散状态空间模型与EKF或UKF实现相结合,可以估计开发的AUV的状态,如第5节所述。
此外,由Henzinger,Kopke,Puri和Varaiya提出的混合自动机(HA)为与模拟环境实时交互的数字计算机系统提供了数学模型。在CIM中,HA如公式(4)所示建立。
其中Q是AUV的一组运行案例,q0 ∈Q是起始情况,X是连续元素的连续状态空间,xco∈ X是初始值,Σ是一组外部事件,A 是运行案例之间的一组转换对应于事件σ∈ Σ,Inv 是一个应用工具,用于检查xc ∈ inv(q),F 是从方程(1)和(2)中的运动学和动力学模型发出的连续全局模型。
4.2. AUV 控制器的 PIM
PIM的目标是实现实时压缩协作,从而可以详细捕获控制的设计模型。从上述CIM中,五个主要控制压缩专门用于实现AUV控制器的HA:分立器件的压缩,连续部分的压缩,外部接口的压缩,内部接口的压缩和瞬时全局连续行为(IGCB)的压缩。图5和图6显示了使用实时UML协作和类图的AUV控制器的实时压缩协作。
图5.AUV控制器实时压缩的协作图
图6.AUV控制器的实时压缩类图
这里,离散部件的压缩由AUV控制器HA中的情况Q和过渡A组成;连续部件的压缩包含连续状态空间X;IGCB的压缩实现了具体的全局连续行为,如f∈F,其中f直接来自公式(3),实现的功能模块图(图4)可以在f中实现,用于估计AUV状态;外部接口的压缩是一个中介,它在AUV控制器和MES / MDS之间接收/发送事件/信号;内部接口的压缩允许 Inv 工具在 HA 演化中生成内部事件。
对于不同AUV应用的控制器操作员来说,可重用性至关重要,因为它减少了制造时间和设备成本。此外,这允许开发AUV的压缩协作在多种类型AUV的新控制应用中定制和重用,如表2所示。
表 2.设计控制器在多种类型AUV的新控制应用中的可定制性和可重复使用性
(IGCB,瞬时全局连续行为)
4.3. AUV 控制器的 PSM
在AUV控制器的构建中,使用Papyrus for RealTime(Papyrus-RT)将上述设计的PIM转换为PSM。这些工具可有效用于开发复杂的实时和嵌入式系统和软件应用。它们充当实时UML / SysML的实现,用于C++,Java,Ada和运行时系统支持。
因此,可以使用不同的实现开发环境(IDE)将PIM转换为PSM,最终实现具有合适微控制器的控制器。MDA 的功能还支持模型转换。这种转换模型可以通过往返工程快速应用。转换规则可用于将PIM转换为PSM,反之亦然。
此外,上述定义的HA可以使用之前所述的状态模式自动实现。根据这种模式,HA的结构实现显示了AUV控制程序的有意义的编程有用性,如图7所示。使用Arduino的IDE执行和编译了基于状态模式的HA实现示例,以适应AUV控制器的ATMEGA32-U2和STM32 Cortex-M4微控制器。
图7.AUV控制器的混合自动机(HA)的状态模式结构
5.1 物理应用配置
按照上述模型,部署了一个平面轨迹跟踪控制器,该控制器允许具有鱼雷形状的低成本AUV到达并遵循自由面上的预定轨迹。鱼雷形AUV的主要运行参数总结在表3中。
表 3.鱼雷形AUV的主要操作参数
5.2. 控制实现和测试结果
根据描述AUV控制器不断发展的性能功能模块图,波浪引起的环境扰动仅被视为海况代码1,即自由面上的轻微波纹。
实现公式(3)所示的状态空间模型,以使用已安装的传感器计算AUV的当前状态,例如惯性测量单元(IMU)MPU6000和全球定位系统(GPS)Ublox Neo 6M。两种情况下的状态估计均基于EKF(算法1)和UKF(算法2)。在算法1和2中,.ˆ表示估计值,P是状态协方差,Q和R分别表示过程和测量噪声的协方差矩阵。从以下初始条件开始估计状态:xˆ0|0=x0和P0|0=012×12。
可以使用OpenModelica工具,这是一个开源的模拟环境,来执行AUV控制器的模拟。OpenModelica是Modelica和C/C++的面向对象的建模环境,用于混合系统。图8显示了一个案例研究,其中假设MDS将处于传输状态的事件转移到AUV控制器,所需航向角为020°,平均速度为1.5m/s。在这里,AUV稳定过程的平均瞬态持续时间(对应于使用EKF和UKF的情况)分别为6.8和6.2 s。
图8.对于使用 EKF 和 UKF 的情况,在所需过程中从当前位置 020° 的平均瞬态响应时间
ATMEGA32-U2和STM32 Cortex-M4微控制器安装在主板上。用于试行程的AUV安装如图9所示。测试场景基于不同的期望路线,针对各种基于形状的路径和平均速度。一些主要的平面航向跟踪测试结果如表4所示。图10a,b和图11a,b分别显示AUV达到并遵循所需的矩形和三角形轨迹。
图9.AUV安装用于试航
图 10.AUV达到并遵循所需的矩形轨迹:(a)使用扩展卡尔曼滤波器(EKF)算法;(b) 使用无迹卡尔曼滤波 (UKF) 算法
图 11.AUV达到并遵循所需的三角形轨迹:(a)使用EKF算法;(b)使用UKF算法
表 4.鱼雷形AUV航向跟踪的测试结果
通过与相关文献获得的测试结果进行比较,该电流AUV控制器在稳定间隔和轨迹误差方面均优于稳定间隔和轨迹误差,分别降低了约0.7 s和0.90 m。UKF使得估计更加准确,尽管UKF中的运算,例如无迹变换(UT),即算法2中的UT函数,可能看起来比EKF更复杂,但张柏强等人和Raitoharju和Piché深入研究了对各种卡尔曼滤波器扩展应用的实际计算复杂性和优化的评估。
表5描述了使用MBSE方法结合MDA组件对上述AUV应用的评估。
表 5.评估基于模型的系统工程(MBSE)方法结合模型驱动架构(MDA)的鱼雷形AUV控制应用
(CIM,独立于计算的模型;PIM,独立于平台的模型;PSM,特定于平台的模型;IDE,实现开发环境;OMG,对象管理组;XML,可扩展的标记语言;MOF,元对象工具;UML,统一建模语言;SysML,系统建模语言)
6. 结论和未来工作
本文介绍了MBSE方法在集中部署AUV控制器中的应用,其动力学可以被认为是HDS。该应用模型基于MBSE方法,结合MDA概念、实时UML/SysML、EKF/UKF算法和HA系统化地实现控制器。AUV的动力学模型和控制结构首先用于结合CIM、PIM和PSM等MDA组件进行控制。在 CIM 中,用例模型使用连续行为、EKF/UKF 算法和 HA 进行定义,以密切控制需求。PIM的建立是为了通过构建实时压缩模式来建立设计模型。这种模式可以定制并在新的AUV控制应用中重复使用(表2)。然后,通过中间C++代码的往返工程将设计的PIM转换为PSM,以形成具有合适微控制器的AUV控制器。在所提出的模型的基础上,利用ATMEGA U2和STM32-Cortex-M4微控制器实现并评估了在自由面上运行的微型鱼雷形AUV的平面轨迹跟踪控制器。最后,讨论了MBSE/MDA方法在这种AUV控制应用中的优缺点(表5)。
在本案例研究中,上述MBSE方法结合MDA概念,仅适用于在自由面上运行的微型鱼雷形AUV的简单测试场景。我们尚未对过程和测量噪声的参数进行微调,以及针对该应用的噪声参数的演进优化。因此,这些重要的进一步发展计划在未来进行。首先,基于EKF / UKF的导航滤波器将在完整的AUV中结合深度控制和合适的环境进行在线模拟。然后,新控制器将在AUV上实现,并通过快速频率干扰进行在线测试。不同卡尔曼滤波器扩展在精度方面的性能将在不同场景中仔细研究。在进一步的MBSE/MDA研究中,我们还将遵循我们的应用策略,详细指定使用不同MDA变换类型的模型变换模式,并将其与使用OPM的情况进行比较。
【译自Ngo Van Hien, Ngo Van He , Van-Thuan Truong and Ngoc-Tam Bui,A MBSE Application to Controllers of Autonomous Underwater Vehicles Based on Model-Driven Architecture Concepts,23 November 2020】
技术文章