基于后缀树和向量机的故障检测方法、系统、装置及介质与流程

专利检索2022-05-10  3



1.本发明涉及故障检测技术领域,尤其是一种基于后缀树和向量机的故障检测方法、系统、装置及介质。


背景技术:

2.现如今,对滚动轴承的故障诊断分析大多基于振动信号,而振动信号具有非线性、非平稳性等特点,利用它可获取充分表达信号特征的信息。现有技术中,对于振动信号的处理,一般采用傅里叶变换等进行时频转化方法,例如基于daubechies小波变换的滚动轴承故障特征提取方法。这种方法在处理过程中会出现混叠现象从而产生误差,且该类误差由傅里叶算法原理产生,不可避免。由于对振动信号的特征提取存在较大误差,因此,现有的关于振动信号的故障检测方法往往并不准确。


技术实现要素:

3.本发明的目的在于至少一定程度上解决现有技术中存在的技术问题之一。
4.为此,本发明实施例的一个目的在于提供一种基于后缀树和向量机的故障检测方法,该方法通过对振动信号进行分解,获取重复特征波形和重复时间序列两个不同尺度的信息,避免了傅里叶算法的混叠现象产生的误差,提高了训练样本的准确性和可靠性,进而提高了支持向量机分类器的参数精度,从而提高了故障检测的准确度。
5.本发明实施例的另一个目的在于提供一种基于后缀树和向量机的故障检测系统。
6.为了达到上述技术目的,本发明实施例所采取的技术方案包括:
7.第一方面,本发明实施例提供了一种基于后缀树和向量机的故障检测方法,包括以下步骤:
8.获取第一振动信号,并通过后缀树算法对所述第一振动信号进行分解,得到第一重复特征波形和第一重复时间序列;
9.根据所述第一重复特征波形和所述第一重复时间序列确定所述第一振动信号的第一时频特征图,并根据所述第一时频特征图构建训练样本集;
10.构建支持向量机分类器,所述支持向量机分类器以所述训练样本集作为输入,以所述第一时频特征图对应的故障类型作为输出;
11.将所述训练样本集输入到所述支持向量机分类器中进行训练,对所述支持向量机分类器的参数进行优化,得到最优参数组合;
12.根据所述最优参数组合确定分类决策函数,进而根据所述分类决策函数确定待检测的第二振动信号的故障类型。
13.进一步地,在本发明的一个实施例中,所述通过后缀树算法对所述第一振动信号进行分解,得到第一重复特征波形和第一重复时间序列这一步骤,其具体包括:
14.通过平均分布或高斯分布对所述第一振动信号进行编码得到第一时域信号;
15.通过后缀树算法对所述第一时域信号进行分解,得到多个故障波形信息和对应的
时刻信息,并根据所述故障波形信息和所述时刻信息构建第一后缀树;
16.对所述第一后缀树的各个节点进行遍历,获取重复出现的故障波形信息作为第一重复特征波形,并确定所述第一重复特征波形的第一重复时间序列。
17.进一步地,在本发明的一个实施例中,所述对所述第一后缀树的各个节点进行遍历,获取重复出现的故障波形信息作为第一重复特征波形,并确定所述第一重复特征波形的第一重复时间序列这一步骤,其具体包括:
18.从所述第一后缀树的根节点开始,通过深度优先的嵌套遍历算法对所述第一后缀树的各个节点进行遍历;
19.获取重复出现的故障波形信息作为第一重复特征波形,并确定所述第一重复特征波形对应的多个时刻信息;
20.根据所述第一重复特征波形对应的多个时刻信息确定所述第一重复特征波形的第一重复时间序列。
21.进一步地,在本发明的一个实施例中,所述根据所述第一重复特征波形和所述第一重复时间序列确定所述第一振动信号的第一时频特征图,并根据所述第一时频特征图构建训练样本集这一步骤,其具体包括:
22.根据预设的重复长度范围,对所述第一重复特征波形和所述第一重复时间序列进行归一化处理,得到所述第一振动信号的第一时频特征图;
23.根据所述第一时频特征图确定训练样本;
24.获取所述第一振动信号的故障类型,根据所述故障类型生成故障类型标签;
25.根据所述训练样本和所述故障类型标签构建训练样本集。
26.进一步地,在本发明的一个实施例中,所述最优参数组合包括:支持向量、支持向量的数量、拉格朗日参数、类别标记、权重因子、尺度、衰减参数、核函数参数以及分类阈值。
27.进一步地,在本发明的一个实施例中,所述分类决策函数通过下式确定:
[0028][0029]
其中,f(x)表示分类决策函数,x表示训练样本的特征向量,xi表示支持向量,n表示支持向量x
i
的数量,表示拉格朗日参数,y
i
表示类别标记,k
mix
(x,x
i
)表示支持向量机的核函数,b
*
表示分类阈值;
[0030]
支持向量机的核函数k
mix
(x,x
i
)通过下式确定:
[0031][0032]
其中,δ表示权重因子,0<δ<1,v表示尺度,z表示衰减参数,g表示核函数参数。
[0033]
进一步地,在本发明的一个实施例中,所述根据所述分类决策函数确定待检测的第二振动信号的故障类型这一步骤,其具体包括:
[0034]
通过后缀树算法对待检测的第二振动信号进行分解,得到第二重复特征波形和第二重复时间序列;
[0035]
根据所述第二重复特征波形和所述第二重复时间序列确定所述第二振动信号的第二时频特征图;
[0036]
根据所述第二时频特征图确定所述第二振动信号的特征向量;
[0037]
根据所述第二振动信号的特征向量和所述分类决策函数确定所述第二振动信号的故障类型。
[0038]
第二方面,本发明实施例提出了一种基于后缀树和向量机的故障检测系统,包括:
[0039]
信号分解模块,用于获取第一振动信号,并通过后缀树算法对所述第一振动信号进行分解,得到第一重复特征波形和第一重复时间序列;
[0040]
训练样本集构建模块,用于根据所述第一重复特征波形和所述第一重复时间序列确定所述第一振动信号的第一时频特征图,并根据所述第一时频特征图构建训练样本集;
[0041]
分类器构建模块,用于构建支持向量机分类器,所述支持向量机分类器以所述训练样本集作为输入,以所述第一时频特征图对应的故障类型作为输出;
[0042]
分类器训练模块,用于将所述训练样本集输入到所述支持向量机分类器中进行训练,对所述支持向量机分类器的参数进行优化,得到最优参数组合;
[0043]
故障类型检测模块,用于根据所述最优参数组合确定分类决策函数,进而根据所述分类决策函数确定待检测的第二振动信号的故障类型。
[0044]
第三方面,本发明实施例提供了一种基于后缀树和向量机的故障检测装置,包括:
[0045]
至少一个处理器;
[0046]
至少一个存储器,用于存储至少一个程序;
[0047]
当所述至少一个程序被所述至少一个处理器执行时,使得所述至少一个处理器实现上述的一种基于后缀树和向量机的故障检测方法。
[0048]
第四方面,本发明实施例还提供了一种计算机可读存储介质,其中存储有处理器可执行的程序,所述处理器可执行的程序在由处理器执行时用于执行上述的一种基于后缀树和向量机的故障检测方法。
[0049]
本发明的优点和有益效果将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到:
[0050]
本发明实施例获取已知故障类型的第一振动信号,通过后缀树算法对第一振动信号进行分解得到第一重复特征波形和第一重复时间序列,然后根据第一重复特征波形和第一重复时间序列确定第一时频特征图,进而根据第一时频特征图构建用于支持向量机分类器训练的训练样本集,通过迭代训练优化支持向量机分类器的参数,得到最优参数组合,从而可以确定分类决策函数,根据该分类决策函数即可确定待检测的第二振动信号的故障类型。本发明实施例通过对振动信号进行分解,获取重复特征波形和重复时间序列两个不同尺度的信息,避免了傅里叶算法的混叠现象产生的误差,提高了训练样本的准确性和可靠性,进而提高了支持向量机分类器的参数精度,从而提高了故障检测的准确度。
附图说明
[0051]
为了更清楚地说明本发明实施例中的技术方案,下面对本发明实施例中所需要使用的附图作以下介绍,应当理解的是,下面介绍中的附图仅仅为了方便清晰表述本发明的技术方案中的部分实施例,对于本领域的技术人员来说,在无需付出创造性劳动的前提下,还可以根据这些附图获取到其他附图。
[0052]
图1为本发明实施例提供的一种基于后缀树和向量机的故障检测方法的步骤流程
图;
[0053]
图2为本发明实施例提供的后缀树算法的分解示意图;
[0054]
图3为本发明实施例提供的叶节点递归调用顺序示意图;
[0055]
图4为本发明实施例提供的时频特征示意图;
[0056]
图5为本发明实施例提供的一种基于后缀树和向量机的故障检测系统的结构框图;
[0057]
图6为本发明实施例提供的一种基于后缀树和向量机的故障检测装置的结构框图。
具体实施方式
[0058]
下面详细描述本发明的实施例,实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。对于以下实施例中的步骤编号,其仅为了便于阐述说明而设置,对步骤之间的顺序不做任何限定,实施例中的各步骤的执行顺序均可根据本领域技术人员的理解来进行适应性调整。
[0059]
在本发明的描述中,多个的含义是两个或两个以上,如果有描述到第一、第二只是用于区分技术特征为目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量或者隐含指明所指示的技术特征的先后关系。此外,除非另有定义,本文所使用的所有的技术和科学术语与本技术领域的技术人员通常理解的含义相同。
[0060]
参照图1,本发明实施例提供了一种基于后缀树和向量机的故障检测方法,具体包括以下步骤:
[0061]
s101、获取第一振动信号,并通过后缀树算法对第一振动信号进行分解,得到第一重复特征波形和第一重复时间序列;
[0062]
具体地,运用传感器采集已知故障类型的第一振动信号f(n),n为采样点数。单次处理的数据量要求至少包含2个关注信号的完整周期,一般应达到关注特征周期的3~5倍以上,以获取更多的故障重复特征。
[0063]
进一步作为可选的实施方式,通过后缀树算法对第一振动信号进行分解,得到第一重复特征波形和第一重复时间序列这一步骤,其具体包括:
[0064]
a1、通过平均分布或高斯分布对第一振动信号进行编码得到第一时域信号;
[0065]
a2、通过后缀树算法对第一时域信号进行分解,得到多个故障波形信息和对应的时刻信息,并根据故障波形信息和时刻信息构建第一后缀树;
[0066]
a3、对第一后缀树的各个节点进行遍历,获取重复出现的故障波形信息作为第一重复特征波形,并确定第一重复特征波形的第一重复时间序列。
[0067]
具体地,按照第一振动信号的幅值区间,依照平均分布或者高斯分布按预设编码位数对第一振动信号进行编码。
[0068]
按照平均分布对第一振动信号进行编码的公式如下:
[0069]
c1(n)=int[(f(n)

f
1,min
)*l
code
/(f
1,max

f
1,min
)]
[0070]
按照高斯分布对第一振动信号进行编码的公式如下:
[0071]
c1(n)=int[igd((f(n)

μ1)/σ1)*l
code
]
[0072]
其中,c1(n)为n次采样数据对应的第一码带的编码值,也即第一时域信号,int()为取整函数,l
code
为预设的编码位数,f
1,max
为第一振动信号的值域最大值,也即第一码带编码时的值域最大值,f
1,min
为第一振动信号的值域最小值,也即第一码带编码时的值域最小值;μ1为第一码带高斯分布均值,σ1为第一码带的高斯分布方差,igd为标准正态分布积分概率查表返回函数。
[0073]
同时获得残差信号r1(n):r1(n)=f(n)

