本发明涉及一种基于布隆过滤器的电机故障诊断方法,属于水电水利工业等项目中电机故障诊断领域。
背景技术:
随着信息化控制在工业生产领域的广泛应用,人们提出了在保证企业计划产能的前提下,利用智能化的故障诊断方式对工业生产设备进行状态监测、故障诊断和系统维护,提高生产管理过程的高安全性和高可靠性。在现代化标准厂房的生产现场中,广泛部署有各类大型机组,机组具有“三大”(体积大、功率大、流量大)、“三高”(转速高、压力高、运行检修及时性要求高)的特点,其工作环境兼具高温、高压(超高压)、磨蚀等特点,这些因素极易导致设备突发故障的发生,对工业设备安全、连续、可靠的运行造成威胁。此外,为提高生产效率,工业生产要求形成紧密的生产链,连续性很强,因此,一旦设备发生故障,即会导致生产线全面停滞,严重影响安全生产,大大降低经济效益。
对现有的文献资料检索,如今的电机故障诊断方法是通过安装在电机周围的传感器采集参数,建立这些电机的参数数据库,进行电机的故障诊断。然而如何快速、准确地发现电机发生故障的种类仍然是一个亟待解决的问题。
技术实现要素:
为了解决上述技术问题,本发明提供了一种基于布隆过滤器的电机故障诊断方法。
为了达到上述目的,本发明所采用的技术方案是:
一种基于布隆过滤器的电机故障诊断方法,包括,
采集电机样本参数,并进行分类;
选出各类别中的故障样本参数,并构建不同类别的故障黑名单;
给故障黑名单中的每个故障样本参数标记id,将这些id映射到对应类别的布隆过滤器上,即表示故障黑名单中所有的故障样本参数都写入对应类别的布隆过滤器;
采集电机实时参数,并进行分类;
给各类别中的实时参数标记id,将这些id映射到对应类别的布隆过滤器上,若所有代表位的值均为1,则该实时参数在故障黑名单中,即该实时参数异常,电机故障。
采用余弦定理的余弦相似性,对参数进行分类;首先定义各类别的特征向量,将各参数向量化,然后计算参数向量与特征向量之间的余弦值,最后当余弦值大于设定的阈值时,则判定参数向量与特征向量相识,即该参数属于特征向量对应的类别。
余弦值计算公式为,
其中,s为余弦值,xi为参数向量中的第i个元素,yi为特征向量中的第i个元素。
余弦值在0到1之间。
故障黑名单中所有的故障样本参数都写入对应类别的布隆过滤器,具体过程为,
1)定义生成布隆过滤器时使用k个哈希函数,哈希函数集h={h1,h2,…,hk′…,hk},一个类别的故障黑名单r={r1,r2,…,rj,…,rl},长度为m的位向量m;
2)将位向量m中m个代表位都置0,定义j=1;
3)第j个故障样本参数rj与k个哈希函数进行运算,得到k个值域为[0,m-1]的哈希值h1(rj),h2(rj),…,hk′(rj),…,hk(rj);
4)用位向量m表示{h1(rj),h2(rj),…,hk′(rj),…,hk(rj)};
定义hk′(rj)在位向量m中对应的代表位为m[hk′(rj)],若原代表位m[hk′(rj)]的值为0,则将值置为1,若原代表位m[hk′(rj)]的值为1,则保持不变;
5)判断j<l是否成立,如果成立,则j=j+1转至步骤3,若不成立,则结束,即表示该故障黑名单中所有的元素均写入布隆过滤器。
判断实时参数是否在故障黑名单中的过程为,
实时参数rs与k个哈希函数进行运算,得到k个值域为[0,m-1]的哈希值h1(rs),h2(rs),…,hk′(rs),…,hk(rs);确定{h1(rs),h2(rs),…,hk′(rs),…,hk(rs)}在位向量m上的各代表位,若所有代表位的值均为1,则该实时参数在故障黑名单中,否则该实时参数不在故障黑名单中。
本发明所达到的有益效果:本发明建立电机的故障样本参数黑名单,将名单中的故障样本参数映射到布隆过滤器中,实时参数通过布隆过滤器可以准确的识别出电机是否处于故障状态,判断快速准确并且判断信息量大。
附图说明
图1为本发明的流程图;
图2为本发明的采集系统结构图;
图3为故障样本参数写入布隆过滤器的示意图;
图4为实时参数是否在黑名单中的示意图。
具体实施方式
下面结合附图对本发明作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
如图1所示,一种基于布隆过滤器的电机故障诊断方法,包括以下步骤:
步骤1,采集电机样本参数,并进行分类。
采集参数的方法为:如图2所示,构建无线传感网络,包括安装在电机上的传感器以及无线传感器节点,通过无线传感器网络将参数汇聚到协调器节点上,协调器节点将参数传送至计算机。无线传感网络是基于zigbee技术的无线传感网络,无线传感器节点为基于cc2530芯片的zigbee节点,协调器节点为增强数据处理功能的传感器节点或仅带有无线通信接口的网关设备。
将电机样本参数分为电机温度样本参数、电机电流样本参数、电机轴承转动参数等。也可对上述的类别再进行细分,以电机轴承转动参数为例,滚动轴承是在电机中经常需要使用到的关键零件,也是故障率相对而言较高的零件,在滚动轴承工作的时候出现故障的部分可能有滚动体内圈故障、外圈故障、滚动体故障。
其中发生内圈故障的转动频率fie公式如下:
发生外圈故障的转动频率foe公式如下:
发生滚动体故障的转动频率fbe公式如下:
其中,n表示滚动体的个数,d表示滚子的直径,d表示轴承的直径,
分类方法采用余弦定理的余弦相似性分类方法,首先定义各类别的特征向量(通过电机的运行工作手册和专家知识库确定每个类别的特征向量),将各参数向量化,然后计算参数向量与特征向量之间的余弦值,最后当余弦值大于设定的阈值时,则判定参数向量与特征向量相识,即该参数属于特征向量对应的类别。
具体余弦值计算公式为,
其中,s为余弦值,xi为参数向量中的第i个元素,yi为特征向量中的第i个元素。
由于向量中的每一个变量都是正数,因此余弦的取值在0和1之间,当两条向量夹角的余弦值接近1时,两条向量相似,从而可以归成一类,上述阈值可设定为0.9。
步骤2,选出各类别中的故障样本参数,并构建不同类别的故障黑名单。
步骤3,给故障黑名单中的每个故障样本参数标记id,将这些id映射到对应类别的布隆过滤器上,即表示故障黑名单中所有的故障样本参数都写入对应类别的布隆过滤器。
具体过程为:
1)定义生成布隆过滤器时使用k个哈希函数,哈希函数集h={h1,h2,…,hk′…,hk},一个类别的故障黑名单r={r1,r2,…,rj,…,rl},长度为m的位向量m;
2)将位向量m中m个代表位都置0,定义j=1;
3)第j个故障样本参数rj与k个哈希函数进行运算,得到k个值域为[0,m-1]的哈希值h1(rj),h2(rj),…,hk′(rj),…,hk(rj);
4)如图3所示,用位向量m表示{h1(rj),h2(rj),…,hk′(rj),…,hk(rj)};
定义hk′(rj)在位向量m中对应的代表位为m[hk′(rj)],若原代表位m[hk′(rj)]的值为0,则将值置为1,若原代表位m[hk′(rj)]的值为1,则保持不变;
5)判断j<l是否成立,如果成立,则j=j+1转至步骤3,若不成立,则结束,即表示该故障黑名单中所有的元素均写入布隆过滤器。
步骤4,采集电机实时参数,并进行分类。
步骤5,给各类别中的实时参数标记id,将这些id映射到对应类别的布隆过滤器上,若所有代表位的值均为1,则该实时参数在故障黑名单中,即该实时参数异常,电机故障。
判断实时参数是否在故障黑名单中的过程为:实时参数rs与k个哈希函数进行运算,得到k个值域为[0,m-1]的哈希值h1(rs),h2(rs),…,hk′(rs),…,hk(rs);确定{h1(rs),h2(rs),…,hk′(rs),…,hk(rs)}在位向量m上的各代表位,若所有代表位的值均为1,则该实时参数在故障黑名单中,否则该实时参数不在故障黑名单中。
以图3和图4为例,图3中t1、t2、t3是某类别故障黑名单中选取的三个故障样本参数id,t1通过三个独立同分布的哈希函数分别映射到布隆过滤器的一、三和八代表位中,将这三代表位标记为‘1’。同样的将t2映射到第四、六和九代表位并且标记为‘1’。将t3映射到第六、九和十二代表位并且设为‘1’。
如图4所示,t4为实时参数id,通过同样的哈希函数以及计算方式映射到布隆过滤器中,检测到自己映射的代表位的第二位为‘0’,则表示该实时参数不存在于故障黑名单中。t5为实时参数id,通过同样的哈希函数以及计算方式映射到布隆过滤器中,检测到自己映射的代表位的第五、十位为‘0’,则该实时参数不存在于故障黑名单中。t6为实时参数id,通过同样的哈希函数以及计算方式映射到布隆过滤器中,检测到自己映射的代表位第三、九和十二位均为‘1’,则该实时参数存在于故障黑名单中,电机发生故障。
上述方法通过建立电机的故障样本参数黑名单,将名单中的故障样本参数映射到布隆过滤器中,实时参数通过布隆过滤器可以准确的识别出电机是否处于故障状态,判断快速准确并且判断信息量大。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。