本发明属于水下机器人动力系统的故障诊断,涉及一种基于故障因子与多观测器的auv(autonomous underwater vehicle,自主式水下机器人)执行机构故障诊断方法。
背景技术:
1、近年来,对于海洋资源的发现和勘探得到不断地发展,并逐渐成为主流。自主式水下机器人(auv)作为人类探索和开发海洋资源的工具,在海洋领域中发挥着重要作用。由于auv需要长期地在海洋中工作,海洋中的条件极其恶劣,周围的环境复杂多变,其运动控制系统中的执行机构可能发生各种故障。如果故障没有及时的被检测出来,那么auv将在一种不可预测的方式下进行工作,不仅会缩短auv的使用寿命,更会影响其在水下的工作任务,使得人员与设备的安全受到威胁,最终带来灾难性的后果。执行机构是auv最常见且最重要的故障源,作为在复杂海洋环境中工作的载体,状态监测和故障诊断是auv安全性问题研究的基础和核心技术。因此,研究auv执行机构的故障诊断技术以提高auv的安全性和可靠性,已经成为迫切的研究任务,也是目前科学界研究的热点之一。
2、现有的故障诊断技术一般分为三类:基于数据驱动的方法、基于解析模型的方法和基于知识的方法。其中,基于解析模型的auv故障诊断方法在静水环境下具有良好的诊断效果,且易于实现实时诊断,为下一步的容错控制或故障恢复直接提供有用的信息。与其他方法不同的是,该方法依赖于被诊断对象的精确数学模型,利用模型中的相关参数进行方法研究。故障因子与多观测器属于解析模型中的状态估计法,状态估计法是一种可获取的测量数据估算动态系统内部状态的方法,对系统的输入和输出进行量测而得到的数据只能反映系统的外部特性,而系统的动态规律需要用内部状态变量来描述。状态估计法首先重构被控过程的状态,通过与可测变量比较,产生残差序列,再构造适当的模型并用统计检测法,从残差序列中检测出故障,并做进一步的分离、估计与决策。
3、目前,以状态估计法为基础的故障诊断技术有以下几种缺陷:1)状态估计法需要将非线性模型部分线性化,而对非结构化不确定的实际系统,无法实现解耦;2)状态估计法需要较为精确的模型,因此计算量比较大,稳定性较差;3)状态估计法的参数计算较多,较多的参数会影响故障诊断的精确性;4)故障隔离与辨识的思路不清晰,无法使两者形成完整的故障诊断机制;5)利用状态估计法很难将auv执行机构中舵面、舵机与螺旋桨的所有故障辨识出来,辨识结果会存在较大的误差。
技术实现思路
1、本发明的目的在于克服现有技术的缺陷,提供一种基于故障因子与多观测器的auv执行机构的故障诊断方法。本发明方法采用的多个扩张状态观测器减少了参数的计算量,避免了系统解耦的问题;每一个观测器仅对某种故障敏感,而对其他故障不敏感,具有较强的鲁棒性;舵面、舵机与螺旋桨的输出公式进一步进行故障辨识,具有很高的精确性。
2、为解决上述技术问题,本发明采用以下技术方案:
3、一种基于故障因子与多观测器的auv执行机构故障诊断方法,包括如下步骤:
4、步骤1.引入乘性故障描述因子与加性故障描述因子,分别对auv执行机构中的舵面、舵机与螺旋桨进行故障描述,将故障描述因子引入状态方程,在状态方程中对故障进行建模;
5、步骤2.利用步骤1中的包含执行机构故障的状态方程,将已建模的故障向量分为两部分,并将其中一部分故障向量与干扰向量合成一个新的干扰向量,另一部分故障向量则保留,作为步骤3的前提条件;
6、步骤3.利用步骤2中的方案,设计多个扩张状态观测器,将多个扩张状态观测器产生的残差依据设定好的协作规则进行判别,实现auv执行机构中的舵面、舵机与螺旋桨的故障隔离;
7、步骤4.当步骤3中隔离出舵面故障时,则考虑舵面的小角度形变故障,设计包含加性故障描述因子的舵面输出公式,根据输出力与力矩的正负性来分析和辨识其形变故障情况;
8、步骤5.当步骤3中隔离出螺旋桨与方向舵故障时,则设计包含乘性故障描述因子的螺旋桨与舵机的输出公式,通过分析乘性故障描述因子的变化来分析和辨识其故障情况。
9、进一步的,所述步骤1的具体内容和方法包括如下步骤:
10、步骤1.1为了对故障进行更准确的描述,这里给定两个auv执行机构故障的描述形式。
11、(1)加性描述形式:
12、u=u*+f+ (1)
13、式中u为auv执行机构的控制输入,u*为期望的输入值;f+表征u中的故障向量,f+为加性故障描述因子。
14、(2)乘性描述形式:
15、u=f×u* (2)
16、式中f×为表征故障幅度的对角阵,定义当f×≠1时,控制输入携带故障信息,此时称f×为乘性故障描述因子。
17、步骤1.2针对auv执行机构中的具体故障进行建模,方法和步骤如下:
18、(1)动力推进执行机构故障:
19、螺旋桨是auv中直接与流体发生作用产生前向推力的执行机构。引入螺旋桨输出推力与其转速之间的关系式为:
20、t=ktn|n|+kvnva (3)
21、式中t为推力,n为螺旋桨转速,va为电机推进速度;与螺旋桨故障有关的变量包括:推力系数kt与电机推进系数kv。
22、(2)姿态控制执行机构故障:
23、auv的姿态控制系统主要包括舵面与舵机。舵面故障为边缘的小角度弯曲变形,形变舵面与流体发生作用产生与载体坐标系平行的作用力,其受流体作用所产生的加性故障为:
24、
25、式中到为各个自由度的加性故障;与f*分别为故障时与无故障时的流体作用力。在姿态控制系统中,舵机用于提供舵面偏转的力矩,给定舵机的力矩公式为:
26、m=dkmn|n|+dkvnva (5)
27、式中m为力矩;d为螺旋桨直径;与舵机故障有关的变量包括:力矩系数km与电机推进系数kv。
28、针对螺旋桨与舵机的力与力矩公式,引入乘性故障描述因子f*与加性故障描述因子f+,可得:
29、
30、步骤1.3针对auv执行机构系统的建模与描述,考虑如下形式的非线性系统:
31、
32、式中x,y,u,d分别为状态向量、输出向量、输入向量及干扰向量;g(x)为非线性项;a,b,c,d为常系数矩阵。将执行机构中各个故障引起的变化从上述状态方程中分离开来,并状态方程改写为含有故障描述因子的形式,可得:
33、
34、其中
35、
36、其中g(·)为分段故障函数,包括加性故障、乘性故障以及携带这些故障向量的输入变量;f=[f+ f×]=[f1 f2 … fn]为故障分布矩阵,其中的故障矩阵可分别表征舵面形变故障,螺旋桨推力故障与舵机推力矩故障。
37、进一步的,所述步骤2的具体内容和方法包括如下步骤:
38、步骤2.1利用步骤1.3中的状态方程,定义fa=[fa+ fa×]=[fi fi+1 … fj],且1<i<j<n。将g中剩下的故障向量组成新的矩阵定义为fb,并从g中移出,与干扰d组成新的分布矩阵,只包含故障矩阵fa的分段故障函数g称为g1;
39、步骤2.2将步骤1.3中的状态方程改写为:
40、
41、其中与分别为新的干扰矩阵与向量,
42、上述结构相当于将执行机构故障向量中的一部分归为新的干扰向量这样设计的目标就是使观测器生成的残差不受干扰的影响,而仅受到新的分段故障函数g1的影响。由于新的干扰向量中包含干扰d与部分故障fb,因此残差就对干扰及携带故障fb的执行器故障不敏感,而对执行器故障g1敏感。根据以上思路,理论上可以设计出与执行器故障种类数目相同的故障隔离观测器。
43、进一步的,所述步骤3的具体内容和方法包括如下步骤:
44、步骤3.1将分段故障函数g1以外的其他系统变量扩张成一个新的状态变量x2,可得:
45、
46、由此,设计扩张状态观测器的形式为:
47、
48、其中i=1,2,…,n为第i个故障类型所对应的观测器;z1,i,z1,i分别为状态量x1,i,x1,i的估计,l1,i,l1,i为扩张状态观测器的增益向量;
49、步骤3.2计算扩张状态观测器的增益,增益通常可以参数化为:
50、[l1,i l2,i]=[β1ω0 β2ω02] (13)
51、其中β1,β2是选择的参数,使得特征多项式β2s+β1是hurwitz。令
52、s(n+1)+β1sn+…+βns+βn+1=(s+1)(n+1) (14)
53、它应该保证特征多项式的根在复平面的左半部分。因此,等式(6)中的参数可选择为:
54、[l1,i l2,i]=[2ω0 ω02] (15)
55、其中ω0为观测器的带宽,在实践中需要不断地改变该带宽以确保eso可以正确地估计状态变量。
56、进一步的,所述步骤4的具体内容和方法包括如下步骤:
57、步骤4.1对舵面的故障形变部位进行受力分析。将执行机构中的舵面看作平面矩形abcd,此时的舵面角为δx,虚线表示的面积为发生形变故障的部分舵面,形变故障表示为三角形abc沿直线ab向下转动一个角度,称为形变角δf,在平面上产生的角度为故障平面角re。将故障下的与无故障时的轴向流体作用力相减,可获得各轴向的故障作用力。据此,可近似计算出形变舵面abc受流体作用所产生的故障力与力矩:
58、
59、式中xe为横舵面边缘距z轴的垂直距离;p为流体压强;l为舵面形变部分的长度。
60、步骤4.2对步骤4.1进行进一步地分析,当舵面发生不同类型的形变故障时,所造成的故障作用中存在正负性相反的情况。分析所有舵面在可能变形情况下所造成故障作用的正负性,如下表所示:
61、
62、通过对四种故障力与力矩的排列组合,可以得到8种基本的形变故障。考虑同一时刻仅有一块舵面存在故障,而且不同舵面的形变故障输出作用的正负性存在差异。从而,结合故障估计结果和上表即可实现故障舵面的辨识。
63、进一步的,所述步骤5的具体内容和方法包括如下步骤:
64、步骤5.1考虑推力公式中存在两个未知数,仅通过一个时刻的估计数据无法求解。并且螺旋桨与舵机的故障程度在短时间内的变化可忽略,因此取两段临近且参数发生变化的时间段t1,t2的量测与估计数据,将式(6)转换为求解乘性故障描述因子的矩阵方程,可得:
65、(1)螺旋桨的推力:
66、
67、(2)方向舵的推力矩:
68、
69、步骤5.2利用步骤5.1中的乘性故障矩阵f×(t),通过判别其内部的乘性故障描述因子f×(t)的信息来进一步辨识螺旋桨与方向舵的故障信息,如下表所示:
70、
71、
72、与现有技术相比,本发明具有以下优点和有益效果:
73、1.本发明利用故障描述因子将故障隔离与辨识策略分为两级,使其形成完整的故障诊断机制。在实际应用中,一个完整且逻辑正确的故障诊断系统才可以对故障进行处理,在过程中可以避免很多不必要的麻烦,减少财产的损失。
74、2、本发明设计的多个扩张状态观测器中,每一个观测器仅对某一种故障敏感,而对其他故障不敏感,具有较强的鲁棒性。在实际应用中,当auv(自主式水下机器人)发生故障时,上述的故障隔离方案可以及时地定位故障,提供报警信号,避免事故地发生;如果错误地判断故障,未采取相应的措施,则会发生事故,造成极大的经济损失。
75、3、本发明将故障描述因子与舵面、舵机与螺旋桨的输出公式相结合,上述方法根据系统中运行的历史数据即可辨识出系统中发生的故障,可以实时在线地分析系统中的故障。在实际应用中,可以预先辨识出系统故障的类型,提前做好故障的预防与处理,节省运行成本,因此具有重要的理论价值和实际意义。
76、4、本发明可以将auv执行机构中舵面、舵机与螺旋桨存在的所有故障全部辨识出来。在实际应用中,可以判断螺旋桨叶片的损坏程度,损失叶片的具体数目是多少,是否达到需要更换的程度,;舵面的形变故障是否严重,舵机提供的方向角因故障具体偏移了多少角度。