c1(n)。
[0074]
将编码后的c1(n)进行后缀树重建。后缀树构建过程中遵循三个传递规则:
[0075]
relu1:当向根节点root插入新后缀时使用。active_node保持为root,active_edge被设置为即将被插入的新后缀的首字符,active_length减1。
[0076]
relu2:分裂(split)一条边并且插入(insert)一个新的节点时,如果该新节点不是当前步骤中创建的第一个节点,则将先前插入的节点与该新节点通过一个特殊的指针连接,称为后缀连接(suffix link),在图示中通常以虚线绘制。
[0077]
relu3:当从active_node不为根节点root的节点分裂边时,沿着后缀连接(suffix link)的方向寻找节点,如果存在一个节点,则设置该节点为active_node;如果不存在,则设置active_node为root。active_edge和active_length保持不变。
[0078]
下面对本发明实施例采用的后缀树算法进行介绍。存在一个原始数据列t=t1t2...t
n
,其中t
i
(1≤i≤n 1),n为数据长度,欲从t1到t
n
将原始数据依次分解为n 1个不重复子序列,第n 1个子序列为规定的终止符,用

#’表示。为便于表达,相关符号说明如下:
[0079]
o:(root)根节点,序列起点,无具体意义;
[0080]
p:(acitve_piont)活动点,指定活动起始点;
[0081]
n:(active_node)活动节点,指定某一子节点;
[0082]
e:(active_edge)活动边,指定序列连接方向;
[0083]
l:(active_edge)活动长度,指定序列移动的数据量;
[0084]
r:(remainder)剩余后缀数,指明未连接的后缀的数目;
[0085]
#:终止符;
[0086]
street(t):最终分解结果。
[0087]
从根节点o开始,从左到右依次分解原始数据序列,直到产生第n 1个序列。如下式:
[0088]
stree(t)=(f
i
,f
i
,g
i
),i∈[1,n],
[0089]
其中,f
i
表示主边序列,f
i
表示子边序列,g
i
表示数据i的连接方式,包括活动点p和剩余后缀数r的取值。当数据处于t
i
(1≤i≤n)位置时,通过如下传递方式,完成各条边的连接。
[0090]
1)i=1时
[0091]
p1=(o,'f1',1),r=1。起始位置选定根节点o;活动边e设为

