【優(yōu)秀碩士博士論文】畢業(yè)論文-基于fpga的存儲(chǔ)示波器設(shè)計(jì)_第1頁(yè)
【優(yōu)秀碩士博士論文】畢業(yè)論文-基于fpga的存儲(chǔ)示波器設(shè)計(jì)_第2頁(yè)
【優(yōu)秀碩士博士論文】畢業(yè)論文-基于fpga的存儲(chǔ)示波器設(shè)計(jì)_第3頁(yè)
【優(yōu)秀碩士博士論文】畢業(yè)論文-基于fpga的存儲(chǔ)示波器設(shè)計(jì)_第4頁(yè)
【優(yōu)秀碩士博士論文】畢業(yè)論文-基于fpga的存儲(chǔ)示波器設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩55頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

基于FPGA的存儲(chǔ)示波器設(shè)計(jì)摘要虛擬儀器充分利用了計(jì)算機(jī)強(qiáng)大的軟硬件資源,把計(jì)算機(jī)技術(shù)和測(cè)量技術(shù)緊密地結(jié)合起來(lái)。它通過(guò)上位電腦和下位儀器的結(jié)合,不僅具備傳統(tǒng)儀器的功能,而且能夠通過(guò)上位機(jī)軟件實(shí)現(xiàn)硬件不具備的一些功能,還能降低儀器的整體成本。與傳統(tǒng)儀器相比,虛擬儀器在智能化程度、處理能力和可操作性等方面均具有明顯的技術(shù)優(yōu)勢(shì)。本論文設(shè)計(jì)并研制了一個(gè)基于FPGA且利用串行RS232接口的虛擬示波器。數(shù)據(jù)分析和結(jié)果輸出顯示完全由計(jì)算機(jī)軟件系統(tǒng)來(lái)完成,只有數(shù)據(jù)采集是在軟件的控制下由硬件來(lái)完成。論文內(nèi)容主要包括硬件電路設(shè)計(jì)和軟件編程;硬件電路設(shè)計(jì)了A/D轉(zhuǎn)換電路和RS232通訊接口電路,A/D轉(zhuǎn)換電路實(shí)現(xiàn)信號(hào)采集,采集結(jié)果通過(guò)RS232通訊接口傳給上位機(jī)。采用LABVIEW軟件來(lái)編寫(xiě)上位機(jī)應(yīng)用程序,編寫(xiě)了數(shù)據(jù)處理程序和人機(jī)交互界面,其中人機(jī)交互界面可以接收數(shù)據(jù)并顯示測(cè)量結(jié)果。實(shí)際應(yīng)用結(jié)果表明,本論文設(shè)計(jì)的基于RS232串口的虛擬示波器,具有方便、易用、靈活等優(yōu)點(diǎn),而且成本低廉、功能強(qiáng)大。運(yùn)用虛擬儀器技術(shù),能夠?qū)崿F(xiàn)硬件和軟件資源的共享,快速、方便地組建各種自動(dòng)測(cè)試系統(tǒng),利用計(jì)算機(jī)強(qiáng)大的功能,能夠?qū)π盘?hào)進(jìn)行采樣和波形顯示,還能夠?qū)Σ杉牟ㄐ螖?shù)據(jù)進(jìn)行存儲(chǔ)、回放和共享。關(guān)鍵詞虛擬儀器,示波器,數(shù)據(jù)采集,LABVIEWTHEDESIGNOFSTORAGEOSCILLOSCOPEBASEDONFPGAABSTRACTTHEVIRTUALINSTRUMENTSTAKEFULLADVANTAGEOFTHESOFTWAREANDHARDWARERESOURCEOFTHECOMPUTER,ANDCOMBINETHECOMPUTERTECHNOLOGYANDTHEMEASUREMENTTECHNOLOGYTIGHTLYWITHTHECOMBINATIONOFTHECOMPUTERANDTHEMEASUREMENTDEVICE,THEVIRTUALINSTRUMENTNOTONLYHASTHEFUNCTIONSOFTHETRADITIONALINSTRUMENT,BUTALSOHASMANYEXTRAFUNCTIONSBYUSINGTHECOMPUTERSOFTWAREPROGRAMWHATSMORE,ITCANREDUCETHECOSTOFTHEWHOLEEQUIPMENTCOMPAREDWITHTRADITIONALINSTRUMENT,VIRTUALINSTRUMENTHASOBVIOUSTECHNIQUEADVANTAGESINTHEDEGREEOFINTELLIGENCE,PROCESSINGABILITYANDMANEUVERABILITYETCAVIRTUALOSCILLOGRAPHWHICHISBASEDONTHEFPGAANDRS232ISDESIGNEDANDDEVELOPEDINTHISPAPERDATAANALYSISANDOUTPUTDISPLAYARECOMPLETELYREALIZEDBYTHECOMPUTERSOFTWARESYSTEM,ONLYTHEDATAACQUISITIONISCOMPLETEDBYHARDWAREUNDERTHEFUNCTIONOFTHESOFTWARETHEPRINCIPALCONTENTOFTHISPAPERINCLUDESTHEDESIGNOFTHEHARDWARECONNECTIONANDSOFTWAREPROGRAMMINGTHEANALOGTODIGITALCONVERSIONCIRCUITRYANDTHERS232INTERFACECIRCUITRYAREDESIGNEDINTHEDESIGNOFTHEHARDWARECONNECTIONTHEANALOGTODIGITALCONVERSIONCIRCUITRYCONVERTSANALOGSIGNALSTODIGITALSIGNALSANDTHERS232INTERFACECIRCUITRYTRANSMITSTHERESULTOFTHEANALOGTODIGITALCONVERSIONTOTHEPCTHEAPPLICATIONPROGRAMTHATISPROGRAMMEDWITHTHELABVIEWSOFTWAREHASACTUALIZEDTHEFUNCTIONOFDIGITALSIGNALPROCESSINGANDTHEHUMANCOMPUTERINTERACTION,ANDTHEHUMANCOMPUTERINTERACTIONCANRECEIVETHEDATAANDDISPLAYTHERESULTOFMEASUREMENTTHEPRACTICALAPPLICATIONINDICATESTHATTHISVIRTUALOSCILLOGRAPHBASEDONTHERS232HASMANYMERITSSUCHASFACILITY,EASYTOUSE,AGILENESSINADDITION,ITISLOWCOST,POWERFULAGREATVARIETYOFAUTOMATICTESTSYSTEMSWILLBECONSTRUCTEDANDTHEHARDWAREANDSOFTWARERESOURCESCANBESHAREDWAVEFORMDISPLAYCANBEDONEBYUSINGTHEPOWERFULFUNCTIONOFTHECOMPUTER,ANDTHEDATATHATHASBEENACQUIREDALSOCANBESTORED,PLAYBACKANDPARTAKENOFKEYWORDSVIRTUALINSTRUMENT,0SCILLOGRAPH,DATAACQUISITION,LABVIEW目錄摘要IABSTRACTII前言1第1章緒論211虛擬儀器概述2111虛擬儀器基本概念2112虛擬儀器的構(gòu)成3113虛擬儀器的特點(diǎn)412虛擬儀器的現(xiàn)狀和發(fā)展方向4121虛擬儀器的現(xiàn)狀4122虛擬儀器的展望613虛擬示波器的軟硬件7131LABVIEW介紹7132硬件開(kāi)發(fā)平臺(tái)814課題意義915課題的主要工作10第2章系統(tǒng)的構(gòu)想與方案設(shè)計(jì)1121開(kāi)發(fā)平臺(tái)與硬件的比較1122上位機(jī)與下位機(jī)1223方案論證1224系統(tǒng)整體框圖13第3章軟件設(shè)計(jì)1431概述1432前面板設(shè)計(jì)14321軟件設(shè)計(jì)流程圖15322前面板1533串口接收模塊1734處理模塊19341處理模塊總程序19342波形數(shù)據(jù)操作函數(shù)2035波形顯示2036程序框圖的其他組成22361頻率調(diào)節(jié)部分22362幅度調(diào)節(jié)23363創(chuàng)建數(shù)組23364水平位移與垂直位移24第4章硬件設(shè)計(jì)2541FPGA軟件設(shè)計(jì)2542FPGA設(shè)計(jì)的主要模塊27421數(shù)據(jù)采集控制模塊27422數(shù)據(jù)存儲(chǔ)模塊28423波特率發(fā)生模塊29424發(fā)送模塊30425控制模塊3143硬件下載32第5章系統(tǒng)測(cè)試與結(jié)果仿真3451FPGA軟件測(cè)試34511AD5510控制模塊的仿真波形圖34512波特率發(fā)生模塊的仿真波形35513RAM模塊的仿真波形圖35514控制模塊的仿真波形圖35515發(fā)送模塊的仿真3652LABVIEW仿真的實(shí)現(xiàn)37結(jié)論38參考文獻(xiàn)40致謝42前言本次畢業(yè)設(shè)計(jì)是利用VHDL編程,LABVIEW來(lái)設(shè)計(jì)虛擬示波器界面,能夠虛擬仿真示波器的簡(jiǎn)單功能,實(shí)現(xiàn)一臺(tái)真正意義上的基于虛擬儀器平臺(tái)的示波器的要求。并基于FPGA完成數(shù)據(jù)的采集,通過(guò)串口實(shí)現(xiàn)LABVIEW與FPGA的通信,在LABVIEW環(huán)境下完成波形的數(shù)據(jù)處理及顯示等。虛擬儀器就是在通用計(jì)算機(jī)平臺(tái)上,用戶根據(jù)自己的需求來(lái)定義和設(shè)計(jì)儀器的測(cè)量功能。它的實(shí)質(zhì)是將可以完成傳統(tǒng)儀器功能的硬件和最新計(jì)算機(jī)軟件技術(shù)充分地結(jié)合起來(lái),用以實(shí)現(xiàn)并擴(kuò)展傳統(tǒng)儀器的功能,來(lái)完成對(duì)數(shù)據(jù)的顯示、存儲(chǔ)以及分析處理。LABVIEW是實(shí)驗(yàn)室虛擬儀器集成環(huán)境LABORATORYVIRTUALINSTRUMENTENGINEERINGWORKBENCH的簡(jiǎn)稱(chēng),是美國(guó)國(guó)家儀器公司NI的創(chuàng)新軟件產(chǎn)品,也是目前應(yīng)用最廣泛、發(fā)展最快、功能最強(qiáng)的圖形化軟件開(kāi)發(fā)環(huán)境。FPGA現(xiàn)場(chǎng)可編程門(mén)陣列器件采用硬件處理技術(shù),內(nèi)部資源豐富,可以反復(fù)編程,能夠兼顧速度和靈活性,并能多路并行處理,實(shí)時(shí)性能可以預(yù)測(cè)和仿真,同時(shí)開(kāi)發(fā)平臺(tái)QUARTUSII功能非常強(qiáng)大。本文主要工作內(nèi)容包括硬件電路設(shè)計(jì)和上位機(jī)編程;硬件電路設(shè)計(jì)了A/D轉(zhuǎn)換電路和RS232通訊接口電路,A/D轉(zhuǎn)換電路實(shí)現(xiàn)信號(hào)采集,采集結(jié)果通過(guò)RS232通訊接口傳給上位機(jī)。上位機(jī)編程采用NI公司的可視化圖形編程軟件LABVIEW進(jìn)行編程,包括編寫(xiě)虛擬示波器顯示界面和功能框圖程序。主要包括以下幾個(gè)方面的工作1系統(tǒng)總體方案設(shè)計(jì)。2數(shù)據(jù)采集板設(shè)計(jì)。3RS232通信接口的實(shí)現(xiàn),設(shè)計(jì)了RS232通訊接口模塊。4上位機(jī)編程。設(shè)計(jì)內(nèi)容包括對(duì)數(shù)據(jù)進(jìn)行接收處理、編寫(xiě)虛擬示波器程序和設(shè)備驅(qū)動(dòng)程序等。第1章緒論11虛擬儀器概述電子測(cè)量?jī)x器發(fā)展至今,大體可以分為四代即模擬儀器、數(shù)字化儀器、智能儀器和虛擬儀器。虛擬儀器VIRTUALINSTRUMENT,簡(jiǎn)稱(chēng)VI是現(xiàn)代儀器技術(shù)和計(jì)算機(jī)技術(shù)深層次結(jié)合的產(chǎn)物,是當(dāng)今計(jì)算機(jī)輔助測(cè)試COMPUTERAIDEDTEST,CAT重要技術(shù)1。111虛擬儀器基本概念所謂虛擬儀器,就是在以計(jì)算機(jī)為核心的硬件平臺(tái)上,其功能由用戶設(shè)計(jì)和定義,具有虛擬面板,其測(cè)試功能由測(cè)試軟件實(shí)現(xiàn)的一種計(jì)算機(jī)儀器系統(tǒng)。虛擬儀器的實(shí)質(zhì)是利用計(jì)算機(jī)顯示器的顯示功能來(lái)模擬傳統(tǒng)儀器的控制面板,以多種形式表達(dá)輸出檢測(cè)結(jié)果利用計(jì)算機(jī)強(qiáng)大的軟件功能實(shí)現(xiàn)信號(hào)數(shù)據(jù)的運(yùn)算、分析和處理利用FO接口設(shè)備完成信號(hào)的采集測(cè)量與調(diào)理,從而完成各種測(cè)試功能的一種計(jì)算機(jī)測(cè)試系統(tǒng)。使用者用鼠標(biāo)或鍵盤(pán)操作虛擬面板,就如同使用一臺(tái)專(zhuān)用測(cè)量?jī)x器一樣2。因此,虛擬儀器的出現(xiàn),使測(cè)量?jī)x器與計(jì)算機(jī)的界限模糊了。虛擬儀器的“虛擬”兩字主要包含以下兩方面的含義3。1虛擬儀器的面板是虛擬的虛擬器面板上的各種“圖標(biāo)”與傳統(tǒng)儀器面板上的各種“器件”所完成的功能是相同的由各種開(kāi)關(guān)、按鈕、顯示器等圖標(biāo)實(shí)現(xiàn)儀器電源的“通”、“斷”,實(shí)現(xiàn)被測(cè)信號(hào)的“輸入通道”、“放大倍數(shù)”等參數(shù)的設(shè)置,以及實(shí)現(xiàn)測(cè)量結(jié)果的“數(shù)值顯示”、“波形顯示”等。2虛擬儀器測(cè)量功能是通過(guò)對(duì)圖形化軟件流程圖的編程來(lái)實(shí)現(xiàn)的虛擬儀器是在以PC為核心組成的硬件平臺(tái)支持下,通過(guò)軟件編程來(lái)實(shí)現(xiàn)儀器的功能。因?yàn)榭梢酝ㄟ^(guò)不同測(cè)試功能軟件模塊的組合來(lái)實(shí)現(xiàn)多種測(cè)試功能,所以,在硬件平臺(tái)確定后,就有“軟件就是儀器”的說(shuō)法。這也體現(xiàn)了測(cè)試技術(shù)與計(jì)算機(jī)深層次的結(jié)合4。虛擬儀器技術(shù)的實(shí)質(zhì)是充分利用最新的計(jì)算機(jī)技術(shù)來(lái)實(shí)現(xiàn)和擴(kuò)展傳統(tǒng)儀器的功能。軟件是虛擬儀器的關(guān)鍵,當(dāng)硬件確定以后,就可以通過(guò)不同的軟件實(shí)現(xiàn)不同的功能。虛擬儀器不僅可以用于電子測(cè)量、測(cè)試、分析、計(jì)量等領(lǐng)域,而且還可以用于進(jìn)行設(shè)備的監(jiān)控以及工業(yè)過(guò)程自動(dòng)化。虛擬儀器還可以廣泛應(yīng)用于電力工程、物礦勘探、醫(yī)療、振動(dòng)分析、聲學(xué)分析、故障診斷及教學(xué)科研等多個(gè)方面5。112虛擬儀器的構(gòu)成虛擬儀器的構(gòu)成方式如圖11所示PCDAQ串口儀器VXI模塊PXI模塊GPIB儀器計(jì)算機(jī)被測(cè)信號(hào)圖11虛擬儀器的構(gòu)成方式虛擬儀器從構(gòu)成要素上講,由計(jì)算機(jī)、應(yīng)用軟件和儀器硬件等構(gòu)成;從構(gòu)成方式上講,則由以DAQ板和信號(hào)調(diào)理為儀器硬件而組成的PCDAQ測(cè)試系統(tǒng),或以GPIB、VXL、SERIAL和FIELDBUS等標(biāo)準(zhǔn)總線儀器為硬件組成的GPIB系統(tǒng)6、串口系統(tǒng)和現(xiàn)場(chǎng)總線系統(tǒng)等多種形式7。無(wú)論哪種VI系統(tǒng),都是將儀器硬件搭載到筆記本電腦、臺(tái)式微機(jī)或工作站等各種計(jì)算機(jī)平臺(tái)加上應(yīng)用軟件而構(gòu)成的。113虛擬儀器的特點(diǎn)與傳統(tǒng)儀器相比虛擬儀器主要有以下優(yōu)點(diǎn)1傳統(tǒng)儀器的面板只有一個(gè),其上布置著種類(lèi)繁多的顯示與操作元件,易于導(dǎo)致許多識(shí)別與操作錯(cuò)誤。虛擬儀器與之不同,它可以通過(guò)在幾個(gè)分面板上的操作來(lái)實(shí)現(xiàn)比較復(fù)雜的功能。這樣,在每個(gè)分面板上就可以實(shí)現(xiàn)功能操作的單純化與面板布置的簡(jiǎn)捷化,從而提高操作的正確性與便捷性。同時(shí),虛擬儀器面板上的顯示元件和操作元件的種類(lèi)與形式不受“標(biāo)準(zhǔn)件”和“加工工藝”的限制,它們是由編程來(lái)實(shí)現(xiàn)的,設(shè)計(jì)者可以根據(jù)用戶的認(rèn)知要求和操作要求,設(shè)計(jì)儀器面板。2在通用硬件平臺(tái)確定后,由軟件取代傳統(tǒng)儀器中的硬件來(lái)完成儀器的功能。3儀器的功能是用戶根據(jù)需要由軟件來(lái)定義的,而不是事先由廠家定義好的。4儀器性能的改進(jìn)和功能擴(kuò)展只需要更新相關(guān)軟件設(shè)計(jì)而不需要購(gòu)買(mǎi)新的儀器。5研制周期較傳統(tǒng)儀器大為縮短。6虛擬儀器開(kāi)放、靈活,可與計(jì)算機(jī)同步發(fā)展,與網(wǎng)絡(luò)及其他周邊設(shè)備互聯(lián)。12虛擬儀器的現(xiàn)狀和發(fā)展方向121虛擬儀器的現(xiàn)狀近年來(lái),世界各國(guó)的虛擬儀器公司開(kāi)發(fā)了不少虛擬儀器開(kāi)發(fā)平臺(tái)軟件,以便使用者利用這些儀器公司提供的開(kāi)發(fā)平臺(tái)軟件組建自己的虛擬儀器或測(cè)試系統(tǒng),并編制測(cè)試軟件。最早和最具影響的開(kāi)發(fā)軟件,是NI公司的LABVIEW軟件和LABWINDOWS/CVI開(kāi)發(fā)軟件。LABVIEW采用圖形化編程方案,是非常實(shí)用的開(kāi)發(fā)軟件。LABWINDOWS/CVI是為熟悉C語(yǔ)言的開(kāi)發(fā)人員準(zhǔn)備的、在WINDOWS環(huán)境下的標(biāo)準(zhǔn)ANSIC開(kāi)發(fā)環(huán)境。除了上述的優(yōu)秀開(kāi)發(fā)軟件之外,美國(guó)HP公司的HPVEE和HPTIG平臺(tái)軟件,美國(guó)TEKTRONIS公司的EZTEST和TEKTNS軟件,以及美國(guó)HEMDATA公司的SNAPMARTE;平臺(tái)軟件,也是國(guó)際上公認(rèn)的優(yōu)秀虛擬儀器開(kāi)發(fā)平臺(tái)軟件。虛擬儀器的概念,是美國(guó)國(guó)家儀器公司NATIONALINSTRUMENTS,簡(jiǎn)稱(chēng)NI于1986年提出的。80年代以來(lái),NI公司研制和推出了許多總線系統(tǒng)的虛擬式儀器,成為這類(lèi)新型儀器世界第一生產(chǎn)大戶。此后,美國(guó)的惠普HP公司,TEKTRONIX公司,RACAL公司等也相繼推出了許多此類(lèi)儀器,并在短短的10余年便占有了世界儀器市場(chǎng)的10左右。虛擬儀器技術(shù)目前在國(guó)外發(fā)展很快,以NI公司為代表的一批廠商已經(jīng)在市場(chǎng)上推出了基于虛擬儀器技術(shù)而設(shè)計(jì)的商品化儀器產(chǎn)品。在美國(guó),虛擬儀器系統(tǒng)及其圖形編程語(yǔ)言,已作為各大學(xué)理工科學(xué)生的一門(mén)必修課程。美國(guó)的斯坦福大學(xué)的機(jī)械工程系要求三、四年級(jí)的學(xué)生在實(shí)驗(yàn)時(shí)應(yīng)用虛擬儀器進(jìn)行數(shù)據(jù)采集和實(shí)驗(yàn)控制。據(jù)“世界儀表及自動(dòng)化”雜志預(yù)測(cè),21世紀(jì)初葉,世界虛擬儀器的生產(chǎn)廠家將超過(guò)千家,其品種將達(dá)到數(shù)千種,市場(chǎng)占有率將達(dá)到50左右8。虛擬儀器將成為本世紀(jì)儀器發(fā)展的方向,而且有逐步取代傳統(tǒng)硬件化電子儀器的趨勢(shì)。作為儀器領(lǐng)域中最新興的技術(shù),虛擬儀器的開(kāi)發(fā)和研究在國(guó)內(nèi)尚屬起步階段。從90年代中期以來(lái),國(guó)內(nèi)的清華大學(xué)、重慶大學(xué)、西安交通大學(xué)、以及中科泛華電子科技公司,東方震動(dòng)和噪聲技術(shù)研究所等高校和公司,在研究和開(kāi)發(fā)虛擬儀器產(chǎn)品和虛擬儀器設(shè)計(jì)平臺(tái)以及消化吸收NI等產(chǎn)品方面做了大量工作,其成果已在汽車(chē)發(fā)動(dòng)機(jī)檢測(cè)、自動(dòng)計(jì)量控制系統(tǒng)等方面得到應(yīng)用。其中,成果比較顯著的是重慶大學(xué)測(cè)試中心所研究的虛擬儀器,其研制的產(chǎn)品已包括FFT分析儀、噪聲測(cè)試分析儀、小波變換信號(hào)分析儀、多通道數(shù)據(jù)采集器等20多個(gè)品種,并且可以根據(jù)客戶需求進(jìn)行個(gè)性化設(shè)計(jì)。這些虛擬儀器在中國(guó)計(jì)量科學(xué)研究院的測(cè)試結(jié)果表明,其產(chǎn)品性能完全達(dá)到同類(lèi)硬件儀器的技術(shù)指標(biāo)。在國(guó)內(nèi)己有部分院校的實(shí)驗(yàn)室引入了虛擬儀器系統(tǒng),復(fù)旦大學(xué)、上海交通大學(xué)、暨南大學(xué)、華中科技大學(xué)等。近一、兩年來(lái)這些學(xué)校在原有的基礎(chǔ)上,又開(kāi)發(fā)了一批新的虛擬儀器系統(tǒng)用于教學(xué)和科研。清華大學(xué)汽車(chē)系利用虛擬儀器技術(shù)構(gòu)建的汽車(chē)發(fā)動(dòng)機(jī)檢測(cè)系統(tǒng),用于汽車(chē)發(fā)動(dòng)機(jī)的出廠檢驗(yàn)。主要檢測(cè)發(fā)動(dòng)機(jī)的功率特性、負(fù)荷特性等。一臺(tái)發(fā)動(dòng)機(jī)檢測(cè)完后,就可打印出完整的檢測(cè)報(bào)告。華中科技大學(xué)機(jī)械學(xué)院信息所開(kāi)發(fā)出的INVENTOR可重構(gòu)虛擬實(shí)驗(yàn)臺(tái),深圳市藍(lán)津信息技術(shù)有限公司開(kāi)發(fā)出了DRVI快速可重組虛擬儀器平臺(tái),可廣泛用于實(shí)驗(yàn)室、工程測(cè)控等場(chǎng)合。浙江大學(xué)儀器系在“九五”期間也開(kāi)發(fā)了中文VPP可視化平臺(tái),它們?yōu)閷?shí)現(xiàn)儀器編程提供了便捷的途徑。此外,國(guó)內(nèi)己有幾家企業(yè)在研制虛擬儀器。虛擬儀器的開(kāi)發(fā)廠家,為擴(kuò)大虛擬儀器的功能,在測(cè)量結(jié)果的數(shù)據(jù)處理、表達(dá)模式及變換方面也做了許多工作,發(fā)布了各種軟件,建立了數(shù)據(jù)處理的高級(jí)分析庫(kù)和開(kāi)發(fā)工具庫(kù)例如測(cè)量結(jié)果的譜分析、快速傅立葉變換、各種數(shù)字濾波器、卷積處理和相關(guān)函數(shù)處理、微積分、峰值等,使虛擬儀器發(fā)展成為可以組建極為復(fù)雜自動(dòng)測(cè)試系統(tǒng)的儀器系統(tǒng)。專(zhuān)家預(yù)測(cè)未來(lái)的幾年內(nèi),國(guó)內(nèi)將有大批企業(yè)使用虛擬儀器系統(tǒng)對(duì)生產(chǎn)設(shè)備的運(yùn)行狀況進(jìn)行實(shí)時(shí)監(jiān)測(cè)。隨著微型計(jì)算機(jī)的發(fā)展,虛擬儀器將會(huì)逐步取代傳統(tǒng)的測(cè)試儀器而成為測(cè)試儀器的主流9。122虛擬儀器的展望虛擬儀器技術(shù)經(jīng)過(guò)十幾年發(fā)展,而今正沿著總線與驅(qū)動(dòng)程序標(biāo)準(zhǔn)化、硬/軟件模塊化、編程平臺(tái)圖形化和硬件模塊的即插即用方向前進(jìn),以開(kāi)放式模塊化儀器標(biāo)準(zhǔn)為基礎(chǔ)的虛擬儀器標(biāo)準(zhǔn)正日趨完善,加上計(jì)算機(jī)技術(shù)和網(wǎng)絡(luò)技術(shù)的迅猛發(fā)展,建立在虛擬儀器技術(shù)上的各種功能強(qiáng)大、性能優(yōu)良的先進(jìn)儀器將層出不窮,價(jià)格也會(huì)越來(lái)越低,使用虛擬儀器進(jìn)行研究、設(shè)計(jì)、測(cè)試將成為一種趨勢(shì),同樣,虛擬儀器及技術(shù)也將成為學(xué)校未來(lái)教學(xué)科研的重要方法和手段,特別是在理工科學(xué)校其應(yīng)用前景非常廣闊10。虛擬儀器可以取代測(cè)量技術(shù)傳統(tǒng)領(lǐng)域的各類(lèi)儀器,“沒(méi)有測(cè)量就沒(méi)有鑒別,科學(xué)技術(shù)就不能前進(jìn)”。虛擬儀器將會(huì)在科學(xué)技術(shù)的各個(gè)領(lǐng)域得到廣泛應(yīng)用,對(duì)科學(xué)技術(shù)的發(fā)展和工業(yè)生產(chǎn)將產(chǎn)生不可估量的影響11。13虛擬示波器的軟硬件虛擬儀器由儀器硬件和功能模塊軟件兩部分組成。虛擬儀器的硬件主體是電子計(jì)算機(jī),通常是個(gè)人計(jì)算機(jī),也可以是任何通用計(jì)算機(jī)。所設(shè)計(jì)的雙蹤虛擬示波器主要是有一個(gè)FPGA開(kāi)發(fā)板和用LABVIEW開(kāi)發(fā)的功能模塊軟件組成。131LABVIEW介紹LABVIEW是實(shí)驗(yàn)室虛擬儀器集成環(huán)境LABORATORYVIRTUALINSTRUMENTENGINEERINGWORKBENCH的簡(jiǎn)稱(chēng),是美國(guó)國(guó)家儀器公司NI的創(chuàng)新軟件產(chǎn)品,也是目前應(yīng)用最廣泛、發(fā)展最快、功能最強(qiáng)的圖形化軟件開(kāi)發(fā)環(huán)境12。LABVIEW是一個(gè)開(kāi)放式的虛擬儀器開(kāi)發(fā)系統(tǒng)應(yīng)用軟件,它為設(shè)計(jì)者提供了一個(gè)便捷、輕松的設(shè)計(jì)環(huán)境,利用它設(shè)計(jì)者可以象搭積木一樣,輕松組建一個(gè)測(cè)量系統(tǒng)或數(shù)據(jù)采集系統(tǒng),并任意構(gòu)造自己的儀器面板,而無(wú)需進(jìn)行任何繁瑣的計(jì)算機(jī)程序代碼的編寫(xiě),從而可以大大簡(jiǎn)化程序的設(shè)計(jì)。所有的LABVIEW應(yīng)用程序,即虛擬儀器,它包括前面板FRONTPANEL、流程圖BLOCKDIAGRAM以及圖標(biāo)/連結(jié)器ICON/CONNECTOR三部分13。前面板是圖形用戶界面,也就是VI的虛擬儀器面板,這一界面上有用戶輸入和顯示輸出兩類(lèi)對(duì)象,具體表現(xiàn)有開(kāi)關(guān)、旋鈕、圖形以及其他控制CONTROL和顯示對(duì)象INDICATOR。每一個(gè)程序前面板都對(duì)應(yīng)著一段框圖程序??驁D程序用LABVIEW圖形編程語(yǔ)言編寫(xiě),可以把它理解成傳統(tǒng)程序的源代碼??驁D程序由端口、節(jié)點(diǎn)、圖框和連線構(gòu)成。其中端口用來(lái)控制程序前面板和顯示傳遞數(shù)據(jù),節(jié)點(diǎn)被用來(lái)實(shí)現(xiàn)函數(shù)和功能調(diào)用,圖框被用來(lái)實(shí)現(xiàn)結(jié)構(gòu)化程序控制命令,而連線代表程序執(zhí)行過(guò)程中的數(shù)據(jù)流,定義了框圖內(nèi)的數(shù)據(jù)流動(dòng)方向。LABVIEW的操作模板LABVIEW具有多個(gè)圖形化的操作模板,用于創(chuàng)建和運(yùn)行程序。這些操作模板可以隨意在屏幕上移動(dòng),并可以放置在屏幕的任意位置。操作模板共有三類(lèi),工具TOOLS模板、控制CONTROLS模板和功能FUNCTIONS模板14。工具模板TOOLSPALETTE為編程者提供了各種用于創(chuàng)建、修改和調(diào)試VI程序的工具,當(dāng)從模板內(nèi)選擇了任一種工具后,鼠標(biāo)箭頭就會(huì)變成該工具相應(yīng)的形狀??刂颇0錍ONTROLSPALETTE可以為前面板添加輸入控制和輸出顯示。功能模板FUNCTIONSPALETTE是創(chuàng)建框圖程序的工具。如圖21是LABVIEW的前面板和程序框圖以Y4,X4為例圖21前面板和框圖程序132硬件開(kāi)發(fā)平臺(tái)FPGA(現(xiàn)場(chǎng)可編程門(mén)陣列)器件采用硬件處理技術(shù),內(nèi)部資源豐富,可以反復(fù)編程,能夠兼顧速度和靈活性,并能多路并行處理,實(shí)時(shí)性能可以預(yù)測(cè)和仿真,同時(shí)開(kāi)發(fā)平臺(tái)QUARTUSII功能非常強(qiáng)大。VHDL語(yǔ)言覆蓋面廣,描述能力強(qiáng),能支持硬件的設(shè)計(jì)、驗(yàn)證、綜合和測(cè)試,是一種多層次的硬件描述語(yǔ)言。FPGA介紹在集成電路設(shè)計(jì)領(lǐng)域中,ASIC一直以來(lái)都以其高密集門(mén)封裝和低成本的技術(shù)優(yōu)勢(shì)統(tǒng)領(lǐng)市場(chǎng),最近幾年以現(xiàn)場(chǎng)可編程門(mén)陣列FPGA為核心的可編程邏輯器件卻成為了集成電路中發(fā)展得最快的產(chǎn)品。FPGA性能特點(diǎn)FPGA通常由可編程邏輯功能模塊、可編程輸入輸出模塊和可編程內(nèi)部互連資源等基本的資源構(gòu)成,通過(guò)編程可以設(shè)計(jì)實(shí)現(xiàn)不同的功能模塊。有些FPGA中還集成了存儲(chǔ)器(BLOCKRAM和SELECTRAM)、數(shù)字時(shí)鐘管理單元(完成分頻/倍頻、數(shù)字鎖相和延遲功能的DLL和DCM)、算術(shù)運(yùn)算單元(乘法器、加法器)以及特殊功能模塊(MAC、微處理器等硬IPCORE)等更豐富的資源。FPGA開(kāi)發(fā)工具包括了各種輸入工具、仿真工具、版圖設(shè)計(jì)工具和編程器等全套產(chǎn)品,電路設(shè)計(jì)人員在很短的時(shí)間就可以完成電路的輸入、編譯、優(yōu)化、仿真,直至最后芯片的制作(物理版圖映射),為復(fù)雜的設(shè)計(jì)應(yīng)用,實(shí)現(xiàn)片上系統(tǒng)SOC提供了可能。雖然ASIC的成本很低,但設(shè)計(jì)周期長(zhǎng)、投入費(fèi)用高,風(fēng)險(xiǎn)較大,與之相比FPGA是特殊的ASIC芯片,除了具有ASIC的優(yōu)點(diǎn)外,還有如下特點(diǎn)1芯片規(guī)模不斷增大,邏輯門(mén)數(shù)己達(dá)千萬(wàn)門(mén),功能增強(qiáng)到可實(shí)現(xiàn)系統(tǒng)集成;2設(shè)計(jì)方式靈活,不需要改變外圍電路,就可以設(shè)計(jì)實(shí)現(xiàn)不同的功能;3應(yīng)用FPGA進(jìn)行設(shè)計(jì),一次性投入低,設(shè)計(jì)周期短,在出廠前進(jìn)行的百分之百的測(cè)試減少了很多潛在的設(shè)計(jì)風(fēng)險(xiǎn)和費(fèi)用;4FPGA適用子正向設(shè)計(jì),對(duì)知識(shí)產(chǎn)權(quán)的保護(hù)也非常有利。14課題意義在科學(xué)研究和實(shí)驗(yàn)教學(xué)環(huán)節(jié)中,儀器是最基本的基礎(chǔ),而示波器又是最常用的儀器之一。在多數(shù)學(xué)校由于各種客觀條件限制,一次性投入大量專(zhuān)用示波器也是不現(xiàn)實(shí)的。而且目前高精度、具有數(shù)據(jù)存儲(chǔ)能力的示波器,生產(chǎn)工藝復(fù)雜,價(jià)格昂貴。所以,本課題就此情況基于FPGA和LABVIEW編程來(lái)設(shè)計(jì)虛擬示波器。使用虛擬示波器,老師利用虛擬示波器更能直觀的向?qū)W生講解、演示實(shí)驗(yàn)和教學(xué)內(nèi)容,學(xué)生既可以避免繁瑣的實(shí)驗(yàn)準(zhǔn)備過(guò)程,又可以付出更多時(shí)間在對(duì)示波器使用的學(xué)習(xí)和實(shí)驗(yàn)本身上。而且,在教學(xué)和研究的過(guò)程中,它的使用讓以往復(fù)雜的數(shù)據(jù)采集工作變的異常簡(jiǎn)單,老師和同學(xué)都可以集中時(shí)間和精力用于實(shí)驗(yàn)的執(zhí)行,數(shù)據(jù)的分析及結(jié)論的總結(jié)上,而不用將大量的時(shí)間花費(fèi)在實(shí)驗(yàn)系統(tǒng)設(shè)備的搭建上。從而,提高工作、科研和學(xué)習(xí)效率。同時(shí)虛擬數(shù)字存儲(chǔ)示波器的設(shè)計(jì)有一定的經(jīng)濟(jì)價(jià)值;虛擬示波器能充分發(fā)揮虛擬儀器結(jié)構(gòu)簡(jiǎn)單、功能豐富、價(jià)格低廉、能重復(fù)開(kāi)發(fā)、用戶可自定義的優(yōu)勢(shì)。設(shè)計(jì)的虛擬數(shù)字存儲(chǔ)示波器,可同時(shí)顯示、記錄和存儲(chǔ)輸入的波形。15課題的主要工作結(jié)合虛擬儀器技術(shù)和軟件編程技術(shù),本文設(shè)計(jì)并實(shí)現(xiàn)了一個(gè)虛擬示波器。整個(gè)系統(tǒng)分為硬件和軟件兩個(gè)部分。硬件部分主要由計(jì)算機(jī)和FPGA實(shí)驗(yàn)開(kāi)發(fā)板組成。FPGA實(shí)驗(yàn)開(kāi)發(fā)板采用杭州康芯電子有限公司的GW48系列SOPC/EDA實(shí)驗(yàn)開(kāi)發(fā)系統(tǒng),并在開(kāi)發(fā)系統(tǒng)上使用高速采集A/D模塊TLC5510實(shí)現(xiàn)數(shù)據(jù)采集,通過(guò)開(kāi)發(fā)板上RAM模塊來(lái)完成數(shù)據(jù)的存儲(chǔ)。軟件部分主要由QUARTUS50軟件和LABVIEW82軟件進(jìn)行設(shè)計(jì)。首先進(jìn)行虛擬示波器的整體設(shè)計(jì);在QUARTUS環(huán)境下,用VHDL語(yǔ)言進(jìn)行編程,采用模塊化思想,按照系統(tǒng)框圖進(jìn)行各個(gè)模塊設(shè)計(jì),并使用FPGA編程下載;其次掌握虛擬儀器的軟件編程環(huán)境LABVIEW的使用;用圖形化編程語(yǔ)言LABVIEW實(shí)現(xiàn)虛擬示波器的數(shù)據(jù)接收模塊、數(shù)據(jù)處理模塊、顯示模塊的設(shè)計(jì)。計(jì)算機(jī)與FPGA之間的通訊采用RS232接口,串行傳送時(shí)數(shù)據(jù)是一位一位串行傳送的,而計(jì)算機(jī)處理數(shù)據(jù)是并行數(shù)據(jù)。所以當(dāng)數(shù)據(jù)由計(jì)算機(jī)送至數(shù)據(jù)發(fā)送器時(shí),首先把串行數(shù)據(jù)轉(zhuǎn)換為并行數(shù)才能送入計(jì)算機(jī)處理。因此串并轉(zhuǎn)換是串行接口電路的重要任務(wù)。第2章系統(tǒng)的構(gòu)想與方案設(shè)計(jì)21開(kāi)發(fā)平臺(tái)與硬件的比較目前,能夠用于虛擬儀器系統(tǒng)開(kāi)發(fā)、比較成熟的軟件開(kāi)發(fā)平臺(tái)主要有兩大類(lèi)一類(lèi)是通用的可視化軟件編程環(huán)境,主要有MICROSOFT公司的VISUALC和VISUALBASIC、INPRISE公司的DELPHI和CBUILDER等;另一類(lèi)是一些公司推出的專(zhuān)用與虛擬儀器開(kāi)發(fā)軟件編程,主要有AGILENT公司的圖形化編程環(huán)境AGILENTVEE、NI公司的圖形化編程環(huán)境LABVIEW及文本編輯環(huán)境LABWINDOWS/CVI。其中,NI公司的虛擬儀器開(kāi)發(fā)平臺(tái)LABVIEW作為一種模塊化、圖形化程序設(shè)計(jì)工具具有圖形化程序設(shè)計(jì)編程簡(jiǎn)單、直觀、開(kāi)發(fā)效率高、測(cè)試系統(tǒng)開(kāi)發(fā)完整等優(yōu)點(diǎn)。在國(guó)內(nèi)外,航天、航空、通信、汽車(chē)、半導(dǎo)體、自動(dòng)控制和生物醫(yī)學(xué)等世界范圍的眾多領(lǐng)域內(nèi)得到廣泛應(yīng)用。隨著虛擬儀器技術(shù)的不斷發(fā)展,圖形虛擬儀器依靠其自身的優(yōu)勢(shì)使它在儀器市場(chǎng)的競(jìng)爭(zhēng)力不斷增強(qiáng)。信號(hào)采集可以通過(guò)采集卡、單片機(jī)、FPGA器件等來(lái)實(shí)現(xiàn)。LABVIEW可通過(guò)數(shù)據(jù)采集卡顯示實(shí)際信號(hào)波形。用數(shù)據(jù)采集卡采集實(shí)測(cè)信號(hào)時(shí),得到一組離散的信號(hào)值,將信號(hào)值存放在數(shù)組中,經(jīng)過(guò)信號(hào)分析和處理運(yùn)算后,通過(guò)圖形顯示控件在計(jì)算機(jī)顯示器上逐點(diǎn)顯示并連線,即可實(shí)現(xiàn)被測(cè)信號(hào)的實(shí)測(cè)顯示。由于PCI總線傳輸速率高,數(shù)據(jù)吞吐量大,因此基于PCI總線的數(shù)據(jù)采集卡成為設(shè)計(jì)的主流。但采集卡價(jià)格昂貴。單片機(jī)是一種微型計(jì)算機(jī),它在一塊芯片上集成了計(jì)算機(jī)的所有基本功能部件,如中央處理器、隨機(jī)讀寫(xiě)存儲(chǔ)器、只讀存儲(chǔ)器、輸入輸出接口電路、串行通訊接口電路等。隨著數(shù)字技術(shù)的發(fā)展,由單片機(jī)構(gòu)成的控制系統(tǒng)日益復(fù)雜,尤其在要求響應(yīng)速度快、實(shí)時(shí)性強(qiáng)、控制量多的應(yīng)用場(chǎng)合,處理速度較慢的單片機(jī)則顯得難以勝任。FPGA(現(xiàn)場(chǎng)可編程門(mén)陣列)器件采用硬件處理技術(shù),內(nèi)部資源豐富,可以反復(fù)編程,能夠兼顧速度和靈活性,并能多路并行處理,實(shí)時(shí)性能可以預(yù)測(cè)和仿真,同時(shí)開(kāi)發(fā)平臺(tái)QUARTUSII功能非常強(qiáng)大。所以本次設(shè)計(jì)采用SOPC技術(shù)基于FPGA芯片,提供所要采集的信號(hào)。通過(guò)上述比較,此次設(shè)計(jì)選擇當(dāng)前最為流行圖形化編程語(yǔ)言的LABVIEW作為上位機(jī)設(shè)計(jì)開(kāi)發(fā)平臺(tái),硬件為杭州康芯公司研發(fā)的GW48實(shí)驗(yàn)箱,用硬件描述語(yǔ)言VHDL對(duì)實(shí)驗(yàn)箱中的CYCLONEEP1C6Q240C8編程完成硬件設(shè)計(jì)。22上位機(jī)與下位機(jī)在本設(shè)計(jì)中,F(xiàn)PGA采集輸入信號(hào)的數(shù)據(jù),來(lái)得到上位機(jī)上虛擬示波器所需要的數(shù)據(jù),此數(shù)據(jù)通過(guò)RS232串口通信來(lái)完成FPGA在此設(shè)計(jì)中的功能,應(yīng)為下位機(jī)。通過(guò)在PC上的接收模塊來(lái)完成數(shù)據(jù)來(lái)完成波形顯示所需要的數(shù)據(jù),操作LABVIEW的編寫(xiě)的人機(jī)交互界面,發(fā)送波形指令顯示調(diào)節(jié)波形顯示,應(yīng)為上位機(jī)。上位機(jī)是指人可以直接發(fā)出操控命令的計(jì)算機(jī),一般是PC,屏幕上顯示各種信號(hào)變化(液壓,水位,溫度等)。下位機(jī)是直接控制設(shè)備獲取設(shè)備狀況的的計(jì)算機(jī),一般是PLC/單片機(jī)之類(lèi)的。上位機(jī)發(fā)出的命令首先給下位機(jī),下位機(jī)再根據(jù)此命令解釋成相應(yīng)時(shí)序信號(hào)直接控制相應(yīng)設(shè)備。下位機(jī)不時(shí)讀取設(shè)備狀態(tài)數(shù)據(jù)(一般模擬量),轉(zhuǎn)化成數(shù)字信號(hào)反饋給上位機(jī)。簡(jiǎn)言之如此,真實(shí)情況千差萬(wàn)別不離其宗。上下位機(jī)都需要編程,都有專(zhuān)門(mén)的開(kāi)發(fā)系統(tǒng)。在概念上控制者和提供服務(wù)者是上位機(jī),被控制者和被服務(wù)者是下位機(jī),也可以理解為主機(jī)和從機(jī)的關(guān)系,但上位機(jī)和下位機(jī)是可以轉(zhuǎn)換的。兩機(jī)如何通訊,一般取決于下位機(jī)。下位機(jī)一般處于底層控制,上位機(jī)可以編程后,傳入下位機(jī)或者集中管理下位機(jī),下位機(jī)在有存儲(chǔ)控制程序的情況下,可脫離上位機(jī)工作。23方案論證根據(jù)上面所述可以得出以下方案方案一使用一個(gè)串口發(fā)送一個(gè)周期的數(shù)據(jù)。在FPGA中進(jìn)行波形數(shù)據(jù)的采集并把一個(gè)周期的數(shù)據(jù)存儲(chǔ),然后通過(guò)串口發(fā)送給PC。以LABVIEW軟件為開(kāi)發(fā)平臺(tái),在LABVIEW中通過(guò)接收模塊接受波形數(shù)據(jù),對(duì)接收的波形數(shù)據(jù)在虛擬示波器中處理后經(jīng)過(guò)數(shù)據(jù)綁定后在波形趨勢(shì)圖上顯示一個(gè)周期的結(jié)果。方案二使用一個(gè)串口連續(xù)發(fā)送整個(gè)RAM的數(shù)據(jù)。在FPGA中進(jìn)行波形數(shù)據(jù)采集,然后通過(guò)一個(gè)控制模塊,控制數(shù)據(jù)的采集、存儲(chǔ)與發(fā)送。使用高速A/D采集數(shù)據(jù),控制數(shù)據(jù)剛好存儲(chǔ)滿一個(gè)RAM,然后對(duì)整個(gè)RAM的數(shù)據(jù)統(tǒng)一發(fā)送。再以LABVIEW軟件為開(kāi)發(fā)平臺(tái),在LABVIEW程序中對(duì)控制接收的數(shù)據(jù)進(jìn)行綁定顯示,再在界面上調(diào)整顯示一個(gè)周期的波形。兩種方案都是通過(guò)串口RS232發(fā)送的波形數(shù)據(jù)。但由于要正好存滿一個(gè)周期的數(shù)據(jù)不好控制,而且這一個(gè)周期的數(shù)據(jù)是不是很理想。所以第一種方案比第二種方案顯得不適用。而且在LABVIEW中第二種方案中,可以挑選采樣點(diǎn)比較好的進(jìn)行放大顯示。對(duì)于第一種的方案,雖然也可以設(shè)計(jì)出來(lái),但相比之下,第二種實(shí)現(xiàn)起來(lái)較為容易,所以本設(shè)計(jì)采用的是方案二。24系統(tǒng)整體框圖整個(gè)系統(tǒng)可以分為L(zhǎng)ABVIEW設(shè)計(jì)與FPGA設(shè)計(jì)兩大部分,主要可以分為A/D采集,數(shù)據(jù)存儲(chǔ),串口發(fā)送,串口接收,數(shù)據(jù)處理,虛擬界面。如圖21總系統(tǒng)框圖被測(cè)信號(hào)A/D數(shù)據(jù)采集RAM數(shù)據(jù)存儲(chǔ)串口發(fā)送FPGA控制PC串口接收LABVIEW人機(jī)交互界面圖21總系統(tǒng)框圖第3章軟件設(shè)計(jì)31概述創(chuàng)建虛擬儀器的過(guò)程共分三步(1)設(shè)計(jì)虛擬儀器的前面板。虛擬儀器的交互式用戶接口被稱(chēng)為前面板,它是仿真實(shí)際儀器的面板。前面板包含旋鈕、按鈕、圖形和控制和顯示對(duì)象,通過(guò)鼠標(biāo)和鍵盤(pán)為控制對(duì)象輸入數(shù)據(jù),在計(jì)算機(jī)屏幕上觀看結(jié)果。(2)編寫(xiě)虛擬儀器流程圖。流程圖是一個(gè)編程問(wèn)題的圖形化解決方案(也是虛擬儀器的源代碼)15。虛擬儀器從流程圖中接受命令。(3)確定虛擬儀器的圖標(biāo)和連接(表示某一虛擬子儀器)的參數(shù)列表,圖標(biāo)和連接允許將此儀器作為最高級(jí)的程序,也可以作為其他程序或子程序中的程序(子儀器)。采用模塊化的軟件設(shè)計(jì)思想編寫(xiě),每個(gè)功能的實(shí)現(xiàn)由一個(gè)模塊完成,系統(tǒng)軟件總體包裹數(shù)據(jù)接收、數(shù)據(jù)分析處理等模塊,最終實(shí)現(xiàn)數(shù)據(jù)接收、處理、記錄、顯示等功能16。系統(tǒng)組成如圖31被測(cè)信號(hào)高速A/D數(shù)據(jù)采集串口傳輸計(jì)算機(jī)軟面板串口接收數(shù)據(jù)分析與處理波形顯示圖31系統(tǒng)組成框圖32前面板設(shè)計(jì)LABVIEW前面板用于設(shè)置輸入數(shù)值和觀察輸出量17,用于模擬真實(shí)示波器的前面板。由于虛擬面板直接面向用戶,是虛擬示波器控制軟件的核心。設(shè)計(jì)前面板時(shí),主要考慮界面美觀,操作簡(jiǎn)潔,用戶可以通過(guò)前面板中的開(kāi)關(guān)和旋鈕模擬傳統(tǒng)儀器的操作,通過(guò)鍵盤(pán)和鼠標(biāo)實(shí)現(xiàn)對(duì)虛擬儀器的控制。前面板上設(shè)有各個(gè)功能模塊按鈕,當(dāng)按下相應(yīng)按鈕時(shí),即可調(diào)用該子程序。321軟件設(shè)計(jì)流程圖在LABVIEW軟件設(shè)計(jì)中,有接收、數(shù)據(jù)處理、波形顯示等幾個(gè)模塊,并有垂直位移、水平位移等控鍵控制波形顯示。其設(shè)計(jì)流程圖如圖32開(kāi)始數(shù)值控制水平垂直調(diào)節(jié)波形顯示處理生成波形處理分析頻率輸入串口接收?qǐng)D32軟件設(shè)計(jì)流程圖322前面板圖33示波器的前面板圖根據(jù)傳統(tǒng)示波器的面板控鍵的功能,利用LABVIEW中的控制模板,分別在設(shè)計(jì)面板上放入模擬實(shí)際控鍵的顯示器、通道選擇控鍵、垂直位移控鍵、水平位移控鍵、開(kāi)關(guān)控鍵、幅值與相位控鍵等。設(shè)計(jì)的前面板如圖33其程序框圖為圖34圖34示波器程序框圖33串口接收模塊LABVIEW提供了功能強(qiáng)大的VISA庫(kù)。VISA(VIRTUALINSTRUMENTSOFTWAREARCHITECTURE)虛擬儀器軟件規(guī)范,是用于儀器編程的標(biāo)準(zhǔn)I/O函數(shù)庫(kù)及其相關(guān)規(guī)范的總稱(chēng)。VISA庫(kù)駐留于計(jì)算機(jī)系統(tǒng)中,完成計(jì)算機(jī)與儀器之間的連接,用以實(shí)現(xiàn)對(duì)儀器的程序控制,其實(shí)質(zhì)是用于虛擬儀器系統(tǒng)的標(biāo)準(zhǔn)的API。VISA本身不具備編程能力,它是一個(gè)高層API,通過(guò)調(diào)用底層驅(qū)動(dòng)程序來(lái)實(shí)現(xiàn)對(duì)儀器的編程。VISA是采用VPP標(biāo)準(zhǔn)的I/O接口軟件,與其它現(xiàn)存的I/O接口軟件相比,VISA的I/O控制功能具有如下幾個(gè)特點(diǎn)適用于各種儀器類(lèi)型如VXI儀器、GPIB儀器、RS232串行儀器、消息基器件、寄存器器件、存儲(chǔ)器器件等儀器);適用于各種硬件接口類(lèi)型;適用于單、多處理器結(jié)構(gòu)或分布式網(wǎng)絡(luò)結(jié)構(gòu);適用于多種網(wǎng)絡(luò)機(jī)制。當(dāng)然,有了VISA并不是說(shuō)用戶不需要安裝特定的儀器驅(qū)動(dòng)程序就可以直接和儀器通信了。恰恰相反,VISA就是通過(guò)特定的儀器驅(qū)動(dòng)程序和儀器通信的。因此在使用VISA與儀器驅(qū)動(dòng)程序之前必須安裝儀器驅(qū)動(dòng),并需要通過(guò)MAX進(jìn)行合適的配置。通過(guò)VISA函數(shù)可以與GPIB、USB、串口、PXI、VXI和以太網(wǎng)中的任何一種總線通信。本設(shè)計(jì)采用的是串口,如圖35所示的程序用來(lái)讀取串口設(shè)備的標(biāo)示符18。VISA函數(shù)是通過(guò)VISARESOURCENAME來(lái)標(biāo)示儀器。圖35通過(guò)VISA讀寫(xiě)串口設(shè)備圖36通過(guò)串口配置函數(shù)配置串口其格式如式INTERFACETYPEBOARDINDEXADDRESSINSTR其中,INTERFACETYPE為接口類(lèi)型;BOARDINDEX為從0開(kāi)始的接口索引號(hào);ADDRESS為儀器地址。本設(shè)計(jì)用的是串口,所以該參數(shù)無(wú)效。圖36是通過(guò)串口配置函數(shù)配置串口。在進(jìn)行VISA讀寫(xiě)之前需要通過(guò)VISAOPEN函數(shù)打開(kāi)一個(gè)VISASESSION。打開(kāi)VISASESSION后就可以通過(guò)這個(gè)SESSION進(jìn)行通信。一般來(lái)說(shuō),用戶可以將VISAOPEN函數(shù)放在主循環(huán)外,讀取函數(shù)放在循環(huán)內(nèi),這樣就不用多次打開(kāi)VISA而浪費(fèi)資源了。在高級(jí)VISA面板下有更多的VISA高級(jí)函數(shù)。本設(shè)計(jì)中為了更細(xì)節(jié)地控制串口接口,使用了LABVIEW中提供的基于VISA的高級(jí)串口控制函數(shù),它可以對(duì)串口進(jìn)行詳細(xì)的配置,譬如超時(shí)時(shí)間、波特率、數(shù)據(jù)位和奇偶校驗(yàn)位等。模塊中VISACLOSE也是必不可少一部分。在這部分中設(shè)置啟用終止符為FLASE,超時(shí)為10000(10秒),VISA資源名稱(chēng)為COM1,波特率為9600,數(shù)據(jù)比特為8位,奇偶校驗(yàn)無(wú),一位停止位,無(wú)流控制。34處理模塊此模塊主要是處理接受過(guò)來(lái)的數(shù)據(jù),以輸出能在波形顯示部分顯示的數(shù)據(jù)。輸入信號(hào)有重置信號(hào)、幅值、頻率、水平位移、垂直位移等,輸出是一個(gè)組合的波形數(shù)據(jù)。由于接收模塊送出的數(shù)據(jù)是個(gè)十進(jìn)制數(shù),所以在幅值的輸入部分首先要先轉(zhuǎn)換為數(shù)組的形式才能是“組建波形”的合適數(shù)據(jù)。這要求一個(gè)初始化數(shù)組來(lái)存儲(chǔ)一定的數(shù)據(jù),進(jìn)而創(chuàng)建數(shù)組。341處理模塊總程序頻率是經(jīng)過(guò)倒數(shù)轉(zhuǎn)變成為周期,即數(shù)組中兩數(shù)的時(shí)間間隔。水平位移是通過(guò)調(diào)節(jié)數(shù)組序列前的標(biāo)號(hào)數(shù)來(lái)實(shí)現(xiàn)能在波形圖上顯示的波形在X坐標(biāo)上的改變。垂直位移是通過(guò)位移的單位格數(shù)和數(shù)組在進(jìn)入組建波形前哎實(shí)現(xiàn)的,這樣可以直接通過(guò)與其他調(diào)節(jié)配合來(lái)正確調(diào)節(jié)垂直位移。重置信號(hào)是其中的一個(gè)控件。其程序框圖如圖37圖37處理模塊程序框圖342波形數(shù)據(jù)操作函數(shù)雖然波形數(shù)據(jù)是一種預(yù)定義格式的簇,但是必須用專(zhuān)用的波形數(shù)據(jù)操作函數(shù)才能對(duì)它進(jìn)行操作,其中某些操作函數(shù)與簇的操作函數(shù)非常類(lèi)似。其中最基本的幾個(gè)函數(shù)是獲得波形數(shù)據(jù)內(nèi)部元素、綁定波形數(shù)據(jù)、設(shè)置波形屬性和獲得波形屬性等。其中本設(shè)計(jì)用到的是綁定波形數(shù)據(jù)函數(shù)。它類(lèi)似于簇函數(shù)中的按元素名稱(chēng)打包函數(shù)。通過(guò)該函數(shù)可以將波形數(shù)據(jù)的各個(gè)元素綁定在一起。若波形端子沒(méi)有接入,則根據(jù)綁定的元素創(chuàng)建一個(gè)新的波形。若波形端子有接入,則對(duì)波形進(jìn)行修改。如圖38,沒(méi)有波形輸入,而是輸入DT、Y、TO進(jìn)行波形組合,創(chuàng)建新波形。圖38利用綁定波形數(shù)據(jù)創(chuàng)建波形35波形顯示為了方便地顯示波形,LABVIEW專(zhuān)門(mén)定義了波形數(shù)據(jù)類(lèi)型。它實(shí)際上就是按照一定格式預(yù)定義的簇,在信號(hào)采集、處理和分析過(guò)程中經(jīng)常會(huì)用到它。當(dāng)然并不是只有滿足波形數(shù)據(jù)控件定義的數(shù)據(jù)格式才能在波形圖中顯示,其他的數(shù)組和簇類(lèi)型也能在波形圖中作為圖形顯示。本設(shè)計(jì)中采用的是經(jīng)過(guò)數(shù)據(jù)處理直接在圖表中顯示波形。而此次設(shè)計(jì)是電子技術(shù)實(shí)驗(yàn)室真實(shí)的XJ4323型雙蹤示波器為藍(lán)本,所以要經(jīng)過(guò)在波形圖表的屬性了對(duì)波形趨勢(shì)圖顯示表進(jìn)行設(shè)置得到圖39圖39波形趨勢(shì)圖波形顯示部分實(shí)現(xiàn)波形顯示,主要通過(guò)旋鈕和按鈕操作來(lái)完成對(duì)波形進(jìn)行放大、頻率調(diào)整等控制。但顯示所有數(shù)據(jù)的總個(gè)數(shù)或顯示波形的長(zhǎng)度是一定的,新數(shù)據(jù)不斷刷新掉舊數(shù)據(jù)而得以顯示,輸入數(shù)據(jù)可以為一維或二維數(shù)組,以顯示相應(yīng)的動(dòng)態(tài)波形。在此,輸入的是二維數(shù)組數(shù)據(jù)。36程序框圖的其他組成一個(gè)能完成許多功能的程序框圖是有許多的子模塊與其他的一些元素組成的,本設(shè)計(jì)中除了接收、顯示、分析還有一些程序結(jié)構(gòu)與控件構(gòu)成。361頻率調(diào)節(jié)部分如圖310是頻率調(diào)節(jié)部分,包括兩個(gè)條件循環(huán)、三個(gè)控制輸入與一個(gè)輸出。其中標(biāo)有頻率的是頻率粗調(diào)的輸出值,頻率微調(diào)是在頻段之間進(jìn)行一些細(xì)微的調(diào)節(jié),CH28是十倍或一倍的按鈕。在頻率輸入的默認(rèn)值是條件輸入為“9”時(shí)。圖310頻率調(diào)節(jié)部分362幅度調(diào)節(jié)在這一部分中,設(shè)計(jì)思想是改變數(shù)據(jù)的大小,主要是按倍數(shù)改變,從而改變幅值,如圖311圖311幅度調(diào)節(jié)363創(chuàng)建數(shù)組如圖312是創(chuàng)建數(shù)組圖312創(chuàng)建數(shù)組該函數(shù)有兩個(gè)功能一是將多個(gè)數(shù)組合并為一個(gè)數(shù)組,另一個(gè)功能是將新的數(shù)組或數(shù)組元素連接到數(shù)組尾端。如果將兩個(gè)一維數(shù)組合并,則輸出為一個(gè)二維數(shù)組;若將兩個(gè)一維數(shù)組連接在一起,則結(jié)果仍為一個(gè)一維數(shù)組。這里使用的是第一個(gè)功能。364水平位移與垂直位移這是示波器要求的兩個(gè)功能,本設(shè)計(jì)中是通過(guò)改變相位與輸入垂直坐標(biāo)實(shí)現(xiàn)的。如圖313,水平位移通過(guò)改變波形圖水平屬性來(lái)實(shí)現(xiàn)。圖313水平位移的設(shè)計(jì)第4章硬件設(shè)計(jì)計(jì)算機(jī)與GW48系列SOPC/EDA實(shí)驗(yàn)開(kāi)發(fā)系統(tǒng)組成了虛擬示波器的硬件平臺(tái)的基礎(chǔ)。利用QUARTUSII開(kāi)發(fā)平臺(tái)編寫(xiě)VHDL語(yǔ)言下載到FPGA板上實(shí)現(xiàn)模擬信號(hào)數(shù)據(jù)的采集、存儲(chǔ)以及發(fā)送。41FPGA軟件設(shè)計(jì)FPGA設(shè)計(jì)的數(shù)據(jù)來(lái)源是高速A/D采樣的8位二進(jìn)制數(shù)據(jù)。由于本設(shè)計(jì)要采用串口發(fā)送模塊,采集的數(shù)據(jù)要求剛好存儲(chǔ)滿一個(gè)RAM時(shí),結(jié)束存儲(chǔ),開(kāi)始發(fā)送。所以在這一部分中首先就是要做好采集工作,只要RAM未存滿,就源源不斷的采集存儲(chǔ)數(shù)據(jù)。當(dāng)RAM滿后,給個(gè)滿信號(hào),然后就準(zhǔn)備開(kāi)始發(fā)送。這就需要個(gè)控制模塊來(lái)控制這些步驟的實(shí)施。這個(gè)控制模塊主要是用于控制串口一位一位發(fā)送,這就用到RAM的地址了。在RAM為讀狀態(tài)的時(shí)候,通過(guò)地址讀數(shù)據(jù),每發(fā)送完一個(gè)數(shù)據(jù),地址就自加1,直至發(fā)送完整個(gè)RAM為止。其流程圖如41被測(cè)信號(hào)超高速A/D數(shù)據(jù)采集地址發(fā)生計(jì)數(shù)器采樣控制器RAM存儲(chǔ)串口發(fā)送PC存滿信號(hào)為高電平CLKYESNO圖41FPGA程序流程圖圖42是FPGA部分軟件總原理框圖LOCATIONPIN_233OPTIONVALUEVCCRSTINPUTLOCATIONPIN_28OPTIONVALUEVCCCLKINPUTLOCATIONPIN_208LOCATIONPIN_207LOCATIONPIN_228LOCATIONPIN_194LOCATIONPIN_227LOCATIONPIN_193LOCATIONPIN_214LOCATIONPIN_213OPTIONVALUEVCCD70INPUTLOCATIONPIN_219OPTIONVALUETXDOUTPUTLOCATIONPIN_144OPTIONVALUEADCKOUTPUTCLKRESETBBCLKBAUDINST5FRAMLENT8PARAMETERVALUEBCLKTRESETTXMIT_CMD_PTXDBUF70MANTXDTXD_DONETRANSFERINST2RSTCLKD70ADCKDATA70AD5510INSTCLKRSTSENDHADIN70DONESENDMANTRAG70DOUT70RESERVINST1圖42FPGA部分軟件總原理框圖42FPGA設(shè)計(jì)的主要模塊在本設(shè)計(jì)中FPGA主要有數(shù)據(jù)采集模塊、控制模塊、波特率發(fā)生模塊、RAM存儲(chǔ)模塊以及發(fā)送模塊。以下就幾個(gè)主要模塊介紹一下421數(shù)據(jù)采集控制模塊數(shù)據(jù)采集部分直接影響著示波表波形的質(zhì)量和效果。在數(shù)據(jù)采集中,必須處理好A/D工作頻率、數(shù)據(jù)存儲(chǔ)深度之間的關(guān)系。一般A/D器件采樣頻率都有一定的限制,以本系統(tǒng)選擇的TLC5510為例,其最佳工作頻率要求10MHZFS100MHZ,對(duì)于被測(cè)信號(hào)而言,采樣頻率過(guò)高,在有限的數(shù)據(jù)存儲(chǔ)深度情況下,只能采集到很短時(shí)間的一段數(shù)據(jù),這對(duì)于低頻率信號(hào)而言,無(wú)法完整的顯示信號(hào)的一個(gè)周期,失去了測(cè)量的意義。這這種情況下,RAM配合工作,使得對(duì)所有采集的數(shù)據(jù)進(jìn)行有效地存儲(chǔ),并在以后的波形顯示中可以對(duì)采集比較完整的波形進(jìn)行篩選出來(lái)顯示,而對(duì)那些干擾較大的波形放棄顯示。本設(shè)計(jì)采用的高速A/D采樣。其中ADIN是直接來(lái)自信號(hào)發(fā)生器的采樣波形。如圖43,AIN即是模擬信號(hào)輸入,D0D7即是采集出的數(shù)據(jù)D7D6D5D4D3D2D1D05110/5540AINPIN44PIN228PIN213PIN214PIN193PIN227PIN194PIN207PIN208模擬信號(hào)輸入數(shù)據(jù)輸出超高速A/DADCLK圖43超高速采集A/DTLC5510是以流水線的工作方式進(jìn)行工作的。它在每一個(gè)CLK(時(shí)鐘)周期都啟動(dòng)一次采樣,完成一次采樣;每次啟動(dòng)采樣是在CLK的下降沿進(jìn)行,不過(guò)采樣轉(zhuǎn)換結(jié)果的輸出卻在25CLK周期后,如果計(jì)算上輸出延時(shí)TDD,從采樣到輸出需經(jīng)25CLKTDD。對(duì)于需要設(shè)計(jì)的采樣控制器,可以認(rèn)為,每加一個(gè)采樣CLK周期,A/D就輸出一個(gè)采樣數(shù)據(jù)。可以通過(guò)對(duì)FPGA系統(tǒng)時(shí)鐘進(jìn)行分頻得到一個(gè)與TLC5510的工作周期相一致的CLK1送入TLC5510,就可以對(duì)TLC5510實(shí)現(xiàn)控制。圖44為T(mén)LC5510的采樣時(shí)序圖圖44TLC5510采樣時(shí)序圖422數(shù)據(jù)存儲(chǔ)模塊利用QUARTUSII軟件定制一個(gè)RAM,這個(gè)RAM的輸出是以讀地址的方式輸出具體數(shù)值,輸出與CLOCK無(wú)關(guān),與WREN有關(guān)。當(dāng)WREN1時(shí),為寫(xiě)狀態(tài),給每個(gè)數(shù)據(jù)提供個(gè)地址;當(dāng)WREN0時(shí),停止寫(xiě)數(shù)據(jù),此時(shí)為讀狀態(tài),寫(xiě)什么地址,輸出當(dāng)前地址的數(shù)據(jù)。這個(gè)RAM在發(fā)送前能夠存儲(chǔ)一定個(gè)數(shù)的數(shù)據(jù),當(dāng)存儲(chǔ)滿整個(gè)RAM后,停止存儲(chǔ),同時(shí)準(zhǔn)備發(fā)送數(shù)據(jù)。如圖45是其模塊圖RAMINSTDATA70WRENADDRESS70CLOCKQ708BITS256WORDSBLOCKTYPEAUTO圖45RAM的模塊圖ADDRESS70是地址輸入模塊,它是通過(guò)控制一個(gè)計(jì)數(shù)器產(chǎn)生的;CLOCK是系統(tǒng)時(shí)鐘;DATA70是采集數(shù)據(jù)的輸入;WREN是一個(gè)控制鍵,當(dāng)為高電平時(shí)開(kāi)始寫(xiě)不能發(fā)送,低電平時(shí)不寫(xiě)可以發(fā)送。423波特率發(fā)生模塊波特率發(fā)生器實(shí)際上就是一個(gè)分頻器。波特率是UART的傳送速率,用于說(shuō)明數(shù)據(jù)傳送的快慢。在串行通信中,數(shù)據(jù)是按位進(jìn)行傳送的,因此傳送速率用每秒鐘傳送數(shù)據(jù)位的數(shù)目來(lái)表示,稱(chēng)之為波特率。如波特率96009600BPS(位/秒)??梢愿鶕?jù)給定的系統(tǒng)時(shí)鐘頻率(晶振時(shí)鐘)和要求的波特率算出波特率分頻因子,算出的波特率分頻因子作為分頻器的分頻數(shù)。波特率分頻因子可以根據(jù)不同的應(yīng)用需要更改。波特率發(fā)生模塊如圖46所示CLKRESETBBCLKBAUDINST5圖46波特率發(fā)生模塊CLK是系統(tǒng)時(shí)鐘;RESETB是復(fù)位端,高電平有效;BCLK是波特率時(shí)鐘,產(chǎn)生的是16倍的波特率15300HZ。424發(fā)送模塊發(fā)送模塊采用的是串口發(fā)送,無(wú)奇偶校驗(yàn),一位起始位,一位停止位,無(wú)流控制。在這里波特率的設(shè)置是根據(jù)外部能夠提供的時(shí)鐘計(jì)算出來(lái)的。通過(guò)分頻我們可以得到150KHZ的頻率,而發(fā)送頻率為波特率的16倍,因此波特率設(shè)置為9600。發(fā)送器只要每隔16個(gè)BCLK周期輸出1個(gè)數(shù)據(jù)即可。發(fā)送模塊的邏輯框圖如圖47FRAMLENT8PARAMETERVALUEBCLKTRESETTXMIT_CMD_PTXDBUF70MANTXDTXD_DONETRANSFERINST2圖47發(fā)送模塊圖47中的端口,TXBUF70為8位輸入數(shù)據(jù)端口。RESETT為復(fù)位信號(hào),高電平有效。MAN是輸出允許,即RA

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論