新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于單片機和FPGA的頻率特性測試儀的設計

        基于單片機和FPGA的頻率特性測試儀的設計

        作者: 時間:2009-09-28 來源:網絡 收藏

          1 引言

          是網絡的性能最直觀反映。測試儀是測量網絡的幅頻特性和相頻特性,并顯示相應曲線的一種快速、方便、動態、直觀的測量儀器,可廣泛應用于電子工程領域。

          該測試儀以掃頻外差為基本原理,并以單片機和構成的最小系統為控制核心,很好地完成對有源雙T網絡進行頻率在100 Hz~100 kHz范圍內的幅頻響應和相頻響應特性的測試,并實現在通用數字示波器上同時顯示幅頻和相頻響應特性曲線。

          2 系統設計方案

          2.1 總體方案

          該設計采用單片機和結合的方式。將輸出頻率可步進的正弦信號的掃描信號源作為被測網絡的輸入信號Vi,則被測網絡的輸出信號Vo為頻率可步進的信號。通過測量各頻率點的幅度就可得到Vo和Vi的有效值,兩者之比就是該點的幅度頻率響應;對Vo和Vi進行過零比較、整形,再送到測量相位差。 Vi的上升沿啟動計數,Vo的上升沿停止計數,所得時間值與信號周期之比,就是該點的相位頻率響應。此方案采用FPGA測量相位差,而且便于制作DDS掃描信號源。

          2.2 掃頻信號源設計方案

          該設計采用直接數字合成(DDS)信號源。DDS信號源是由數字量控制的頻率源,如圖 1所示,其具體實現過程是:將輸出波形一個完整周期的幅度值按相位步進順序量化存儲于雙端口RAM中,按一定的地址間隔讀出,經D/A轉換成模擬信號,再經低通濾波器濾去D/A轉換帶來的小臺階和數字電路產生的毛刺,即可獲得高精度、高純度的正弦信號。理論上只要累加器的位數足夠多,便可實現任意小的頻率步進,且頻率分辨率很高,十分接近于連續變化。通過預設相位累加器初值可很方便地實現精密相位調節。

        DDS原理框圖

          2.3 幅度測量模塊的方案

          該模塊采用集成真有效值變換器件。測量被測信號的真有效值,然后將其換算為幅值。即可實現對正弦波的幅值測量。該方案硬件、軟件都很簡單,而且精度高,效果理想。

          2.4 相位測量模塊的方案

          該模塊采用相位一時間轉化法。兩個頻率相同、相位不同的正弦信號經整形異或運算后產生脈寬為Tx、周期為T的方波,相位差與(TX/T)之間始終存在一一對應關系。因此無論頻率如何變化,只要測出(Tx/T),相位差的大小也就確定。

          3 理論分析與計算

          3.1 DDS相關計算

          由DDS原理可得:

        公式

          式中,N為相位累加器位數,K為頻率控制字。

          當K=1時,可知DDS的最低輸出頻率為:

        公式

          此即DDS的頻率分辨率。

          (1)移相信號發生器部分DDS由于輸出級D/A轉換器DAC0800的建立時間為100 ns,則時鐘頻率應小于10 MHz,取時鐘頻率fout=8.388 608 MHz,相位累加器N=23bit,則:

        公式

          (2)掃頻信號部分DDS 由于FPGA片內資源豐富,為保證足夠的掃頻精度,取參考時鐘頻率fclk為40 MHz。通過控制頻率控制字K的變化范圍,完全可以滿足DAC0800的速度要求。

          3.2 相位測量相關計算

          由FPGA利用等精度法測得被測信號和基準時鐘的頻率分別為f0、fCP,對被測信號鑒相后,由得到的相位差脈沖寬度T控制計數器計數,其計數值設為M,則被測信號的相位差為:

        公式

          (1)相位測量誤差計算 若讓計數器在1 s內累計記數,則累計數:M1=Mf0,式(5)改為

        公式

          其測量誤差△φ為:

        公式

          (2)相位測量分辨率計算 數字移相信號發生器頻率范圍為20 Hz~20 kHz,相位差測量范圍為0~359°,因此計數器時鐘頻率fclk至少為72 MHz,取fCP=100 MHz,由于計數器分辨率為±1,對應最小相位分辨率(f0=20 kHz時):

        公式

          4 系統整體框圖

          系統設計發揮FPGA穩定、可靠、可編程的特點,讓FP-GA實現盡可能多的功能,從而減少模擬部分的工作,使整個設計更加可靠。系統整體框圖如圖2所示。

        系統整體框圖

        掃頻信號D/A轉換及濾波部分電路圖

          5.2 示波器顯示部分

          系統除實現LCD顯示外,還可借助示波器顯示曲線。為分別顯示幅頻和相頻特性曲線,用疊加直流電平的方法使兩種曲線顯示在示波器熒光屏適當位置(示波器上方為幅頻曲線,下方為相頻曲線)。根據需要,亦可獨立顯示某一種曲線。幅度、相位數據均取256 bit,D/A轉換采用DAC0800完成。圖4為共電路圖。

        示波器顯示D/A轉換部分電路

          5.3 系統軟件的設計

          軟件設計由C和Verilog HDL語言編寫完成,前者由單片機運行完成實時顯示、鍵值讀取、數據處理等系統的主控功能;后者寫入FPGA完成鍵盤掃描。

          并在其中寫入濾波模塊對波形進行處理,DDS控制產生最終波形的顯示并充當單片機與外圍電路的橋梁。系統軟件流程如圖5所示。

        系統軟件流程

          6 結束語

          系統很好地完成對有源雙T網絡進行100 Hz~100 kHz頻率范圍內的幅頻響應和相位響應特性的測試,頻率穩定度達到10-6,并能在通用數字示波器上同時顯示幅頻和相頻響應特性曲線。同時系統單片機的軟件設計實現友好的人機交互界面,充分發揮了單片機智能化的特點。



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 汤阴县| 桃源县| 庆云县| 安图县| 锡林浩特市| 阿瓦提县| 涡阳县| 河曲县| 舒城县| 滕州市| 长寿区| 潼关县| 宁河县| 河西区| 滁州市| 通化县| 沈阳市| 泊头市| 蒙阴县| 正定县| 当雄县| 罗山县| 龙泉市| 镇原县| 忻城县| 浦江县| 西吉县| 华容县| 宝鸡市| 婺源县| 托里县| 漳州市| 六枝特区| 石家庄市| 九龙坡区| 玛沁县| 巴楚县| 长宁区| 兴业县| 镇雄县| 白银市|