f1’
;活动长度l和剩余后缀数r设置为1,表明只需传入一个数据量。stree(t1)=(f1,g1)。
[0092]
2)i>1时
[0093]

即t
i
为stree(t
i
‑1)后新出现的数据,设置p
i
=(o,'f1',i),r=i。直接连接在全部主边之后,从f1开始迭代更新p
ik
=(o,'f
k
',i

k 1),其中k表示主边数目,k∈(0,i],k=k 1,r=r

1,直至i=k,停止更新p
ik
。在对已有边进行延展后,创建一个新的主序列
f
k 1
,以根节点o作为起始点,以t
i
作为其第一条边。stree(t
i
)=(f
i
,g
i
)。
[0094]

t
i
∈t
i
‑1,即t
i
已经在前缀中出现,被视为重复数据。从主链f1的第一个数据t0开始,寻找与t
i
重复的数据出现的位置,取j表示边长l。设置p
i
=(o,'f1',j),r=1。由于未知t
i 1
的数据特点,暂时只能取定活动点p
i
和剩余后缀数r,并不能给出具体的数据序列的方向。由j可断定所有前j个主链中均存在与t
i
重复的数据,因此,j从1开始,迭代更新p
ij
=(o,'f
j
',i

j),l∈(0,j],l=l

1,r=1,每次更新中,主边续接t
i
,r值不变,恒为1,只对t
i
这一个数据量进行操作。此步骤可参考规则1,活动点为根节点,活动边设置为新后缀的初始数据,操作一次后,活动边长减1。该过程未创建新边。活动点的更新用于连接后缀数据,不能作为创建新边的标准。
[0095]

