1.本发明涉及雷达故障诊断技术领域,特别是涉及一种基于稀疏分解的雷达故障诊断方法和系统。
背景技术:2.现有的雷达故障定位方法主要是基于经典傅里叶变换完成故障数据的时频域变换,在频域进行故障定位,但因为经典傅里叶变换的频率分辨率受观测时间限制,往往无法达到系统所需要的故障定位精度,造成故障诊断不精确、故障排除不及时、平均无故障时间延长等问题,进而影响系统的任务进度。
技术实现要素:3.为解决现有技术存在的上述问题,本发明提供了一种基于稀疏分解的雷达故障诊断方法和系统。
4.为实现上述目的,本发明提供了如下方案:
5.一种基于稀疏分解的雷达故障诊断方法,包括:
6.获取雷达故障检测点的时域数据;
7.构建冗余基;
8.采用所述冗余基对所述时域数据进行稀疏分解得到频域数据;
9.根据所述频域数据判定雷达中的系统是否发生故障。
10.优选地,所述构建冗余基,具体包括:
11.基于雷达的时间延迟间隔采用公式ai=sin(2
×
pi×
t
×
[1:100])
t
确定所述冗余基的组成列;
[0012]
其中,t为雷达的时间延迟间隔,t=0.01
×
i,i=1,2...,n,pi为常数。
[0013]
优选地,所述采用所述冗余基对所述时域数据进行稀疏分解得到频域数据,具体包括:
[0014]
采用公式y=a-1
x根据所述时域数据得到所述频域数据;
[0015]
其中,x为时域数据,y为频域数据,a为冗余基,a-1
为冗余基的逆矩阵。
[0016]
优选地,所述冗余基的列数采用公式m=n
×
100/(n+5)确定;
[0017]
当列数m含有小数时,采用四舍五入法确定列数的值;
[0018]
其中,m为列数,n为雷达中分系统的个数。
[0019]
优选地,所述根据所述频域数据判定雷达是否发生故障,具体包括:
[0020]
确定所述频域数据中非零点数据的个数;
[0021]
当所述频域数据中非零点数据的个数小于第一预设值时,判定雷达的接收系统发生故障;
[0022]
当所述频域数据中非零点数据的个数大于等于所述第一预设值小于等于第二预设值时,判定雷达的发射系统发生故障;
[0023]
当所述频域数据中非零点数据的个数大于所述第二预设值时,判定雷达的天线伺服系统发生故障。
[0024]
优选地,所述第一预设值为10;所述第二预设值为20。
[0025]
根据本发明提供的具体实施例,本发明公开了以下技术效果:
[0026]
本发明提供的基于稀疏分解的雷达故障诊断方法,采用冗余基对所述时域数据进行稀疏分解得到频域数据,然后根据所述频域数据判定雷达中的系统是否发生故障,可在时域数据长度有限的条件下,提高雷达故障定位的精确度。
[0027]
对应于上述提供的基于稀疏分解的雷达故障诊断方法,本发明还提供了一种基于稀疏分解的雷达故障诊断系统,该系统包括:
[0028]
时域数据获取模块,用于获取雷达故障检测点的时域数据;
[0029]
冗余基构建模块,用于构建冗余基;
[0030]
频域数据确定模块,用于采用所述冗余基对所述时域数据进行稀疏分解得到频域数据;
[0031]
故障判断模块,用于根据所述频域数据判定雷达中的系统是否发生故障。
[0032]
优选地,所述冗余基构建模块包括:
[0033]
组成列确定单元,用于基于雷达的时间延迟间隔采用公式ai=sin(2
×
pi×
t
×
[1:100])
t
确定所述冗余基的组成列;
[0034]
其中,t为雷达的时间延迟间隔,t=0.01
×
i,i=1,2...,n,pi为常数。
[0035]
优选地,所述频域数据确定模块包括:
[0036]
频域数据确定单元,用于采用公式y=a-1
x根据所述时域数据得到所述频域数据;
[0037]
其中,x为时域数据,y为频域数据,a为冗余基,a-1
为冗余基的逆矩阵。
[0038]
优选地,所述故障判断模块包括:
[0039]
个数确定单元,用于确定所述频域数据中非零点数据的个数;
[0040]
第一雷达系统故障判定单元,用于当所述频域数据中非零点数据的个数小于第一预设值时,判定雷达的接收系统发生故障;
[0041]
第二雷达系统故障判定单元,用于当所述频域数据中非零点数据的个数大于等于所述第一预设值小于等于第二预设值时,判定雷达的发射系统发生故障;
[0042]
第三雷达系统故障判定单元,用于当所述频域数据中非零点数据的个数大于所述第二预设值时,判定雷达的天线伺服系统发生故障。
[0043]
因本发明提供的基于稀疏分解的雷达故障诊断系统实现的技术效果与上述提供的基于稀疏分解的雷达故障诊断方法实现的技术效果相同,故在此不再进行赘述。
附图说明
[0044]
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0045]
图1为本发明提供的基于稀疏分解的雷达故障诊断方法的流程图;
[0046]
图2为本发明提供的基于稀疏分解的雷达故障诊断系统的结构示意图。
具体实施方式
[0047]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0048]
本发明的目的是提供一种基于稀疏分解的雷达故障诊断方法和系统,能够提高雷达故障定位的精确性。
[0049]
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
[0050]
如图1所示,本发明提供的基于稀疏分解的雷达故障诊断方法,包括:
[0051]
步骤100:获取雷达故障检测点的时域数据。其中,雷达故障检测点的时域数据是采集雷达分系统的故障监测点的时域数据,假设采集到的信号为x=[x1,x2,x3],其中x1、x2、x3分别为雷达接收系统、发射系统以及天线伺服系统的故障监测点时域数据,分别为1
×
10,1
×
20,1
×
30的行矩阵(数据点的长度与所需的故障诊断精度有关,当需要高),即x为1
×
60的行矩阵。
[0052]
步骤101:构建冗余基。构建得到的冗余基为构成n维空间的零范数为1的列向量。时域故障数据与系统启动时间和启动后的故障报警时间之间的时间延迟间隔t有关,当用0.01作为小区间对t进行划分时,则冗余基按照如下公式构建:
[0053]
假设冗余基a的组成列用ai表示,则ai=sin(2*pi*(0.01*i)*[1:100])
t
。例如,i从1取值一直取到500,500为冗余基a的列数,即ai为100行1列的列向量。500这个量与系统的复杂度有关,通常基于经验获取,在该发明针对的雷达系统中,取500较为合适。pi是一个常数,为圆周率3.1415926....,在ai中,其实0.01*i就是t,冗余基a的第一列中t就是0.01,第二列中t就是0.02,第三列中t就是0.03,第四列中t就是0.04,依次类推,是指是将t按照0.01的间隔进行划分。
[0054]
假设系统有n个分系统,则冗余基的列数m按如下公式进行计算:m=n*100/(n+5),当m为小数时,利用四舍五入的方法取其整数部分。
[0055]
步骤102:采用冗余基对时域数据进行稀疏分解得到频域数据。稀疏分解是从冗余基中选取与待分解信号完全匹配的基来构成待分解信号,此时,y为1
×
60的频域行矩阵。例如,采用公式y=a-1
x根据时域数据得到频域数据。x为时域数据,y为频域数据,a为冗余基,a-1
为冗余基的逆矩阵。
[0056]
步骤103:根据频域数据判定雷达中的系统是否发生故障。当求出y之后,计算其中的非零元素的个数,然后利用判定规则即可得到精确的故障定位结果。具体的,步骤103的实施过程可以为:
[0057]
确定频域数据中非零点数据的个数z。
[0058]
当频域数据中非零点数据的个数z小于第一预设值时,判定雷达的接收系统发生故障。
[0059]
当频域数据中非零点数据的个数z大于等于第一预设值小于等于第二预设值时,判定雷达的发射系统发生故障。例如,将第一预设值设置为10,第二预设值设置为20。
[0060]
当频域数据中非零点数据的个数z大于第二预设值时,判定雷达的天线伺服系统
发生故障。
[0061]
通常情况下,利用经典傅里叶变换得到频域数据y,但是,利用经典傅里叶变换得到频域数据时,因为分辨精度受时域数据长度的限制,当时域数据的时间长度有限时,通过经典傅里叶变换得到的频域数据中,频域数据中非零点的个数z无法完全与故障判定方法对应。例如,当接收系统有故障时,正常来讲,z应该小于10,但是,傅里叶变换受时域数据长度的限制,往往会大于10,而此时,按照现有故障判定规则,会得出雷达发射系统或天线伺服系统有故障,得到错误的故障定位结果,无法完成精确有效的故障定位。为了提高利用此种方法的故障定位精度,往往需要采集长度大于100个数据点的时域数据,这会造成数据采样、存储、去噪等各种困难。
[0062]
基于此,本发明采用冗余基分解时域数据,可在时域数据长度有限的条件下,得到精确的频域数据,使y中的非零数据的个数与雷达各分系统的故障判定规则完全一致,从而提高故障定位的精确度。
[0063]
对应于上述提供的基于稀疏分解的雷达故障诊断方法,本发明还提供了一种基于稀疏分解的雷达故障诊断系统,如图2所示,该系统包括:时域数据获取模块200、冗余基构建模块201、频域数据确定模块202和故障判断模块203。
[0064]
时域数据获取模块200用于获取雷达故障检测点的时域数据。
[0065]
冗余基构建模块201用于构建冗余基。
[0066]
频域数据确定模块202用于采用冗余基对时域数据进行稀疏分解得到频域数据。
[0067]
故障判断模块203用于根据频域数据判定雷达中的系统是否发生故障。
[0068]
作为本发明的一实施例,上述采用的冗余基构建模块201包括:组成列确定单元。
[0069]
组成列确定单元用于基于雷达的时间延迟间隔采用公式ai=sin(2
×
pi×
t
×
[1:100])
t
确定冗余基的组成列。
[0070]
其中,t为雷达的时间延迟间隔,t=0.01
×
i,i=1,2...,n,pi为常数。
[0071]
作为本发明的再一实施例,上述采用的频域数据确定模块202包括:频域数据确定单元。
[0072]
频域数据确定单元用于采用公式y=a-1
x根据时域数据得到频域数据。
[0073]
其中,x为时域数据,y为频域数据,a为冗余基,a-1
为冗余基的逆矩阵。
[0074]
作为本发明的另一实施例,上述采用的故障判断模块203包括:个数确定单元、第一雷达系统故障判定单元、第二雷达系统故障判定单元和第三雷达系统故障判定单元。
[0075]
个数确定单元用于确定频域数据中非零点数据的个数。
[0076]
第一雷达系统故障判定单元用于当频域数据中非零点数据的个数小于第一预设值时,判定雷达的接收系统发生故障。
[0077]
第二雷达系统故障判定单元用于当频域数据中非零点数据的个数大于等于第一预设值小于等于第二预设值时,判定雷达的发射系统发生故障。
[0078]
第三雷达系统故障判定单元用于当频域数据中非零点数据的个数大于第二预设值时,判定雷达的天线伺服系统发生故障。
[0079]
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说
明即可。
[0080]
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。