魏 娟,張志杰,趙晨陽,李巖峰
(中北大學(xué)儀器科學(xué)與動(dòng)態(tài)測試教育部重點(diǎn)實(shí)驗(yàn)室,太原 030051)
一定當(dāng)量的炸藥引爆后,能在極短的時(shí)間內(nèi)釋放出大量的能量,產(chǎn)生高溫,同時(shí)釋放大量氣體,向周圍介質(zhì)施加高壓,接著高壓氣浪繼續(xù)向外膨脹并壓縮周圍空氣介質(zhì),使其壓力、密度、溫度等物理量發(fā)生突躍式變化,從而形成沖擊波[1-2]。沖擊波的超壓峰值、正壓作用時(shí)間和比沖量是估計(jì)炸藥毀傷效果的主要參數(shù)[3]。
試驗(yàn)中通常利用沖擊波存儲(chǔ)測試系統(tǒng)對(duì)沖擊波信號(hào)直接進(jìn)行采集,但系統(tǒng)中的壓力傳感器動(dòng)態(tài)響應(yīng)特性不能滿足測試系統(tǒng)的需求,有效帶寬不能覆蓋信號(hào)的頻譜。在沖擊波信號(hào)的陡峭前沿的激勵(lì)下,在諧振頻率點(diǎn)附近信號(hào)的幅值大幅度增加,測試數(shù)據(jù)出現(xiàn)激烈震蕩,進(jìn)而產(chǎn)生較大的動(dòng)態(tài)誤差,影響測試精度[4-6]。因此需要對(duì)壓力傳感器及測試系統(tǒng)的動(dòng)態(tài)特性進(jìn)行補(bǔ)償,提高傳感器的響應(yīng)速度、降低超調(diào)量、擴(kuò)寬工作頻帶以達(dá)到動(dòng)態(tài)測試需求[7]。
在實(shí)際測量中,被測信號(hào)總是不斷變化的,通過測試系統(tǒng)傳感器的輸出結(jié)果來獲取、估計(jì)被測信號(hào),這就要求傳感器能夠?qū)崟r(shí)地、無失真地跟蹤被測信號(hào)的變化過程,因此需要研究傳感器的動(dòng)態(tài)響應(yīng)特性[8]。傳感器的動(dòng)態(tài)特性是指傳感器對(duì)隨時(shí)間變化的輸入量的響應(yīng)特性。動(dòng)態(tài)特性好的傳感器,其輸入量隨時(shí)間變化的曲線與被測量隨同一時(shí)間變化的曲線一致或近似[9]。實(shí)際動(dòng)態(tài)校準(zhǔn)系統(tǒng)中,根據(jù)“標(biāo)準(zhǔn)”輸入信號(hào),觀測傳感器的響應(yīng)信號(hào)來估計(jì)傳感器的響應(yīng)特性。
傳感器動(dòng)態(tài)特性補(bǔ)償?shù)哪康氖鞘箓鞲衅鞯挠行Чぷ黝l帶能夠包含被測信號(hào)的所有頻譜分量,進(jìn)而滿足動(dòng)態(tài)測試需求。本文采用逆向?yàn)V波的方式(如圖1),在傳感器系統(tǒng)后接補(bǔ)償濾波器,達(dá)到擴(kuò)寬頻帶的目的。根據(jù)QR分解估計(jì)逆向?yàn)V波器模型的階數(shù),改進(jìn)粒子群(PSO)算法估計(jì)濾波器系數(shù),從而得到濾波器傳遞函數(shù)。將所得到的濾波器進(jìn)行硬件實(shí)現(xiàn),用于實(shí)際沖擊波測試中,達(dá)到實(shí)時(shí)動(dòng)態(tài)補(bǔ)償目的。

圖1 動(dòng)態(tài)補(bǔ)償原理框圖
動(dòng)態(tài)補(bǔ)償濾波器的模型估計(jì)首先需辨識(shí)模型階數(shù)。壓力傳感器系統(tǒng)一般等效為二階系統(tǒng),但在試驗(yàn)或?qū)嶒?yàn)中,由于輸入信號(hào)的激勵(lì)作用,它的輸出信號(hào)在諧振點(diǎn)處容易發(fā)生震蕩[10],引入了動(dòng)態(tài)誤差。因此以二階系統(tǒng)作為補(bǔ)償模型的最終估計(jì)偏差較大。
本文以激波管產(chǎn)生的階躍信號(hào)作為“標(biāo)準(zhǔn)”輸入信號(hào),對(duì)被校準(zhǔn)傳感器進(jìn)行激勵(lì),由采集電路獲取響應(yīng)數(shù)據(jù)并進(jìn)行處理,得到建模所用樣本數(shù)據(jù)。對(duì)樣本數(shù)據(jù)進(jìn)行QR分解,求取殘差平方和,判別最優(yōu)階數(shù)。構(gòu)建實(shí)驗(yàn)數(shù)據(jù)矩陣D={(u(k),y(k))|k=1,2,…,N}

