基于USB接口和FPGA控制的虛擬儀器設(shè)計(jì)
隨著目前科學(xué)技術(shù)的發(fā)展,電子技術(shù)的應(yīng)用領(lǐng)域越來越廣。電子測(cè)試測(cè)量儀器作為電子技術(shù)的基礎(chǔ),其應(yīng)用范圍也越來越廣。在許多領(lǐng)域?qū)@些儀器提出了很高的要求,不僅要有高的測(cè)量、傳輸速度,高的精確度、穩(wěn)定性、可靠性等,有的甚至要有一定的智能化,能夠?qū)崿F(xiàn)自動(dòng)測(cè)量、自動(dòng)控制,還要能夠快速完成一些復(fù)雜的數(shù)學(xué)運(yùn)算與處理,能夠根據(jù)實(shí)際應(yīng)用的情況,快速開發(fā)出新的功能。傳統(tǒng)的測(cè)試測(cè)量儀器由于設(shè)計(jì)理念落后、發(fā)展緩慢、功能單一,開發(fā)新功能或新產(chǎn)品的難度大,已經(jīng)無法適應(yīng)各種新的測(cè)量情況。而且其價(jià)格昂貴、體積大、不易操作,已經(jīng)無法滿足人們的要求。
虛擬儀器作為傳統(tǒng)測(cè)試測(cè)量儀器的可能的替代品,從1986年美國國家儀器公司(NI)首先提出其概念至今不過短短二十幾年,但其發(fā)展卻十分迅速。目前已生產(chǎn)數(shù)百個(gè)型號(hào)的虛擬儀器產(chǎn)品,其應(yīng)用涉及到電子測(cè)量、過程控制、電信、醫(yī)學(xué)等領(lǐng)域。我國虛擬儀器研究的起步較晚,最早的研究也是從引進(jìn)消化NI的產(chǎn)品開始,但其發(fā)展也是十分迅速的。我國國民經(jīng)濟(jì)的持續(xù)快速發(fā)展,加快了企業(yè)的技術(shù)升級(jí)步伐,對(duì)先進(jìn)儀器設(shè)備的需求更加強(qiáng)勁,虛擬儀器賴以生存的個(gè)人計(jì)算機(jī)最近幾年以極高的速度在中國發(fā)展,這些都為虛擬儀器在我國的普及奠定了良好的基礎(chǔ)。隨著我國個(gè)人計(jì)算機(jī)的普及以及性能的不斷提高,這種基于計(jì)算機(jī)的虛擬儀器在我國將會(huì)被更加廣泛的應(yīng)用。在我國由于電子技術(shù)水平相對(duì)落后,許多高精度、高性能的電子儀器都要進(jìn)口,價(jià)格昂貴,難以被廣泛使用,因而研制這種成本低的高性能的虛擬儀器,是很有必要的,而虛擬儀器也將成為今后電子器件發(fā)展的主流。
1 系統(tǒng)整體結(jié)構(gòu)概述
本設(shè)計(jì)主要是研制一個(gè)基于USB以及FPGA的虛擬數(shù)字存儲(chǔ)示波器,該系統(tǒng)的整體結(jié)構(gòu)框圖如圖1所示。系統(tǒng)主要由基于FPGA的數(shù)據(jù)采集電路、基于USB接口總線傳輸控制電路和計(jì)算機(jī)應(yīng)用程序三個(gè)主要部分組成。其中信號(hào)預(yù)處理電路還包括峰值檢測(cè)電路、信號(hào)觸發(fā)電路。USB接口傳輸電路主要是能實(shí)現(xiàn)數(shù)據(jù)的雙向傳輸,既要使數(shù)據(jù)采集電路采集到的數(shù)據(jù)能夠傳到計(jì)算機(jī),也要使計(jì)算機(jī)的控制信息能夠傳到硬件電路,控制數(shù)據(jù)采集工作。計(jì)算機(jī)的應(yīng)用程序要能夠?qū)Σ杉降臄?shù)據(jù)進(jìn)行處理、顯示,能夠控制硬件進(jìn)行數(shù)據(jù)采集等工作。
系統(tǒng)的基本工作原理如下:計(jì)算機(jī)首先通知FPGA開始采集數(shù)據(jù),F(xiàn)PGA等到信號(hào)觸發(fā)時(shí)刻到來時(shí)就開始從A/D轉(zhuǎn)換器中讀取500個(gè)數(shù)據(jù)存儲(chǔ)到FPGA的存儲(chǔ)器中;然后計(jì)算機(jī)就控制從FPGA讀取數(shù)據(jù),單片機(jī)接到命令后就從FPGA中讀取數(shù)據(jù)和信號(hào)的放大衰減倍數(shù)通過USB接口傳送到計(jì)算機(jī)。計(jì)算機(jī)軟件讀取了采集數(shù)據(jù)和信號(hào)的放大衰減倍數(shù)就能夠顯示出來了,并且通過控制虛擬界面就能夠?qū)崿F(xiàn)各種各樣的功能。而FPGA通過定時(shí)讀取信號(hào)的峰值幅度范圍再?zèng)Q定控制信號(hào)的放大衰減倍數(shù)。定時(shí)去重復(fù)以上過程就能夠看到信號(hào)的實(shí)時(shí)波形。
2 系統(tǒng)硬件設(shè)計(jì)
2.1 數(shù)據(jù)采集電路設(shè)計(jì)
數(shù)據(jù)采集部分的功能就是采集被測(cè)信號(hào)波形數(shù)據(jù)并把它存人到FPGA中。首先把信號(hào)進(jìn)行預(yù)處理,再經(jīng)過A/D轉(zhuǎn)換器轉(zhuǎn)換成數(shù)字信號(hào),最后存入FPGA中。數(shù)據(jù)采集部分可以分為以下幾個(gè)模塊:信號(hào)調(diào)理、A/D轉(zhuǎn)換、觸發(fā)電路、峰值檢測(cè)以及FPGA的設(shè)計(jì)。數(shù)據(jù)采集電路結(jié)構(gòu)框圖如圖2所示。
由于被測(cè)信號(hào)的種類多種多樣,相應(yīng)的采樣方式也千差萬別?;静蓸臃绞娇煞譃閮纱箢悾簩?shí)時(shí)采樣和等效時(shí)間采樣??紤]到采樣方式的基本原則是:以保證采樣精度為前提,以被測(cè)信號(hào)的具體特性為依據(jù),盡量以較低的速率實(shí)現(xiàn)采樣,從而減少數(shù)據(jù)量,降低對(duì)傳輸、變換系統(tǒng)的要求,提高數(shù)據(jù)處理的效率。因此選擇實(shí)時(shí)采樣方式。對(duì)于實(shí)時(shí)采樣,當(dāng)數(shù)字化一開始,信號(hào)波形的第一個(gè)采樣點(diǎn)就被采樣并數(shù)字化,經(jīng)過一個(gè)采樣間隔,再采入第二個(gè)子樣,這樣一直將整個(gè)信號(hào)波形數(shù)字化后存入波形示波器。實(shí)時(shí)采樣的優(yōu)點(diǎn)在于信號(hào)波形一到就采入,因此適用于任何形式的信號(hào),重復(fù)的或不重復(fù)的,單次的或連續(xù)的。所有的采樣點(diǎn)都是以時(shí)間為順序,因而易于實(shí)現(xiàn)波形顯示功能。本設(shè)計(jì)采用高的采樣頻率來實(shí)現(xiàn)對(duì)比較高的頻率信號(hào)進(jìn)行實(shí)時(shí)采樣,采用的A/D轉(zhuǎn)換器是TLC5510,采樣頻率最高可以達(dá)到20 MHz。
對(duì)于觸發(fā)電路采用比較器電路來實(shí)現(xiàn),用A/D轉(zhuǎn)換之前的模擬信號(hào)與一個(gè)固定的電壓進(jìn)行比較,比較器的輸出為一個(gè)與采樣信號(hào)同頻率的矩形波作為FPGA開始讀取數(shù)據(jù)觸發(fā)信號(hào)。具體實(shí)現(xiàn)方法如下:采樣信號(hào)接比較器的同向輸入端,可變電阻的調(diào)整端接反向輸入端,而可調(diào)電阻的另外兩端分別接電源的正負(fù)極,這樣就可以通過調(diào)節(jié)可變電阻調(diào)節(jié)觸發(fā)電平。
被測(cè)信號(hào)調(diào)理電路的作用就是使輸入信號(hào)滿足A/D轉(zhuǎn)換器的幅度要求,同時(shí)也擴(kuò)大了輸入信號(hào)的幅度范圍。比如大信號(hào)必須經(jīng)過適當(dāng)?shù)乃p,以免因?yàn)榉冗^大而損壞電路中的元器件或是引起信號(hào)失真。而小信號(hào)又需要適當(dāng)?shù)姆糯螅駝t采集恢復(fù)后的信號(hào)幅度太小,以至于無法正確地觀測(cè)信號(hào)。模擬信號(hào)調(diào)理主要包括:高阻衰減電路、程控放大器和加法器。被測(cè)信號(hào)調(diào)理電路原理圖如圖3所示。該電路主要采用多級(jí)運(yùn)算放大器電路構(gòu)成。
為了使FPGA能夠準(zhǔn)確地控制程控放大器的模擬開關(guān),使程控放大器放大或衰減后的信號(hào)幅度在±1 V之內(nèi),又能夠充分利用A/D轉(zhuǎn)換器的量程。所以FPGA必須要先知道信號(hào)的峰值電壓,這就需要采用峰值檢測(cè)電路來檢測(cè)信號(hào)的峰值電壓。采樣信號(hào)先經(jīng)過電壓跟隨器來隔離輸入信號(hào)和峰值檢測(cè)電路,再用運(yùn)算放大器、二極管和電容組成檢測(cè)信號(hào)峰值。用三極管可以對(duì)電容上的電荷進(jìn)行放電。最后經(jīng)過比較器就可知道信號(hào)的峰值范圍。FPGA通過定時(shí)檢測(cè)峰值,從而去控制模擬開關(guān),實(shí)時(shí)跟蹤信號(hào)的幅度。峰值檢測(cè)電路原理圖如圖4所示。
控制數(shù)據(jù)采集和從存儲(chǔ)器讀數(shù)據(jù)模塊的功能就是控制從A/D轉(zhuǎn)換器的輸出端中讀取數(shù)據(jù),然后存儲(chǔ)到FPGA中的存儲(chǔ)器。當(dāng)計(jì)算機(jī)需要讀數(shù)據(jù)時(shí),就控制把存儲(chǔ)器中的數(shù)據(jù)依次送出去,再通過USB接口傳送到計(jì)算機(jī)??刂茢?shù)據(jù)采集模塊和讀存儲(chǔ)器數(shù)據(jù)的電路示意圖如圖5所示。FPGA采用Altera公司生產(chǎn)的FPGA芯片EP1C3T144主芯片。
評(píng)論