基于DSP的數(shù)字頻率計設計
隨著微電子技術和計算機技術的飛速發(fā)展, 各種電子測量儀器在原理、功能、精度及自動化水平等方面都發(fā)生了巨大的變化, 特別是DSP技術誕生以后,電子測量技術更是邁進了一個全新的時代。近年來,DSP逐漸成為各種電子器件的基礎器件,逐漸成為21世紀最具發(fā)展?jié)摿Φ某栃袠I(yè),甚至被譽為信息化數(shù)字化時代革命旗手。在電子測量技術中,頻率是最基本的參數(shù)之一,它與許多電參量和非電量的測量都有著十分密切的關系。例如,許多傳感器就是將一些非電量轉換成頻率來進行測量的,因此頻率的測量就顯得更為重要。數(shù)字頻率計是用數(shù)字來顯示被測信號頻率的儀器,被測信號可以是正弦波、方波或其它周期性變化的信號。
本文引用地址:http://2s4d.com/article/150179.htm數(shù)字頻率計廣泛采用了高速集成電路和大規(guī)模集成電路,使得儀器的體積更小、耗電更少、精度和可靠性更高。而傳統(tǒng)的頻率計測量誤差較大,范圍也較窄,因此逐漸被新型的數(shù)字頻率計所代替。基于DSP的等精度頻率計以其測量準確、精度高、方便、價格便宜等優(yōu)勢將得到廣泛的應用。
我們設計的簡易數(shù)字頻率計在未采用任何門控器件控制的情況下,在很寬的范圍內實現(xiàn)了等精度頻率測量,0.5Hz~10MHz的范圍內測量方波的最大相對誤差小于2e-6,測量正弦波的最大相對誤差小于3.5e-5;結果通過RS232通訊顯示在計算機上,可以很方便地監(jiān)測數(shù)據(jù)。
方案設計
總體介紹
傳統(tǒng)的等精度測頻法使用門控器件產生門控信號,從而實現(xiàn)實際門閘信號與被測信號同步,消除對被測信號計數(shù)產生的一個脈沖的誤差,其原理圖如圖1所示。
圖1 傳統(tǒng)的等精度測量原理
由硬件控制計數(shù)的門閘時間,當預置們信號(即定閘門信號)為高電平時,基準信號計數(shù)器CNT1和被測信號計數(shù)器CNT2并不啟動,而是等被測信號的上升沿來到時才同時開始計數(shù);當預置們信號為低電平時,兩個計數(shù)器并不馬上關閉,同樣要等到被測信號上升沿來到后再關閉;于是,實際閘門時間就是被測信號周期的整數(shù)倍,從而實現(xiàn)了閘門與被測信號的同步。但是,實際的門閘時間并不固定,與被測信號的頻率有關。此外,無論是采用計數(shù)器還是單片機,在實現(xiàn)等精度測量時總是離不開門控器件。
本設計基于DSP豐富的軟件資源,經過判斷和處理,完成了對被測信號頻率的等精度測量。硬件上無需任何門控器件,簡化了電路。系統(tǒng)框圖如圖2所示,信號處理部分以TMS320F2812 DSP芯片作為控制和測量的核心;信號調理部分主要是完成對信號的放大、整形和限幅;標準頻率信號由30MHz有源晶振產生,作為高頻標準填充脈沖;通過DSP的SCI模塊與上位機實現(xiàn)通信,結果顯示在上位機上。
圖2 系統(tǒng)框圖
頻率/周期測量
在對被測信號頻率和周期的測量中,等精度測量是基于DSP比較匹配時T1PWM引腳輸出電平的跳變作為門閘信號的開啟和關閉,由于比較匹配發(fā)生在被測信號的上升沿,從而實現(xiàn)了門閘時間與被測信號的同步。原理圖如圖3所示。
圖3 本等精度頻率測量原理
通用定時器T1時鐘輸入選擇外部定時器時鐘,此處用調理后的被測信號作為定時器T1的時鐘輸入,定時器T2時鐘輸入選擇內部CPU時鐘,用來產生高頻標準填充脈沖。F2812片上EVA中通用定時器T1在發(fā)生比較匹配事件時,其比較輸出引腳T1CMP輸出信號會自動改變電平狀態(tài),產生PWM波。捕獲單元CAP1設置為上升沿捕獲,T1PWM輸出的PWM波上升沿被CAP1捕獲到,讀取此時定時器T2的計數(shù)值,同理在下一次比較匹配時再次讀取定時器T2的計數(shù)值。通過兩次T2CNT值的相減,即可獲得該門閘時間內標準填充脈沖的個數(shù),然后求出被測信號頻率。
基于DSP比較匹配時T1PWM引腳輸出電平的跳變作為門閘信號的開啟和關閉,由于比較匹配發(fā)生在被測信號的上升沿,從而實現(xiàn)了門閘時間與被測信號的同步。兩個相鄰的比較匹配產生的PWM波的上升沿分別作為門閘信號的開啟和關閉信號,其中被測信號的個數(shù)為整數(shù),并且是由我們自己任意設定的。定時器T2時鐘輸入選擇內部CPU時鐘,用來產生標準填充脈沖。設定捕獲單元CAP1為上升沿捕獲,當其捕獲到上升沿時讀取堆棧CAPFIFO內的值,在下一次捕獲到時再讀堆棧內的值,計算出標準填充脈沖的個數(shù)Ny,保證Ny的個數(shù)不小于一定的值,即可保證門閘時間大于一定的值。假設現(xiàn)在希望一個門閘時間內高頻填充脈沖的總數(shù)不小于n,當Ny>n時,就增大定時器T1的定時周期,即增大定時器T1周期寄存器TIPR的值。存在公式T1PR+1=n/Ny,由于n/Ny不一定為整數(shù),假an/Nya+1(a為整數(shù)),則取n/Ny=a+1,表現(xiàn)在被測信號上,則與傳統(tǒng)的用硬件控制一樣,用下一個被測信號的上升沿作為門閘信號的關閉信號,只不過該上升沿發(fā)生在下一次的比較匹配時。然后,再在該門閘時間內讀取高頻填充脈沖的個數(shù),有Ny≥n,從而得出高精度的被測信號頻率。在本設計中,定時器T1并不關閉,前一門閘時間的關閉信號同時作為下一門閘信號的開啟信號。
周期測量與頻率測量的基本原理完全相同,測出信號頻率,根據(jù)公T=1/f即可得出被測信號的周期。
誤差分析
定時器T1計數(shù)的啟停時間都是由該信號的上升沿觸發(fā)的,在一次測量時間內對被測信號的計數(shù)無誤差;在此時間內標準頻率脈沖的計數(shù)個數(shù)Ny,最多相差一個脈沖,故理論誤差為:
|d|≤1/Ny
顯然,測量精度僅僅與Ny有關,只要Ny值足夠大,就能保證精度。
硬件設計
如圖4所示,將被測信號經過高速運放OPA2690進行放大,在經過高速比較器TL3016進行整形[3],由于比較器在對低頻正弦波信號進行整形時,輸出波形的邊沿有比較嚴重的抖動,影響測量。解決辦法是對比較器加入正反饋,加速信號邊沿,同時形成滯環(huán),可有效消除抖動。整形后的信號經過高速施密特觸發(fā)SN74LVC1G14進行限幅和進一步整形。測量部分主要使用DSP2812芯片上定時器T1的時鐘輸入引腳TCLKINA、定時器T1的比較輸出引腳T1PWM和捕獲單元CAP1的輸入引腳CAP1,即可完成頻率測量。通訊部分選擇MAX3221作為RS-232電平轉換器件,通過9芯標準RS-232口與上位機進行串行通信。主要使用了DSP的串行通信發(fā)送引腳SCIRXD和串行通信接收引腳SCITXD。
圖4 硬件電路連接圖
評論