在第

步的前提下,创建子序列f
i
,f
i
均以活动点p
ij
为起点,从主边f
j
中分离,沿用主边f
j
的前缀数据。子序列f
i
中导入数据同主边f
j
一致,将数据t
i
续接在序列后即可。stree(t
i
)=(f
i
,f
i
,g
i
),i<n。
[0096]

建立后缀连接(suffix link)。重复数据t
i
出现后,每一主边均会产生一个或多个子边节点p
fi
,如果该节点不是当前数据插入过程中创建的第一个节点p
f1
,则将先前插入的节点与该新节点通过一个特殊的指针连接,称为后缀连接。
[0097]

当从n不为根节点o的节点分裂边时,沿着后缀连接(suffix link)的方向寻找节点,如果存在一个节点,则设置该节点为n;如果不存在,则设置n为o。e和l保持不变。
[0098]

循环上述
②‑⑤
步,直到i=n时,完成了所有数据的分解。
[0099]


abcabxabcd’字符串为例,完成字符串的后缀树分解,如图2所示,序号为主从边编号,

#’为结束符,空心圆表示父节点,三角形编号表示叶节点,箭头表示搜索顺序。
[0100]
加入终止符后,总共分成11个子串,如下表1所示:
[0101]
序号字符串类1abcabxabcd#主边2bcabxabcd#主边3cabxabcd#主边4abxabcd#子边5bxabcd#子边6xabcd#主边7abcd#子边8bcd#子边9cd#子边10d#主边11#子边
[0102]
表1
[0103]
由表1可以清晰看出,原字符串可分解为若干个不重复子串,子串所能携带的信息量也不尽相同。后缀树分解,仅仅是对原数据的处理,完成了数据编码的再编排过程,以牺牲存储量来换取特征数据段的读取时间,完整保留了所有数据信号。
[0104]
进一步作为可选的实施方式,对第一后缀树的各个节点进行遍历,获取重复出现的故障波形信息作为第一重复特征波形,并确定第一重复特征波形的第一重复时间序列这
一步骤,其具体包括:
[0105]
a31、从第一后缀树的根节点开始,通过深度优先的嵌套遍历算法对第一后缀树的各个节点进行遍历;
[0106]
a32、获取重复出现的故障波形信息作为第一重复特征波形,并确定第一重复特征波形对应的多个时刻信息;
[0107]
a33、根据第一重复特征波形对应的多个时刻信息确定第一重复特征波形的第一重复时间序列。
[0108]
进一步作为可选的实施方式,通过深度优先的嵌套遍历算法对第一后缀树的各个节点进行遍历这一步骤,其具体包括:
[0109]
b1、创建与第一时域信号等长的重复时刻存储数组;
[0110]
b2、创建与第一后缀树的非叶节点数量一致的重复特征记录数组;
[0111]
b3、运行depth_first嵌套函数,输入节点编号和父节点重复波形长度,输出重复时刻起始位置、重复波形长度、波形重复次数、节点重复字符串长度以及多个重复时刻;
[0112]
其中,重复特征记录数组用于存储重复时刻起始位置、重复波形长度、波形重复次数以及节点重复字符串长度,重复时刻存储数组用于存储重复时刻。
[0113]
具体地,算法伪代码如下:
[0114]
depth_first嵌套函数(简写为df):
[0115]
输入:节点编号nnodeid,父节点重复波形长度nfathernoderepeatlength;
[0116]
输出:重复时刻起始位置,重复波形长度nnoderepeatlength,波形重复次数nwrindex,重复时刻存储数组(全局变量);
[0117]
1:重复波形长度=当前节点字符长度 父节点重复波形长度
[0118]
2:记录节点重复时刻起始位置
[0119]
3:按照节点编号访问该节点的第一个子节点
[0120]
4:波形重复次数=0
[0121]
5:repeat
[0122]
6:if子节点是非叶节点
[0123]
7:递归调用子节点df函数,获取子节点波形重复次数
[0124]
8:波形重复次数=波形重复次数 子节点波形重复次数
[0125]
9:else//子节点是叶节点
[0126]
10:波形重复次数=波形重复次数 1
[0127]
11:将叶节点编号填入重复时刻存储数组
[0128]
12:end if
[0129]
13:until所有子节点均已访问
[0130]
14:return重复波形长度
[0131]
深度优先算法:
[0132]
1:创建与待处理信号等长的重复时刻存储数组;
[0133]
2:创建与非叶节点数量一致的重复特征记录数组,包含如下信息:{重复波形字符串终止地址,节点重复字符串长度,重复时刻起始位置,波形重复次数};
[0134]
3:运行df(根节点编号,0)//父节点重复波形长度为0;
[0135]
4:获得故障的特征波形与对应重复时间序列的特征。
[0136]
时频特征提取算法将后缀树算法中创建的节点仅遍历了一次。由于后缀树算法的复杂度为o(n),所以时频特征提取算法的复杂度同样是o(n)。
[0137]
下面以abcabxabcd字符串的后缀树结构为例,进一步说明本发明实施例时频特征提取算法的基本原理。
[0138]
df函数递归调用顺序如图3所示,依次为df(0,0),df(1,0),df(3,2),df(4,1),df(2,0),df(5,0),df(0,0),每条主边中,访问完叶节点均需回到父节点处,等待下一次节点搜索。
[0139]
根据图2中非叶节点次序完成子序列特征数组,分解结果见表2,表3。
[0140]
1234567891011abcabxabcd#1742853961011
[0141]
表2
[0142]
表2第1行为原字符串

