无人机技术的发展已在多个领域实现广泛应用,尤其是固定翼无人机因其长续航和远程作业能力,在空域任务中扮演着关键角色。然而,复杂工况下的轨迹跟踪对固定翼无人机而言,仍是一大挑战。这些工况可能包括风速变化、气压波动、结构损伤和任务需求的快速变化,这些都可能显著影响无人机的动力学特性。因此,研究固定翼无人机在复杂突变工况下如何实现稳定、精确、高效的轨迹跟踪,具有重要的实际意义。数据驱动的模型预测控制(model predictive control,MPC)[1]是一种新兴控制策略,它利用系统数据以更准确地描述其动力学行为。通过实时监测无人机的输入输出,MPC能够实时更新系统模型参数,实现自适应控制,无需人工对全工况进行建模。该控制器通过预测未来控制动作并仅实施第一个动作,循环此过程,适用于动态多变的系统,因其灵活性和适应性,在工业界得到广泛应用,并在许多情况下接近最优控制效果[2]。尽管已有研究将MPC应用于四旋翼无人机的飞行控制,并证明了其潜力,但在固定翼无人机上的应用较少。例如,Stastny等[3]实现了固定翼无人机的横向姿态控制,并进行了仿真和实飞验证;Bauersfeld等[4]将MPC应用于倾转旋翼与固定翼混合飞行器,提高了响应效率;王晓海等[5]采用状态扩展的双反馈MPC理论设计控制器,实现了航迹跟踪;Tian等[6]提出了基于MPC的双层模糊自适应协调控制方法,用于能量管理。对于非线性、大包线飞行任务,单纯的MPC控制器难以满足需求,因此,增强飞行器在复杂工况下的鲁棒性成为研究重点[7-9]。本研究将模型预测控制与自适应控制相结合,根据实时数据调整控制策略,以保持无人机的稳定性和效率。结合机器学习领域的增量学习技术[10],研究团队提出了一种数据驱动与在线辨识的MPC方法,以实现固定翼无人机在复杂突变工况下的稳定、精确、高效轨迹跟踪。研究者构建了一个仿真与实机通用的高级控制框架,并采用稀疏辨识方法识别动力学系统响应模型,通过MPC控制无人机飞行。同时,实时采集飞行数据以矫正模型参数,增强控制器的自适应性和鲁棒性。此外,通过与经典控制器融合,实现了对三维空间目标轨迹的跟踪、导引和控制,并在机载计算机上验证了控制器的计算效率。图1展示了本方法的数据驱动在线辨识MPC框图,该方法可推广至更多控制策略。
图1 数据驱动在线辨识MPC控制框架
Fig.1 Data-driven online identification of MPC control framework
Lin等[11]对固定翼无人飞行器的动力学系统进行了详尽的建模,考虑到固定翼无人机的任务剖面多数阶段都工作在特定高度,可以将MPC控制器的设计重点放在平面横向位置控制上。本研究使用无参数运动学方程作为高级控制环路所用模型,此处固定翼飞行器的平面横向动力学方程由北向、东向组成的局部惯性坐标系,以及机体坐标系B下的参量共同定义,坐标系及各参量的定义具体见图2:
(1)
(2)
(3)
图2 坐标定义与参量示意图
Fig.2 Coordinate definition and parameter diagram
符号n和e分别表示飞机的北向位移与东向位移,因此式(1)及式(2)左侧和
表示飞机的北向速度与东向速度,均以起飞坐标为原点;Vg表示地速矢量;ψg表示地速矢量与北向的平面夹角,以北向为基准顺时针旋转定义为正,取值范围[-π,π]。式(3)中,
表示偏航角速度,顺时针旋转定义为正;g为当地重力加速度;φ表示滚转角,以右滚定义为正;V表示空速矢量。另外图2中的W表示风速矢量,x和y表示机体坐标系。
传统的飞行器控制研究很少考虑与现代自动驾驶仪中低级控制框架的集成,而本文则将飞控滚转响应动态封装到高级横向控制的MPC模型中。为实现MPC对飞行器的横向位置控制,可以使用以下方程描述固定翼横滚通道:
(4)
(5)
式(4)与式(5)中p表示滚转角速度。式(5)中的表示滚转角加速度;φr是输入飞行器的期望滚转角参考信号;a0、a1、b0为模型的常数参量。方程选用了一个不带有常数项的二阶模型来描述飞行器在滚转姿态上对自动驾驶仪低级闭环控制的响应。当然使用更复杂的模型也是可行的,不过前人的相关研究已经指出,二阶模型几乎能够在各种工况下表现得最好,更高阶的模型并不能带来可观的拟合精度提升[12],且每一增加的阶数都会使得后续所要面临的最优化控制问题规模提升一个维度,造成额外的计算开销,将对机载计算机提出更高的性能要求。
为了得到上节公式(5)中的模型参数,首先需要对飞行器的飞行数据进行采集,使用2-1-1强迫机动作为滚转参考值输入。2-1-1机动是一种幅值相同、占空比为2∶1∶1的交替脉冲信号输入。这里使用两次连续的2-1-1机动作为一次激励输入单元,称为2-1-1双级联机动,见图3。
图3 2-1-1机动目标滚转输入与实际滚转响应
Fig.3 2-1-1 maneuvering target roll input and actual roll response
图4 SINDy原理图
Fig.4 Schematic diagram of SINDy
MORELLI E证明了使用2-1-1机动收集相同规模的有效飞行数据大约只需要标准频率扫描法所需时间的六分之一[13]。这使得研究人员能够在同样的飞行时间内收集到更多有价值的飞行数据,特别是在无人机这类实验时长受到电池容量限制的系统测试中拥有更加明显的优势。这种激励输入非常适合频域和时域的系统识别方法,效果与频率扫描法相当。
固定翼无人机需要在无风的环境下持续输入控制激励并记录所有的飞行数据,这些数据应该包括多个不同幅值的2-1-1双级联机动,输入的控制幅度应当控制在恰当范围内。在激励输入的设计上,使用的控制输入包含从0.1~0.8弧度、并以0.1弧度为间隔的不同幅值的2-1-1双级联机动,在每个激励输入单元完成强迫机动后均会安排足够时长的待机间隙,期间同时会将实验过程中所需的数据按照规定结构写入文件以便后续处理。图3中实线已经给出了飞行器对于滚转控制输入的部分响应结果。
本文中采用的动力学模型参数辨识方法为非线性系统稀疏识别(sparse identification of non-linear dynamics,SINDy)[14-15],其原理是根据大多数物理系统在控制方程中有相对较少的项这一事实,从测量数据中推断出描述数据的非线性动力学系统。SINDy方法首先要构造一个完备的泛函候选库,假设系统的模型可以由候选库中的基函数构成,其次须要对未知的物理系统输入输出数据进行收集,最后通过优化问题中的稀疏回归方法计算出每一项所对应的系数值,辨识得到非线性模型的参数。SINDy方法适合需要从低数据极限的噪声序列中提取动力学模型的任务,与神经网络训练相比所需的数据要少得多,并且计算时更高效、更健壮,得到的方程也具备很强的解释性和泛化性,能够减少系统模型的冗余信息,因此可以应用于在线训练和预测,以应对快速的系统变化,提高MPC控制器的性能。
在本研究的算例中需要对固定翼飞行器滚转维度响应模型进行辨识,具体辨识过程使用SINDy方法原始论文[14]作者团队开源的Python实现(PySINDy)进行:以滚转维度为辨识目标,将上一节中采集的包含了滚转角φ、滚转率p和输入滚转角参考值φr的三维向量表作为待拟合数据;在候选库的选择上,前文已经给出了确定的二阶模型形式,因此可以按照式(5)配置对应的基函数集合作为PySINDy的自定义特征库,使程序自动构建特征矩阵;最后将优化器配置为序列阈值最小二乘法(STLSQ)并调用拟合函数,即可求得针对输入数据集的动力学方程系数。以2-1-1飞行数据集为例,辨识所得形如式(5)的滚转响应模型:
(6)
即(5)中对应的a0、a1、b0对应的参数为3.573、 2.955和-3.528。
为实现固定翼无人机滚转响应模型的动态修正,需要在其飞行过程中实时采集数据进行在线识别。作者采用的方案是在控制器中维护一个长度可调整的队列,在飞机飞行过程中不断从MAVROS消息池中订阅飞行器的状态数据,同时收集机载计算机发往飞控的滚转设定点控制输出,将其打包为一个向量结构压入队列,下文称其为飞行数据的“在线快照”。
在线快照的设定长度可以包含10 s的数据序列,图5黑线呈现了每间隔10 s对其进行SINDy辨识的结果。从图中可以发现a0、a1、b0的数据在不同时刻存在较大波动,无法用作正确模型,这是因为在正常飞行过程中飞行器接收到的滚转控制指令往往变化平缓,而不存在充分有效的激励输入。通常而言,辨识需要更多复杂的机动激励信号输入的要求与飞行器运行过程中平稳飞行的目标是相互矛盾的,仅仅使用常规飞行任务产生的数据对于SINDy来说将是病态的。因此这里选择将预先获得的2-1-1双级联机动飞行数据保留为基础训练集,同时纳入最近10秒采集的增量数据作为修正数据集,利用SINDy的多轨迹优化方法进行同步拟合。图5的红线为改进后增量训练方法的动态辨识结果,可见每一周期辨识得到的模型系数能够根据实时采集的修正数据集做出动态且平滑的调整校正,至此实现了数据驱动动态辨识的目标。
图5 不同策略的在线辨识参数变化曲线
Fig.5 Variation curves of online identification parameters for different strategies
飞行器系统的闭环控制框架如图6所示。控制器执行跟踪任务时,由用户输入一条可行进的目标轨迹,高级控制环路将会根据该曲线将控制问题解耦至两个维度:对于横向控制问题,非线性MPC控制器根据飞行器当前状态以及目标位置进行最优化求解,给出飞行器需要达到的横滚角度参考值控制信号,以使无人机能够快速逼近目标点;对于纵向控制问题,使用PID控制器根据飞机当前高度以及目标高度给出俯仰角度控制信号与油门输出设定点。图中的PX4飞控模块作为一个具有机载状态估计和姿态与动力控制功能的自动驾驶仪,能够利用内置的控制器使无人机姿态逼近目标参考值,让飞行器忠实执行机载计算机中运行的高级控制环路传入的控制指令。
图6 控制器及系统总体框架
Fig.6 Overall framework of the controller and system
2.1.1 控制器的设计架构
本小节介绍数据驱动的MPC外环控制器,数据驱动意味着由SINDy动态辨识得到的模型参数将在飞行器飞行任务生命周期中跟随真实物理系统持续迭代发展,为实现有价值的决策提供信息。正如图7所示,SINDy辨识结果将以设定频率不断传入控制器以更新预测模型,而外环控制器本身则由目标曲线作为参考输入。在每一次迭代求解中MPC控制器首先会从飞控采样得到最新的系统状态向量作为初始值,并依据给定的预测模型运行一个孪生飞行器的动力学模拟。
图7 数据驱动与在线辨识的MPC架构示意图
Fig.7 Schematic of the data-driven and online identification MPC framework
此处模型预测区间N被设定为10步,控制器将依据未来10步以内的系统状态进行最优化求解,找到一个在预测区间内控制量的最优序列U,在遵循输入控制量u的约束条件下,使得目标函数J(x,u)综合代价最小。这个最优控制序列可以表达为
(7)
如上式(7)中的状态向量x、控制输入u、动力学预测模型f(·)和目标函数J(·)在之后将会讨论。然后,外环控制器将最优控制序列的首个控制参数发送至飞控,使飞行器做出目标动作。至此,数据驱动的MPC控制器完成一次完整的迭代步骤。
2.1.2 状态向量与控制量
选择合适的状态向量与输入控制量是MPC控制器设计的关键步骤,通常情况下应该把有物理意义的量纳入考虑范围。根据式(1)—式(5)给出的模型,将输入飞控的φr作为MPC控制器的控制量,将飞机的北向位置坐标n、东向位置坐标e、偏航角ψg、滚转角φ、滚转率p作为状态量的一部分。模型中的空速V与地速Vg并不是本工作中需要控制的参数,且对于固定翼来说速度的变化往往是平和缓慢的,因此可以将其作为常数参量并在产生较大变化时进行更新。但除此之外,为了完成平面轨迹的跟踪还需要在控制器状态量中额外增加横向跟踪误差le与航向跟踪误差ψe项,下面讨论两个误差项的计算方法。
用户指定的目标轨迹在计算机中是以离散的三维航路点序列形式给出的,而在横向轨迹跟踪任务中则可以把航路点信息退化为二维平面坐标进行讨论。首先控制程序需要对二维目标航路点信息进行预处理,将点坐标序列构造形成适用于空间分区的数据结构K-D树,算法可以在极短的时间内检索得到当前时刻与飞行器最邻近的目标航路点。如图8所示,提取以最邻近目标点为起点的多个航路点信息,将其对飞机的平面航迹坐标系进行投影,并在该轴系下进行高次多项式拟合得到曲线F(x)。最后,使用以下公式计算横向跟踪误差与航向跟踪误差:
lek=F(xk)-yk
(8)
(9)
图8 飞行轨迹几何关系与误差估计表示
Fig.8 Geometric relationship and error estimation representation of flight trajectories
式(8)对横向跟踪误差进行了近似估计,式(9)则使用了拟合曲线F(x)的导数来计算目标航向角,其中表示在航迹坐标系下的地速偏航角,在临近的预测步内上述二式能够表现出良好的估计性能。
现在,可以确定完整的状态向量和控制量可表示为
x=(n,e, φ,ψg,p,le,ψe)T
(10)
u=φr
(11)
2.1.3 目标函数
由于计算机的数据离散特性,求解模型预测控制问题时需要将式(1)—式(5)以及跟踪误差递推方程(8)(9)离散成为差分模型,离散时间间隔记为δt:
nk+1=nk+Vgcosψgkδt
(13)
ek+1=ek+Vgsinψgkδt
(14)
ψgk+1=ψgk+(gtanφk/V)δt
(15)
φk+1=φk+pδt
(16)
pk+1=pk+(b0φrk-a1pk-a0φk)δt
(17)
(18)
ψek+1=ψek+(gtanφk/V)δt
(19)
注意式(18)与(19)中的参量和
是在平面航迹坐标系下表示的,其他递推式使用原始定义的坐标系统,以上公式构成了MPC控制器的方程。
模型预测控制相比其他形式的控制器的优势之一便在于MPC允许加入硬性约束条件,这种约束在典型情况下来源于系统各部件的出厂物理限制以及基于安全因素考虑的限制。这里不对飞行器的状态量添加任何形式的硬约束,而只关注控制器控制量的约束,这是因为飞行器滚转通道响应是滞后于控制量的,控制量约束可以传播成为状态量约束。出于飞行器平稳飞行以及自动驾驶安全性的考虑,将MPC控制器的控制量硬约束条件设定如下:
φr∈[-30,30]deg
(12)
设计预测控制器的关键部分是将目标函数最小化,这个目标决定了实施控制时哪些动作和飞行状态是可取的、哪些飞行动作是最好避免的。在横向轨迹跟踪问题中,给出以下具体的优化目标函数:
(20)
式(20)中: ω代表各项的权重系数,可以用于调节各项在最优化问题中的重要程度。优化目标函数中第一行描述了横向跟踪误差与航向跟踪误差产生的代价,使其最小化能够让飞行器更加精准地跟踪参考轨迹;第二行描述了滚转角度的惩罚项,减小该项能够让飞行器在跟踪参考的同时尽量以平稳的姿态飞行;第三行描述了滚转机动惩罚项,最小化该项可以保证控制器输出控制量的过渡过程更加平滑,使飞行器在任务过程中避免出现频繁的大幅度机动,从而增加飞行稳定性、减小能量消耗。权重系数在经过合理的调校后,即可调和MPC控制器的各项指标,这时最小化目标函数就能让飞行器以更少更平和机动做到更高精度的平面轨迹跟踪。
为了解决MPC控制器的目标函数优化问题,本文采用了Ipopt求解器。这是一个基于内点法的开源优化工具包,能够处理大规模非线性规划问题。借助该软件包的高自由度开放接口,我们将本章节中的NLP问题接入求解器,通过迭代方法,Ipopt能够快速逼近目标函数的最优解。
2.1.4 稳定性分析
为验证系统的渐进稳定性,首先假设系统在终端时刻能够达到稳定状态,而此时误差输入为零,状态方程中的控制量也为零。因此在验证稳定性时,假设当前输入为最优控制序列(x1,x2,x3,…,xN),添加终端约束xN=0, φN=0,并选取目标函数作为待证的李雅普诺夫函数。
根据李雅普诺夫稳定性理论,团队需要证明具有正定与递减的特性。正定条件很容易验证,因为目标函数是由状态误差和控制量的平方项组成的,所以可以保证非负性;而对于递减特性,这里给出:
(21)
由于终端约束xN=0,可知xN+1=0,式(21)可以转化为
(22)
可以得到k递减,即其导数负定,那么
k就是该控制系统的一个李雅普诺夫函数,该系统在平衡点处渐进稳定。
本工作在MPC控制器的基础上结合PID控制器,用以在固定翼无人机横向路径跟踪控制的基础上增加纵向高度控制能力。由于固定翼飞行器的高度控制相对容易,因此可以使用更轻量级的PID控制器实现,它根据当前的误差和历史的误差来调节控制量,不需要知道被控对象的物理模型,也不需要经历最优化求解,计算量小且实现简单。
此处复用MPC控制模块中获取的以当前飞行器位置最邻近点为起点的多个航路点信息,并对其高度进行插值拟合,从而在飞行过程中计算出平滑变化的目标高度参考值作为PID控制器输入。然后,将PID控制器的输出设置为安全区间内的俯仰角参考值以逼近目标高度,同时使用一条分段函数曲线来根据俯仰参考值映射得到恰当的油门输出设定值,为系统提供能量管理策略,这需要对所采用的飞行器性能有足够的经验认知。油门输出值与俯仰控制量一并发送至飞控,实现纵向高度跟踪功能。在对控制器输出做出安全限制后,飞机的爬升角与下滑角均小于10°,飞行器在高度上发生变化不足以引起模型所使用的动力学方程呈现明显误差。
在固定翼无人机轨迹跟踪任务算例中,其被控对象的系统辨识、控制器设计、飞行试验环节均采用计算机仿真平台完成,整个软件在环仿真环境如图9所示。
图9 软件在环仿真程序模块关系
Fig.9 Software-in-the-loop simulation program module relationship
通过在Gazebo中创建虚拟的固定翼无人机,并配置包含风场速度与紊流在内的环境参数,模拟器可以计算飞行器的动力学行为并输出带有模拟噪声的机载传感器数据。前人的研究表明其模拟精度不仅能够用于验证控制算法的正确性,而且能够替代真实的户外飞行试验[4]。 为了实现数据驱动MPC控制固定翼无人机飞行,本工作采用PX4开源无人系统控制软件解决方案接入虚拟飞行器的传感器与执行器实现底层控制,同时在机器人操作系统(robot operating system,ROS)中部署数据驱动MPC控制器及其各种附属进程作为上层控制环路,使用MAVROS软件包将其接入PX4飞控软件。
对于使用非线性系统稀疏辨识方法得到的动态更新动力学模型,作者分别设计了基于训练集和验证集的预测性能测试。
图10展示了在相同的控制序列和初始状态下,辨识模型对数据集的拟合效果,其中实线表示原始数据,虚线表示拟合数据。从图中可以看出,当滚转角较小时,辨识模型能够较好地拟合数据集中的滚转动态特性;当滚转角φ较大时,拟合精度有所降低,这是由于低阶模型难以捕捉高频信号的特征所致。然而,这种拟合效果已经足以满足MPC控制器的设计要求,并且考虑到无人机飞行的平稳性,实际飞行过程中鲜见高频率大幅度的机动动作,因此控制输入一般在较小的范围内变化,这有利于提高飞行状态的预测准确性。
图10 真实曲线与辨识模型拟合曲线
Fig.10 Ground truth curve and identification model fitting curve
为了验证拟合参数的可推广性,在验证集中包含一些非2-1-1机动的输入形式也是有利的,例如一些额外的任务导引过程。图11中实线给出了一段随机导引任务过程中的飞行数据,不包含有2-1-1双级联机动,而虚线则是将与该段飞行过程相同的控制序列输入辨识模型后得到的前向预测结果。观察可知,在长达100 s的实验测试中模型预测结果能够很好地贴合真实飞行数据,即使在实验末段也没有出现明显的预测偏差。在模型预测控制过程中,通常只需要对系统当前时刻后几秒内的状态进行预测,该模型的表现已经远远超出了MPC控制器的需求指标。同时该实验也证明了基于2-1-1双级联机动数据集进行模型参数辨识的普适性。
图11 真实曲线与辨识模型预测曲线
Fig.11 Ground truth curve and identification model prediction curve
综合而言,作者设计的预测模型以及辨识方法表现出了不错的准确度,可以为MPC控制器提供良好的预测能力。
为体现数据驱动MPC模型参量更新所带来的横向跟踪性能提升,本节提供一组更新启用与否情况下的对比试验数据。假设一种情形:飞行器在正常跟踪任务航线时受到干扰,致使控制器失效并输出噪声滚转指令信号,于是飞行器发生偏航并脱离任务轨迹;一段时间后干扰消除,控制器上线,飞行器重新回归航线。要确保对比试验的准确性,该实验中使用无风世界环境以及直线定高任务轨迹方便评估,并使用样本量更少的预采集数据集以提高实时数据在参数识别过程中的贡献权重,使得对比更加明显。本组实验中还预计算生成了一条噪声序列,在实验组与对照组执行跟踪任务的同一时刻令MPC控制器失能,使用该噪声指令介入滚转通道的控制,并在10 s后撤离令控制器重新接管,以飞行器恢复航线过程中的各项数据作为对比评价指标。
图12展示了模型参量更新与否情况下的轨迹跟踪性能对比,禁用更新组为仅使用预采集数据辨识模型时的飞行数据,启用更新组为使用预采集数据结合实时增量数据动态调整模型时的飞行数据,其中位置误差定义为飞行器位置与目标直线轨迹的垂直距离。在2~12 s时间段内,两组实验中的飞行器使用相同的噪声序列作为滚转目标指令,产生了相同的滚转响应与位置误差。而12 s后控制器重新接管飞行器滚转指令,由于实验中缩短预采集数据集的操作降低了禁用更新组的模型保真度,可以发现该组飞行器在重新接近任务航线过程中存在较大的波动,而启用更新组的接近过程最大误差与超调量均更小,且不存在明显的二次震荡,位置误差收敛至1 m以内的时间更短,表现出了更加平滑的目标轨迹回归行为。从滚转数据角度观察,使用更新时控制器输出目标处于约束极限的时间更短,指令曲线更加平滑,且表现在飞行器实际滚转响应中滚转运动也更为平缓,机动时出现的极限角度与波动情况更少,这对于飞行器实际飞行过程中的安全性、稳定性与节省能量的目标有着重要意义。由此可以说明数据驱动动态更新的MPC控制器可以从实时飞行数据中学习到有效信息,并对模型参数做出合适的校正。
图12 模型更新启用与禁用时的跟踪性能对比
Fig.12 Comparison of tracking performance when model parameters are updated or not
在新设计数据驱动MPC控制器上,本文进行了大量仿真飞行试验,本节将呈现几组具有代表性意义的实验结果。需要说明的是,为了最大程度使得仿真飞行逼近真机试验,本组实验已经根据典型的实际户外飞行条件增加了姿态、加速度、GPS位置等传感器噪声的模拟。
首先进行的是固定翼无人机的平面横向轨迹跟踪测试。飞行器接受方框轨迹跟踪指令,该方框路径的边长为100 m,这对于固定翼飞机而言已经是一个相当小的数值,颇具挑战性。如图13(a),可以观察到实际飞行轨迹与目标路径表现出了良好的趋同,在直线跟踪收敛段位置误差小于3 m。同时控制器给出的滚转控制量与实际的滚转角度偏差以及滚动角速率都保持在可接受的范围内。
图13 不同风场环境下的方框跟踪飞行试验
Fig.13 Box tracking flight test under different wind field
其次进行的是同任务不同工况测试。图13(b)中,添加了风速为4 m/s的西南均风,结果中方框路径的东南角飞行轨迹出现了额外的偏差,这是由于无人机经历顺风路段后速度增大,在机动时产生了更大的转弯半径导致的。而在图13(c)中,添加了平均风速4 m/s、最大风速8 m/s的西南阵风,结果与均风时类似,但由于阵风的不稳定性,多轮飞行轨迹之间的不重合度更加明显。总的来说,MPC控制器性能优良,能够有效地完成平面轨迹跟踪任务。
最后进行了空间轨迹跟踪测试,同时包含平面轨迹跟踪与高度跟踪指令。图14和图15分别给出了任务执行结果,在2个实验中控制器的表现都十分良好。
图14 空间轨迹跟踪飞行试验1结果
Fig.14 Space trajectory tracking flight test 1 results
图15 空间轨迹跟踪飞行试验2结果
Fig.15 Space trajectory tracking flight test 2 results
数据驱动MPC控制框架在固定翼轨迹跟踪任务中最终需要运行在机载计算机之上,为此本章节选用了一架固定翼航模滑翔机所用的NVIDIA Jetson Nano机载计算机作为目标部署测试平台进行地面测试。NVIDIA Jetson Nano是一款小型低功耗计算机,采用了四核ARM Cortex-A57 @ 1.43 GHz中央处理器,所运行Ubuntu 18.04 LTS系统内安装了ROS套件,用于测试数据驱动的MPC控制框架的计算资源开销。
文中设计了一套性能评估方案:通过编写MPC-Benchmark测试程序对MPC控制程序进行循环调用,期间启用包含SINDy辨识模块、PID高度跟踪控制器等在内的所有附属进程,提前准备的目标轨迹序列以及虚拟飞行状态数据将被注入MPC控制器,共计进行100次控制决策并记录每步计算时间,取平均值作为该程序模块的性能指标。分别将该基准测试程序部署至仿真计算机与机载计算机中进行测试,结果如图16,包含各附属进程的MPC控制模块在仿真开发计算机中运行的每轮平均用时为29.8 ms,在机载计算机NVIDIA Jetson Nano中则需要102.0 ms,能够满足实际飞行中的控制需求。若使用更为合理的在线辨识触发策略,例如当且仅当检测到足够的存在有效控制输入的飞行数据序列入队时触发辨识动作,则会进一步减少SINDy模块所占用的CPU时间,减少计算开销。
图16 控制器在仿真计算机与机载计算机中的单步计算用时
Fig.16 Single-step calculation time of the controller in the simulation computer and the on-board computer
由于文中算法完全在CPU中进行,而NVIDIA Jetson Nano被设计为GPU主导的AI计算平台,其CPU的绝对性能远不如当今主流的个人手机芯片,因此本小节的性能测试已经足够说明该控制框架具有较强的通用性和可移植性,可以在大部分设备上运行。
针对无人机飞行控制中模型预测控制(MPC)技术在不同工况下动态调整的不足,提出基于数据驱动与在线稀疏辨识的模型预测控制器,用于固定翼无人机的轨迹跟踪任务,并已通过仿真验证。研究的主要成果包括:
1) 利用2-1-1机动飞行数据和稀疏辨识技术,快速准确地识别固定翼飞行器动力学模型参数,实现了模型的高准确性和可推广性。
2) 实现了模型参数的在线辨识与动态更新,通过预采集和实时飞行数据的结合,使模型参数能够适应环境变化,并可通过调整权重控制修正强度。
3) 提出固定翼轨迹跟踪任务中的MPC控制方程与目标函数,说明了系统的稳定性,对比实验证明了数据驱动模型参数在线更新能够带来更优的控制性能,可以更好地适应飞行中难以预测的多变情形。
4) 提出仿真与实机通用的控制系统框架,实现固定翼飞行器的空间轨迹跟踪任务目标。在各种工况下的仿真飞行试验中,控制器都能够使得固定翼飞行轨迹与目标路径间保持良好的趋同,在收敛段的平均误差小于1 m,已经相当于通常情况下的GPS位置误差。
5) 使用真机硬件平台完成控制器部署。在性能测试中,全量运行的控制程序在低功耗目标平台上能够达到10 Hz的期望运行速率,证明该控制框架适用于主流机载计算机平台。
[1] CAMACHO E F,ALBA C B.Model predictive control[M].London:Springer science &business media,2013.
[2] YU C,SHI G,CHUNG S J,et al.The power of predictions in online control[J].Advances in Neural Information Processing Systems,2020,33:1994-2004.
[3] KOUBAA A.Robot operating system (ROS)[M].Switzerland:Springer,2017:27-39.
[4] BAUERSFELD L,SPANNAGL L,DUCARD G J,et al.MPC flight control for a tilt-rotor VTOL aircraft [J].IEEE Transactions on Aerospace and Electronic Systems,2021,57(4):2395-2409.
[5] 王晓海,孟秀云,李传旭.基于 MPC 的无人机航迹跟踪控制器设计[J].系统工程与电子技术,2020,43(1):191-198. WANG Xiaohai,MENG Xiuyun,LI Chuanxu.Design of trajectory tracking controller for UAV based on MPC [J].Systems Engineering and Electronics,2020,43(1):191-198.
[6] TIAN W,ZHANG X,YANG D.Double-layer fuzzy adaptive NMPC coordinated control method of energy management and trajectory tracking for hybrid electric fixed wing UAVs[J].International Journal of Hydrogen Energy,2022,47(92):39239-39254.
[7] 苏子康,李春涛,余跃,等.绳系拖曳飞行器高抗扰轨迹跟踪控制[J].北京航空航天大学学报,2021,47(11):2234-2248. SU Zikang,LI Chuntao,YU Yue,et al.High anti-disturbance trajectory tracking control for cable towed vehicle[J].Journal of Beijing University of Aeronautics and Astronautics,2021,47(11):2234-2248.
[8] 蒋铁英.闭环激励下无人机非线性参数频域在线辨识[J].无人系统技术,2023(2):32-41. JIANG Tieying.Frequency domain online identification for nonlinear parameters of UAV under closed-loop excitation[J].Unmanned Systems Technology,2023(2):32-41.
[9] 张君彪,熊家军,兰旭辉,等.基于自适应多通道交互式多模型的高超声速滑翔飞行器跟踪方法[J].兵工学报,2021,42(12):2626-2636. ZHANG Junbiao,XIONG Jiajun, LAN Xuhui,et al.Tracking method for hypersonic glide vehicle based on adaptive multi-channel interacting multiple model[J].Acta Armamentarii,2021,42(12):2626-2636.
[10] WANG L,ZHANG X,SU H,et al.A comprehensive survey of continual learning:Theory,method and application[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2024,46(8):5362-5383.
[11] LIN P N W,KHAM N L,TUN H M.Longitudinal and lateral dynamic system modeling of a fixed-wing UAV [J].International Journal of Scientific &Technology Research,2017,6:171-174.
[12] STASTNY T J,DASH A,SIEGWART R.Nonlinear MPC for fixed-wing UAV trajectory tracking:Implementation and flight experiments[C]//AIAA guidance,navigation,and control conference.2017:1512.
[13] MORELLI E A.Low-order equivalent system identification for the Tu-144LL supersonic transport aircraft [J].Journal of Guidance,Control,and Dynamics,2003,26(2):354-362.
[14] BRUNTON S L,PROCTOR J L,KUTZ J N.Discovering governing equations from data by sparse identification of nonlinear dynamical systems[J].Proceedings of the National Academy of Sciences,2016,113(15):3932-3937.
[15] FASEL U,KAISER E,KUTZ J N,et al.Sindy with control:A tutorial[C]//IEEE Conference on Decision and Control,2021:16-21.