- 信號采集要求
- 測量頻率和周期的基本方法
- 信號測量單片機控制電路的實現(xiàn)
- 多周期測周法
信號采集要求
在研制基于GPRS的自動氣象站中,氣壓采集系統(tǒng)采用電激勵諧振筒式壓力傳感器。該傳感器輸出為周期C(或頻率f)與氣壓相關的TTL電平的矩形波信號(下稱原始信號)和一個與環(huán)境溫度呈線性關系的0~5V的模擬電壓信號。輸出信號頻率與氣壓P一一對應,單值連續(xù),振動筒諧振頻率的變化反應了氣壓的變化。
國家氣象局對氣壓遙測的要求,測量范圍為50~110kPa,采集的分辨率為0.01kPa,準確度為±0.03kPa,采集速率為6次/min(1min共取6個樣本值,取中間大小的4個值的等權(quán)算術(shù)平均值)。根據(jù)周期C(或頻率f)對氣壓的最低靈敏度來確定周期及頻率測量的分辨率,根據(jù)周期C(或頻率f)對溫度的最高交叉靈敏度決定對溫度電壓的分辨率。通過數(shù)據(jù)分析,欲使氣壓系統(tǒng)分辨率達0.01kPa,這就要求周期測量分辨率為0.0026362μs,頻率測量的分辨率為0.068645Hz,對溫度電壓的分辨率為43mV。
測量頻率和周期的基本方法
電子計數(shù)器測量信號頻率和周期的基本原理是門控法,如圖1所示。
(1)在測量頻率時,被測信號加在A端,B端加門控信號,其信號寬度TB即是采樣時間,被測信號頻率為:
N為閘門時間TB內(nèi)的脈沖數(shù)。測量的最大誤差為:
誤差中前項是量化誤差,后部分是因為標準信號誤差引起。若滿足0.068645Hz分辨率的要求,門控信號寬度TB(采樣時間)要超過15s。按照這種方法,不能達到國家氣象局規(guī)定的氣壓采集速率6次/min。
(2)測量信號周期時,標準信號加在A端,B端門控信號由被測信號觸發(fā),其信號寬度TB為被測信號的周期,被測信號周期C為:
其中,N為被測時間內(nèi)對周期為τ的標準信號計數(shù)個數(shù),測量的最大誤差為:
誤差中前項是量化誤差,后部分是因為標準信號誤差引起的。若滿足0.0026362μs分辨率的要求,時標信號的頻率要高于379.33MHz,實現(xiàn)難度大,用微控制器直接測量時是不能完成的。
多周期測周法
對信號M分頻后觸發(fā)產(chǎn)生門控信號對時標信號計數(shù)(如圖2所示)。
[page]
誤差中前項是量化誤差,后部分是因為標準信號誤差引起的。從式中可知,被測信號周期擴展M倍后,對時標信號的頻率要求不很高,電路容易實現(xiàn),并能將量化誤差降到單周期測量的1/M;為減小標準信號帶來的誤差,要求時標信號具有較高的精度。
觸發(fā)誤差的抑制傳感器輸出的信號為矩形波信號由原始振蕩信號經(jīng)整形得到,信號中疊加的噪聲在整形時會使矩形波信號的觸發(fā)沿提前或滯后。多周期測周時使相鄰周期的觸發(fā)誤差相互抵消。M個周期的累計觸發(fā)誤差只相當于單個周期的觸發(fā)誤差。
信號測量單片機控制電路的實現(xiàn)
圖3為多周期測周的原理圖,其核心是P89LPC935。
P89LPC935是PHILIPS公司LPC900系列單片封裝的微控制器,采用了高性能的處理器結(jié)構(gòu)(與51系列兼容),速度6倍于標準80C51器件,除51系列單片機資源外還具有8kBFLASH程序存儲器,512片內(nèi)用戶數(shù)據(jù)E2PROM存儲區(qū),2個4路輸入的8位A/D轉(zhuǎn)換器和2個DAC,I2C,SPI總線、片內(nèi)看門狗和復位電路、捕獲/比較單元(CCU)等資源。
原始信號(傳感器輸出的與氣壓有關的矩形波信號)接到分頻電路CD4020的時鐘輸入端,經(jīng)256分頻后接到P89LPC935的/INT1端,作為門控信號控制P89LPC935內(nèi)部的定時計數(shù)器1。定時計數(shù)器1工作在定時方式,在門控信號為高電平時計數(shù)。時鐘為PCLK,為外接晶振11.0592MHz的2分頻(6倍于標準80C51器件),即5.5296MHz。
如圖4所示,原始信號周期C在200μs左右,256分頻后的門控信號周期在51200μs左右(256C),一個周期中高電平部分約為25600μs(高電平部分128C),在高電平時對5.5296MHz計數(shù),其計數(shù)值約為141500,超過16位計數(shù)器的長度,將產(chǎn)生溢出并產(chǎn)生中斷。開辟1個內(nèi)部RAM,在中斷服務子程序中進行加l操作,即可滿足計數(shù)字長要求。計數(shù)過程如下:
S1:首先判斷/INT1是否為高電平,該過程時間最長256C;
S2:判斷/INT1是否為低電平,若是,計數(shù)器清零,允許計數(shù),允許計數(shù)器溢出中斷,該過程時間128C;
S3:/INT1為高電平時計數(shù)器計數(shù),計數(shù)器溢出時產(chǎn)生中斷,中斷服務子程序中高位加1,該過程時間128C;
S4:后續(xù)處理,包括頻率計算、溫度采集及其他運算。該過程時間小于128C。
整個計數(shù)及處理過程時間小于640C,在128ms以內(nèi),遠小于10s。原始信號的周期C及測量誤差如下計算。原始信號的周期為C,計數(shù)值為N,計算公式為:
其中,M=128;τ=(1/5.5296)μs;128C=(N/5.5296)μs,C=N×0.0014μs。
其測量誤差為:
誤差中前項是量化誤差,為0.0014μs;后部分是因為標準信號誤差(即晶振的誤差)引起的。在整個測量范圍內(nèi),C最大值為211.7879μs,選取準確度優(yōu)于5ppm的晶振,該項誤差最大值為:211.7879μs×5ppm=0.0011μs;兩者的和小于0.0026362μs,滿足要求。
上述的分析計算是兩者絕對值相加,有一定的冗余。如果進一步提高M值,將進一步減小量化誤差。
用該方法測量周期的前提條件是選取準確度優(yōu)于5ppm的晶振,測量周期的誤差最小可控制在0.0011μs。
將溫度信號直接連接到P89LPC935的模擬輸入端AD10(P0.1)引腳,進行A/D轉(zhuǎn)換。A/D轉(zhuǎn)換時間為μs量級,遠遠小于要求的采樣周期10s,在溫度采集時,有足夠的時間對A/D轉(zhuǎn)換數(shù)據(jù)進行數(shù)據(jù)處理,其具體方法為:每次采集進行18次A/D轉(zhuǎn)換,去掉一個最大值和最小值,取其余16個數(shù)據(jù)算術(shù)平均值作為最終結(jié)果。
溫度信號采集的準確度為20mV,優(yōu)于43mV的要求。
該測量方法成功地應用于與河南省氣象局合作開發(fā)的自動氣象站中。用多周期測周的方法快速準確測量信號的頻率(周期)基于2個條件:信號是連續(xù)的;P89LPC935的晶振必須使用外接的高精度、高穩(wěn)定晶體振蕩器(準確度優(yōu)于5ppm)。