abcabxabcd’各字符编号,第2行为原字符串,第3行为提取后的重复性特征分解序列,其值对应图2中叶节点编号,也对应值所示采样点的时刻。该数组的存储量与原始数据长度一致,其最后一位始终对应字符串终止符,该位可以省略。
[0143]
numw_endrelenstart_rtvreptimesnode_str12213ab22143b33312c43242c53172c
[0144]
表3
[0145]
表3中记录了每一个非叶节点的重复特征数组信息,包括重复特征波形终止点,重复特征波形长度relen,重复时间特征向量起始点start_rtv,重复次数reptimes。为了便于理解,表3中添加了节点编号num与节点字符串node_str。表3中节点编号与节点字符串均与图2中标注一致,均可由后缀树算法直接获取。
[0146]
进一步作为可选的实施方式,故障检测方法还包括以下步骤:
[0147]
获取超过预设的重复次数阈值的重复特征波形的最大重复长度,当最大重复长度大于等于预设的长度阈值且残差编码的次数小于等于预设的编码次数阈值,对残差编码的参数进行更新后再进行残差编码和信号分解。
[0148]
具体地,检验超过预设重复次数波形的最大重复长度,如该长度小于预设值或者残差分析次数i大于预设值则终止分析。如该长度大于等于预设值且残差分析次数i小于等于预设值,则对第i次残差信号r
i
(n)继续执行分解。
[0149]
其中残差编码时参数修正的规则如下:
[0150]
如果依照平均分布进行编码,则采用下式更新上下限:
[0151][0152]
如果依照高斯分布进行编码,则:
[0153]
a)可重新依照平均分布进行残差编码,同样采用上式更新上下限。
[0154]
b)依然依照高斯分布编码,采用下式更新参数:
[0155]
μ
i
=0
[0156][0157]
再利用下式进行残差编码:
[0158]
c
i
(n)=int[(igd((r
i
‑1(n)

μ
i
)/σ
i
)

0.5)*2*l
code
]
[0159]
s102、根据第一重复特征波形和第一重复时间序列确定第一振动信号的第一时频特征图,并根据第一时频特征图构建训练样本集。
[0160]
具体地,输出故障特征包含重复特征波形与重复时间序列两个信息。如表3中重复特征波形长度relen最大为3,对应重复特征波形终止点w_end为3,因此该特征的波形为表2第2行前3位所示的“abc”,而对应的重复时间序列特征为表2第3行从重复时间特征向量起始点start_rtv即第1位开始的共重复次数reptimes的2个序列,即“1,7”。因此重复波形长度为3采样点的故障特征为:
[0161]
{“abc”,“1,7”}
[0162]
同理,重复长度为2的特征有:
[0163]
{“ab”,“1,7,4”}、{“bc”,“2,8”}
[0164]
重复特征波形与重复时间序列可单独或共同作为故障特征用于后续故障诊断。结合动力学模型,也可将多个重复时间序列的交、并集及其补集等集合运算结果作为故障特征。其中某时刻最大波形重复长度越长意味着该时刻附近更长时间内的数据结构稳定性越好。当干扰近似白噪声时,该时刻的瞬时频率也相对越低。反之某时刻最大波形重复长度越短,意味该时刻数据结构越不稳定,该时刻的瞬时信号也越接近于突变或冲击信号。
[0165]
进一步作为可选的实时方式,根据第一重复特征波形和第一重复时间序列确定第一振动信号的第一时频特征图,并根据第一时频特征图构建训练样本集这一步骤s102,其具体包括:
[0166]
s1021、根据预设的重复长度范围,对第一重复特征波形和第一重复时间序列进行归一化处理,得到第一振动信号的第一时频特征图;
[0167]
s1022、根据第一时频特征图确定训练样本;
[0168]
s1023、获取第一振动信号的故障类型,根据故障类型生成故障类型标签;
[0169]
s1024、根据训练样本和故障类型标签构建训练样本集。
[0170]
具体地,第一时频特征图的横坐标表示时刻信息,第一时频特征图的纵坐标表示重复波形长度,第一时频特征图的像素点的色彩值表示对应时刻的数据在对应重复波形长度的重复特征波形中的参与程度,从而可以实现第一振动信号的故障特征可视化。
[0171]
如图4所示为本发明实施例提供的时频特征示意图。将字符串数据类比于振动信
号,图4中颜色深浅代表着不同时刻数据在当前重复长度中的活跃程度。第2行“b”字符的对应的色彩值较亮,表示其处很可能存在频率较低的周期性信号。第1行“x”、“d”字符处数值存在低值,表明该时刻信号极不稳定,可能存在冲击等突变信号。第1行2处“a”字符数值也存在低值,但第二行对应位置值反而更大,表示“a”字符对应信号隶属于后续的“ab”字符,在处理数据中不会脱离“ab”单独出现。
[0172]
后缀树分解后,得到具有时频特征的图像结果。图像中出现的低频凹坑位置,可视为故障件受到冲击的时刻;图像中出现的高频高亮的区域,可视为系统的固有振动信号。对于一个旋转系统而言,旋转周期小,振动频率高,很难直接判断出图像各色块之间的差异(色块表征为信号时频特征),因此,本发明实施例引入支持向量机分类器,用识别图像的方式识别各类别故障的时频特征图,借以判断具体的故障类型。
[0173]
后缀树分解完成了对原始振动信号的处理,以图片格式保留了信号的时频信息,并完整保存在本地文件中,便于支持向量机分类器的直接输入。在tensorflow平台中,图片读入后,图像信息转换为矩阵形式的计算数据,便于后续的计算、训练和识别。
[0174]
将经过后缀树处理后的图片按照故障类型构造数据训练集(用于训练分类器,确定参数值)和测试集(预测分类器的准确率),并把设定的文件名称作为标签值(用于表达故障类别),最后把数据导入支持向量机分类器中,完成具体的故障类型的识别。在后续的工作过程中,对于实时采集的数字信号,直接投入到已训练好的支持向量机分类器中,进行相应的故障判断。
[0175]
s103、构建支持向量机分类器,支持向量机分类器以训练样本集作为输入,以第一时频特征图对应的故障类型作为输出。
[0176]
具体地,支持向量机(support vector machine,svm)是一类按监督学习(supervised learning)方式对数据进行二元分类的广义线性分类器(generalized linear classifier),它的目的是寻找一个超平面来对样本进行分割,分割的原则是间隔最大化,最终转化为一个凸二次规划问题来求解。由简至繁的支持向量机包括:当训练样本线性可分时,通过硬间隔最大化,学习一个线性可分支持向量机;当训练样本近似线性可分时,通过软间隔最大化,学习一个线性支持向量机;当训练样本线性不可分时,通过核技巧和软间隔最大化,学习一个非线性支持向量机。
[0177]
大部分时候数据并不是线性可分的,这个时候满足这样条件的超平面就根本不存在。对于非线性的数据的情况,svm的一种处理方法是选择一个核函数,通过将数据映射到高维空间,来解决在原始空间中线性不可分的问题。具体来说,在线性不可分的情况下,支持向量机首先在低维空间中完成计算,然后通过核函数将输入空间映射到高维特征空间,最终在高维特征空间中构造出最优分离超平面,从而把平面上本身不好分的非线性数据分开。另一种方法是使用松弛变量处理离群值(outliers)方法:对于可能并不是因为数据本身是非线性结构的,而只是因为数据有噪音的非线性数据情况。导致存在偏离正常位置很远的数据点,我们称之为outlier,在我们原来的svm模型里,outlier的存在有可能造成很大的影响,因为超平面本身就是只有少数几个support vector组成的,如果这些support vector里又存在outlier的话,其影响就很大了。为了处理这种情况,svm允许数据点在一定程度上偏离一下超平面,引入松弛变量ξ
i
进行求解。
[0178]
s104、将训练样本集输入到支持向量机分类器中进行训练,对支持向量机分类器
的参数进行优化,得到最优参数组合。
[0179]
本发明实施例中,支持向量机分类器的优化目标为:
[0180][0181]
其中,ω为超平面权系数向量,c为惩罚参数,b为偏移量,y为类别标记(取 1或

1),x
i
为支持向量,ξ
i
为松弛变量,m为松弛变量ξ
i
的数量。
[0182]
进一步作为可选的实施方式,最优参数组合包括:支持向量、支持向量的数量、拉格朗日参数、类别标记、权重因子、尺度、衰减参数、核函数参数以及分类阈值。
[0183]
进一步作为可选的实施方式,分类决策函数通过下式确定:
[0184][0185]
其中,f(x)表示分类决策函数,x表示训练样本的特征向量,xi表示支持向量,n表示支持向量x
i
的数量,表示拉格朗日参数,y
i
表示类别标记,k
mix
(x,x
i
)表示支持向量机的核函数,b*表示分类阈值;
[0186]
支持向量机的核函数k
mix
(x,x
i
)通过下式确定:
[0187][0188]
其中,δ表示权重因子,0<δ<1,v表示尺度,z表示衰减参数,g表示核函数参数。
[0189]
需要说明的是,上述支持向量机的核函数中的各项参数可以通过训练进行调整而最终确定,从上述公式可以知道,支持向量机的核函数根据权重因子、尺度、衰减参数和核函数参数确定;分类决策函数f(x)是经过训练后的分类决策函数,支持向量、支持向量的数量、拉格朗日参数、类别标记、支持向量机的核函数、分类阈值为在训练过程中不断优化所确定的满足训练条件的在一定程度上为最优的参数。
[0190]
本发明实施例中,分类阈值b*具体公式为:
[0191][0192]
其中,ω为超平面权系数向量,x(1)为故障样本中任意一个支持向量,x(

1)为正常样本中任意一个支持向量。
[0193]
可选地,经过多次迭代后,核函数识别到具体重复波形及其对应时间序列,并将其作为新的训练数据集反向更新分类器。将识别到的故障特征设定为固定核,直接读取后续训练数据中与之匹配的特征波形,并用于正反向传递中不断更新分类器,可大幅提高分类器的识别速率和预测精度。另一方面,分类器中的动态核继续深层读取低频振动信号,确保实时读取数据的过程中,不遗漏信号,保证信号的完整性。动态更新参数和固定核的方式相结合,强化支持向量机的学习机制。
[0194]
s105、根据最优参数组合确定分类决策函数,进而根据分类决策函数确定待检测的第二振动信号的故障类型。
[0195]
本发明实施例中,对待检测的第二振动信号的处理过程与第一振动信号的处理过
程类似,在得到第二振动信号的第二时频特征图后,将其输入到训练好的支持向量分类器后,即可得到第二振动信号的故障类型。
[0196]
进一步作为可选的实施方式,根据分类决策函数确定待检测的第二振动信号的故障类型这一步骤,其具体包括:
[0197]
c1、通过后缀树算法对待检测的第二振动信号进行分解,得到第二重复特征波形和第二重复时间序列;
[0198]
c2、根据第二重复特征波形和第二重复时间序列确定第二振动信号的第二时频特征图;
[0199]
c3、根据第二时频特征图确定第二振动信号的特征向量;
[0200]
c4、根据第二振动信号的特征向量和分类决策函数确定第二振动信号的故障类型。
[0201]
以上对本发明的方法步骤进行了说明。可以认识到,本发明实施例通过对振动信号进行分解,获取重复特征波形和重复时间序列两个不同尺度的信息,避免了傅里叶算法的混叠现象产生的误差,提高了训练样本的准确性和可靠性,进而提高了支持向量机分类器的参数精度,从而提高了故障检测的准确度。
[0202]
与现有技术相比,本发明实施例还具有以下优点:
[0203]
1)本发明实施例直接对时域信号进行分解,获取重复特征波形与重复时间序列两个不同尺度的信息,获取特征的物理含义明确,可解释性强。
[0204]
2)本发明实施例计算复杂度为o(n),运行速度快,普通台式机单一码带的处理能力可达到1m采样点/秒,特别适合高采样频率、多通道数据处理等大规模数据实时处理时的特征提取。
[0205]
3)重复特征波形与重复时间序列均可直接与动力学模型分析结果比对,适用于非平稳故障,极大地增加了故障特征的可靠性。
[0206]
4)引入支持向量机识别故障类型,识别速度可达毫秒级别,并实时反馈训练数据,更新参数,实现实时诊断的目标。
[0207]
参照图5,本发明实施例提供了一种基于后缀树和向量机的故障检测系统,包括:
[0208]
信号分解模块,用于获取第一振动信号,并通过后缀树算法对第一振动信号进行分解,得到第一重复特征波形和第一重复时间序列;
[0209]
训练样本集构建模块,用于根据第一重复特征波形和第一重复时间序列确定第一振动信号的第一时频特征图,并根据第一时频特征图构建训练样本集;
[0210]
分类器构建模块,用于构建支持向量机分类器,支持向量机分类器以训练样本集作为输入,以第一时频特征图对应的故障类型作为输出;
[0211]
分类器训练模块,用于将训练样本集输入到支持向量机分类器中进行训练,对支持向量机分类器的参数进行优化,得到最优参数组合;
[0212]
故障类型检测模块,用于根据最优参数组合确定分类决策函数,进而根据分类决策函数确定待检测的第二振动信号的故障类型。
[0213]
上述方法实施例中的内容均适用于本系统实施例中,本系统实施例所具体实现的功能与上述方法实施例相同,并且达到的有益效果与上述方法实施例所达到的有益效果也相同。
[0214]
参照图6,本发明实施例提供了一种基于后缀树和向量机的故障检测装置,包括:
[0215]
至少一个处理器;
[0216]
至少一个存储器,用于存储至少一个程序;
[0217]
当上述至少一个程序被上述至少一个处理器执行时,使得上述至少一个处理器实现上述的一种基于后缀树和向量机的故障检测方法。
[0218]
上述方法实施例中的内容均适用于本装置实施例中,本装置实施例所具体实现的功能与上述方法实施例相同,并且达到的有益效果与上述方法实施例所达到的有益效果也相同。
[0219]
本发明实施例还提供了一种计算机可读存储介质,其中存储有处理器可执行的程序,该处理器可执行的程序在由处理器执行时用于执行上述一种基于后缀树和向量机的故障检测方法。
[0220]
本发明实施例的一种计算机可读存储介质,可执行本发明方法实施例所提供的一种基于后缀树和向量机的故障检测方法,可执行方法实施例的任意组合实施步骤,具备该方法相应的功能和有益效果。
[0221]
本发明实施例还公开了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存介质中。计算机设备的处理器可以从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行图1所示的方法。
[0222]
在一些可选择的实施例中,在方框图中提到的功能/操作可以不按照操作示图提到的顺序发生。例如,取决于所涉及的功能/操作,连续示出的两个方框实际上可以被大体上同时地执行或上述方框有时能以相反顺序被执行。此外,在本发明的流程图中所呈现和描述的实施例以示例的方式被提供,目的在于提供对技术更全面的理解。所公开的方法不限于本文所呈现的操作和逻辑流程。可选择的实施例是可预期的,其中各种操作的顺序被改变以及其中被描述为较大操作的一部分的子操作被独立地执行。
[0223]
此外,虽然在功能性模块的背景下描述了本发明,但应当理解的是,除非另有相反说明,上述的功能和/或特征中的一个或多个可以被集成在单个物理装置和/或软件模块中,或者一个或多个功能和/或特征可以在单独的物理装置或软件模块中被实现。还可以理解的是,有关每个模块的实际实现的详细讨论对于理解本发明是不必要的。更确切地说,考虑到在本文中公开的装置中各种功能模块的属性、功能和内部关系的情况下,在工程师的常规技术内将会了解该模块的实际实现。因此,本领域技术人员运用普通技术就能够在无需过度试验的情况下实现在权利要求书中所阐明的本发明。还可以理解的是,所公开的特定概念仅仅是说明性的,并不意在限制本发明的范围,本发明的范围由所附权利要求书及其等同方案的全部范围来决定。
[0224]
上述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例上述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read

only memory)、随机存取存
储器(r am,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0225]
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。
[0226]
计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式光盘只读存储器(cdrom)。另外,计算机可读介质甚至可以是可在其上打印上述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得上述程序,然后将其存储在计算机存储器中。
[0227]
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。
[0228]
在本说明书的上述描述中,参考术语“一个实施方式/实施例”、“另一实施方式/实施例”或“某些实施方式/实施例”等的描述意指结合实施方式或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施方式或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施方式或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施方式或示例中以合适的方式结合。
[0229]
尽管已经示出和描述了本发明的实施方式,本领域的普通技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施方式进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同物限定。
[0230]
以上是对本发明的较佳实施进行了具体说明,但本发明并不限于上述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做作出种种的等同变形或替换,这些等同的变形或替换均包含在本技术权利要求所限定的范围内。
转载请注明原文地址:https://win.8miu.com/read-50094.html

最新回复(0)