式中:v為待檢驗(yàn)的階數(shù),N為數(shù)據(jù)長度,對(duì)矩陣進(jìn)行QR分解,可以得到

R′是一個(gè)m×m維的上三角方陣。計(jì)算R′陣對(duì)角線偶元素平方和數(shù)值即為各階差分方程模型對(duì)應(yīng)于最小二乘法估計(jì)的殘差平方和[11]。通過比較各階模型殘差平方和的大小,確定補(bǔ)償模型適合的階數(shù)。
濾波器的系數(shù)由改進(jìn)粒子群(PSO)算法得到,粒子群算法是一種基于群體智能的全局優(yōu)化計(jì)算技術(shù),具有高精度的穩(wěn)定性、并行性和全局搜索能力。在此算法中,每個(gè)粒子通過不斷更正空間方位在D維空間中尋找最佳方案。每個(gè)粒子搜尋過程如圖2所示。

圖2 粒子搜尋過程示意圖
每個(gè)粒子都有獨(dú)立的位置Xi=(xi1,xi2,…,xiD)和速度Vi=(vi1,vi2,…,viD),并且這兩個(gè)因素隨時(shí)間和空間不斷變化,各個(gè)粒子按照式(1)(2)更新其速度和位置[12]。
vid(n+1)=wvid(n)+c1r1d(n)(pid-xid(n))
+c2r2d(n)(pgd-xid(n))
(1)
xid(n+1)=xid(n)+vid(n+1)
(2)
式中:w為慣性權(quán),c1,c2為加速系數(shù),r1d,r2d為在[0,1]內(nèi)均勻分布的隨機(jī)數(shù),n為當(dāng)前迭代次數(shù)。選擇合適的慣性權(quán)值w使全局和局部搜索之間達(dá)到動(dòng)態(tài)平衡后,能夠具有較快的收斂速度[13],故本文中選取線性遞減權(quán)值(LDIW)策略,慣性權(quán)值按照式(3)進(jìn)行更新:
(3)
式中:M為最大允許迭代次數(shù),i為當(dāng)前的迭代次數(shù)。
計(jì)算各個(gè)粒子的適應(yīng)值與當(dāng)前最優(yōu)位置的適應(yīng)值進(jìn)行比較,根據(jù)適應(yīng)度函數(shù)的運(yùn)算結(jié)果,在D維空間中不斷更新自己的最優(yōu)位置Pbest=(pi1,pi2,…,piD)和全局最優(yōu)位置Pg=(pg1,pg2,…,pgD)。本文中適應(yīng)度函數(shù)(式4)采用均方誤差值進(jìn)行比較,具體的優(yōu)化流程如圖3所示。
(4)
式中:yi為預(yù)測值,ki是理想輸出,N為樣本數(shù)目。

圖3 改進(jìn)粒子群算法優(yōu)化過程
本文建模所用的實(shí)驗(yàn)樣本數(shù)據(jù)采樣率為2M,選取6 000個(gè)點(diǎn)和“理想”階躍信號(hào)構(gòu)建逆濾波模型,辨識(shí)逆向?yàn)V波器的階數(shù)和系數(shù)。圖4為殘差平方和隨階數(shù)變化示意圖,從圖中可以明顯看出殘差平方和在2階之后明顯下降,結(jié)合硬件的實(shí)現(xiàn)難易程度考慮選取6階。

圖4 殘差平方和隨階數(shù)變化示意圖

