发明名称 基于分级预警的数控机床故障诊断方法
摘要 本发明的基于分级预警的数控机床故障诊断方法,包括:a).采集机床的信息,获得机床的振动、温度原始数据;b).数据处理和参数提取,提取包括振动幅值、振动突变值和温度在内的特征参数;c).判断是否存在故障,根据步骤b)中获取的特征参数是否超越预设下限值判断机床是否存在故障;d).判断预警等级,如果预警级别达到4级,则执行机床停机命令;如果预警级别为1~3级,则执行步骤f);f).自动识别故障原因。本发明的机床故障诊断方法,满足了机床早期故障预警的快速性以及诊断的准确性要求,提高了数控机床故障诊断的准确性和可靠性,减少了停机时间,有效降低了维护成本,提高了数控机床的生产效率。
申请公布号 CN105204436B 申请公布日期 2016.10.26
申请号 CN201510532922.1 申请日期 2015.08.26
申请人 山东省计算中心(国家超级计算济南中心) 发明人 郝慧娟;王茂励;郝凤琦;罗旋;李娟;程广河;韩凌燕;张让勇;韩路跃;孙祥;孟庆龙
分类号 G05B19/406(2006.01)I 主分类号 G05B19/406(2006.01)I
代理机构 济南泉城专利商标事务所 37218 代理人 褚庆森
主权项 一种基于分级预警的数控机床故障诊断方法,其特征在于,通过以下步骤来实现:a).采集机床的信息,利用振动传感器、温度传感器对待监测机床进行实时监测,获得机床的振动、温度原始数据;b).数据处理和参数提取,对步骤a)中采集的原始数据进行降噪、FFT变换处理,根据不同组件的故障与特征参数的对应关系,分别提取组件的包括振动幅值、振动突变值和温度在内的特征参数;c).判断是否存在故障,根据步骤b)中获取的特征参数是否超越预设下限值判断机床是否存在故障,把采集的当前组件的特征参数与预设下限值比较,如果存在SpA<sub>t</sub>≥SpA<sub>min</sub>、ΔA<sub>t</sub>≥ΔA<sub>min</sub>或者T<sub>t</sub>≥T<sub>min</sub>,则认为机床出现故障,其中:SpA<sub>t</sub>为t时刻某组件的振动幅值,ΔA<sub>t</sub>为t时刻某组件的振动突变值,T<sub>t</sub>为t时刻某组件的温度,SpA<sub>min</sub>、ΔA<sub>min</sub>、T<sub>min</sub>分别为相应组件的振动幅值、振动突变值、温度的预设下限值;执行步骤d);d).判断预警等级,按照如下原则判断机床的故障预警级别:如果SpA<sub>min</sub>≤SpA<sub>t</sub><SpA<sub>max</sub>或者T<sub>min</sub>≤T<sub>t</sub><T<sub>max</sub>,则属于1级预警;如果SpA<sub>max</sub>≤SpA<sub>t</sub>或者T<sub>max</sub>≤T<sub>t</sub>,则属于2级预警;如果ΔA<sub>min</sub>≤ΔA<sub>t</sub><ΔA<sub>max</sub>,则属于3级预警;如果ΔA<sub>t</sub>≥ΔA<sub>max</sub>,则属于4级预警;其中,SpA<sub>max</sub>、ΔA<sub>max</sub>、T<sub>max</sub>分别为相应组件的振动幅值、振动突变值、温度的预设上限值;e).判断是否停机,如果预警级别达到4级,则执行机床停机命令,以避免造成严重的故障或损失;如果预警级别为1~3级,则执行步骤f);f).自动识别故障原因,采用智能的故障诊断算法自动进行故障的定位,以便操作人员及时发现并排除故障;步骤f)中所述的故障诊断算法通过以下步骤来实现:f‑1).案例库的建立,根据机床工作过程中实际出现的故障,建立故障征兆与故障原因的案例库,每个案例库中记载着一个故障原因、该故障原因对应的多个故障征兆以及每个故障征兆的模糊数;f‑2).实时参数采集,根据实际加工中的故障信号提取故障征兆,形成故障征兆集合R<sub>s</sub>={r<sub>1</sub>,r<sub>2</sub>,...,r<sub>l</sub>},其相对重要程度分别用权重{ω<sub>1</sub>,ω<sub>2</sub>,...,ω<sub>l</sub>}表示,ω<sub>i</sub>为第i个故障征兆r<sub>i</sub>的权重;f‑3).检索符合条件的案例库,根据步骤f‑2)中提取的故障征兆从案例库中检索出符合条件的案例库,设符合条件的案例库共m个,记为C={c<sub>1</sub>,c<sub>2</sub>,...,c<sub>m</sub>},m个案例库对应的故障原因集合为:Y={y<sub>1</sub>,y<sub>2</sub>,...,y<sub>m</sub>};f‑4).找出符合条件故障征兆,如果案例库c<sub>i</sub>中的故障征兆与集合R<sub>s</sub>中实际采集的故障征兆一致,则认为案例库c<sub>i</sub>中的该故障征兆符合条件,1≤i≤m;设案例库c<sub>i</sub>中符合条件的故障征兆所组成的集合为R<sub>p</sub>={r<sub>p1</sub>,r<sub>p2</sub>,...,r<sub>pf</sub>},f≤l,集合R<sub>p</sub>各故障征兆明显程度的模糊数组成的集合为M<sub>p</sub>={m<sub>p1</sub>,m<sub>p2</sub>,...,m<sub>pf</sub>};执行步骤f‑5);f‑5).计算权重和并判断,根据集合R<sub>p</sub>中故障征兆在集合{ω<sub>1</sub>,ω<sub>2</sub>,...,ω<sub>l</sub>}相应的比重,由公式(1)计算R<sub>p</sub>中所有故障征兆的权重和ω<sub>D1</sub>:<maths num="0001"><math><![CDATA[<mrow><msub><mi>&omega;</mi><mrow><mi>D</mi><mn>1</mn></mrow></msub><mo>=</mo><munderover><mo>&Sigma;</mo><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>f</mi></munderover><msub><mi>&omega;</mi><mrow><mi>p</mi><mi>i</mi></mrow></msub><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001111280390000021.GIF" wi="750" he="134" /></maths>如果ω<sub>D1</sub>≥0.5,则执行步骤f‑6);如果ω<sub>D1</sub><0.5,则认为c<sub>i</sub>不是匹配案例库,按照同样的方法对案例库C中的每个案例均进行判断,如果都不匹配,则执行步骤f‑11);f‑6).模糊数的拆分,从故障原因与故障征兆的模糊关系表中,取出集合R<sub>p</sub>中故障征兆r<sub>pi</sub>所对应的故障原因的模糊数,记为:<img file="FDA0001111280390000022.GIF" wi="331" he="87" />若某故障原因与故障征兆无关,则其模糊数f<sub>pi</sub>=0,1≤i≤f;按照公式(2)计算出拆分系数w<sub>2</sub>:<maths num="0002"><math><![CDATA[<mrow><msub><mi>w</mi><mn>2</mn></msub><mo>=</mo><mfrac><msub><mi>m</mi><mrow><mi>p</mi><mi>i</mi></mrow></msub><mrow><munderover><mo>&Sigma;</mo><mrow><mi>j</mi><mo>=</mo><mn>1</mn></mrow><mi>f</mi></munderover><msub><mi>m</mi><mrow><mi>p</mi><mi>j</mi></mrow></msub></mrow></mfrac><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>2</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001111280390000023.GIF" wi="694" he="194" /></maths>按照公式(3)将模糊数集合<img file="FDA0001111280390000024.GIF" wi="322" he="87" />拆分成一个故障征兆r<sub>pi</sub>与对应故障原因的模糊关系:<maths num="0003"><math><![CDATA[<mrow><msub><mi>G</mi><mi>i</mi></msub><mo>=</mo><mo>{</mo><msubsup><mi>g</mi><mi>i</mi><mn>1</mn></msubsup><mo>,</mo><msubsup><mi>g</mi><mi>i</mi><mn>2</mn></msubsup><mo>,</mo><mo>...</mo><mo>,</mo><msubsup><mi>g</mi><mi>i</mi><mi>m</mi></msubsup><mo>}</mo><mo>=</mo><mo>{</mo><msub><mi>w</mi><mn>2</mn></msub><mo>&times;</mo><msubsup><mi>f</mi><mrow><mi>p</mi><mi>i</mi></mrow><mn>1</mn></msubsup><mo>,</mo><msub><mi>w</mi><mn>2</mn></msub><mo>&times;</mo><msubsup><mi>f</mi><mrow><mi>p</mi><mi>i</mi></mrow><mn>2</mn></msubsup><mo>,</mo><mo>...</mo><mo>,</mo><msub><mi>w</mi><mn>2</mn></msub><mo>&times;</mo><msubsup><mi>f</mi><mrow><mi>p</mi><mi>i</mi></mrow><mi>m</mi></msubsup><mo>}</mo><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>3</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001111280390000031.GIF" wi="1294" he="87" /></maths>其中,1≤i≤f;f‑7).获取引入关系系数的模糊关系,根据案例c<sub>i</sub>中的故障原因,获取该故障原因与故障征兆的关系系数,设关系系数所组成的集合为<img file="FDA0001111280390000032.GIF" wi="476" he="79" />按照公式(4)将关系系数与相应的模糊相乘,获取引入关系系数的模糊关系:<maths num="0004"><math><![CDATA[<mrow><msup><msub><mi>G</mi><mi>i</mi></msub><mo>&prime;</mo></msup><mo>=</mo><mo>{</mo><msup><msubsup><mi>g</mi><mi>i</mi><mn>1</mn></msubsup><mo>&prime;</mo></msup><mo>,</mo><msup><msubsup><mi>g</mi><mi>i</mi><mn>2</mn></msubsup><mo>&prime;</mo></msup><mo>,</mo><mo>...</mo><mo>,</mo><msup><msubsup><mi>g</mi><mi>i</mi><mi>m</mi></msubsup><mo>&prime;</mo></msup><mo>}</mo><mo>=</mo><mo>{</mo><msubsup><mi>w</mi><mn>1</mn><mn>3</mn></msubsup><mo>&times;</mo><msubsup><mi>g</mi><mi>i</mi><mn>1</mn></msubsup><mo>,</mo><msubsup><mi>w</mi><mn>2</mn><mn>3</mn></msubsup><mo>&times;</mo><msubsup><mi>g</mi><mi>i</mi><mn>2</mn></msubsup><mo>,</mo><mo>...</mo><mo>,</mo><msubsup><mi>w</mi><mi>m</mi><mn>3</mn></msubsup><mo>&times;</mo><msubsup><mi>g</mi><mi>i</mi><mi>m</mi></msubsup><mo>}</mo><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>4</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001111280390000033.GIF" wi="1263" he="126" /></maths>其中,1≤i≤f;f‑8).获取案例的关系矩阵,按照f‑6)至f‑7)的步骤,分别获取案例c<sub>i</sub>中所有故障征兆r<sub>p1</sub>、r<sub>p2</sub>、…、r<sub>pf</sub>的模糊关系G<sub>1</sub>′、G<sub>2</sub>′、…、G<sub>f</sub>′;将集合G<sub>1</sub>′、G<sub>2</sub>′、…、G<sub>f</sub>′中的元素分别作为矩阵的第一行、第二行、…、第f行,形成案例c<sub>i</sub>的关系矩阵,记为G<sub>bi</sub>,其通过公式(5)进行求取:<maths num="0005"><math><![CDATA[<mrow><msub><mi>G</mi><mrow><mi>b</mi><mi>i</mi></mrow></msub><mo>=</mo><mfenced open = "[" close = "]"><mtable><mtr><mtd><msub><mi>g</mi><mn>11</mn></msub></mtd><mtd><msub><mi>g</mi><mn>12</mn></msub></mtd><mtd><mn>...</mn></mtd><mtd><msub><mi>g</mi><mrow><mn>1</mn><mi>m</mi></mrow></msub></mtd></mtr><mtr><mtd><msub><mi>g</mi><mn>21</mn></msub></mtd><mtd><msub><mi>g</mi><mn>22</mn></msub></mtd><mtd><mn>...</mn></mtd><mtd><msub><mi>g</mi><mrow><mn>2</mn><mi>m</mi></mrow></msub></mtd></mtr><mtr><mtd><mn>...</mn></mtd><mtd><mn>...</mn></mtd><mtd><mn>...</mn></mtd><mtd><mn>...</mn></mtd></mtr><mtr><mtd><msub><mi>g</mi><mrow><mi>f</mi><mn>1</mn></mrow></msub></mtd><mtd><msub><mi>g</mi><mrow><mi>f</mi><mn>2</mn></mrow></msub></mtd><mtd><mn>...</mn></mtd><mtd><msub><mi>g</mi><mrow><mi>f</mi><mi>m</mi></mrow></msub></mtd></mtr></mtable></mfenced><mo>=</mo><mfenced open = "[" close = "]"><mtable><mtr><mtd><mrow><msup><msubsup><mi>g</mi><mn>1</mn><mn>1</mn></msubsup><mo>&prime;</mo></msup></mrow></mtd><mtd><mrow><msup><msubsup><mi>g</mi><mn>1</mn><mn>2</mn></msubsup><mo>&prime;</mo></msup></mrow></mtd><mtd><mn>...</mn></mtd><mtd><mrow><msup><msubsup><mi>g</mi><mn>1</mn><mi>m</mi></msubsup><mo>&prime;</mo></msup></mrow></mtd></mtr><mtr><mtd><mrow><msup><msubsup><mi>g</mi><mn>2</mn><mn>1</mn></msubsup><mo>&prime;</mo></msup></mrow></mtd><mtd><mrow><msup><msubsup><mi>g</mi><mn>2</mn><mn>2</mn></msubsup><mo>&prime;</mo></msup></mrow></mtd><mtd><mn>...</mn></mtd><mtd><mrow><msup><msubsup><mi>g</mi><mn>2</mn><mi>m</mi></msubsup><mo>&prime;</mo></msup></mrow></mtd></mtr><mtr><mtd><mn>...</mn></mtd><mtd><mn>...</mn></mtd><mtd><mn>...</mn></mtd><mtd><mn>...</mn></mtd></mtr><mtr><mtd><mrow><msup><msubsup><mi>g</mi><mi>f</mi><mn>1</mn></msubsup><mo>&prime;</mo></msup></mrow></mtd><mtd><mrow><msup><msubsup><mi>g</mi><mi>f</mi><mn>2</mn></msubsup><mo>&prime;</mo></msup></mrow></mtd><mtd><mn>...</mn></mtd><mtd><mrow><msup><msubsup><mi>g</mi><mi>f</mi><mi>m</mi></msubsup><mo>&prime;</mo></msup></mrow></mtd></mtr></mtable></mfenced><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>5</mn><mo>)</mo></mrow><mo>;</mo></mrow>]]></math><img file="FDA0001111280390000034.GIF" wi="1373" he="383" /></maths>f‑9).获取关系向量G<sub>pi</sub>′,按照f‑4)至f‑8)的步骤,得到符合条件的m个案例c<sub>1</sub>、c<sub>2</sub>、...、c<sub>m</sub>的关系矩阵G<sub>b1</sub>、G<sub>b2</sub>、…、G<sub>bm</sub>;从关系矩阵G<sub>b1</sub>、G<sub>b2</sub>、…、G<sub>bm</sub>中查找出与故障征兆r<sub>pi</sub>相关的行,设相关的行数为k,k个相关的行组成公式(6)中的向量关系表达式:<maths num="0006"><math><![CDATA[<mrow><msub><mi>G</mi><mrow><mi>p</mi><mi>i</mi></mrow></msub><mo>=</mo><mfenced open = "[" close = "]"><mtable><mtr><mtd><msub><mi>&Omega;</mi><mn>11</mn></msub></mtd><mtd><msub><mi>&Omega;</mi><mn>12</mn></msub></mtd><mtd><mn>...</mn></mtd><mtd><msub><mi>&Omega;</mi><mrow><mn>1</mn><mi>m</mi></mrow></msub></mtd></mtr><mtr><mtd><msub><mi>&Omega;</mi><mn>21</mn></msub></mtd><mtd><msub><mi>&Omega;</mi><mn>22</mn></msub></mtd><mtd><mn>...</mn></mtd><mtd><msub><mi>&Omega;</mi><mrow><mn>2</mn><mi>m</mi></mrow></msub></mtd></mtr><mtr><mtd><mn>...</mn></mtd><mtd><mn>...</mn></mtd><mtd><mn>...</mn></mtd><mtd><mn>...</mn></mtd></mtr><mtr><mtd><msub><mi>&Omega;</mi><mrow><mi>k</mi><mn>1</mn></mrow></msub></mtd><mtd><msub><mi>&Omega;</mi><mrow><mi>k</mi><mn>2</mn></mrow></msub></mtd><mtd><mn>...</mn></mtd><mtd><msub><mi>&Omega;</mi><mrow><mi>k</mi><mi>m</mi></mrow></msub></mtd></mtr></mtable></mfenced><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>6</mn><mo>)</mo></mrow><mo>;</mo></mrow>]]></math><img file="FDA0001111280390000035.GIF" wi="909" he="296" /></maths>采用向量关系表达式中相应元素的和作为故障征兆r<sub>pi</sub>与故障原因的关系向量G<sub>pi</sub>′,向量G<sub>pi</sub>′如公式(7)所示:G<sub>pi</sub>′=[g<sub>i1</sub>′ g<sub>i2</sub>′ ... g<sub>im</sub>′]   (7)其中,向量G<sub>pi</sub>′中的元素g<sub>ij</sub>′通过公式(8)进行求取:<maths num="0007"><math><![CDATA[<mrow><msup><msub><mi>g</mi><mrow><mi>i</mi><mi>j</mi></mrow></msub><mo>&prime;</mo></msup><mo>=</mo><munderover><mo>&Sigma;</mo><mrow><mi>h</mi><mo>=</mo><mn>1</mn></mrow><mi>k</mi></munderover><msub><mi>&Omega;</mi><mrow><mi>h</mi><mi>j</mi></mrow></msub><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>8</mn><mo>)</mo></mrow><mo>;</mo></mrow>]]></math><img file="FDA0001111280390000041.GIF" wi="605" he="135" /></maths>f‑10).获取故障原因组合,按照与步骤f‑9)中相同的方法,分别得到故障征兆r<sub>p1</sub>、r<sub>p2</sub>、…、r<sub>pf</sub>的关系向量G<sub>p1</sub>′、G<sub>p2</sub>′、…、G<sub>pf</sub>′;向量G<sub>p1</sub>′、G<sub>p2</sub>′、…、G<sub>pf</sub>′中的元素分别作为第一行、第二行、…、第f行,组成故障特征与故障原因的关系矩阵G<sub>f</sub>,如公式(9)所示:<maths num="0008"><math><![CDATA[<mrow><msub><mi>G</mi><mi>f</mi></msub><mo>=</mo><mfenced open = "[" close = "]"><mtable><mtr><mtd><mrow><msup><msub><mi>G</mi><mrow><mi>p</mi><mn>1</mn></mrow></msub><mo>&prime;</mo></msup></mrow></mtd></mtr><mtr><mtd><mrow><msup><msub><mi>G</mi><mrow><mi>p</mi><mn>2</mn></mrow></msub><mo>&prime;</mo></msup></mrow></mtd></mtr><mtr><mtd><mn>...</mn></mtd></mtr><mtr><mtd><mrow><msup><msub><mi>G</mi><mrow><mi>p</mi><mi>f</mi></mrow></msub><mo>&prime;</mo></msup></mrow></mtd></mtr></mtable></mfenced><mo>=</mo><mfenced open = "[" close = "]"><mtable><mtr><mtd><mrow><msup><msub><mi>g</mi><mn>11</mn></msub><mo>&prime;</mo></msup></mrow></mtd><mtd><mrow><msup><msub><mi>g</mi><mn>12</mn></msub><mo>&prime;</mo></msup></mrow></mtd><mtd><mn>...</mn></mtd><mtd><mrow><msup><msub><mi>g</mi><mrow><mn>1</mn><mi>m</mi></mrow></msub><mo>&prime;</mo></msup></mrow></mtd></mtr><mtr><mtd><mrow><msup><msub><mi>g</mi><mn>21</mn></msub><mo>&prime;</mo></msup></mrow></mtd><mtd><mrow><msup><msub><mi>g</mi><mn>22</mn></msub><mo>&prime;</mo></msup></mrow></mtd><mtd><mn>...</mn></mtd><mtd><mrow><msup><msub><mi>g</mi><mrow><mn>2</mn><mi>m</mi></mrow></msub><mo>&prime;</mo></msup></mrow></mtd></mtr><mtr><mtd><mn>...</mn></mtd><mtd><mn>...</mn></mtd><mtd><mn>...</mn></mtd><mtd><mn>...</mn></mtd></mtr><mtr><mtd><mrow><msup><msub><mi>g</mi><mrow><mi>f</mi><mn>1</mn></mrow></msub><mo>&prime;</mo></msup></mrow></mtd><mtd><mrow><msup><msub><mi>g</mi><mrow><mi>f</mi><mn>2</mn></mrow></msub><mo>&prime;</mo></msup></mrow></mtd><mtd><mn>...</mn></mtd><mtd><mrow><msup><msub><mi>g</mi><mrow><mi>f</mi><mi>m</mi></mrow></msub><mo>&prime;</mo></msup></mrow></mtd></mtr></mtable></mfenced><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>9</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001111280390000042.GIF" wi="1053" he="382" /></maths>按照公式(10)对矩阵G<sub>f</sub>中的每一列求和:<maths num="0009"><math><![CDATA[<mrow><msup><msub><mi>y</mi><mi>i</mi></msub><mo>&prime;</mo></msup><mo>=</mo><munderover><mo>&Sigma;</mo><mrow><mi>j</mi><mo>=</mo><mn>1</mn></mrow><mi>f</mi></munderover><msup><msub><mi>g</mi><mrow><mi>j</mi><mi>i</mi></mrow></msub><mo>&prime;</mo></msup><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>10</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001111280390000043.GIF" wi="566" he="142" /></maths>按照公式(10)求取的y<sub>1</sub>′、y<sub>2</sub>′、…、y<sub>m</sub>′组成集合:Y<sub>find</sub>={y<sub>1</sub>′,y<sub>2</sub>′,...,y<sub>m</sub>′},集合Y<sub>find</sub>中元素y<sub>i</sub>′的数值越大,说明其是故障原因y<sub>i</sub>的可能性越大;元素y<sub>i</sub>′的数值越小,说明其是故障原因y<sub>i</sub>的可能性越小;f‑11).视为新增故障,如案例库中没有匹配案例,采用新增故障诊断的方法进行诊断,得出故障原因。
地址 250014 山东省济南市历下区科院路19号山东省计算中心