1. 引言
四旋翼直升机是一种小型无人机,由于它较其他无人机有成本低廉、结构简单等优点 [1],故广泛地运用于高危任务中,如环境监测、侦查、目标跟踪等。而多四旋翼直升机编队,即由多个相互之间有信息交互的相同或不同的四旋翼组成的群组,无疑是完成上述任务的更好的选择,因为编队能实现合理的任务分配,进而提高系统的工作效率 [2],同时多个微小四旋翼组成的编队比一个结构复杂的大型无人机更经济。
为了使这样的多四旋翼直升机编队正常运行,需要引入协同控制的方法,其旨在利用个体间信息的局部交互设计满足系统要求的控制策略,例如使多四旋翼直升机系统同时达到目标点,跟踪外界参考信号或者在飞行过程中保持设定的队形 [3]。
关于多智能体系统的协同控制一直是近年来的研究热点,针对该问题主要有基于图论 [4] [5] [6]、基于矩阵理论及最优控制 [7] [8] 等的方法。文献 [9] 利用图论和Lyapunov函数分析了具有变拓扑结构的非线性多智能体系统的稳定性问题。而文献 [10] 则讨论了基于极限集的非线性多智能体系统的协同控制。在文献 [11] 中,利用模型预测控制方法来设计协同控制策略。
但针对故障情况下多智能体系统协同控制的研究较少。文献 [8] 分析了在有个体发生执行器故障的情况下一类线性多智能体系统的协同行为,而文献 [11] 与 [12] 则针对一类非线性智能体系统,设计了协同容错策略来处理执行器故障的情况,使得系统在故障情况下仍满足性能要求。需要特别指出的是,文献 [13] 与 [14] 则研究了存在个体传感器故障的多智能体系统容错控制问题。具体地,文献 [13] 针对一类同时存在个体传感器故障和个体执行器故障的线性多智能体系统,提出了一种基于自适应补偿和𝐻∞控制的容错控制方法,通过设计局部自适应传感器和执行器补偿器消除传感器及执行器故障对系统性能的影响。而文献 [14] 则考虑了一类存在随机干扰、传感器及执行器故障的线性主从式多智能体系统,也利用自适应控制技术解决了故障情况下的目标跟踪问题。
本文考虑主从式四旋翼直升机编队发生个体传感器故障情况下的编队队形保持问题。在此种情况下,故障四旋翼直升机会偏离理想的飞行轨迹,从而偏离其在编队中的理想相对位置点,又由于尚有其他个体会接收到故障直升机的信息,这些个体也会随之偏离理想轨迹,最后导致整个系统无法保持预先设定的理想队形。因此,本文将设计一种基于动态面控制方法的分布式协同容错控制系统,使得整个四旋翼编队在有未知传感器故障的情况下,仍能保持预设的队形飞行,且确保在整个飞行过程中,主机始终能跟踪上外界参考信号。
Figure 1. Schematic diagram for the topology of the considered leader- follower formation
图1. 主从队形的拓扑结构示意图
本文的主要结构为:第2与第3节分别介绍编队拓扑结构的基础知识与文章的问题描述,第4节具体阐述协同容错控制策略的设计,第5节着重分析系统的稳定性,最后第6节给出仿真实例,第7节总结本文的结论。
2. 基础知识
本文利用图论的基本概念来描述编队系统的拓扑结构。首先给出有向图的定义:假设有一个有向图
,它由n个节点和m条有向弧组成,所有节点和有向弧分别组成节点集
和有向弧集
。其中每条有向弧都代表着2个节点之间的有向连接,例如有向弧
表明节
点j能直接接收到来自节点i的信息 [6]。
接着针对节点i,定义如下形式的邻集
:
。
同时,定义能直接接收节点i信息的节点集合
:
。
对于上述有向图
,有邻接矩阵
,满足如下条件:
至此,有向图的拉普拉斯矩阵L定义如下:
其中,
,
表示节点i的度,其表达式为
。
根据本文研究的编队构形,即主从队形,采用有向树来描述编队的拓扑结构。有向树可以表述成一种分层的有向图,即有向图中所有节点分多层排布。在有向树中,后一层中能接收到前一层某一节点i信息的所有节点组成节点i的子节点集,反之,节点i则为这些子节点的父节点。
主从队形的编队生成的有向树有如下特点:
该有向树的第一层仅有一个节点,该节点则是整个树的主节点。同时,它也是第二层节点的父节点;
第二层包含多个节点,它们也是主节点的子节点,以此层层类推;
该有向树中,除主节点之外的所有节点有且仅有一个父节点;
为尽可能减少节点之间连接的数量,降低通讯冗余,仅父节点与子节点之间存在直接的有向连接;且同层节点之间不存在连接。
在此,以图1为例来说明以上定义的主从队形的拓扑结构。
3. 问题描述
考虑由n架四旋翼直升机组成的主从式四旋翼编队,该编队的拓扑结构可描述成小节2中定义的有向图,且系统需满足如下性能要求:
1) 每个节点i (
)需跟随其父节点,而主节点则需跟踪参考信号;
2) 每个节点i (
)需与其邻集中的每个节点j (
)保持预设的相对距离,该相对距离分解到惯性坐标系后,定义为
,如图2所示。
Figure 2. The relative distance between node i and node j in the inertial frame
图2. 在惯性坐标系下节点i与节点j之间的相对距离
在本文中,所有节点,即编队中的所有四旋翼直升机考虑成完全相同的个体,而节点i (
)的模型可建立为:
(1)
其中,
分别表示四旋翼重心在惯性坐标系下
三轴上的坐标。
则分别为机体坐标系下的俯仰角、滚转角及偏航角。
为控制输入,分别代表机体坐标系下z轴上的线加速度及俯仰、滚转、偏航通道的角加速度。
为简化后续控制的设计过程,参考文献 [15],将上述模型表述成状态空间的形式,并把该系统分解为2个子系统,如下:
一个欠驱动子系统:
(2)
一个全驱动子系统:
(3)
其中,状态量
和控制输入
分别定义为:
,
,
,
,
,
;
,
。此外,根据式(1),矩阵
与向量
分别为
系统的输出
定义为:
其中
,
。
值得注意的是,整个编队系统中只有主机(被标记为节点1)能接收到来自外界的参考信号
,其余所有僚机都无法直接获知参考信号r的信息,因此如果系统中缺少协同控制,则
所有僚机都无法沿理想轨迹飞行,从而使得整个编队系统均无法保持预设的队形飞行。
在本文中,我们考虑编队系统中有四旋翼个体的速度传感器(例如陀螺)发生故障的情况,此时将系统
中所有节点分为三部分:所有故障节点组成节点集
,所有直接接收故障节点信息的节点组成节点集
,所有剩余节点组成节点集
,故有
。假设发生故障的是编队中的第i个节点,则有:
(4)
其中
,
,
,
。
包含了多种传感器故障类型,当
,代表第i个节点的第j个传感器发生了失效故障,表现为该传感器的读数相较于真实值成比例损失,而
项有
其中
,
。偏移故障表现为传感器读数与真实值之间存在恒定偏差,漂移故障表现为两者之间的偏差随时间成比例缓慢增大,精度损失表现为两者之间的偏差在某恒定值内随时间变化,且最终趋于恒定。
对于节点i的子系统(2)与子系统(3)而言,考虑故障(4)后,其动态可等效为
(5)
(6)
其中
,
与
为因故障导致的系统模型未知项。此时,
可视为状态量的实际测量值。
至此,本文所要解决的问题是:针对(5)~(6)所描述的四旋翼编队,设计一种分布式协同控制策略,使得整个编队在有个体发生传感器故障的情况下仍能保持编队队形,且主机仍能跟踪上参考信号,即
,
,
,其中
。
4. 协同容错控制设计
根据四旋翼的模型特征,采用自适应动态面控制方法来实现编队系统的容错控制设计。动态面控制方法能有效地解决backstepping方法中“微分爆炸”的问题。
首先针对故障节点i (模型满足(5)~(6))设计如下形式动态面:
(7)
(8)
(9)
(10)
其中参考信号
,即
,
,且
。此外,
分别代表节点i与其邻集中的节点j之间的距离在x-y平面与z轴上的分量。
值得一提的是,
代表从参考信号到主机的连接权重增益,有
(11)
式(9)与(10)中的
代表理想的俯仰角、滚转角及其角速度,其表达式通过外环信息获得,具体形式为:
(12)
(13)
其中
,
均为正常数,
是故障项
的估计值。
而
设计成如下形式:
(14)
(15)
其中
也为正常数,
分别为
的估计值。
以上所有估计值分别满足如下更新律:
(16)
(17)
(18)
(19)
(20)
其中
,估计误差定义为
(
),
(
),
均为正常数。
接着,针对所有能直接接收故障节点i信息的节点j (
)设计与(7)~(10)相同形式的动态面,因为所有j均无故障,故模型满足(2)~(3),相应的有:
(21)
(22)
(23)
(24)
最后,针对所有剩余的无故障节点k (
),设计如下形式的控制律:
(25)
(26)
(27)
(28)
5. 稳定性分析
至此,我们可以得到定理1:
定理1考虑一个有n架相同四旋翼直升机的编队系统,其拓扑结构满足条件1且系统可分解为
,其中
中所有个体模型满足式(2)~(3),
中所有个体模型满足式(5)~(6)。
中所有个体分别在控制律(12)~(15),(21)~(24),(25)~(28)的作用下,能使整个编队系统保持预设的队形,且
主机能跟踪上外界参考信号,即
,
,
,当
,其中
。
证明:将编队中所有四旋翼的动态面增广成列栈向量的形式,如下:
其中
,(
),
,
,(
),
,
。
求
的导数,得到:
(29)
其中
,
是
增广成的列栈向量,
,
是
增广成的列栈向量,即
。
故将虚拟输入
设计成满足如下条件:
(30)
其中
是
的估计值。
根据动态面控制方法的设计思路,使
通过如下的一阶滤波器:
(31)
其中
,
是滤波器的时间常数,且
。
由此我们可以得到:
(32)
同理,求
的导数可以求出另一虚拟输入
,如下:
(33)
其中
是
的估计值,
。
同样使
通过与式(31)形式相同的一阶滤波器:
(34)
可以得到:
(35)
接下来,通过求
的导数,得到系统的控制输入
,形式如下:
(36)
(37)
其中
,
分别为
的估计值,且
是为
的增广,有
,
,
。
然后,定义如下形式的滤波器误差:
(38)
(39)
同样需要定义故障及不确定量的估计误差,如下:
(40)
(41)
根据式(29),(30)及(38),(40)可得到如下形式的
:
同理,根据式(39),(40),可得:
考虑式(36),(37)可得:
此外,根据式(32)与(35)可得:
至此,定义如下形式的Lyapunov函数:
对该Lyapunov函数求导,可得:
其中
,
,
,
。
进而,有
其中
。
若以下不等式全部成立
则根据文献 [16] 可证
当
,即可证
,
,
,
。
6. 仿真实例
本文以加拿大Quanser公司研制的一款名为Qball-X4的四旋翼半物理仿真平台为仿真对象。该平台示意图如图3所示:
参考该平台的用户手册 [17],得到系统参数如下:
仿真中,考虑由4架四旋翼直升机(1架主机、3架僚机)组成的主从式编队,其拓扑结构如图4所示。其中节点1是主机,各架直升机之间的连接均为单向的,即信息只从父节点传到子节点,子节点到父节点没有信息的传播。
假设整个编队飞行在同一理想高度,即1 m,而各直升机之间在x-y平面上的理想相对距离设置为:
Figure 4. The graph topology of the considered multi-quadrotor systems in simulation
图4. 仿真中四旋翼直升机编队的拓扑结构
,
,
。
此外,主机需跟踪的外界参考信号设定为:
。
各四旋翼直升机的初始位置设定如下:
,
,
,
。
初始偏航角设定为:
。其他参数设定为:
,
,
。
假设在第8 s后,1号四旋翼直升机的偏航角速度编码器(传感器)发生了偏移故障,偏移量为
。在本文所设计的协同容错控制策略的作用下,仿真结果如图5、图6所示。
仿真结果显示,虽然当发生传感器故障后,1号四旋翼直升机连带其他四旋翼直升机的偏航通道均会出现不同程度的波动,但在所设计的控制策略的作用下,经过较短时间后,它们又重新达到良好的跟踪状态。此外在故障情况下,各四旋翼直升机仍能保持预先设定的队形飞行,且主机始终能在x-y-z空间内跟踪上参考信号。
7. 结论
本文以非线性主从式结构的四旋翼直升机编队系统为研究对象,针对编队中有个体发生传感器故障的情况,设计了一种基于动态面控制的分布式协同容错控制策略,使得整个编队系统在故障情况下仍能保持预设的队形飞行,且主机始终能跟踪上参考信号。本文所提的算法能确保多四旋翼直升机编队系统在飞行中保持队形的能力及良好的跟踪性能。
Figure 5. Position trajectory of each quadrotor in x-y-z space
图5. 各四旋翼直升机在x-y-z空间内的位置轨迹
Figure 6. Yaw angle trajectory of each quadrotor
图6. 各四旋翼直升机偏航角轨迹
基金项目
中央高校基本科研业务费(B200201047)。
NOTES
*通讯作者。