圖5 補(bǔ)償前后信號(hào)對(duì)比圖
在補(bǔ)償濾波器階數(shù)確定之后,將粒子群訓(xùn)練次數(shù)設(shè)置為4 000次,初始粒子群個(gè)數(shù)為40個(gè),數(shù)據(jù)采樣頻率為2M,長度為6 000個(gè)點(diǎn),wstart=0.95,wend=0.4,進(jìn)行訓(xùn)練,得到補(bǔ)償濾波器的傳遞函數(shù)H(z)和補(bǔ)償前后信號(hào)對(duì)比圖,如圖5所示。從圖5可明顯看出補(bǔ)償后信號(hào)的超調(diào)量降到5%左右,上升時(shí)間3 μs,平臺(tái)壓力穩(wěn)定,補(bǔ)償效果良好。
H(z)=(0.214 8+0.392 2z-1+0.094 1z-2+0.375 0z-3+
0.205 1z-4+0.147 4z-5)/(2-0.320 3z-1-0.157 1z-2+
0.860 6z-3-0.357 4z-4-0.598 6z-5)
補(bǔ)償濾波器為IIR遞歸模型,這樣的結(jié)構(gòu)在硬件實(shí)現(xiàn)過程中,需要考慮有限字長效應(yīng),保證量化后的系統(tǒng)極點(diǎn)都位于單位圓內(nèi),滿足設(shè)計(jì)的穩(wěn)定性[14-15]。
數(shù)字濾波器量化精度的設(shè)計(jì)很大程度上決定了濾波器的性能指標(biāo)。理論上,數(shù)字濾波器的系數(shù)應(yīng)當(dāng)采用無限精度來表示,但實(shí)際中用硬件來實(shí)現(xiàn),將系數(shù)量化成有限位數(shù),將引起濾波器頻率特性的改變,甚至導(dǎo)致濾波器的不穩(wěn)定[16]。從量化角度考慮,系數(shù)的位數(shù)可以選擇足夠大來保證系統(tǒng)的穩(wěn)定性,但由于硬件條件的約束,系數(shù)位數(shù)不可能太大,需要通過仿真確定濾波器系數(shù)字長。此處將得到的系數(shù)統(tǒng)一量化以滿足后續(xù)計(jì)算要求,且保持系統(tǒng)的穩(wěn)定性。
本文將不同的系數(shù)量化位數(shù)和輸出量化位數(shù)進(jìn)行比較,從圖6、圖7可以看出,系數(shù)及運(yùn)算字長均會(huì)對(duì)濾波器的性能產(chǎn)生影響,綜合考慮資源占用率和數(shù)據(jù)精度,本文選取12 bit系數(shù),16 bit輸出量化來滿足數(shù)字濾波器的濾波效果以及頻響穩(wěn)定性。

圖6 IIR濾波器系數(shù)有限字長效應(yīng)

圖7 IIR濾波器輸出數(shù)據(jù)有限字長效應(yīng)
根據(jù)已知,動(dòng)態(tài)補(bǔ)償濾波器的離散傳遞函數(shù)為
(5)
b0y(m)+b1y(m-1)+…+bny(m-n)=a0x(m)+
a1x(m-1)+…+anx(m-n)
(6)
因IIR濾波器具有反饋結(jié)構(gòu),在實(shí)現(xiàn)零點(diǎn)系數(shù)及極點(diǎn)系數(shù)的運(yùn)算時(shí),應(yīng)嚴(yán)格滿足時(shí)序要求,這一結(jié)構(gòu)特點(diǎn)限制了系統(tǒng)的實(shí)現(xiàn)速度[17]。為了提高系統(tǒng)的運(yùn)行速度,零極點(diǎn)系數(shù)的運(yùn)算采用全并行結(jié)構(gòu),采用移位相加法實(shí)現(xiàn)常系數(shù)乘法運(yùn)算。傳遞函數(shù)H(z)可看成由兩個(gè)FIR型濾波器構(gòu)成,即式(7)、式(8)中的零點(diǎn)部分(zero parallel)和極點(diǎn)部分(pole parallel)兩個(gè)部分。
Zero(n)=a0x(m)+a1x(m-1)+…+anx(m-n)
(7)
Pole(n)=b1y(m-1)+…+bny(m-n)
(8)
b0y(m)=Zero(n)-Pole(n)=Ysum
(9)
式(7)、式(8)中:延遲數(shù)據(jù)y(m-n)和z(m-n)用寄存器保存,與常系數(shù)an和bn的乘法運(yùn)算用左移替代,即將常系數(shù)分解成多個(gè)2的N次冪數(shù)相加的形式,將乘法轉(zhuǎn)換為移位及加法操作。同時(shí)用移位運(yùn)算替代式(9)中除b0操作(此處量化后的b0=1 024,故通過右移10位來實(shí)現(xiàn)),得到當(dāng)前時(shí)刻的輸出值z(mì)(m)。
整個(gè)IIR濾波器的閉環(huán)求取過程只在求取Zsum的減法器,以及移位運(yùn)算來實(shí)現(xiàn)除法運(yùn)算的過程中完成。濾波器在求取Zero(n)和Pole(n)、Zsum信號(hào)的過程中通過增加寄存器字長來實(shí)現(xiàn)全精度運(yùn)算,出現(xiàn)運(yùn)算誤差的環(huán)節(jié)只存在于除法運(yùn)算(即z(m)的求取),此處通過仿真確定輸出數(shù)據(jù)位數(shù)精度,減小對(duì)輸出結(jié)果的影響。
將建模所用的實(shí)測數(shù)據(jù)保存成12位的二進(jìn)制文本作為測試文件的輸入信號(hào),用文件IO函數(shù)讀取,并保存輸出數(shù)據(jù)(數(shù)據(jù)長度16位的txt文件)。用MATLAB分析理想輸出數(shù)據(jù)和仿真數(shù)據(jù)曲線,可知擬合效果良好。
仿真圖8中,當(dāng)rst復(fù)位信號(hào)無效,clk時(shí)鐘信號(hào)為上升沿開始采樣,din[11:0](AD采集到的傳感器數(shù)字信號(hào))給xin[12:0]賦值。xin_reg[5:0]是零點(diǎn)部分Zero(n)輸入信號(hào)寄存器,將輸入信號(hào)xin[12:0]依次延遲保存下來。mult_reg[5:0]用來保存aix(m-i)值,xout[30:0]是零點(diǎn)部分計(jì)算結(jié)果Zero(n)。極點(diǎn)部分pole(n)同理,yin[15:0]保存最終計(jì)算結(jié)果y(m)。

