柯龍章,楊宇卿
(鄂東職業技術學院,湖北 黃岡 438000)
頻率測量是電子測量領域中最基本的測量之一。傳統的采用中小規模數字電路構成的測頻儀器,一般說來體積大,精度低,而高精度的專業頻率計,則計數實施方案復雜,價格昂貴。由于單片機具有控制和數據處理能力。因此用它構成的測頻儀器不但運算方便而且可以大大簡化傳統的硬件電路。
當前電子測量領域中頻率的測量方法眾多,使用最廣泛的就是傳統的直接測頻法和測周法。隨著現代單片機技術的發展,各種測量方法均可由單片機實現,而其中等精度測頻法是現代頻率測量方法中最先進的測量方法。它應用廣泛,設計簡單,便于操作,已得到廣泛的應用。
在我們的生活中,周期性現象十分普遍,如各種周而復始的旋轉運動,往復運動,各種傳感器和測量電路變換后的周期性脈沖等。周期性過程重復出現一次所需要的時間稱為“周期”,記為T(單位是s);單位時間內周期性過程重復出現的次數稱為“頻率”,記為f(單位是Hz)。周期與頻率互為倒數關系
f=1/T
因此,f和T只要測出其中一個,便可取倒數而求得另一個。
頻率的測量方法可分為模擬法和記數法兩類。記數法具有測量精度高、速度快、操作簡便、直接顯示數字、便于與微機結合實現測量過程自動化等一體化等突出優點,是目前最好的測頻方法,而模擬法因為簡單經濟,有些場合仍然采用。
直接方式測頻的一般原理框圖如圖1所示。它是利用計數器在閘門G開啟期間對輸入信號的周信號的頻率可表示為:
fx=N/Tg
式中,閘門時間寬度Tg由晶體振蕩器產生的標準頻率f0經過n級10分頻得到,即

圖1 直接方式測頻原理框圖

可見實現直接記數法必須具備兩個硬件條件:①控制閘門關閉的定時電路。②對被測信號變化次數記數的計數器。充分利用8031內部2個16位定時/計數器就能滿足上述條件,將其中一個作為定時器控制閘門時間T,一個作為計數器用。對fx的變化次數直接記數得到N,便可求出被測頻率fx。
由于閘門時間是固定的,所以對于任意的fx卻不能保證在Tg時間內正好有N個Tx,因此會產生最大±1個Tx的量化誤差dN。這樣,可得到直接方式測頻的相對誤差為:
fx=dN/N+(df0/f0)
其中df0/f0為晶體振蕩器的頻率準確度,通常可達10-6~10-8;dN/N為計數值的相對誤差。當輸入信號頻率fx很低時,由于閘門時間有限而測得的N很小,因此,使得測頻誤差相應增大,測量精度也隨之降低。直接記數法僅適用于高頻測量。
為了減小測量低頻時的±1誤差,提高測量準確度,可以采用周期測頻法。即將被測信號一個周期的時間作為閘門時間,對時鐘脈沖進行記數。其原理圖如圖2所示。

圖2 周期法測頻原理圖
同樣實現該方法必須具備兩個條件:①具有使閘門時間等于被測信號一個周期的時間控制電路。②具有對時鐘信號變化次數進行記數的計數器。用單片機實現周期法測頻不需要任何附加電路,只要使單片機的一個定時/計數器工作在定時方式,此時該定時器對單片機的標準機器周期TC進行記數。同時將fx引入P3口的一條信號線,編程監控該信號線的狀態。使定時器的定時時間等于被測信號一個周期的時間即可。
由Tx=NTc誤差傳遞公式得:

因為

顯然在fx一定時,Tx越大,±1誤差越小,所以周期測頻法適用于低頻測量。
等精度數字測頻的基本框圖如圖3所示。圖中的閘門G1、G2分別用來控制輸入信號周期計數和閘門時間寬度計時。其中,閘門G1與輸入信號同步,這樣可使計數器N1的量化誤差dN1=0。計數器N2對標準時標信號周期Tc進行計數,并以此來測量閘門寬度Tg。其輸入信號頻率可表示為:
fx=N1/Tg=N1/(TcN2)
標準時標信號也由晶體振蕩器產生,它具有足夠的周期穩定度,可看作常數。因此,fx的相對誤差為:

其中dN2為計數器N2產生的量化誤差,最大為±1個Tc。在實際設計中,選擇適當的時標周期Tc和閘門寬度Tg可使N2始終足夠大,并在fx的全頻段范圍內得到足夠多的有效位數的顯示結果。

圖3 等精度測頻基本框圖
利用AT89S51系列的單機外部中斷INT0作為測試信號輸入口,P1口通過UN2803驅動段碼,P2.0-P2.5控制位碼。
電路如圖4所示。利用單片機中T0、T1兩個定時/計數器分別對被測信號和標準時標進行同步計數,當被測信號為Nx個周期后,讀出標準時標計數器中的值Ns,則輸入信號頻率可表示為:
fx=Nx/Ts
Ts為標準時標周期,對于12MHz的晶振單片機,TS=fosc/12=1μS,它具有足夠的穩定度,可視為常數。因此,fx的相對誤差為:dfx/fx=dNx/Nx-dNs/Ns,當計數器T1為Nx(傳統測頻方式Nx只能等于1)個完整周期時產生中斷,這時,dNX=0,有dfx/fx=-dNs/Ns,因此,實際運用中,利用AT89S51單片機豐富的內部資源,通過軟件設計,當計數器T0產生溢出時,請求T1計數器中斷,這樣就能保證比傳統測頻精度高許多。

圖4 電路結構圖
以上幾種測量方法中,等精度頻率測量精度最高,它在整個被測頻率范圍內都能達到相同的測量精度,而與被測信號頻率大小無關。雖然它的測量控制相對比較復雜,但如果在單片機控制測量系統中合理地使用中斷、定時計數器,以及正確準時讀出計數器的值,那么就可以在不增加控制器件的情況下實現較高精度的等精度頻率測量。
[1]李春樹.基于AT89C51單片機的的等精度數顯頻率計[J].零陵學院學報,2004,(3).
[2]鄧旭升.使用單片機測頻的四種方法分析——兼談等精度測頻法的實現[J].測試技術學報,2006,(2).
[3]宋立新.準精度多周期同步測頻法級實現[J].哈爾濱理工大學學報,2004,(4).
[4]楊冠群.以周期滑動擴展的測周法實現等精度的頻率測量[J].電子技術應用,2002,(2):41-43.