課程設(shè)計---虛擬數(shù)字示波器的設(shè)計和實現(xiàn)_第1頁
已閱讀1頁,還剩9頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p><b>  緒論</b></p><p>  1.1 虛擬示波器背景</p><p>  示波器是電子測量行業(yè)最常用的測量儀器之一,主要用來測量并顯示被測信號的參數(shù)和波形,在科學(xué)研究、科學(xué)實驗以及現(xiàn)場監(jiān)測等許多領(lǐng)域被廣泛應(yīng)用。隨著科學(xué)研究的不斷深入和各種高新技術(shù)的不斷發(fā)展,傳統(tǒng)示波器的諸如波形不穩(wěn)定、測讀不準(zhǔn)確等許多缺陷逐漸顯露出來,而且體積大,耗電

2、多,越來越不能滿足現(xiàn)代應(yīng)用的需要。</p><p>  “虛擬儀器”這一新概念測量儀器的誕生,使示波器突破了傳統(tǒng),在功能和作用等多方面發(fā)生了根本性變化。虛擬儀器將計算機(jī)和測量系統(tǒng)融合于一體,用計算機(jī)軟件代替?zhèn)鹘y(tǒng)儀器的某些硬件的功能,用計算機(jī)的顯示器代替?zhèn)鹘y(tǒng)儀器物理面板。</p><p>  虛擬示波器是虛擬儀器的一種,它不僅可以實現(xiàn)傳統(tǒng)示波器的功能,具有存儲、再現(xiàn)、分析、處理波形等特點,而

3、且體積小,耗電少。虛擬示波器使用功能強(qiáng)大的微型計算機(jī)來完成信號的處理和波形的顯示,利用軟件技術(shù)在屏幕上設(shè)計出方便、逼真的儀器面板,進(jìn)行各種信號的處理、加工和分析,用各種不同的方式(如數(shù)據(jù)、圖形、圖表等)表示測量結(jié)果,完成各種規(guī)模的測量任務(wù)。鑒于虛擬示波器的種種優(yōu)點及廣泛用途,研究出性能優(yōu)越、價格低廉的虛擬示波器是十分重要的。</p><p><b>  1.2 性能指標(biāo)</b></p&

4、gt;<p>  本示波器與常見的示波器比較,最大的特點是可以定量地給出信號的各種參量,比如最大、最小值和頻率等,無需使用者再去數(shù)格子,然后還要計算。特別適合于學(xué)校教學(xué)實驗的需求,在學(xué)校教學(xué)中可以直聯(lián)投影機(jī),使全體學(xué)生都可以遠(yuǎn)距離看到信號波形的演示。</p><p>  本示波器采樣USB接口,其頻率比并口示波器略高,同樣支持直流測量,可以定量測量信號,主要技術(shù)指標(biāo)如下:</p>&l

5、t;p>  采樣頻率:共八擋可調(diào):323.53kHz、100kHz、50kHz、20kHz、10kHz、5kHz、2kHz、1kHz。本機(jī)測量的信號頻率應(yīng)在70kHz以下。</p><p>  最高輸入電壓:共兩擋可選:±2.5V,±12.5V,如果接入10:1示波器探棒,最大輸入電壓可達(dá)±125V。</p><p><b>  輸入阻抗:1M

6、Ω。</b></p><p>  供電電壓:無需外部供電,直接從PC機(jī)的USB口取電。</p><p><b>  接口:USB接口。</b></p><p><b>  硬件設(shè)計</b></p><p><b>  圖1 硬件設(shè)計框圖</b></p>

7、<p>  具體電路原理圖見附錄一,從圖中可以看出電路的輸入信號調(diào)理部分和信號轉(zhuǎn)換部分與常見的并口示波器相同,R10、R11、R12、R13、R14、C19、C20和C21構(gòu)成輸入交直流切換和衰減網(wǎng)絡(luò),提供交直流輸入切換和1:1、1:5的輸入信號切換功能;TL074中的一個運放U 1 A和其周邊元件構(gòu)成一個跟隨放大器,提供了輸入保護(hù)和阻抗轉(zhuǎn)換功能;TL074中的另一個運放U1B構(gòu)成一個正相放大器,提供-2.5V~+2.5V向