圖8 IIR濾波器仿真圖
沖擊波測試系統(tǒng)的電路設(shè)計(jì)框圖如圖9所示,在激勵(lì)信號(hào)的作用下,傳感器將測試信號(hào)轉(zhuǎn)換成電壓信號(hào),通過調(diào)理信號(hào)電路進(jìn)行濾波和放大,將輸入信號(hào)的電平控制在A/D的測試范圍內(nèi),在FPGA的控制下,A/D量化后的數(shù)據(jù)流經(jīng)過補(bǔ)償濾波器的處理,其結(jié)果保存到存儲(chǔ)器SDRAM中,通過USB接口和上位機(jī)(Labview平臺(tái)),讀取處理后的有效信號(hào),進(jìn)行下一步的效應(yīng)分析。

圖9 設(shè)計(jì)框圖
用激波管對(duì)所設(shè)計(jì)的濾波器模型進(jìn)行重復(fù)性動(dòng)態(tài)測試,并對(duì)輸出的二進(jìn)制文件讀取和分析得到對(duì)比圖,如圖10所示,得到補(bǔ)償前后的動(dòng)態(tài)參數(shù)值,如表1所示。可明顯看出,該方法補(bǔ)償效果明顯,動(dòng)態(tài)參數(shù)改善明顯,能為實(shí)際沖擊波測試提供準(zhǔn)確數(shù)據(jù)。

圖10 補(bǔ)償前后信號(hào)對(duì)比圖

表1 動(dòng)態(tài)補(bǔ)償前后參數(shù)對(duì)比
從實(shí)驗(yàn)結(jié)果可以看出,該補(bǔ)償系統(tǒng)提高了系統(tǒng)的響應(yīng)時(shí)間,降低了超調(diào)量,同時(shí)衰減度也近似約等于1,滿足系統(tǒng)穩(wěn)定性的要求,同時(shí)提高了系統(tǒng)的有效帶寬。從圖11中可看出測試系統(tǒng)由補(bǔ)償前87.1 kHz擴(kuò)展到172.4 kHz,滿足沖擊波有效帶寬100 kHz(±3 dB)的要求,高頻處的噪聲影響沒有放大,也減小了諧振點(diǎn)對(duì)輸出信號(hào)的影響,動(dòng)態(tài)特性補(bǔ)償效果明顯,滿足實(shí)際測試沖擊波的要求。

