張坤洋 黃民
(北京信息科技大學,北京 100192)
刀具磨損在線監測的嵌入式系統
張坤洋 黃民
(北京信息科技大學,北京 100192)
隨著當代機械工業的發展,機械加工對精度的要求越來越高,高精度的同時也對高自動化,高智能提出了要求。刀具磨損在線監測的嵌入式儀器也就伴隨著市場需求應運而生。聲發射是刀具磨損在線監測的一種新的方法。它包括AE信號的采集,小波包分析、結果顯示等。本文在聲發射方法的基礎上,研究開發了刀具磨損的在線監測嵌入式系統。
機電電子 嵌入式 聲發射 刀具磨損
刀具磨損是在任何的冷加工中都不可避免會出現的問題,這種磨損必然會影響加工精度,而隨著加工工件的精度要求不斷提升,需要把這種影響降低到盡量低的程度。刀具磨損的在線監測系統提供了可行的方法。從算法上來說,這種磨損監測系統包括直接對刀具測量或通過提取加工信號判斷刀具的磨損量。前者會導致刀具頻繁的的裝夾,影響工作效率。后者即間接監測包括切削力測量法、電流測量法、聲發射測量法、振動測量法等。
在眾多的間接型的在線監測方法中,聲發射的方法因為其高頻特性而發展速度比較快。因為聲發射信號的信號頻率較高,從而能夠很好的濾除大部分的低頻的干擾信號,能夠為后續的信號處理提供很純凈的信號源。另外,聲發射信號提取的傳感器安裝條件要求不高,不會對加工過程產生很大的干擾。但是它對聲發射信號對安裝位置的敏感度比較大,不同的安裝位置可能對提取到的聲發射信號的幅值影響很大。
聲發射檢測技術是利用聲發射傳感器接受被加工材料中的應力集中源瞬間釋放的彈性波來判斷刀具的磨損狀態的一種無損檢測方法。其實驗模型如圖1所示。
信號處理的方法主要分為:時域分析法、頻域分析法、時頻域分析法。在信號的時域分析中,能夠計算信號的均值、均方值以及概率密度函數等。在本次試驗中,通過選取對刀具磨損反應比較敏感的特征值與刀具在沒有磨損狀態下的信號進行比對,可以判斷刀具是否磨損、磨損處于那個階段。信號的頻域分析包括對信號的幅值譜、相位譜、功率譜等進行分析。

圖1
對刀具磨損在線監測的研究有很多,算法也有多種多樣。比如功率檢測的方法、振動信號的方法。但這些方法很少有做成嵌入式的設備,因此這一領域的研究在國內還沒有真正的轉化成生產力。開發故障診斷的嵌入式設備,基本要素分為三大部分:信號采集、數據處理、結果顯示。在本次的嵌入式研究中,由于最終設備可能要對加工系統采集電流、振動、聲發射等不同的信號進行處理,而每種信號的采樣頻率和數據分析方法又不一樣,這樣就需要完全不同的AD設備驅動和算法程序。基于此,本實驗引入基于2440的linux嵌入式操作系統,從而避開了裸機程序功能單一的缺陷。對操作系統的移植就不做過多的論述。
在嵌入式開發中,故障診斷的最初始要考慮的就是信號的提取.聲發射一般的采樣頻率在0.5M~2M之間。本實驗使用ARM9的2440作為設備的開發板,采樣頻率設置在0.5MHz。ARM9的2440采用8通道的10位AD轉換器,參考電壓3.3V。當外圍總線時鐘PCLK為50MHz時,設定預分頻值49,則10位轉換器的轉換時間如下:
A/D轉換器頻率=50MHz/(49+1)=1MHz
轉換時間=1/(1MHz/5)=5us
因此,當A/D轉換器被設置在最高工作時鐘2.5MHz下時,轉換率可以達到500KSPS。在這一個階段,最主要的就是A/D驅動的編寫。因為本實驗融入了操作系統,不像裸機程序那樣只是簡單的配置A/D轉換器的控制寄存器而已。在A/D的驅動程序中,主要包含以下幾個大塊:
3.1.1 ADC的初始化

3.1.2 設備文件的操作