8、0~2.5V的轉(zhuǎn)換功能,同時依據(jù)實際操作的經(jīng)驗,取消了不實用的外觸發(fā)部分,簡化了電路。</p><p>  電路的主體部分以PIC18F2550為核心,PIC18F2550與周邊電路共同構(gòu)成了模數(shù)轉(zhuǎn)換采樣圖1 19.2kHz方波波形圖2 50Hz市電波形和USB接口部分,其中TL43 1和接在其陰極的200Q電阻構(gòu)成了一個2.5V電壓基準(zhǔn),供單片機(jī)作為模數(shù)轉(zhuǎn)換和運放電平轉(zhuǎn)換的電壓基準(zhǔn)。由于USB僅能提供5V電源,

9、不能滿足前兩級運放的工作條件,為此采用一片34063構(gòu)成了-5V~5V的轉(zhuǎn)換電路供運放使用。</p><p><b>  實物圖見附錄三。</b></p><p><b>  軟件設(shè)計</b></p><p>  4.1 單片機(jī)程序設(shè)計</p><p>  單片機(jī)的軟件采用PICC編寫,使用了MIC

10、R0CHIP的USB庫,主要完成BNC過來數(shù)據(jù)的采集、A/D轉(zhuǎn)換、為數(shù)字電路提供CP脈沖以及完成USB的通信等工作。圖2為單片機(jī)部分的程序流程圖。</p><p>  圖2 單片機(jī)軟件設(shè)計流程圖</p><p>  微芯公司提供了一系列的USB寄存器,使用這些寄存器可以完成USB通信。大多數(shù)的USB通信都是通過中斷來完成的,在USB中斷服務(wù)程序內(nèi),要實現(xiàn)輸入/輸出接口,允許大多數(shù)的USB程

11、序在后臺完成。從應(yīng)用的觀點來看,枚舉過程和數(shù)據(jù)通信的發(fā)生并沒有聯(lián)系。</p><p>  對于單片機(jī)控制程序,目前沒有任何廠商提供自動生成固件(firmware)的工具,因此所有程序都要由自己手工編制。由于USB協(xié)議的復(fù)雜性,并且考慮 到廣大客戶的需求,因此,Microchip公司在推出PIC18F4550系列芯片時,提供了面向不同客戶群的DEMO程序。本系統(tǒng)的設(shè)計就是在Microchip公司提供的DEMO程序的

12、基礎(chǔ)上,進(jìn)行必要的修改來完成的。本設(shè)計的具體固件主要由以下8個文件組成。</p><p> ?、?main.c:系統(tǒng)的主程序,包括InitializeSystem()和USBTasks(void)兩個子程序,主要完成系統(tǒng)的初始化以及其他各種子程序的調(diào)用。</p><p>  ② usb9.c:實現(xiàn)的是USB協(xié)議功能,包括枚舉總線的接口和核心功能,以及USB的中斷服務(wù)程序。它處理由USB用戶

13、所產(chǎn)生的所有的中斷。在這個程序中,主要實現(xiàn)對描述符的枚舉以及休眠、復(fù)位功能,主要包括USBCheckStdRequest(void)、USBStdGetDscHandler(void)和USBStdFeatureReqHandler(void)等5個子程序。</p><p> ?、?usbctrltrf.c:主要實現(xiàn)USB控制傳輸所需的各種功能,主要由USBCtrlTrfSetupHandler(void)、US

14、BCtr-lEPServiceComplete(void)和USBPrepareForNextSetup-Trf(void)等8個子程序組成。</p><p> ?、?usbdrv.c:主要實現(xiàn)與USB驅(qū)動相關(guān)的功能,包括檢查總線狀態(tài)、USB模塊使能、USB模塊掛起、遠(yuǎn)程喚醒等功能;主要由USBSuspend(void)、USBModuleEnable(void)、USBSoftDetach(void)和USBD