圖11 補(bǔ)償前后幅頻特性圖
基于傳感器動(dòng)態(tài)補(bǔ)償原理,利用激波管實(shí)驗(yàn)數(shù)據(jù),結(jié)合QR分解和改進(jìn)粒子群算法,設(shè)計(jì)了動(dòng)態(tài)補(bǔ)償濾波器。根據(jù)仿真結(jié)果可以看出,該補(bǔ)償模型很好地修正了由于傳感器有效帶寬不足引起的動(dòng)態(tài)誤差。在考慮數(shù)字濾波器的有限字長效應(yīng)的基礎(chǔ)上,選取合適的系數(shù)和輸出位數(shù),同時(shí)補(bǔ)償濾波器硬件實(shí)現(xiàn)采用全并行單反饋結(jié)構(gòu),避免了設(shè)計(jì)復(fù)雜的反饋電路,保證運(yùn)算精度的同時(shí)提高了運(yùn)算速度,實(shí)現(xiàn)了對(duì)傳感器動(dòng)態(tài)誤差實(shí)時(shí)修正的目的。實(shí)驗(yàn)結(jié)果表明,該濾波器補(bǔ)償效果明顯且切實(shí)可行。
參考文獻(xiàn):
[1] 何志文. 沖擊波超壓測試系統(tǒng)動(dòng)態(tài)特性研究[D]. 太原:中北大學(xué),2014.
[2] 劉一江,孟立凡,張志杰,等. 沖擊波測試系統(tǒng)中傳感器動(dòng)態(tài)補(bǔ)償裝置[J]. 傳感技術(shù)學(xué)報(bào),2012,(11):1516-1521.
[3] 童曉. 爆炸場沖擊波壓力測量及數(shù)據(jù)處理方法研究[D]. 南京:南京理工大學(xué),2015.
[4] 賴富文,張志杰,張建宇,等. 基于動(dòng)態(tài)特性補(bǔ)償?shù)臎_擊波測試數(shù)據(jù)處理方法[J]. 爆炸與沖擊,2015(6):871-875.
[5] 佘天莉. 測振傳感器的動(dòng)態(tài)特性補(bǔ)償研究[D]. 中國地震局工程力學(xué)研究所,2006.
[6] 李悅,鐘新躍. 一種傳感器動(dòng)態(tài)誤差實(shí)時(shí)修正方法及其FPGA實(shí)現(xiàn)[J]. 核電子學(xué)與探測技術(shù),2012(9):1112-1116.
[7] 吳健,張志杰,王文廉. 傳感器動(dòng)態(tài)誤差高速并行修正方法及其FPGA實(shí)現(xiàn)[J]. 傳感技術(shù)學(xué)報(bào),2012,25(1):67-71.
[8] Rivera-Mejía J,Villafuerte-Arroyo J E,Vega-Pineda J,et al. Comparison of Compensation Algorithms for Smart Sensors with Approach to Real-Time or Dynamic Applications[J]. IEEE Sensors Journal,2015,15(12):7071-7080.
[9] 張海龍,劉一江,馬鐵華,等. 基于DSP和IIR的傳感器動(dòng)態(tài)特性改善單元[J]. 傳感技術(shù)學(xué)報(bào),2013,26(9):1254-1257.
[10] 軒春青,軒志偉,陳保立. 基于最小二乘與粒子群算法的壓力傳感器動(dòng)態(tài)補(bǔ)償方法[J]. 傳感技術(shù)學(xué)報(bào),2014,27(10):1363-1367.
[11] 黃俊欽. 測試系統(tǒng)動(dòng)力學(xué)[M]. 北京:國防工業(yè)出版社,2013:12.
[12] 陳達(dá)榮. 基于粒子群優(yōu)化算法的自適應(yīng)濾波器電路設(shè)計(jì)[D]. 西安:.西安電子科技大學(xué),2013.
[13] 劉楊,田學(xué)鋒,詹志輝. 粒子群優(yōu)化算法慣量權(quán)重控制方法的研究[J]. 南京大學(xué)學(xué)報(bào)(自然科學(xué)版),2011,47(4):364-371.
[14] 羅海. 基于FPGA的高速IIR數(shù)字濾波器設(shè)計(jì)與實(shí)現(xiàn)[D]. 電子科技大學(xué),2007.
[15] 曾菊容. 基于FPGA的IIR數(shù)字濾波器的設(shè)計(jì)與實(shí)現(xiàn)[D]. 西南交通大學(xué),2008.
[16] Wisniewski M,Wcislik M. Digital Equalizer for Data Acquisition Path,Constructed Using IIR Filters[J]. IFAC-Papers on Line,2016,49(25):342-345.
[17] 杜勇.數(shù)字濾波器的MATLAB與FPGA實(shí)現(xiàn)[M]. 北京:電子工業(yè)出版社,2014:8.