王愛輝,王選擇,張瑜燦,尹晉平,翟中生,王浩偉
(1.湖北工業(yè)大學(xué)機械工程學(xué)院,湖北武漢 430070;2.中國特種飛行器研究所,結(jié)構(gòu)腐蝕防護與控制航空科技重點實驗室,湖北荊門 448035)
汽車發(fā)動機轉(zhuǎn)速是評定發(fā)動機性能的重要指標(biāo)之一,通過外在手段快速測量轉(zhuǎn)速對于汽車的生產(chǎn)與維修具有重要的意義[1-2]。在汽車外檢等工程場景下,傳統(tǒng)的汽車發(fā)動機轉(zhuǎn)速測量需要在發(fā)動機轉(zhuǎn)軸相關(guān)位置安裝傳感器,操作復(fù)雜,檢測不便[3-6],因此,需要一種便攜、高效、簡易的測量方法,而利用發(fā)動機的外部振動信號間接測量汽車發(fā)動機轉(zhuǎn)速可以有效克服上述缺點。
汽車發(fā)動機轉(zhuǎn)速與振動頻率有一定的對應(yīng)關(guān)系,因此轉(zhuǎn)速測量的問題可以轉(zhuǎn)化為振動頻率分析的問題。實現(xiàn)對振動信號主頻頻率的準(zhǔn)確估計,即可滿足發(fā)動機轉(zhuǎn)速測量的要求[7-8]。
然而,發(fā)動機振動信號包含了大量的噪聲信號與諧波信號,給主頻的計算帶來一定困難,對此,國內(nèi)外許多學(xué)者進行了相關(guān)的研究,提出了諸多計算主頻的方法。徐建等[9]提出一種基于單點虛擬振動功率的頻率測量方法,引入PD指數(shù)因子自適應(yīng)濾波,能夠有效測量發(fā)動機振動主頻,但基于轉(zhuǎn)速單點虛擬振動功率的擬合關(guān)系測量發(fā)動機轉(zhuǎn)速,需要測量前對待測發(fā)動機進行擬合,通用性不高。張帥等[10]利用三次自相關(guān)計算發(fā)動機每缸之間的時間差,移窗得到轉(zhuǎn)速—時間曲線測量,通過小波消除基線漂移后,有效地提高了測量的精度。X. Shan等[11]提出振動信號與聲音信號相結(jié)合的算法,通過提取2種不同的信號,互相關(guān)算法消除各自的噪聲干擾,頻率分析計算出主頻,提高了測量穩(wěn)定性。但是,現(xiàn)有的測量算法缺少對發(fā)動機缸數(shù)的識別,需預(yù)知發(fā)動機的缸數(shù),才能計算發(fā)動機的轉(zhuǎn)速,智能化程度低。
為此,本文提出一種基于移動正弦擬合的轉(zhuǎn)速測量與缸數(shù)識別方法。通過截取一段時間的振動信號,首先進行FFT分析,粗略估計主頻頻率的大小;然后利用估計的主頻頻率計算1個取整的周期長度,以該周期長度作為正弦擬合的周期對振動信號進行移動擬合,一方面得到各點的擬合值,另一方面得到被擬合點的相位信息;基于擬合后的相位信息,通過解包裹算法的處理,得到精確的主頻頻率;然后以精確的主頻頻率為基礎(chǔ),對各點的擬合值進行平差處理,識別發(fā)動機的缸數(shù);最后,根據(jù)轉(zhuǎn)速與主頻、缸數(shù)的數(shù)學(xué)關(guān)系,計算得到發(fā)動機轉(zhuǎn)速。
當(dāng)發(fā)動機工作的時候,發(fā)動機曲軸上的激勵載荷主要來自汽缸內(nèi)的驅(qū)動力和運動部件往復(fù)運動的慣性力,其共同導(dǎo)致發(fā)動機外殼的規(guī)律性振動,分別表現(xiàn)為主頻信號和諧波信號。從發(fā)動機曲軸的動力學(xué)分析可知,由于四沖程發(fā)動機每次點火曲軸旋轉(zhuǎn)2圈,曲軸轉(zhuǎn)速與發(fā)動機振動主頻之間呈τ/2的關(guān)系,其中τ為發(fā)動機汽缸個數(shù)。數(shù)學(xué)表達為
(1)
式中:r為曲軸轉(zhuǎn)速;τ為汽缸個數(shù);f0為振動主頻;s為發(fā)動機沖程數(shù)。
由于測量振動時,加速度計傳感器安裝在發(fā)動機某一部位,傳感器與不同汽缸的距離不同,其測得的振動信號能量也不相同。以常見的四缸四沖程發(fā)動機為例,如圖1所示,當(dāng)傳感器安裝于發(fā)動機外殼某一部位時,與缸1相隔較近,缸1做功產(chǎn)生的振動較大,傳感器信號幅值相應(yīng)較大。缸2和缸4產(chǎn)生的信號幅值次之,缸3最小。
圖1 四缸四沖程發(fā)動機工作示意圖
圖2為傳感器采樣某四缸四沖程發(fā)動機的采樣結(jié)果,采樣1 s數(shù)據(jù)量m為5 000。從圖中可以看出信號中含有幅值變化的振動信息,而且雖然信號中伴隨著較大的高頻噪聲,但相鄰2個發(fā)動機工作周期(圖中括號段)內(nèi)表現(xiàn)高度相似性。
圖2 發(fā)動機振動信號
FFT常用于交流信號的頻譜分析,但是在非整周期信號有限采樣時間內(nèi),其精度不足。例如,對于采樣周期為1 s的振動信號,FFT的分辨率為1 Hz,若待測車輛為四缸四沖程,則對應(yīng)的轉(zhuǎn)速分辨率為30 r/min,難以滿足轉(zhuǎn)速測量的要求??紤]到相位差法處理短時非整周期采樣信號,具有更高的精度[12],本文提出通過移動正弦擬合得到信號的相位信息,再根據(jù)相位差精確計算信號主頻的方法。
采用移動正弦擬合的方法精確計算振動信號的主頻,需要首先確定一個與主頻長度接近的整數(shù)值作為擬合的周期長度,再根據(jù)這個周期長度對振動信號進行分段逐點擬合。
2.1.1 線性正弦擬合方法
幅值與直流偏置均為常數(shù)的單頻正弦信號,一段時間內(nèi)的離散采樣序列yi={y0,y1,y2,…,yn-1},可以表達為
yi=Acos(i·Δ+φ0)+c+εi,i=0,1,2,…,n-1
(2)
式中:Δ為采樣間隔相位;假設(shè)信號周期為k,則k=2π/Δ;εi為采樣信號噪聲誤差;A、φ0和c分別為幅值、信號初始相位和直流偏置。
為了運用線性最小二乘擬合直接得到參數(shù)A、φ0、c的大小,令a=Acosφ0,b=-Asinφ0,式(2)展開為
(3)
式中:
(4)
式中atan2(b,a)表示四象限反正切值。
進一步,根據(jù)擬合算法可得:
(5)
式中:
(6)
(7)
通過求解式(5),計算出參數(shù)a、b、c的值,并根據(jù)式(4)確定該序列的初相位。
若確定的周期長度k為整數(shù),且被擬合序列長度n為k的整數(shù)倍時,矩陣B可以簡化為:
(8)
實際上,在后面的移動擬合過程中,一般直接取n=k,進行單周期的移動擬合。
2.1.2 周期長度的確定方法
在線性正弦擬合中,要求首先確定周期長度,且離散序列周期長度一定為整數(shù)值。若周期長度未知或不滿足整數(shù)的情況下,實際采用的擬合長度越接近周期長度,擬合結(jié)果誤差越小。
為此,這里擬合周期長度采用如下方案確定:首先對原始采樣信號進行FFT運算,找到幅值譜的主峰值點對應(yīng)的位置點,然后根據(jù)主頻信號周期長度與峰值點位置Pm、采樣信號長度m的關(guān)系,得到估計的周期長度k=m/Pm。
對圖2中5 000個點進行FFT,頻譜圖見圖3。由圖3可知,幅值譜的主峰值點對應(yīng)的位置點Pm=26 Hz,通過Pm估算擬合周期長度k=192點,滿足k接近主頻周期且為整數(shù)的要求。值得說明的是,在非整周期采樣下,Pm位置點代表的頻率與實際主頻頻率存在較大的誤差[13],所以精確計算頻率需要采用進一步的算法設(shè)計。
圖3 FFT頻譜圖
由上述推導(dǎo)可知,正弦擬合可以得到被擬合序列的初相位,移動正弦擬合類似于移動平均,通過分段逐段擬合,得到每段序列的初相位,形成采樣信號上每點的相位信息。
圖4展示了分段逐點的擬合方法,顯示了第x、x+1與x+2次相鄰3次擬合數(shù)據(jù)段的選取方法。重復(fù)的逐段正弦擬合必然導(dǎo)致較大的計算工作量。為此,根據(jù)相鄰2次擬合區(qū)間存在大量重復(fù)數(shù)據(jù),實際參與擬合的數(shù)據(jù)只是首尾2個點不同的特點,為了減少擬合計算量,采用遞推的方法,以降低移動正弦擬合的計算量,提高算法的處理速度。具體公式推導(dǎo)如下。
圖4 移動擬合示意圖
設(shè)已知信號從x點開始的某一組擬合數(shù)據(jù){yx,yx+1,…,yx+k-1}的傳輸矩陣為Yx,則下一組數(shù)據(jù){yx+1,yx+2,…,yx+k}對應(yīng)的傳輸矩陣為Yx+1。在移動擬合過程中,式(5)中B是恒定的,Y的變化受影響,其中:
(9)
(10)
通過數(shù)學(xué)推導(dǎo),可以發(fā)現(xiàn)Yx+1與Yx之間存在如下遞推關(guān)系:
(11)
通過式(11)只需要計算第1組數(shù)據(jù)的Y0值,就可以快速遞推地擬合出整個采樣時間內(nèi)所有的Yx,再根據(jù)式(5)計算相應(yīng)的ax、bx,從而得到各點的相位信息φx:
φx=atan(bx,ax)
(12)
這里被稱為移動擬合相位,它的值被約束在(-π,+π)之間,被稱之為包裹相位。圖5為圖2振動信號的移動擬合相位。
圖5 信號的包裹相位
移動正弦擬合能夠提高測量信號的精度,但是同時信號末端會損失一定的采樣點。使用相位差法計算頻率能夠有效避免損失采樣點導(dǎo)致的精度降低[14]。
相位差法計算頻率的具體步驟如下:
(1)通過包裹相位計算連續(xù)化相位,求解公式為:
(13)
式中Wi為解包裹運算符:
(14)
(2)得到連續(xù)相位后,利用兩點之間的相位差與時間差,計算精確主頻:
(15)
式中:m1、m2分別為同類零點(上升、下降)或同類極點(波峰、波谷)所對應(yīng)的2個位置;Ts為采樣周期。
(16)
由式(1)可知,發(fā)動機轉(zhuǎn)速計算需要預(yù)先已知缸數(shù)。從圖6擬合后的ax值可看出,在發(fā)動機的每個工作周期之間信號表現(xiàn)為高度相似性,而信號相似度越高,相減結(jié)果越接近0,因此利用平差法可以識別工作周期。
(a)原始數(shù)據(jù)
(b)擬合ax、bx圖6 擬合后的ax、bx值
考慮到工作周期為主頻周期的τ倍,τ為發(fā)動機的缸數(shù)。選用主頻周期整數(shù)倍長度作為平差長度進行匹配計算與結(jié)果判斷。
在平差計算中,避免受隨機噪聲與直流漂移干擾的影響,平差計算直接針對移動擬合結(jié)果ax進行數(shù)據(jù)處理,圖6顯示了圖2信號進行移動正弦擬合的ax、bx值。其中,ax、bx相位相差π/2,相對于原始信號,雖然ax損失了一定數(shù)量的采樣點,但是有效提高了信噪比。
平差的步驟如下:
(17)
式中τ為汽缸個數(shù),τ=1,2,3,4…。
(18)
τ取不同值,對圖6中的ax值進行平差法計算的結(jié)果Zi如圖7所示。
(a)τ=1
(b)τ=2
(c)τ=3
(d)τ=4
(e)τ=5
(f)τ=6圖7 平移作差結(jié)果
(3)計算τ值不同時,平差值Zi的方差σ2:
(19)
取σ2最小時所對應(yīng)的τ值作為缸數(shù)。圖7(d)的Zi方差最小,由此可以識別本汽車發(fā)動機為4缸發(fā)動機。將τ與式(15)中計算的精確主頻f0代入式(1),則可以準(zhǔn)確計算出汽車發(fā)動機轉(zhuǎn)速。
為了驗證本方法的精度,使用標(biāo)準(zhǔn)振動儀驗證。振動儀為220 V 50 Hz市電供電,儀器內(nèi)含有2個磁性線圈,振子在2個磁性線圈做周期往復(fù)運動,其振動信號頻率應(yīng)為標(biāo)準(zhǔn)的100 Hz。將型號為Lis344的加速度計傳感器磁性吸附于振動儀工作表面,經(jīng)過信號調(diào)理電路,使用STM32F407單片機的A/D功能進行采集,采樣頻率為5 kHz,采樣周期Ts=0.2 ms,遠高于信號頻率,能夠滿足精度要求。
由于實際發(fā)動機轉(zhuǎn)速測量中,采樣信號的長度不可能恰好為信號的整周期量。為了模擬實際測試中信號非整周期數(shù)據(jù)量的測試條件,對于標(biāo)準(zhǔn)的100 Hz信號,截取T=0.333 s內(nèi)(33.3個信號周期)即1 667個采樣數(shù)據(jù),分別進行FFT與移動正弦擬合分析,對比其計算結(jié)果。
FFT的計算結(jié)果如圖8,由于只截取0.333 s時間內(nèi)的數(shù)據(jù),因此實際頻率應(yīng)為圖示主頻的3倍。由圖可知,在非整周期采樣下,FFT直接計算的主頻頻率為fFFT=34/T=102 Hz,誤差為2%。
圖8 FFT頻譜圖
移動正弦擬合后,信號的相位如圖9,從圖中看出,找到擬合后兩端的上升零點m1、m2,兩點的相位差為203.07 rad,采樣序列差值為1 615,代入式(15)可得f0=100.06 Hz,誤差為0.06%,顯著提高了精度。
圖9 移動正弦擬合得到的相位圖
對發(fā)動機型號為本田L(fēng)15BL四缸四沖程汽油發(fā)動機進行了實際測試,實驗現(xiàn)場如圖10。將Lis344加速度計磁性吸附在發(fā)動機機蓋上,STM32F407單片機A/D采集振動信號,采樣頻率為5 kHz,算法通過單片機實現(xiàn),計算轉(zhuǎn)速并顯示。獲取車載OBD接口輸出值,其值作為實際轉(zhuǎn)速進行對比。
圖10 本田L(fēng)15BL發(fā)動機測試圖
進行發(fā)動機非平穩(wěn)狀態(tài)下的驗證,實驗中空擋滑行模擬汽車正常行駛轉(zhuǎn)速,通過踩油門來控制發(fā)動機的轉(zhuǎn)速。通過多次試驗的結(jié)果分析,得到本算法在非穩(wěn)態(tài)條件下的數(shù)據(jù)記錄如表1,缸數(shù)計算為4缸,計算轉(zhuǎn)速精度達到0.4%,符合轉(zhuǎn)速測量的要求。
表1 實驗記錄
針對傳統(tǒng)汽車發(fā)動機轉(zhuǎn)速測量方法存在的操作復(fù)雜、檢測不便等問題,提出基于振動測量的發(fā)動機轉(zhuǎn)速測量方法。Lis344加速度傳感器采集振動信號,經(jīng)過信號調(diào)理電路轉(zhuǎn)化成適合A/D采集的信號,再用STM32F407單片機進行采集處理。對信號進行一次FFT變換得到粗略的頻率;在此基礎(chǔ)上對信號進行移動正弦擬合,同時得到擬合后的信號與 擬合后的幅值與相位;計算首尾兩點的相位差計算精確的主頻;在得到精確主頻后,利用線性插補的平差法計算發(fā)動機汽缸數(shù);最后,根據(jù)精確的主頻和發(fā)動機汽缸數(shù),精確計算出汽車發(fā)動機的實時轉(zhuǎn)速,整個算法由單片機內(nèi)部資源實現(xiàn)。實驗表明,該方法測量精度相對較高,滿足發(fā)動機轉(zhuǎn)速的振動測量要求。