15、riverService(void)等12個子程序組成。</p><p>  ⑤ usbdsc.c:主要是對該系統(tǒng)的描述,包括廠商、產(chǎn)品號等的描述。</p><p> ?、?usbgen.c:對USB設(shè)備類的配置(在這里把它配置為通用USB類),主要包括USB通用類的初始化端點和讀寫,由USBGenInitEP(void)、USBGenRead(byte*buffer,byte len)和

16、USBGenWrite(byte*buffer,bytelen)三個子程序組成。</p><p> ?、?usbmmap.c:主要用于檢查USB在通信過程中,端點號與BDT(緩沖器描述符表)之間的匹配。</p><p>  ⑧ user.c:直接面向用戶的應(yīng)用程序,可以幫助用戶完成自己的初始化配置、處理數(shù)據(jù)的讀/寫、I/O口的處理,設(shè)備的請求等。本設(shè)計中下位機(jī)的大部分功能都是由這個程序來實

17、現(xiàn)的,比如A/D轉(zhuǎn)換及其數(shù)據(jù)的讀取、1MHz的PWM波形產(chǎn)生等。它主要包括UserInit(void)、BlinkUSBStatus(void)、ServiceRequests(void)、ProcessIO(void)、ResetTempLog(void)和ReadPOT(void)六個子程序。</p><p>  4.2 PC機(jī)軟件編程</p><p>  要編寫PC機(jī)上的軟件,可以利

18、用Microchip公司提供的開發(fā)工具包。該工具包是一個安裝程序,安裝后可以在安裝目錄下找到USB通用的驅(qū)動程序、用Borland C編寫的應(yīng)用程序、一些固件代碼,以及編寫應(yīng)用程序所需的API函數(shù)等。對于一般的應(yīng)用,驅(qū)動程序可以直接使用,無需重編。在編程中主要用到以下7個API函數(shù):MPUSBGetDLL Version(),返回DLL的版本號;MPUSB-GetDeviceCount(),返回連接沒備的數(shù)目;MPUSBOpen(),返

19、回指定pVID_PID和pEP的USB設(shè)備端點的句柄,返回的是一個端點句柄;MPUSBRead(),從IN端點讀取數(shù)據(jù)并填入緩沖區(qū);MPUSBWrite(),對一個OUT端點寫入數(shù)據(jù)并使用pData緩沖區(qū);MPUSBReadInt(),從Inter-rupt IN端點讀取數(shù)據(jù)并填人緩沖區(qū);MPUSBClose(),關(guān)閉一個端點的句柄。因為Microchip公司提供的MPUS-BAPI.DLL源程序是用Borland C編寫的,這一程序無

20、法在VC環(huán)境下編譯,所以也不能產(chǎn)生隱式調(diào)用所需的.LIB文件,因此本設(shè)計在使用DLL時用的是</p><p>  PC機(jī)的軟件部分主要用于實現(xiàn)上位機(jī)同下位機(jī)之間的USB通信,輸入信號的細(xì)分和顯示等功能。實現(xiàn)這一功能的方法有很多種,比如采用簡單的VB、數(shù)據(jù)處理能力很強(qiáng)的Delphi,或國內(nèi)外廣泛采用的Borland C和VC等。為了下一步的軟件開發(fā)以及與廠家的其他軟件接口,本系統(tǒng)上位機(jī)的軟件部分采用VC++6.0來

21、實現(xiàn)。圖3是PC機(jī)軟件部分的流程圖。</p><p>  圖3 PC機(jī)軟件設(shè)計流程圖</p><p>  軟件提供了波形顯示、單次波形捕捉,打印、時基調(diào)整、波形保存、波形比較等功能,雖然這是一個單蹤示波器,但通過波形的保存和再現(xiàn)提供了準(zhǔn)雙蹤示波器的功能,你可以測量某一點的信號,保存起來,然后測量另一點的信號,再打開已保存的信號,同屏顯示兩組信號進(jìn)行信號的比較。</p><

22、;p><b>  PC軟件的使用</b></p><p>  啟動本軟件后,顯示如圖4的界面。</p><p>  圖4 上位機(jī)軟件界面</p><p><b>  4.1 校零</b></p><p>  軟件界面的正下方有校零的按鈕,在接入信號前,首先將輸入信號接地(紅黑輸入均接地),然后

