新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于FPGA和單片機的掃頻儀研究與設計

        基于FPGA和單片機的掃頻儀研究與設計

        作者: 時間:2017-06-05 來源:網絡 收藏

        一個網絡的包括幅頻特性和相頻特性,在系統設計時,各個網絡的對該系統的穩定性、工作頻帶、傳輸特性等都具有重要影響。實際操作中,大大簡化了測量操作,提高了工作效率,達到了測量過程快速、直觀、準確、方便的目的,在生產、科研、教學上得到廣泛運用。本設計采用數字頻率合成技術產生掃頻信號,以單片機和為控制核心,通過A/D和D/A轉換器等接口電路,實現掃頻信號頻率的步進調整、數字顯示及被測網絡幅頻特性與相頻特性參數的顯示。

        本文引用地址:http://www.104case.com/article/201706/349301.htm

        1 系統總體方案及設計框圖

        1.1 系統總體方案

        將輸出頻率步進可調的正弦掃頻信號源作為被測網絡的激勵Vi,可得被測網絡的響應為V0。通過測量各頻率點的幅度就可得到V0和Vi的有效值,兩者之比就是該點的幅度頻率響應;對V0和Vi進行過零比較、整形,再送到測量相位差,即可得到相頻特性。


        1.2 系統總體設計框圖

        系統通過鍵盤掃描得到外界設置的掃頻范圍和頻率步進,通過調用DDS控模塊控制DAC904,輸出掃頻信號。由于信號在被測網絡阻帶內會有很大的衰減,故用程控放大處理經被測網絡的掃頻信號之后,利用AD637進行有效值采樣,LM311進行整形。信號有效值經MAXl270進行AD轉換后得到有效值的數字量,整形后的信號經測相模塊處理得到相位差值。在中寫入2個RAM存放被測信號的有效值和相位差值。完成一次掃頻后通過波形顯示模塊將幅頻、相頻曲線顯示在示波器上,并將特定頻率點的幅度和相位差值在液晶顯示器上進行顯示。系統實現框圖如圖1所示。

        2 系統功能部分設計

        2.1 掃頻信號的產生

        直接數字合成(DDFS)信號源。它是一種完全數字化的方法:先將一個周期的正弦波(或者其他波形)的離散樣點幅值的數字量預先存儲于ROM或者RAM中,按一定的地址增量間隔讀出,經D/A轉換后成為不同頻率的模擬正弦波信號波形,再經低通濾掉毛刺即可得到所需頻率的輸入信號。按此原理,DDS可以合成任意波形,且可以精確控制相位,頻率也非常穩定。利用FPGA制作起來相當容易,且掃頻步進實現簡單。設FPGA內部的參考頻率源的頻率為fclk,采用計數容量為2N的相位累加器(N為相位累加器的位數),頻率控制字為M,則DDS系統輸出信號的頻率fout=fclk/2N×M。頻率分辨率為:△f=fclk/2N。

        若選取晶振頻率為40 MHz,頻率控制字為24位,相位累加器的位數為31位,則輸出頻率范圍為0.02 Hz~312 kHz,步進頻率為40 MHz/231≈0.02 Hz。

        系統采用高速14-bit電流輸出型D/A轉換器DAC904制作DDS掃頻信號源。通過FPGA給其20 MHz的時鐘信號以輸出10 Hz~100 kHz的掃頻信號。該器件制作成的PCB板中,很好地考慮了接地,使得輸出信號在頻率為1 MHz可以達到無明顯失真。DAC904采用內部基準和雙極性接法,輸出信號幅值范圍為0~5 V。其原理圖如圖2所示。

        2.2 幅頻特性測試方案

        使用集成真有效值轉換器AD637先檢測出信號每個頻率點的有效值,再經過A/D采樣將得到的數據讀到單片機中進行處理即可。該器件外接電路簡單,工作頻帶很寬,與A/D轉換器級聯,可以對任何復雜波形的有效值、平均值、均方值、絕對值進行采樣,測量誤差小于±(0.2%讀數+0.5 mV),可以達到很高的測量精度。

        2.3 相頻特性測試方案

        采用計數法實現相位的測量。計數法的思想是將相位量轉化為數字脈沖量,然后對數字脈沖進行測量而得到相位差。對轉換后的數字脈沖量進行異或運算,產生脈寬為T0、周期為T的另一路方波,若高頻計數時鐘脈沖周期為TCP,則在一個周期T的時間內的計數數值為:

        式中,φx為相位差的度數。

        這種方法應用比較廣泛,精度較高,電路形式簡單,適合FPGA實現。

        實際測量中,當兩輸入信號頻率較高且相位差很小時,得到的脈沖很窄,這會造成較大誤差。為了克服上述缺陷,引入等精度測量的思想(如圖3),采用多周期同步計數法,利用觸發器產生一個寬度為被測信號fa整數倍的閘門信號。利用計數器1測量出閘門信號內通過高頻脈沖fm的個數N1,利用計數器2測量出相同時間內閘門信號、異或信號、高頻脈沖三者相與后的脈沖數N2。因此,相位差值為△φ=N2/N1x36 0°。測量相位的同時,在FPGA內部引入一D觸發器,用一路方波信號控制另一路方波,通過觸發器輸出的高低以判斷信號相位差范圍是大于180°還是小于180°。

        2.4 系統顯示電路設計

        為了在示波器上顯示曲線,需要通過2個D/A轉換器向X、Y軸同步送入掃描信號和數據信號。X軸方向的DA轉換器輸出掃描信號為O~5 V的鋸齒波信號,而數據信號為-5~5 V,反應了各個頻率點上的信號幅值和相位,由另一片D/A轉換器向Y軸方向輸出。

        3 系統軟件設計

        系統軟件設計由單片機和FPGA組成。整個系統以用戶按鍵中斷為主線,調用不同的處理函數,與FPGA中各個控制模塊之間,以總線的進行數據的交換,實現了系統測量的功能。軟件流程圖見圖4。

        4 結束語

        利用數字頻率合成技術(DDS)產生掃頻信號,通過14位D/A轉換器DAC904產生了10 Hz~100 kHz的正弦掃頻信號,作用于被測網絡。網絡的輸出信號通過有效值采樣電路,以及由比較器LM311配合FPGA內部實現的測相電路,完成了對被測網絡頻率特性的測量。

        為對系統的性能進行測試,制作了一個中心頻率為5 kHz。帶寬為±50 Hz的阻容雙T網絡。測試結果表明,在網絡的通帶和阻帶內,相頻特性測量均達到了3°以內的測量精度,幅頻特性的測量誤差均小于50%。此外,該系統可以通過鍵盤輸入掃頻范圍,通過示波器顯示幅頻、相頻曲線,并可以在液晶顯示器上顯示該網絡在特定頻率點上的幅度、相位特性值。該系統操作簡單,成本低廉,測量精確,具有很強的實用性。



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 会泽县| 额尔古纳市| 平安县| 乌什县| 开平市| 哈密市| 察雅县| 如皋市| 内乡县| 保德县| 化州市| 宁南县| 榆林市| 麦盖提县| 泉州市| 嘉兴市| 临海市| 灯塔市| 镶黄旗| 城市| 舟曲县| 桃源县| 项城市| 邯郸县| 岐山县| 南昌县| 岫岩| 天门市| 和顺县| 广河县| 义乌市| 泾川县| 铁岭县| 开江县| 新闻| 萍乡市| 洪湖市| 英吉沙县| 阜城县| 永丰县| 安徽省|