在這個結構體中,指定了A/D設備的打開、關閉、讀操作等函數,這些函數在驅動程序中都要一一實現。
3.1.3 模塊初始化和退出函數
static int __init adc_init(void){}:模塊初始化函數,它在模塊加載時被調用一次,函數體中包括了設備號的注冊、初始化字符設備、ADC的初始化等。static void __exit adc_exit(void){}:這個是模塊退出函數,在模塊卸載的時候被調用一次。在數據采集過程中,對數據的保存十分重要,因為聲發射是在高頻率下采集信號,這對讀信號的程序執行速率要求十分嚴格,要確保數據采集期間的信號被完全讀取。
驅動程序編寫完成后,在PC機上調試通過并模擬運行,得出的模擬結果與PC機的Matlab運算結果相同,程序編寫成功后,把它編譯進操作系統核中或者作為一個模塊編譯進文件系統中。
在這個環節,對提取到的信號進行FFT分析,得到的結果即為信號的頻譜。非周期離散信號的頻譜是連續的周期譜,周期和無限這兩個特點在數字信號處理中是無法應對的。而DFT的直接運算又涉及到大量的復數乘法和加法運算。快速傅里葉變換有效的解決了運算量過大的問題。其計算原理如下:
長度為N的數據序列(原始信號x(n))的DFT定義如下:

其中
在DFT的有效算法FFT中,利用了的對稱性和周期性:

這樣就大量減少了直接DFT的運算量,為信號分析節省了大量的時間,使數據的實時處理成為可能。
本實驗中的FFT程序主要包括兩部分:
3.2.1 原始數據的排序
這是因為在基2FFT算法中,要對信號進行奇偶排序。以下是對信號排序的C程序:

其中N為信號的點數,也即為FFT的點數,f[]中保存的是信號的時域內的值。
3.2.2 排序后的數值計算
本程序采用的是原位計算,即只使用N個寄存器或者是存儲單位就能計算出長度為N的序列的FFT值,這樣就不用開辟大量的存儲區間來保存運算的中間值。其程序如下:

在FFT計算的主程序中,要把以上兩個重要部分涵蓋進去,確保運算結果得以存儲(注意這里的保存只是保存到RAM區),用作下一步的結果顯示的輸入。在數據處理部分,要對采集到的數據做時間上間斷的處理。因為FFT運算是一項計算量很大的工程,即使是計算機也不能實時地把A/D模塊以50萬Hz頻率采到的數做完全的分析。
在結果顯示階段,要使用到液晶顯示屏,所以首先要把LCD驅動編譯進Linux核中。在這一部分,使用QT圖形庫可以簡化圖形顯示程序:


在以上的程序中,只是構造了一個窗口,與這些窗口中按鈕信號連接的槽函數在FFT.cpp文件中實現:#include <QLabel>

(把3.2所提到的”數據計算”部分寫進一個按鈕的槽的實現函數)

致此,一個聲發射監測刀具磨損的嵌入式設備基本搭建完畢。這樣的一套設備基本能實現聲發射信號的在線分析,并能從圖像顯示部分直觀的觀察到聲發射信號在頻域上能量的變化。同時,由于圖像每隔兩秒便更新顯示,能夠很好地實現“實時”功能。
本文主要研究了用聲發射法監測刀具磨損的數學原理和設備的物理實現。采用算法分析和實驗相結合的方法。這項實驗研究表明,隨著計算機硬件技術不斷進步,在不斷地完善算法的基礎上,很多故障診斷數學原理的算法模型完全可以開發成為在線監測的嵌入式設備并不斷地應用到工業生產中。然而,本實驗由于受硬件設備的限制,這套嵌入式儀器只能在0.5MHz的頻率下采集信號。另外,以上的數據處理部分,只是對采集到的信號進行的頻譜圖像顯示,并沒有涉及到模式識別階段。
[1]姚天任.數字信號處理[M].北京:清華大學出版社,2012,125-144.
[2]John G.Proakis,Dimiyris G.Manolakis. Digital Signal Processing[M].北京:電子工業出版社,2004,327-379.
[3]胡江林,張少文,李亮.基于聲發射技術監測刀具磨損的研究[D].南京:南京航空航天大學,2012,1-5.
[4]王彬,于丹,汪洋.MATLAB數字信號處理[M].北京:機械工業出版社,2010,38-51.
[5]范世貴,郭婷.信號與系統[M].西安:西北工業大學出版社,2011,243-268.
[6]孟慶洪,候寶穩.ARM嵌入式系統開發與編程[M].北京:清華大學出版社,2011,314-348.
[7]何永琪,楊紅濤,焦悅光,戴無懼.嵌入式Linux系統實用開發[M].北京:電子工業出版社,2010,390-526.
[8]商斌.Linux設備驅動開發入門與編程實踐[M].北京:電子工業出版社,2009,271-281.
張坤洋(1990—),河南西平人,碩士,研究方向:故障診斷。
科技重大專項:高檔數控機床與基礎制造裝備,課題編號:2013ZX04011-012.