23、按“校零”即可完成校零。完成后如圖5。</p><p><b>  圖5 校零后的波形</b></p><p><b>  4.2 觸發(fā)方式</b></p><p>  目前軟件提供了無觸發(fā)、內(nèi)觸發(fā)兩種觸發(fā)方式,同時對內(nèi)觸發(fā)提供了上升沿觸發(fā)和下降沿觸發(fā)兩種選擇。</p><p><b> 

24、 4.3 采集信號</b></p><p>  選擇開始按鈕開始信號采集,暫停按鈕停止信號采集,錄制按鈕采集一個周期的信號后暫停。</p><p>  4.4 采集周期和波形展寬</p><p>  采樣周期可以有8種選擇:最快、10 S、20 S、50 S、100S、200 S、500 S、1000 S;同時提供了5擋波形展寬選擇:×1、&#

25、215;2、×5、×10、×20;屏幕下方的開關(guān)的顯示一定要與電路板上的開關(guān)位置相對應(yīng),以獲得正確的標(biāo)注。默認(rèn)情況下電壓使用交流,1:5擋輸入信號。本設(shè)備的最高輸入電壓峰一峰值不要超過±12.5V。任意時刻均可選擇保存信號,保存當(dāng)時的波形。</p><p>  4.5 波形數(shù)據(jù)讀取與保存</p><p>  在屏幕上按下鼠標(biāo)左鍵,拖動鼠標(biāo)即可看到相應(yīng)

26、范圍內(nèi)的電壓差、頻率和周期信息。軟件界面的右下部分給出了所測信號的頻率、最大值和最小值等信息。如圖6a。</p><p>  軟件提供波形的保存和打印功能,如圖6b。</p><p>  圖6 波形數(shù)據(jù)的讀取和保存</p><p>  軟件所有提示均為中文。在相同的硬件平臺上我們還可以實現(xiàn)記錄儀功能,可以提供和現(xiàn)在生產(chǎn)控制中常見的記錄儀功能,一次可以記錄某一生產(chǎn)參數(shù)

27、幾天的變化量,實現(xiàn)無人值守。PC機(jī)與單片機(jī)之間通信采用USB人體學(xué)輸入設(shè)備接口,使用windows內(nèi)置的驅(qū)動程序,因此不需要專門的USB驅(qū)動程序,如果遇到不能識別的情況可以通過更換其它品牌鼠標(biāo)或使用ps2鼠標(biāo)來解決,此外由于各種PC機(jī)給出的USB電源的純靜度不同,從電路圖上可以看出雖然采用了各種濾波措施,在個別機(jī)器上短路輸入端的情況下顯示波形可能會有1%以下的細(xì)微毛刺。支持的操作系統(tǒng)包括Windows2000、Windows2003、W

28、mdowsXP和Windows Vista。</p><p><b>  結(jié)束語</b></p><p>  整個虛擬示波器系統(tǒng)己經(jīng)通過調(diào)試,達(dá)到預(yù)期的性能指標(biāo)。己經(jīng)屬于一種可以應(yīng)用于實踐中的測試儀器。但系統(tǒng)還有需要改進(jìn)提高的地方。</p><p>  ① 本系統(tǒng)的應(yīng)用軟件需要進(jìn)一步開發(fā),以進(jìn)一步提高系統(tǒng)的可靠性。</p><

29、;p> ?、?由于課題是考察市場而得出的,所以需要針對軟硬件合理安排完善,以便進(jìn)一步能夠使之產(chǎn)品化。</p><p> ?、?由于虛擬示波器的應(yīng)用越來越廣泛,相應(yīng)的技術(shù)指標(biāo)也有更高的要求,所以必須研制采樣速率更高,系統(tǒng)更穩(wěn)定的儀器,以滿足實際的應(yīng)用要求。</p><p>  總之,大學(xué)生創(chuàng)新項目的完成并不意味著USB虛擬示波器開發(fā)的結(jié)束,我們還將繼續(xù)努力。</p>&l

溫馨提示

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

評論

0/150

提交評論