由磁致伸縮傳感器構(gòu)成的液位測量系統(tǒng)主要包括脈沖激發(fā)、信號檢測、信號濾波及放大、液位計算與輸出、數(shù)據(jù)通信等部分。信號檢測和濾波是磁致伸縮液位傳感器實現(xiàn)高精度測量的關(guān)鍵因素。隨著半導(dǎo)體制作工藝的發(fā)展和計算機體系結(jié)構(gòu)等方面的改進,DSP芯片以其更強的功能、更快的速度、更小的體積和功耗、更低的價格等優(yōu)勢帶來了更多的應(yīng)用思路。利用TMS320F2812實現(xiàn)信號檢測、濾波和液位結(jié)果計算與輸出。
1、磁致伸縮液位傳感器誤差原因與提高精度的方法
磁致伸縮液位傳感器具有測量精度高、使用壽命長、耐腐蝕、耐塵、耐壓、耐高溫、耐高振蕩等一系列特點,已在行程測量和液位測量中得到了愈來愈多的應(yīng)用。但由于其測量原理是通過計算兩個不同磁場相交所產(chǎn)生應(yīng)變脈沖信號的時間周期,再根據(jù)超聲波的傳遞速度獲得準(zhǔn)確的位置值。測量過程中,傳感器內(nèi)波導(dǎo)管的電流脈沖和應(yīng)變脈沖不可避免地對測量的輸出信號產(chǎn)生一定的干擾,強度可以達到滿量程的012%。在一些模擬控制系統(tǒng)中,影響程度不明顯,可以忽略。若對高精度的數(shù)字式控制系統(tǒng),影響程度很明顯,甚至影響到系統(tǒng)的穩(wěn)定,必須予以消除。
針對這些干擾信號,方法就是采用濾波處理來濾除這些系統(tǒng)的干擾信號,提取出所需要的實際信號。
傳統(tǒng)的磁致伸縮液位傳感器系統(tǒng)中出現(xiàn)的硬件濾波電路,由于硬件濾波電路結(jié)構(gòu)復(fù)雜、參數(shù)調(diào)整不易和系統(tǒng)性能易受環(huán)境影響、容易引起電子噪聲等缺點,系統(tǒng)中用數(shù)字濾波方法來替代。
基于DSP的磁致伸縮液位傳感器系統(tǒng)的硬件主要由激勵脈沖電路、放大電路、TMS320F2812、液晶顯示電路、串口通信電路等部分組成。
DSP先給激勵脈沖電路發(fā)送一個激勵脈沖,然后激勵脈沖電路產(chǎn)生大電流脈沖,輸入波導(dǎo)絲產(chǎn)生環(huán)繞磁場。該磁場傳播到位置磁鐵處和其垂直磁場作用,因磁致伸縮效應(yīng)在該處產(chǎn)生磁致扭轉(zhuǎn)波,并以通過實驗標(biāo)定的約為21838mm/μs的波速傳回,遇到檢測裝置,檢測裝置把機械信號轉(zhuǎn)換成電信號,但幅值較小,需要進行放大,然后DSP開始采集放大后的信號,讀取采集信號數(shù)據(jù),并將其進行FIR數(shù)字濾波后,接著得到液位測量值L,然后輸出到LCD上顯示,并用于通信。
2、基于DSP的磁致伸縮液位傳感器的軟件設(shè)計
系統(tǒng)采用全采樣法,即DSP發(fā)送激勵脈沖的同時,開始啟動AD,一直采樣,直到所設(shè)置的全量程數(shù)據(jù)采集完畢,然后對所采集的全量程數(shù)據(jù)進行FIR濾波處理,尋找波形的特征點,A/D轉(zhuǎn)換速率是已知的,進而能求得特征點處的時間,乘以波速即得液位。
通過尋找回波信號的特征點求取液位的方法有以下優(yōu)點:(1)由于波導(dǎo)絲本身的不連續(xù)性,超聲波在傳播過程中會發(fā)生幅值上的衰減,采用比較器檢測的方式,比較器的門限電平是預(yù)先設(shè)定的,會使翻轉(zhuǎn)時間推后,造成較大的測量誤差。采用提取特征點的方法可以有效避免干擾。
(2)不需要這些檢測電路,大大節(jié)約了系統(tǒng)的硬件數(shù)量,避免了太多硬件電路所造成的電子干擾。便于進行數(shù)字濾波,充分發(fā)揮數(shù)字濾波的優(yōu)點。
(3)可以消除放大器零點漂移帶來的影響。
2.1FIR濾波程序
為了濾掉電子系統(tǒng)的各種隨機干擾成分,分析檢測信號的頻譜特性,進而根據(jù)其頻譜特點設(shè)計恰當(dāng)?shù)臑V波器。采用周期圖作為功率譜的估計時有快速算法,可以應(yīng)用FFT.因此,采用周期圖來作為功率譜的估計,取256個采樣點來分析其頻譜特性。從頻譜分析結(jié)果看出,傳感器檢測信號的中心頻率在77kHz附近,是一個低頻特性,須設(shè)計一個具有低通特性的濾波器濾掉高頻的噪聲,所以對采集的信號進行FIR低通濾波算法處理。
2.1.1FIR的算法實現(xiàn)
讀取AD轉(zhuǎn)換值后,程序的步就是在RAM區(qū)中設(shè)置兩組連續(xù)的存儲區(qū):一組存放FIR濾波器系數(shù),另一組用于存放采集數(shù)據(jù)。初始化時,存放采集數(shù)據(jù)的存儲區(qū)要設(shè)為0,存放FIR濾波器系數(shù)的存儲區(qū)中放入按FIR算法設(shè)計得到的濾波器的單位脈沖響應(yīng)系數(shù),然后,將讀取的結(jié)果存放到數(shù)據(jù)存儲器中。在PC機上求解FIR濾波器的單位脈沖響應(yīng)。首先,在主函數(shù)中,定義了4種數(shù)字濾波類型:低通、高通、帶通和帶阻;接著,定義了6種窗函數(shù)類型:矩形窗、三角形窗、漢寧窗、海明窗、布拉克曼窗和凱澤窗;然后,調(diào)用計算窗函數(shù)的子程序fir_window(),求出這6種窗函數(shù)系數(shù);再用這6種窗函數(shù)系數(shù)乘以理想單位脈沖響應(yīng)hd(n),就是所求得的FIR濾波器的單位脈沖響應(yīng)系數(shù)。由于設(shè)計的是低通濾波器,hd(n)就是低通理想單位脈沖響應(yīng)。最后,將求解的FIR濾波器的單位脈沖響應(yīng)系數(shù)存放在DSP的存儲空間。
2.1.2濾波系統(tǒng)的實驗驗證
實驗設(shè)計的是具有低通特性的FIR濾波器,窗函數(shù)選擇的是海明(Hamming)窗。由于海明窗可將991963%的能量集中窗譜的主瓣內(nèi),主瓣寬度為8π/N,但旁瓣幅度更小,旁瓣峰值小于主瓣峰值的1%。并且,通過反復(fù)實驗,選擇濾波器階數(shù)N=32。輸出信號的濾波前后仿真圖可以看出,沒有經(jīng)過FIR濾波的波形明顯存在許多干擾,而經(jīng)過FIR濾波后的波形明顯濾掉了系統(tǒng)所帶來的各種干擾成分,從干擾噪聲中提取了有用的特征信號,為進行高精度液位測量提供了重要的理論基礎(chǔ)。
2.2液位測量
對于磁致伸縮液位傳感器系統(tǒng),液位測量是重要環(huán)節(jié)。程序設(shè)計中,調(diào)用峰值點子程序ffpeak(),在該子程序中,h為所選的采樣點,fp為比較峰值點的次數(shù),ConversionCount為AD采樣數(shù)據(jù)個數(shù),SampleTable[]為放置AD采樣點數(shù)據(jù)的數(shù)組。當(dāng)AD采樣完成后,把采集的數(shù)據(jù)保存在放置AD采樣點數(shù)據(jù)的數(shù)組SampleTable[]中,然后,從第5個采樣點開始判斷峰值點。確定峰值點后,再用峰值點數(shù)乘以程序中A/D的轉(zhuǎn)換速度,得到了所要求的峰值點處的時間,然后,用峰值點處的時間乘以波速即得到液位測量值。
2.2.1峰值點的程序?qū)崿F(xiàn)
unsignedintffpeak()
{unsignedinti,h,fp=0;
for(h=15;h
{for(i=1;i<=15;i++)
{if(SampleTable[h-i]<=SampleTable[h-i+1]);elsebreak;
if(SampleTable[h+i]<=SampleTable[h+i-1])fp++;
else{fp=0;break;}
}
if(fp>=14)break;
}
if(fp>=14)return++h;elsereturn0;
}
2.2.2液位測量的實驗圖
實驗中采樣周期:T=013μs,波速v=21838mm/μs,由采樣周期所限,測量值只能精確到018514mm.真實值以精度為1mm的鋼板尺作為測量工具。位置1的真實值為38123cm,可以看出濾波前的測量值誤差太大,測量值中的值與最小值之間的差值達到了0135cm,而濾波后的測量值基本在真實值附近,測量值中的值與最小值之間的差值只有0116cm.位置1的真實值為84171cm,可以看出濾波前的測量值誤差太大,測量值中的值與最小值之間的差值達到了0145cm,而濾波后的測量值基本在真實值附近,測量值中的值與最小值之間的差值只有0107cm.經(jīng)過濾波系統(tǒng)后,液位測量值與濾波前相比,精度有了比較大的提高。
3.結(jié)束語
系統(tǒng)詳細(xì)闡述了基于DSP的磁致伸縮液位傳感器的硬件和軟件設(shè)計。硬件設(shè)計部分,相對于傳統(tǒng)的磁致伸縮液位傳感器需要許多檢測電路,而該設(shè)計方案中,不需要這些復(fù)雜的硬件檢測電路,大大節(jié)約了系統(tǒng)的硬件數(shù)量,避免了太多硬件電路所造成的電子干擾。軟件設(shè)計部分重點介紹了FIR濾波程序在DSP上的實現(xiàn),并通過比較濾波前后信號的波形以及濾波前后液位測量值的實驗,得到基于DSP的磁致伸縮液位傳感器的設(shè)計方案。為今后設(shè)計高精度磁致伸縮液位傳感器提供了方向。