本发明涉及水面无人艇的故障检测与控制方法。
背景技术:
水面无人艇由于其体积小、隐蔽性好、成本低、机动性高等特点,在多种领域内得到了广泛的应用,例如环境监测、水文测量、海洋资源勘探、污染物追踪、海岸监测、水面救援等。然而,水面无人艇由于海水侵蚀、极低的工作温度、超长的工作时间等因素,水面无人艇系统不可避免地会发生故障。为了提高水面无人艇的鲁棒性和可靠性,我们需要设计故障检测滤波器用以及时地检测水面无人艇系统可能发生的故障。现有水面无人艇故障检测和控制分开进行,成本高。
通常,sfdc(同步故障检测和控制)模块位于母舰或陆地上,sfdc模块和水面无人艇的数据交互通过无线网络实现。在传统的连续数据传输以及周期型传输机制下,大量不必要的数据包通过通信网络进行传输,网络通信带宽占用率高而且会造成由大量数据传输产生的传送消耗能量大,浪费能源。由于网络通信带宽受限,以及水面无人艇自身能源有限,需要在保证水面无人艇系统性能的前提下减少数据传送,以此来降低网络带宽的占用率以及由数据传送消耗的能量。
技术实现要素:
本发明的目的是为了解决现有水面无人艇故障检测和控制方法分开进行,导致成本高,sfdc模块网络通信带宽占用率大,以及数据传送消耗能量大的问题,而提出基于事件驱动的水面无人艇同步故障检测与控制方法。
为解决上述技术问题,本发明采用以下技术方案:
步骤一、建立水面无人艇系统的状态空间方程;
步骤二、基于步骤一建立的水面无人艇系统的状态空间模型,设计基于积分型事件驱动的sfdc模块,并建立事件驱动条件下的增广残差系统;
步骤三、设计基于积分型事件驱动的sfdc模块的增益矩阵,根据sfdc模块的增益矩阵得到残差信号r(t)和控制输入u(t);
步骤四、设计积分型事件驱动机制,使步骤三获得的sfdc模块的增益矩阵成立;
步骤五、根据步骤三的残差信号r(t)设计残差评价函数;
步骤六、设计残差评价函数阈值,根据残差评价函数完成水面无人艇故障检测。
本发明的有益效果:
本发明水面无人艇在积分型事件驱动条件下的同步故障检测与控制方法,主要包括基于观测器的故障检测滤波器和控制器设计,以及积分型事件驱动机制的设计方法。
本发明建立水面无人艇系统的状态空间方程;基于水面无人艇的状态空间模型,设计基于积分型事件驱动的sfdc模块,并建立事件驱动条件下的增广残差系统;设计基于积分型事件驱动的sfdc模块的增益矩阵,根据sfdc模块的增益矩阵得到残差信号r(t)和控制输入u(t);基于sfdc模块的增益矩阵设计积分型事件驱动机制;根据残差信号r(t)设计残差评价函数;设计残差评价函数阈值以及相应的故障检测逻辑,根据残差评价函数完成水面无人艇故障检测。
从附图3a、3b、3c、3d、3e和附图4可知,水面无人艇系统在无故障时,水面无人艇系统是渐进稳定的,同时在7秒的仿真时间内仅有8次数据传输;由附图7和附图11得到,在7秒的仿真时间内,仅发生4次网络数据传输,而且能够根据残差评价函数及时检测到系统故障,得出本发明降低了网络通信带宽占用率,减少了水面无人艇能源消耗,能够同时实现水面无人艇的控制以及故障检测,节约成本。本发明基于积分型事件驱动的sfdc模块,在水面无人艇系统无故障情况下,该模块能够保证水面无人艇的渐进稳定性;在水面无人艇系统发生故障时,该模块能够及时产生故障警报。
附图说明
图1为水面无人艇的运动坐标图,δ为方向舵偏角,ψ为航向角,p为横摇速度,φ为横摇角,
图2为事件驱动条件下的水面无人艇同步故障检测与控制系统框图,y(t)为水面无人艇系统测量输出,y(tk)为事件驱动条件下的sfdc模块输入,f(t)为水面无人艇系统故障,w(t)为水面无人艇系统外部扰动,r(t)为残差信号r(t),u(t)为控制输入;
图3a为实施一例在无系统故障时的水面无人艇舵产生的横移速度的状态曲线图,v(t)为水面无人艇的舵产生的横移速度;
图3b为实施一例在无系统故障时的水面无人艇平摆速度的状态曲线图,
图3c为实施一例在无系统故障时的水面无人艇航向角的状态曲线图,ψ(t)为水面无人艇的航向角;
图3d为实施一例在无系统故障时的水面无人艇横摇速度的状态曲线图,p(t)为水面无人艇的横摇速度;
图3e为实施一例在无系统故障时的水面无人艇横摇角的状态曲线图,φ(t)为水面无人艇的横摇角;
图4为实施一例在无系统故障时事件触发器的触发时刻和触发间隔示意图;
图5为实施一例在无系统故障时系统测量值曲线与网络传输值曲线图;
图6a为实施一例在系统故障时的水面无人艇舵产生的横移速度的状态曲线图;
图6b为实施一例在系统故障时的水面无人艇平摆速度的状态曲线图;
图6c为实施一例在系统故障时的水面无人艇航向角的状态曲线图;
图6d为实施一例在系统故障时的水面无人艇横摇速度的状态曲线图;
图6e为实施一例在系统故障时的水面无人艇横摇角的状态曲线图;
图7为实施一例在系统故障时事件触发器的触发时刻与触发间隔示意图;
图8为实施一例在系统故障时系统测量值曲线与网络传输值曲线图;
图9为实施一例在系统故障和系统无故障时的故障检测滤波器残差输出r(t)示意图;
图10为实施一例在系统故障和系统无故障时的滤波器残差误差re(t)示意图;
图11为实施一例在系统故障和系统无故障时的残差评价函数值χ(t)示意图。
具体实施方式
下面结合附图对本发明的实施例进行详细阐述。
具体实施方式一:本实施方式具体过程为:发明基于事件驱动的水面无人艇的同步故障检测与控制方法,具体是按照以下步骤进行的:
步骤一、水面无人艇的运动坐标系如图1所示,在此我们只考虑水面无人艇的横移、平摆和横摇运动。
根据运动学方程建立水面无人艇系统的状态空间方程;
步骤二、基于步骤一建立的水面无人艇系统的状态空间模型,设计基于积分型事件驱动的sfdc模块,并建立事件驱动条件下的增广残差系统;
步骤三、根据水面无人艇的性能指标要求,设计基于积分型事件驱动的sfdc模块的增益矩阵,根据sfdc模块的增益矩阵得到残差信号r(t)和控制输入u(t);
步骤四、设计积分型事件驱动机制,使步骤三获得的sfdc模块的增益矩阵步骤三中的式(7)成立;
步骤五、根据步骤三的残差信号r(t)设计残差评价函数;
步骤六、设计残差评价函数阈值,根据残差评价函数完成水面无人艇故障检测。
事件驱动条件下的水面无人艇同步故障检测与控制系统框图如图2。
具体实施方式二:本实施方式与具体实施方式一不同的是,所述步骤一中水面无人艇的运动坐标系如图1所示,在此我们只考虑水面无人艇的横移、平摆和横摇运动。
根据运动学方程建立水面无人艇系统的状态空间方程,表达式为:
式中,
其中v(t)为水面无人艇的舵产生的横移速度,
w(t)=[wψ(t),wφ(t)]t为水面无人艇系统外部扰动;
wψ(t),wφ(t)分别为波浪对航向角和横摇角造成的扰动;
y(t)为水面无人艇系统测量输出;
u(t)为水面无人艇的控制输入;
a,b,e1为水面无人艇系统矩阵;
c为水面无人艇系统的输出矩阵。
考虑水面无人艇系统故障,则水面无人艇系统的状态空间方程为:
其中,f(t)为可能的水面无人艇系统故障,e2为给定的常值矩阵;
在此,假设w(t)和f(t)满足l2[0,∞)范数有界,c为行满秩矩阵且(a,c)为可观测的。
其它步骤及参数与具体实施方式一相同。
具体实施方式三:本实施方式与具体实施方式一或二不同的是,所述水面无人艇系统矩阵a,b,e1表达式如下:
其中,kvr,kvp,kdv,kdr,kdp为给定增益,tv,tr为给定时间常数,ζ和wn分别表示阻尼系数和无阻尼自然频率。
其它步骤及参数与具体实施方式一或二相同。
具体实施方式四:本实施方式与具体实施方式一至三之一不同的是,所述步骤二中基于步骤一建立的水面无人艇系统的状态空间模型,设计基于积分型事件驱动的sfdc模块,并建立事件驱动条件下的增广残差系统;具体过程为:
基于积分型事件驱动的sfdc模块为
其中,y(tk)为事件驱动条件下的sfdc模块输入,
定义ey(t)=y(tk)-y(t),v(t)=[wt(t)ft(t)]t,
其中,ey(t)为上一次网络传输的水面无人艇系统输出y(tk)与当前水面无人艇系统输出y(t)之差,v(t)为增广残差系统的扰动向量,z(t)为滤波器误差,re(t)为残差误差,xc(t)为增广残差系统状态;
得到如下积分型事件驱动条件下的增广残差系统:
其中,
ac,bc,ec为增广残差系统的系统矩阵。
其它步骤及参数与具体实施方式一至三之一相同。
具体实施方式五:本实施方式与具体实施方式一至四之一不同的是,所述增广残差系统的系统矩阵ac,bc,ec表达式如下所示:
其中,ak为ak=a+bk,al为al=a-lc。
其它步骤及参数与具体实施方式一至四之一相同。
具体实施方式六:本实施方式与具体实施方式一至五之一不同的是,所述步骤三中根据水面无人艇的性能指标要求,设计基于积分型事件驱动的sfdc模块的增益矩阵,具体过程为:
基于积分型事件驱动的sfdc模块的增益矩阵由下式给出:
其中,
其它步骤及参数与具体实施方式一至五之一相同。
具体实施方式七:本实施方式与具体实施方式一至六之一不同的是,所述基于积分型事件驱动的sfdc模块的增益矩阵具体获得过程为:
定义李雅普诺夫函数v(t)=xt(t)p1x(t)+zt(t)p2z(t),并对v(t)=xt(t)p1x(t)+zt(t)p2z(t),求导得:
其中,p1,p2为任意正定矩阵;
为了建立残差系统的h∞性能指标γ,定义函数
其中,γ为残差系统的h∞性能指标;
将
其中ε1,ε2为任意给定正实数,r1为任意正定矩阵;
定义变量
其中,
式中,[·]s表示矩阵与其转置之和,符号*表示对称矩阵相应位置的转置部分,γ11、γ13、γ33、γ12、γ22为中间变量;i为单位阵;
f(t)表示信号在t0-t的积分值,将信号f(t)的时间t改为s,将s作为积分变量,对信号f(s)进行积分(避免了
假设在积分型事件驱动条件下,下式成立:
其中,t0为增广残差系统初始时刻,t为增广残差系统当前时刻,s为积分变量,θ为给定常数且0<θ<1;
并且设计的sfdc增益矩阵满足φ'<0,由此,能够得到
当t→∞时,在零初始条件下得到
即增广残差系统(5)具有h∞性能指标γ;
当v(t)恒等于0时,
sfdc模块的增益矩阵设计如下:
由schur补引理知,φ'<0等价于矩阵变量φ<0:
对于行满秩矩阵c,存在正交矩阵
其中,x1为正交矩阵x的第1行至第p行组成的矩阵,
如果矩阵w满足
其中,w11,w22为任意正定矩阵,则存在非奇异矩阵n满足cw=ntc,假设p1=k1w-1,p2=k2w-1,其中k1,k2为任意给定正实数,定义矩阵变量f=diag{wt,wt,i,i,n,i},在矩阵φ的左右两边分别乘以矩阵f和ft,并定义矩阵变量
其中,k1,k2为任意给定正实数,π11、π12、π13、π14、π22、π33、π44为中间变量;
求解线性矩阵不等式(13),则基于积分型事件驱动的sfdc模块的增益矩阵由下式给出:
其它步骤及参数与具体实施方式一至六之一相同。
具体实施方式八:本实施方式与具体实施方式一至七之一不同的是,所述步骤四中步骤四中设计积分型事件驱动机制,使步骤三获得的sfdc模块的增益矩阵(步骤三中的式(10))成立;具体过程为:
定义事件触发器的触发时刻为tk,
其中,t为水面无人艇系统时刻,tk为事件触发器的触发时刻,
触发参数τy,ω,
其中,l1=||ac||,l2=||bc||,l3=||ec||,l2,y=||cc||l2,l3,y=||cc||l3,kc=[k-k],cc=[c0]
矩阵
其中,||*||为向量的欧几里得范数;
同理,得到
其中l1,y为中间变量,l1,y=||cc||l1,l2,y=||cc||l2,l3,y=||cc||l3;
首先,证明对于t∈[t0,t1),不等式(10)成立,过程为:
定义变量t0:
其中,t为水面无人艇系统时刻,.t0.为水面无人艇系统初始时刻;
由ey(t0)=0,t0存在;
如果t0≥t1,显然不等式(10)在t∈[t0,t1)上成立;
如果t0<t1,对t∈[t0,t0],得到
分别讨论t0-t0≤τy和t0-t0>τy的情况:
如果t0-t0≤τy,由式(16)得
将上式积分可得
由式(18),对t∈[t0,t0],下式成立:
根据式(15)出的事件触发参数条件,得到
如果t0-t0>τy,根据事件触发机制(14),对t∈[t0,t1),下式成立
由式(19)和式(20),以及事件触发参数(15),得
式(21)与变量t0的定义(17)矛盾;
由此在积分型事件触发机制(14)以及事件触发参数(15)下,t0≥t1恒成立,从而得出式(10)在t∈[t0,t1)上成立;
下面考虑区间[tk,tk+1),假设式(10)在区间[t0,tk)上成立;
同样地,定义变量:
由ey(tk)=0,容易证明tk存在;
如果tk≥tk+1,容易证明式(10)在[tk,tk+1)上成立;
如果tk<tk+1,分别讨论tk-tk≥τy和tk-tk<τy,得出式(21)在[t0,tk+1)上成立,与tk的定义矛盾;由此得出式(10)在t∈[tk,tk+1)上成立;
综上所述,得出不等式(10)在[t0,+∞)上成立;
因此在该积分型事件驱动机制下,增广残差系统是渐进稳定的且具有h∞性能指标γ。
其它步骤及参数与具体实施方式一至七之一相同。
具体实施方式九:本实施方式与具体实施方式一至八之一不同的是,所述步骤五中根据步骤三的残差信号r(t)设计残差评价函数,其表达式为
其它步骤及参数与具体实施方式一至八之一相同。
具体实施方式十:本实施方式与具体实施方式一至九之一不同的是,所述步骤六中设计残差评价函数阈值,根据残差评价函数完成水面无人艇故障检测;
其表达式为
式中,χth为残差评价函数阈值。
其它步骤及参数与具体实施方式一至九之一相同。
采用以下实施例验证本发明的有益效果:
实施例一:
水面无人艇的模型参数如下所示:
tv=0.5263,tr=0.4211,kdr=-0.0103,
kdp=-0.0202,kdv=0.0380,kvp=0.7980,
kvr=-0.4600,wn=1.6300,ζ=2.0840.
假设e2=[0.6-120.81]t,c=[10.81-10.6],扰动信号wψ为零均值高斯分布的随机信号,其方差为0.3;
扰动信号wψ由下式给出
假设水面无人艇系统的故障信号为
步骤一、利用模型参数,建立水面无人艇的状态空间模型。
步骤二、基于状态观测器的sfdc模块,建立增广残差模型。
步骤三、水面无人艇的增广残差模型的h∞性能指标设置为γ=3.642,求解线性矩阵获得sfdc模块的增益矩阵为
k=[5.63956.07686.6748-6.24823.9876],
l=[0.59580.57230.7785-0.40240.4583],
v=0.0302.
步骤四、基于获得的控制器增益以及故障检测滤波器增益设计积分型事件驱动机制如下
步骤五、根据残差评价函数计算残差评价函数值。
步骤六、设置残差残差评价函数阈值为χth=0.0045,设计故障检测逻辑。
将本发明方法的sfdc模块以及积分型事件驱动机制应用到水面无人艇模型中。
在水面无人艇系统无故障时,根据附图3a、3b、3c、3d、3e,水面无人艇的系统状态趋近于原点,即闭环控制系统是渐进稳定的。由附图4附图5,在积分型事件驱动机制下,只有水面无人艇系统输出值满足设置的触发条件时,事件触发器将测量输出值发送至通信网络。在仿真时间(7秒)内,触发器的发包量仅为8,说明此机制能够有效地降低网络带宽占用以及由数据传送造成的水面无人艇的能源消耗。
在水面无人艇系统故障时,根据附图6a、6b、6c、6d、6e,由附图7-附图8,触发器的发包量仅为4。根据附图9-附图10,水面无人艇系统故障发生时(t=2s),残差输出r(t)和残差误差re(t)能够快速响应,为故障检测提供了基础。从附图11,在t=2.428s时残差评价函数值超过选取的残差评价函数阈值χth=0.0045,判断水面无人艇系统发生故障并产生警报,故障检测时间为0.428s。同时,此机制能够避免由水面无人艇系统扰动造成的虚假故障警报。
综上,本发明提供的积分型事件驱动机制下的水面无人艇的同步故障检测与控制机制不仅能够使得闭环水面无人艇控制系统渐进稳定,而且能够在水面无人艇系统发生故障时及时产生故障警报。同时,由于积分型事件驱动机制的引入,水面无人艇系统的发包量能够明显减少,网络带宽占用以及由数据传送造成的水面无人艇的能源消耗能够有效地降低。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明专利的保护范围内。