基于LABVIEW虛擬示波器的設(shè)計.doc
《基于LABVIEW虛擬示波器的設(shè)計.doc》由會員分享,可在線閱讀,更多相關(guān)《基于LABVIEW虛擬示波器的設(shè)計.doc(51頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、西安交通大學(xué) 1 本本 科科 畢畢 業(yè)業(yè) 設(shè)設(shè) 計計 論論 文文 題題 目:目:基于基于 LABVIEWLABVIEW 虛擬示波器的設(shè)計虛擬示波器的設(shè)計 系系 別:別: 電電 氣氣 與與 信信 息息 工工 程程 專專 業(yè):業(yè): 測測 控控 技技 術(shù)術(shù) 與與 儀儀 器器 西安交通大學(xué)城市學(xué)院本科畢業(yè)設(shè)計(論文) I 摘要 I 摘 要 虛擬儀器技術(shù)是現(xiàn)在計算機系統(tǒng)和儀器系統(tǒng)相結(jié)合的產(chǎn)物,是當(dāng)今計算機 輔助測試領(lǐng)域的一項重要技術(shù)。它推動著傳統(tǒng)儀器朝著數(shù)字化,智能化,模塊 化,網(wǎng)絡(luò)化的方向發(fā)展。 本文采用計算機聲卡來代替工業(yè)用的數(shù)據(jù)采集卡。所設(shè)計出的虛擬儀器成 本低、通用性強,在對采樣頻率要求不高的情
2、況下,可以用聲卡取代數(shù)據(jù)采集 卡進行采樣充分利用了價格低廉的聲卡進行數(shù)據(jù)采集。文章闡述了虛擬儀器的 背景、概念、發(fā)展、組成等,重點介紹了采用圖形化編程軟件LABVIEW設(shè)計虛 擬示波器方法以及它的波形顯示、頻譜分析、參數(shù)顯示等功能,最終實現(xiàn)開發(fā) 一個能夠?qū)β曇粜盘栠M行顯示的虛擬示波器。 本文所設(shè)計的虛擬示波器經(jīng)過測試可以對信號正確的采集和顯示,達到了 本次虛擬示波器的設(shè)計要求。 關(guān)鍵詞:虛擬儀器,LABVIEW,示波器 西安交通大學(xué)城市學(xué)院本科畢業(yè)設(shè)計(論文) II ABSTRACT I ABSTRACT Virtual instrument technology is now the com
3、puter system and instrumentation system combining the product of todays computer-aided testing is an important technology area. It advances towards the traditional digital instrumentation, intelligent, modular, network-based direction. In this paper, computer sound card to replace the industrial dat
4、a acquisition card. The design of the virtual instrument, low cost, versatility, less demanding in the case of sampling frequency can be used to replace the sound card data acquisition card to sample the full advantage of the cheap sound card for data acquisition. Paper describes the background of v
5、irtual instruments, concepts, development, composition, focusing on the use of LABVIEW graphical programming software design method and its virtual oscilloscope waveform display, virtual spectrum analysis, parameter display and other functions, ultimately able to develop a sound signal shows a virtu
6、al oscilloscope. Designed in this paper tested the virtual oscilloscope can capture and display the correct signal, reaching the second virtual oscilloscope design requirements. KEY WORDS: Virtual instruments, LABVIEW ,Oscilloscope 西安交通大學(xué)城市學(xué)院本科畢業(yè)設(shè)計(論文) II 目錄 I 目 錄 1 緒論 1 1.1 虛擬儀器背景 1 1.1.1 虛擬儀器的產(chǎn)生 1
7、 1.1.2 虛擬儀器的概念.1 1.1.3 虛擬儀器的構(gòu)成.2 1.1.4 虛擬儀器的優(yōu)點.2 1.2 虛擬儀器的現(xiàn)狀 3 1.2.1 國外虛擬儀器的研究現(xiàn)狀 3 1.2.2 國內(nèi)虛擬儀器的研究現(xiàn)狀.4 1.2.3 虛擬儀器的發(fā)展方向.4 1.3 本文的研究內(nèi)容 5 2 虛擬示波器設(shè)計理論7 2.1 虛擬示波器的基本原理 7 2.2 虛擬示波器的功能方框圖 7 2.3 虛擬示波器的聲卡采集原理 7 2.3.1 聲卡的作用.9 2.3.2 聲卡的硬件結(jié)構(gòu)10 2.3.3 聲卡的主要技術(shù)參數(shù)10 2.3.4 聲卡用于數(shù)據(jù)采集時的設(shè)置11 2.4 本章小結(jié) .12 3 虛擬示波器軟件設(shè)計.15 3
8、.1 LABVIEW 簡介 .15 3.1.1 G 語言簡介15 3.1.2 LABVIEW 程序組成 .16 3.1.3 LABVIEW 中有關(guān)聲卡函數(shù)介紹 .16 3.2 程序的流程圖 .18 3.3 程序的結(jié)構(gòu)框圖 .19 3.4 LABVIEW 虛擬示波器的程序設(shè)計19 3.4.1 前面板的設(shè)計 .19 3.4.2 總程序的設(shè)計 .20 3.5 數(shù)據(jù)采集和處理模塊 .20 西安交通大學(xué)城市學(xué)院本科畢業(yè)設(shè)計(論文) II 3.5.1 聲音輸入設(shè)置 .22 3.5.2 聲音輸入讀取24 3.5.3 聲音輸入清除 .25 3.6 測量模塊 .26 3.7 頻譜分析模塊 .28 3.8 參數(shù)顯
9、示模塊 .29 3.9 本章小結(jié) .29 4 程序的調(diào)試與測試.31 4.1 虛擬示波器的性能指標(biāo) .31 4.1.1 采樣頻率 .31 4.1.2 采樣精度 .31 4.2 程序的調(diào)試結(jié)果 .31 4.2.1 波形顯示調(diào)試結(jié)果 .31 4.3 小結(jié) .33 5 總結(jié)與展望 .35 5.1 結(jié)論 .35 5.2 展望 .35 致謝.37 參考文獻.39 1 緒論 1 1 緒論 1.1 虛擬儀器背景 1.1.1 虛擬儀器的產(chǎn)生 虛擬儀器技術(shù)是現(xiàn)在計算機系統(tǒng)和儀器系統(tǒng)相結(jié)合的產(chǎn)物,是當(dāng)今計算機 輔助測試領(lǐng)域的一項重要技術(shù)。它推動著傳統(tǒng)儀器朝著數(shù)字化,智能化,模塊 化,網(wǎng)絡(luò)化的方向發(fā)展。電子測量儀器
10、發(fā)展至今,大體上可以分為四代:模擬 儀器、數(shù)字化儀器、智能一起和虛擬儀器。第一代模擬儀器,這類儀器在某些 實驗室里還能看到,它是以電磁感應(yīng)基本定律為基礎(chǔ)的指針式儀器,如指針式 萬用表、晶體管電壓表、指針式電流表等。第二代數(shù)字化儀器,這類儀器現(xiàn)在 相當(dāng)普遍,這類儀器將模擬信號的測量值轉(zhuǎn)化為數(shù)字信號,并以數(shù)字方式輸出 最終結(jié)果,適用于快速響應(yīng)和較高準(zhǔn)確度的測量,如數(shù)字萬用表、數(shù)字頻率計 等。第三代智能儀器,這類儀器內(nèi)置微處理器,可以進行自動測試和數(shù)據(jù)處理 功能,可能代替部分腦力老公,習(xí)慣上稱為智能儀器。它的功能模塊全部都是 以硬件或固定軟件的形式存在,無論是開發(fā)還是應(yīng)用,都缺乏靈活性。第四代 虛擬
11、儀器,它是現(xiàn)在計算機軟件技術(shù)、通信技術(shù)和測試技術(shù)高速發(fā)展孕育出的 一項革命性技術(shù),其導(dǎo)致了傳統(tǒng)儀器的結(jié)構(gòu)、概念和設(shè)計觀點都發(fā)生了巨大的 變革,它的出現(xiàn)使得人類的測試技術(shù)進入了一個新的發(fā)展紀(jì)元。 1.1.2 虛擬儀器的概念 虛擬儀器是指通過應(yīng)用程序?qū)⒂嬎銠C、軟件的功能模塊和儀器硬件結(jié)合起 來,用戶可以通過友好的圖形界面(通常叫做虛擬前面板,簡稱前面板)來操 作這臺計算機就像在操作自己定義、自己設(shè)計的一臺個人儀器一樣,從而完成 對被測信號的采集、分析、判斷、顯示、數(shù)字存儲等。虛擬儀器以透明的方式, 通過軟件對數(shù)據(jù)的分析處理、表達以及圖形化用戶接口,把計算機資源(如微 處理器、顯示器等)和儀器硬件(
12、如 A/D、D/A、數(shù)字 I/O、定時器、信號調(diào)理 等)的測試能力和控制能力結(jié)合起來。虛擬一起突破了傳統(tǒng)儀器以硬件為主體 的模式,實際上使用者是在操作具有測試軟件的電子計算機進行測量,猶如操 作一臺虛設(shè)的電子儀器。 虛擬儀器技術(shù)的實質(zhì)是充分利用最新的計算機技術(shù)來實現(xiàn)和擴展傳統(tǒng)儀器 的功能。軟件是虛擬儀器的關(guān)鍵,當(dāng)基本硬件確定以后,就可以通過不同的軟 件實現(xiàn)不同的功能。用戶可以根據(jù)自己的需要,設(shè)計自己的儀器系統(tǒng),滿足多 種多樣的應(yīng)用要求。利用計算機豐富的軟、硬件資源,可以大大突破傳統(tǒng)儀器 西安交通大學(xué)城市學(xué)院本科畢業(yè)設(shè)計(論文) 2 的數(shù)據(jù)的分析、處理、表達、傳遞、存儲等方面的限制,達到傳統(tǒng)儀器
13、無法比 擬的效果。它不僅可以用于電子測量、測試、分析、計量等領(lǐng)域,而且還可以 用于進行設(shè)備的監(jiān)控以及工業(yè)過程自動化。虛擬儀器還可以廣泛用于電力工程、 物礦勘探、醫(yī)療、振動分析、聲學(xué)分析、故障診斷及教學(xué)科研等多個方面1。 1.1.3 虛擬儀器的構(gòu)成 虛擬儀器從構(gòu)成要素上講,由計算機、應(yīng)用軟件和儀器硬件等構(gòu)成;從構(gòu) 成分式上講則由以 DAQ 板和信號調(diào)理為儀器硬件而組成的 PC-DAQ 測試系統(tǒng), 或已 GPIB,VXI,Serial 和 Field bus 等標(biāo)準(zhǔn)總線儀器為硬件組成的 GPIB 系統(tǒng)、 VXI 系統(tǒng)、串口系統(tǒng)和現(xiàn)場總線系統(tǒng)等多種形式2。虛擬儀器的構(gòu)成如圖 1-1 所示。 顯示器
14、信號分析及處理器入機接口各類接口 A/D 轉(zhuǎn) 換器 數(shù)據(jù) 發(fā)生器 信號 調(diào)理器 信號 調(diào)理器 輸入 信號 D/A 轉(zhuǎn) 換器 信號調(diào) 理器 信號 輸出 圖 1-1 虛擬儀器的結(jié)構(gòu) 1.1.4 虛擬儀器的優(yōu)點 一臺性能優(yōu)良的虛擬儀器不僅可以實現(xiàn)傳統(tǒng)儀器的大部分功能,而且在許 多方面有傳統(tǒng)儀器無法比擬的優(yōu)點,如使用靈活方便、功能豐富、價格低廉、 可一機多用、可重復(fù)開發(fā)等。與傳統(tǒng)儀器相比虛擬儀器主要有以下幾個優(yōu)點: (1)融合了計算機強大的硬件資源,突破了傳統(tǒng)儀器在數(shù)據(jù)處理、顯示、 存儲等方面的限制,大大增強了傳統(tǒng)儀器的功能。而且高性能處理器、高分辨 率顯示器、大容量硬盤等已成為虛擬儀器的標(biāo)準(zhǔn)配置。
15、(2)利用計算機豐富的軟件資源,一方面,實現(xiàn)了部分儀器硬件的軟件話, 節(jié)省了物質(zhì)資源,增加了系統(tǒng)的靈活性;一方面,通過軟件技術(shù)和相應(yīng)的數(shù)值 算法、實時、直接的對測量數(shù)據(jù)進行各種分析和處理;另一方面,通過圖形用 戶界面(Graph User Interface)技術(shù),真正做到界面友好,人機交互。 1 緒論 3 (3)基于計算機總線和模塊化儀器總線,使儀器的硬件實現(xiàn)了模塊化、系 列化,大大縮小了系統(tǒng)的尺寸,可方便的構(gòu)建模塊化儀器(Instrument on a Card) 。 (4)基于計算機網(wǎng)絡(luò)技術(shù)和接口技術(shù),使 VI 系統(tǒng)具有方便、靈活的互聯(lián) 能力,廣泛支持諸如 CAN,F(xiàn)ield Bus,P
16、ROFIBUS 等各種工業(yè)總線標(biāo)準(zhǔn)。因此, 利用 VI 技術(shù)可方便的構(gòu)建自動測試系統(tǒng)(ATS,Automatic Test System) ,實現(xiàn) 測量、控制過程的網(wǎng)絡(luò)化。 (5)基于計算機的開放式標(biāo)準(zhǔn)體系結(jié)構(gòu)。虛擬儀器的硬、軟件都具有開放 性、模塊化、可重復(fù)使用及互換性等特點。因此,用戶可以根據(jù)自己的需要選 擇不同廠家的產(chǎn)品,使儀器系統(tǒng)的開發(fā)更為靈活、效率更高,縮短了系統(tǒng)組建 和維修的時間3。 1.2 虛擬儀器的現(xiàn)狀 1.2.1 國外虛擬儀器的研究現(xiàn)狀 虛擬儀器技術(shù)目前在國外發(fā)展很快,以美國國家儀器公司(NI 公司)為代 表的一批廠商已經(jīng)在市場上推出了基于虛擬儀器技術(shù)而設(shè)計的商品化儀器產(chǎn)品。
17、 在美國虛擬儀器系統(tǒng)及其圖形編程語言,已作為各大學(xué)理工科學(xué)生的一門必修 課程。美國的斯福坦大學(xué)的機械工程系要求三、四年級的學(xué)生在實驗時應(yīng)用虛 擬儀器進行數(shù)據(jù)采集和實驗控制。 近年來,世界各國的虛擬儀器公司開發(fā)了不少虛擬儀器開發(fā)平臺軟件,以 便使用者利用這些公司提供的開發(fā)平臺軟件組建自己的虛擬儀器或測試系統(tǒng), 并編制測試軟件。最早和最具有影響力的開發(fā)軟件,是 NI 公司的 LABVIEW 軟件和 Lab windows/CVI 開發(fā)軟件。LABVIEW 采用圖形化編程方案,是非常 實用的開發(fā)軟件。Lab windows/CVI 是為熟悉 C 語言的開發(fā)人員準(zhǔn)備的、在 windows 環(huán)境下的標(biāo)準(zhǔn)
18、 ANSI C 開發(fā)環(huán)境,除了上述優(yōu)秀的開發(fā)軟件之外,美 國 HP 公司的 HP-VEE 和 HPTIG 平臺軟件,美國 Tektronix 公司的 Ez-Test 和 Tek-TNS 軟件,以及美國的 HEM Data 公司的 Snap-Master 平臺軟件,也是國際 上公認(rèn)的優(yōu)秀虛擬儀器開發(fā)平臺軟件。 當(dāng)今虛擬儀器的系統(tǒng)開發(fā)采用的總線包括傳統(tǒng)的 RS232 串行總線、GPIB 通用接口總線、VXI 總線,以及已經(jīng)被 PC 機廣泛采用的 USB 串行總線和 IEEE1394 總線(即 Fire wire,也叫做火線) 。世界各國的公司,特別是美國 NI 公司,為使虛擬儀器能夠適應(yīng)上述各種總
19、線的配置,開發(fā)了大量的軟件以及適 應(yīng)要求的硬件(插件) ,可以靈活的組建不同復(fù)雜程度的虛擬儀器自動檢測系統(tǒng)。 西安交通大學(xué)城市學(xué)院本科畢業(yè)設(shè)計(論文) 4 虛擬儀器開發(fā)商不僅注意使虛擬儀器能夠適應(yīng)各種通用計算機總線系統(tǒng), 使之為虛擬儀器服務(wù),而且也注意建立各種儀器專用的總線系統(tǒng)。美國 NI 公司 在 1997 年 9 月 1 日推出模塊化儀器的主流平臺 PXI,這是與 Compact PCI 完全 兼容的系統(tǒng)。這種虛擬儀器模塊化主流平臺 PXI/Compact PCI 的傳輸速度已經(jīng) 達到 100Mb/s。是目前已經(jīng)發(fā)布的最高傳輸速度4。 1.2.2 國內(nèi)虛擬儀器的研究現(xiàn)狀 目前主流的虛擬儀器
20、主要是 VXI.PX 各種計算機總線和總線標(biāo)準(zhǔn)的各種插 卡和儀器模塊間或有其它總線式的儀器模塊,工作方式多是插入各種總線機箱 內(nèi)或直接插入計算機機箱內(nèi),少數(shù)情況下是獨立模塊以接口形式接入計算機。 它們多數(shù)屬于中低頻范圍,主要是工程應(yīng)用類儀器設(shè)備。 我國 VXI 總線技術(shù)是反映我國目前虛擬儀器水平的一個方面,互聯(lián)網(wǎng)已經(jīng) 使數(shù)據(jù)共享進入新階段,加速了虛擬儀器的新網(wǎng)絡(luò)技術(shù)及遠(yuǎn)程計算機技術(shù)的發(fā) 展,而這些技術(shù)是傳統(tǒng)儀器不可能實現(xiàn)的,虛擬儀器很好的利用了互聯(lián)網(wǎng)的功 能,因此可以把來自測量和設(shè)計的數(shù)據(jù)直接發(fā)布到網(wǎng)上。 國內(nèi)已有部分院校的實驗室引入了虛擬儀器系統(tǒng),上海復(fù)旦大學(xué)、上海交 通大學(xué)、廣州暨南大學(xué)、
21、華中理工大學(xué)、四川聯(lián)合大學(xué)等。近一、兩年來這些 學(xué)校在原有的基礎(chǔ)上,又開發(fā)了一批新的虛擬儀器系統(tǒng)用于教學(xué)和科研。其中, 華中理工大學(xué)機械學(xué)院工程測試實驗室將其開發(fā)成果在網(wǎng)上公開展示。四川聯(lián) 合大學(xué)的教師基于虛擬儀器的設(shè)計思想,研制了“航空電臺二線綜合測試儀” 將 8 臺儀器集成于一體,組成虛擬儀器系統(tǒng),使用方便、靈活。清華大學(xué)利用 虛擬儀器技術(shù)構(gòu)建的汽車發(fā)動機檢測系統(tǒng),用于汽車發(fā)動機的出廠檢驗。主要 檢測發(fā)動機的功率特性、負(fù)荷特性等。一臺發(fā)動機檢測完后,就可打印出完整 的檢測報告。此外,國內(nèi)已有幾家企業(yè)在研制 PC 虛擬儀器,哈工大儀器王電 子有限責(zé)任公司就是其中之一,它的產(chǎn)品已達到一定的批量
22、。其主要產(chǎn)品有數(shù) 字存儲示波器系列、任意波形發(fā)生器及頻率計系列、多通道大容量波形記錄 系列。國內(nèi)專家預(yù)測:未來幾年內(nèi),我國將有 50%的儀器為虛擬儀器。國內(nèi)將 有大批企業(yè)使用虛擬儀器系統(tǒng)對生產(chǎn)設(shè)備的運行狀況進行實時監(jiān)測。隨著微型 計算機的發(fā)展,虛擬儀器將會逐步取代傳統(tǒng)的測試儀器而成為測試儀器的主流。 虛擬儀器技術(shù)的提出和發(fā)展,標(biāo)志著二十一世紀(jì)自動測試與電子測試儀器領(lǐng)域 技術(shù)發(fā)展的一個重要方向5。 1.2.3 虛擬儀器的發(fā)展方向 虛擬儀器正在繼續(xù)迅速發(fā)展。它可以取代測量技術(shù)在傳統(tǒng)領(lǐng)域的各類儀器。 1 緒論 5 虛擬儀器在組成和改變儀器的功能和技術(shù)性能方面具有靈活性和經(jīng)濟性,因而 特別適應(yīng)于當(dāng)代科
23、學(xué)技術(shù)迅速發(fā)展和科學(xué)研究不斷深化所提出的更高跟新的測 量課題和測量需要。 “沒有測量就沒有鑒別,科學(xué)技術(shù)就不能前進。 ”虛擬儀器 將會在科學(xué)技術(shù)的各個領(lǐng)域得到廣泛的應(yīng)用。 VXI 總線將成為未來虛擬儀器的理想硬件平臺,這是由 VXI 總線的性能決 定的;另一方面,基于 PCI-DAQ 的虛擬儀器系統(tǒng)由于性價比高、靈活性好而受 到大多數(shù)用戶的青睞,將得到高速的發(fā)展。隨著計算機硬件、軟件技術(shù)的迅速 發(fā)展,虛擬儀器將向高性能、多功能、集成化、網(wǎng)絡(luò)化方向發(fā)展6。 1.3 本文的研究內(nèi)容 虛擬儀器由通用儀器硬件平臺(簡稱硬件平臺)和應(yīng)用軟件兩大部分構(gòu)成。 硬件平臺主要完成對被測信號的進行調(diào)理和采集。儀器
24、硬件可以是插入式數(shù)據(jù) 采集卡及必要的外圍電路(含信號調(diào)理電路、A/D 轉(zhuǎn)換器、數(shù)字 I/O、定時器、 D/A 轉(zhuǎn)換器等) ,或者是帶標(biāo)準(zhǔn)總線接口的儀器,如 GPIB、VXI、PXI、STD、PCI 總線儀器和網(wǎng)絡(luò)化儀器等。 目前市場上的 A/D 采集卡和數(shù)據(jù)采集卡以及帶標(biāo)準(zhǔn)總線接口的儀器等,其 價格均不菲,以畢業(yè)設(shè)計的目的來說,性價比以及實用程度顯的不高。進而考 慮到計算機中的聲卡本身就是一個 A/D,D/A 的轉(zhuǎn)化裝置,具有 16 位的量化精 度、數(shù)據(jù)采集頻率是 44.1kHz,完成可以滿足特定應(yīng)用范圍內(nèi)數(shù)據(jù)采集的需要, 個別性能指標(biāo)還優(yōu)于商用數(shù)據(jù)采集卡,而價格卻為商用數(shù)據(jù)采集卡的十分之一
25、或者幾十分之一,在設(shè)計實驗中完全可以滿足要求。因此在本設(shè)計中,虛擬示 波器的數(shù)據(jù)采集裝置主要基于聲卡。利用聲卡實現(xiàn)對數(shù)據(jù)的采集,制作成一個 簡易的示波器,示波器能夠?qū)崿F(xiàn)數(shù)據(jù)采集、波形顯示、參數(shù)測量及頻譜分析四 大功能。 虛擬儀器的發(fā)展已經(jīng)具有快 30 年的歷史,虛擬示波器作為虛擬儀器中的一 種典型儀器,是儀器儀表、無線電通信、雷達系統(tǒng)等領(lǐng)域不可缺少的一部分。 本論文開發(fā)了一臺虛擬示波器。具體內(nèi)容安排如下: 第 1 章,緒論:介紹虛擬儀器的概念、構(gòu)成及其優(yōu)勢,發(fā)展的現(xiàn)狀和本文 的研究內(nèi)容。 第 2 章,虛擬示波器的設(shè)計理論:本章主要講了示波器組成部分、波形顯 示原理,工作原理以及虛擬示波器在硬件
26、平臺上的使用,詳細(xì)講述了硬件選擇 聲卡的理由。 第 3 章,本章講解虛擬示波器的軟件設(shè)計:本章是重點,詳細(xì)講述了各個 功能模塊具體的實現(xiàn)過程,包括數(shù)據(jù)采集和處理、波形顯示、參數(shù)測量、頻譜 分析等模塊。 西安交通大學(xué)城市學(xué)院本科畢業(yè)設(shè)計(論文) 6 第 4 章,程序測試與調(diào)試:本章給出了虛擬示波器系統(tǒng)性能的具體指標(biāo), 進行了系統(tǒng)調(diào)試,驗證了虛擬示波器的實用性和優(yōu)越性。 第 5 章,總結(jié)與展望:對設(shè)計的虛擬示波器進行了總結(jié),并對將來的發(fā)展 趨勢給出了展望。 2 虛擬示波器設(shè)計理論 7 西安交通大學(xué)城市學(xué)院本科畢業(yè)設(shè)計(論文) 8 2 虛擬示波器設(shè)計理論 2.1 虛擬示波器的基本原理 虛擬示波器主要
27、由軟件來完成信號的采集、處理和輸出。系統(tǒng)軟件包括前 面板生成框圖程序和圖標(biāo)連接端口。儀器主要功能包括:通道選擇、時基幅值 控制、濾波器、信號發(fā)生器、數(shù)據(jù)存儲與回放等。在完成各個功能時其實示波 器就是利用電子射線的偏轉(zhuǎn),來顯示電信號瞬時值圖象(常成為時間波形)的 一種儀器。它能快速的把肉眼不能直接看見的電信號的時變規(guī)律,以可見的形 式,形象的顯示出來7。 2.2 虛擬示波器的功能方框圖 本文設(shè)計的示波器的能首先是完成信號的采集,然后將采集到的信號經(jīng)過 通道選擇,再進行濾波器的濾波,最后將波形顯示出來。完成波形顯示后示波 器對其中的數(shù)據(jù)進行參數(shù)測量。其功能方框圖如圖 2-1 所示 信號采集 通道選
28、擇 通道通道B通道A 波形顯示濾波器數(shù)據(jù)保存 參數(shù)測量波形顯示數(shù)據(jù)回放 波形顯示 圖 2-1 虛擬示波器功能方框圖 2.3 虛擬示波器的聲卡采集原理 模擬信號經(jīng)同軸電纜進入采集卡的輸入通道,經(jīng)過前置濾波電路、衰減電 路、可變增益的放大電路,將信號處理成 A/D 轉(zhuǎn)換器可以處理的標(biāo)準(zhǔn)電平,經(jīng) 過 A/D 采樣量化轉(zhuǎn)化成計算機可以處理的數(shù)字信號并緩存到卡上的存儲器。其 支持軟件通過 PC 機的 PCI 總線接口控制模擬通道的阻抗匹配、放大器的增益 2 虛擬示波器設(shè)計理論 9 選擇、啟動 A/D 轉(zhuǎn)換及轉(zhuǎn)換結(jié)束的識別,并將采集數(shù)據(jù)以 DMA 的方式傳輸?shù)?計算機內(nèi)存,同時對數(shù)據(jù)信號進行分析處理、顯示
29、、存儲及打印傳輸?shù)取?使用 LABVIEW 構(gòu)建基于聲卡的虛擬示波器的思路是很清晰的。實際的數(shù) 據(jù)采集流程是:(1)初始化:對聲卡中與數(shù)據(jù)采集相關(guān)的一些硬件參數(shù)進行設(shè) 置;(2)然后,聲卡開始采集數(shù)據(jù),并將采集到的數(shù)據(jù)暫存在先進先出的緩沖 區(qū)中;(3)當(dāng)緩沖區(qū)存滿數(shù)據(jù)后,一方面將數(shù)據(jù)讀取到用戶程序的數(shù)組中,產(chǎn) 生一個采集數(shù)據(jù)集合,并在程序中對數(shù)據(jù)進行各種處理;(4)另一方面,得到 緩沖區(qū)滿的消息后,通知聲卡暫時停止采集外部數(shù)據(jù),并進一步清空緩存里的 內(nèi)容。 聲卡數(shù)據(jù)采集流程如圖 2-2 所示,這個流程與一般數(shù)據(jù)采集卡并無多大差 別,這也是本設(shè)計的最基本的骨干。 2 圖 2-2 聲卡數(shù)據(jù)采集流程
30、圖 虛擬示波器是采用基于計算機的虛擬技術(shù),用以模擬通用示波器的面板操 作和處理功能,也就是使用個人計算機及接口電路來采集現(xiàn)場或?qū)嶒炇倚盘枺?并通過圖形用戶界面(GUI)來模仿示波器的操作面板,完成信號采集、調(diào)理、 分析處理和顯示輸出等功能8。 本文所設(shè)計的虛擬示波器,是在數(shù)據(jù)采集硬件的支持下,配備一定功能的 軟件,完成波形的存儲、分析、顯示等功能。一般測試儀器由信號采集、信號 處理和結(jié)果顯示三大部分組成,這三大部分均由硬件構(gòu)成。虛擬示波器也是由 這三大部分組成,但是除了信號采集部分是由硬件實現(xiàn)之外,其它兩部分都是 由軟件實現(xiàn)。 本文設(shè)計的虛擬示波器總體上包括數(shù)據(jù)采集、波形顯示、參數(shù)測量、頻譜
31、分析、等幾大模塊組成,虛擬示波器的結(jié)構(gòu)框圖如下 2-3 所示。 西安交通大學(xué)城市學(xué)院本科畢業(yè)設(shè)計(論文) 10 信 號 輸 入 數(shù)據(jù)采集數(shù)據(jù)處理 波形顯示 參數(shù)測量 頻譜分析 圖 2-3 示波器的結(jié)構(gòu)框圖 結(jié)構(gòu)框圖說明: 信號輸入是由計算機輸入一段聲音,然后由聲卡進行數(shù)據(jù)采集,聲卡將采集 到的信號存入緩存區(qū),LABVIEW 中的聲音函數(shù)從緩存區(qū)中讀取數(shù)據(jù),讀取到 數(shù)據(jù)以后點擊運行按鈕,示波器中就可以將信號的波形、參數(shù)測量和頻譜分析 顯示出來。 2.3.1 聲卡的作用 從數(shù)據(jù)采集的角度看,聲卡是一種音頻范圍內(nèi)的數(shù)據(jù)內(nèi)數(shù)據(jù)采集卡,是計 算機與外部的模擬量間環(huán)境聯(lián)系的重要途徑。LABVIEW 提供了
32、操作聲卡的函 數(shù)。聲卡的主要功能包括錄制與播放、編輯與合成處理、MIDI 接口三個部分。 (1)錄制與播放 通過聲卡,人們可將來自話筒、收錄機等外部音源的聲音錄入計算機,并 轉(zhuǎn)換成數(shù)字文件進行存儲和編輯等操作;人們也可以將數(shù)字文件還原成聲音信 號,通過揚聲器回放,例如為電子游戲配音,以及播放 CD、VD、DVD、MP3 和卡拉 OK 等。注意,在錄制和回放時,不僅要進行 D/A 和 A/D 轉(zhuǎn)換,還要進 行壓縮和解壓縮處理。 (2)編輯和合成處理 通過對聲音文件進行多種特技效果的處理,包括加入回聲,倒放,淡入淡 出,往返放音以及左右兩個聲道交叉放音等,可以實現(xiàn)對各種聲源音量的控制 和混合。 (
33、3)MIDI(Musical Instrument Digital Interface 樂器數(shù)字接口)接口通過 MIDI 接口和波表合成,可以記錄和回放各種接近真實樂器原聲的音樂。 從一般意義上來看,上述功能主要是數(shù)據(jù)采集和信號處理,很自然的就可 2 虛擬示波器設(shè)計理論 11 以聯(lián)想到用聲卡實現(xiàn)示波器、信號處理器、頻譜分析儀等虛擬儀器9。 2.3.2 聲卡的硬件結(jié)構(gòu) 圖 2-4 是一個聲卡的硬件結(jié)構(gòu)示意圖。一般聲卡有 4-5 個對外接口。其中, 輸出接口有 2 個,分別是 Ware Out 和 SPK Out。Ware Out(或 Line Out)給出 的信號沒有經(jīng)過放大,需要外接功率放大器
34、,例如可以接到有源音箱;SPK Out 給出的信號是通過功率放大的信號,可以直接接到喇叭上。這些接口可以用來 作為雙通道信號發(fā)生器的輸出。 Line In Mic In Wave Out SPK Out MIDI In A/D DSP D/A 波波表表 MIDI合合成成器器 圖 2-4 聲卡的硬件結(jié)構(gòu)示意圖 輸入接口 Line In 和 Mic In 的區(qū)別在于,后者可以接入較弱的信號,幅值 大約為 0.02-0.2V,顯然這個信號較易受干擾,因而常使用 Line In,它可以接入 幅值約為不超過 1.5V 的信號。注意,這兩個輸入端口都有隔直電容,這意味著 直流信號不能被聲卡所接受。多數(shù)聲卡
35、的輸入也是雙通道的,但接入插頭線往 往將這兩個通道短接成一個通道。另外這兩個通道是共地的10。 2.3.3 聲卡的主要技術(shù)參數(shù) (1)采樣的位數(shù) 采樣位數(shù)可以理解為聲卡處理聲音的解析度。這個數(shù)值越大,解析度就越 高,錄制和回放的聲音也就越真實。聲卡的位數(shù)是指聲卡在采集和播放聲音文 件時所使用的數(shù)字聲音信號的二進制位數(shù),它客觀的反映了數(shù)字聲音信號對輸 入聲音信號描述的準(zhǔn)確度。例如,8 位代表;16 位的代表。2562864000216 比較之下,一段相同的音樂信息,16 位聲卡能把它分為 64000 個精度單位進行 處理,而 8 位聲卡只能處理 256 個精度單位,最終采樣效果當(dāng)然是無法相提并
36、論的。 (2)采樣頻率 目前,聲卡的最高采樣頻率為 44.1kHz,少數(shù)達到 48kHz。對于民用聲卡, 西安交通大學(xué)城市學(xué)院本科畢業(yè)設(shè)計(論文) 12 一般將采樣頻率設(shè)為 4 檔,分別是 44.1kHz、22.05kHz、11.025kHz、8kHz。22.05kHz 只能達到 FM 廣播的聲音品質(zhì); 44.1kHz 是理論上的 CD 音質(zhì)界限,48kHz 則更好一些。對 20kHz 范圍內(nèi)的音頻 信號,最高的采樣頻率才 48kHz,雖然理論上沒有問題,但似乎余量不大。使 用聲卡比較大的局限在于,它不允許用戶在最高采樣頻率之下隨意設(shè)定采樣頻 率,而只能分為 4 檔設(shè)定。這樣雖然可使制造成本降
37、低,但卻不便于使用。用 戶基本上不可能控制整周期采樣,只能通過信號處理的方法來彌補非整周期采 樣帶來的問題。 (3)緩沖區(qū) 與一般數(shù)據(jù)采樣卡不同,聲卡面臨的 D/A 和 A/D 任務(wù)通常是連續(xù)狀態(tài)的。 為了在一個簡易的結(jié)構(gòu)下較好的完成某個任務(wù),聲卡緩沖區(qū)的設(shè)計有其獨到之 處。為了節(jié)省 CPU 資源,計算機的 CPU 并不是每次聲卡 A/D 或 D/A 結(jié)束后都要 響應(yīng)一次中斷,而是采用了緩沖區(qū)的工作方式。在這種工作方式下,聲卡的 A/D、D/A 都對某一緩沖區(qū)進行操作。以輸入聲音的 A/D 變換為例,每次轉(zhuǎn)換完 畢后,聲卡控制芯片都將數(shù)據(jù)存放在緩沖區(qū),待緩沖區(qū)滿時,發(fā)出中斷給 CPU,CPU
38、響應(yīng)中斷后一次性將緩沖區(qū)內(nèi)的數(shù)據(jù)全部讀走。計算機總線的數(shù)據(jù)傳 輸速率非常高,讀取緩沖區(qū)數(shù)據(jù)所用時間極短,不會影響 A/D 變換的連續(xù)性。 緩沖區(qū)的工作方式大大降低了 CPU 響應(yīng)中斷頻度,節(jié)省了系統(tǒng)資源,聲卡輸出 聲音的 D/A 變換也是類似的。 一般聲卡使用的緩沖區(qū)長度的默認(rèn)值是 8KB(8192 字節(jié)) 。這是由于對 x86 系列處理器來說,在保護模式(Windows 等系統(tǒng)使用的 CPU 工作方式)下,內(nèi) 存以 8KB 為單位被分成很多頁,對內(nèi)存的任何訪問都是按頁進行,CPU 保證了 讀寫 8KB 長度的內(nèi)存緩沖區(qū)時,速度足夠快,并且一般不會被其他外來事件打 斷。設(shè)置 8192 字節(jié)或其
39、整數(shù)倍(例如 32768 字節(jié))大小的緩沖區(qū),可以較好的 保證聲卡與 CPU 的協(xié)調(diào)工作。 (4)沒有基準(zhǔn)電壓 聲卡不提供基準(zhǔn)電壓,因此無論是 D/A 還是 A/D 在使用時,都需要用戶自 己參照基準(zhǔn)電壓進行標(biāo)定11。 2.3.4 聲卡用于數(shù)據(jù)采集時的設(shè)置 (1)聲卡的設(shè)置 一般聲卡主要用于輸出聲音,輸入部分可能沒有處于正常工作狀態(tài)。建議 首先使用耳機和 MIC 檢查聲卡的功能,特別是輸入功能(錄音功能)是否正常。 如果不正常,需要檢查聲卡的設(shè)置。一般來說,這里的設(shè)置有兩層含義,首先 是要配置所需的功能,其次是要保證已經(jīng)配置的功能不處于關(guān)閉(靜音)狀態(tài)。 2 虛擬示波器設(shè)計理論 13 下面介紹
40、對 Line In 和 Mic In 的檢查和設(shè)置。 按圖 2-5 所示,在“選項”菜單下選“屬性” ,得到圖 2-5(b)圖所示的 對話框,在此對話框上選擇“錄音” ,并配置列表中的選項即可。注意圖 2-5 中 的相關(guān)功能都不能處于靜音狀態(tài)。如圖 2-5(a)所示。 圖 2-5(a)音量控制窗口 圖 2-5(b)音量控制屬性 圖 2-5 音量控制窗口和音量控制屬性對話框 (2)硬件連接 硬件連接采用兩種連接線:1 一條一頭是 3.5mm 插孔,另一頭是鱷魚夾的 連接線,2 是雙頭為 3.5mm 插孔的音頻連接線(在市場上可以買的到) 。為測試 聲卡的頻響特性,可使用測試線 2 將聲卡的輸入端
41、與輸出端連接起來,形成一 個閉合的環(huán)路。連接時要注意區(qū)分 Mic In 口和 SPK Out 口,不要把它們當(dāng)作 Line In 與 Line Out 接入。如果測試輸入信號,則使用測試線 1 把信號源連接 到聲卡輸入端 Line In 口;如果測試輸出信號,就把該測試線連接到聲卡輸出 端 Line Out 口。 西安交通大學(xué)城市學(xué)院本科畢業(yè)設(shè)計(論文) 14 2.4 本章小結(jié) 本章主要介紹了虛擬示波器的工作原理及各個功能模塊的流程實現(xiàn)原理。 本文用聲卡代替數(shù)據(jù)采集卡來采集信號的。主要介紹了聲卡的各個功能,包括 聲卡的作用、硬件結(jié)構(gòu),并對聲卡的技術(shù)參數(shù)做了詳細(xì)的介紹。最后介紹了聲 卡用于數(shù)據(jù)采
42、集時的一些設(shè)置。 2 虛擬示波器設(shè)計理論 15 西安交通大學(xué)城市學(xué)院本科畢業(yè)設(shè)計(論文) 16 3 虛擬示波器軟件設(shè)計 3.1 LABVIEW 簡介 LABVIEW 是(實驗室虛擬儀器工作平臺)是一個程序開發(fā)環(huán)境。它類似于 Visual Basic,Visual C+。但是 LABVIEW 的特點在于:它使用圖形化編程語 言 G 在流程圖中創(chuàng)建源程序,而沒有使用基于的文本語言來產(chǎn)生源程序代碼。 LABVIEW 是一個多線程、最佳化的圖形編譯器,它能在最大程度上優(yōu)化系 統(tǒng)的性能。無論是使用基于計算機的插入式儀器設(shè)備,還是使用 GPIB,VXI,Ethernet 接口或是串口的獨立儀器設(shè)備,LAB
43、VIEW 內(nèi)置的驅(qū)動程 序庫和具有工業(yè)標(biāo)準(zhǔn)的設(shè)備驅(qū)動軟件都可以對儀器系統(tǒng)進行全面的控制。 LABVIEW 的數(shù)據(jù)采集庫包含了許多有關(guān)采集和生成數(shù)據(jù)的函數(shù),它們與 NI 的插 卡式或遠(yuǎn)程數(shù)據(jù)采集產(chǎn)品協(xié)同工作。數(shù)據(jù)采集卡是進行高速直接控制以及低速 控制的理想設(shè)備。它能夠為集成式測量方案提供功能強大且完備的測量分析庫, 這些軟件庫可以完成極限測試、頻率分析、濾波及信號生成等任務(wù)。LABVIEW 具有許多特性,能使測量和自動化應(yīng)用方案完成適用于用戶企業(yè)的生產(chǎn)經(jīng)營, 能將應(yīng)用方案以網(wǎng)頁的形式發(fā)表,或在互聯(lián)網(wǎng)的應(yīng)用程序間進行數(shù)據(jù)傳遞。 LABVIEW 擁有完整的 Web 服務(wù)器,可以隨時發(fā)布測量結(jié)果。LA
44、BVIEW 專業(yè)版開發(fā) 系統(tǒng)包括應(yīng)用程序生成器(Application Builder) ,可以創(chuàng)建并發(fā)布獨立的可 執(zhí)行程序、共享庫或動態(tài)連接庫(DLL) 。使用共享庫可以使開發(fā)的應(yīng)用程序代 碼進行重新使用。DLL 提供最大的靈活性,可以將 LABVIEW 與其他開發(fā)工具如 VB,VC 和 NI 的 Measurement Studio 結(jié)合起來。LABVIEW 應(yīng)用程序生成器可以 創(chuàng)建安裝程序,以便在 Windows 環(huán)境中執(zhí)行可運行程序12。 3.1.1 G 語言簡介 LABVIEW 是一個功能比較完整的軟件開發(fā)環(huán)境,但它是為代替常規(guī)的 BASIC 和 C 語言設(shè)計的,它是一種編程語言而不
45、僅僅是一個軟件開發(fā)環(huán)境。它 除了編程方式不同外,具有編程語言的所有特點,稱之為圖形化編程語言(簡 稱 G 語言) 。 G 語言是一種適合應(yīng)用于編程任務(wù),具有擴展函數(shù)庫的通用編程環(huán)境。和 BASIC 和 C 語言一樣,G 語言也定義了數(shù)據(jù)類型、結(jié)構(gòu)類型和模塊調(diào)用語法規(guī) 則等編程語言的基本要素,在功能完整性和應(yīng)用靈活性上不遜于任何高級語言, 同時 G 語言豐富的擴展函數(shù)庫還為用戶編程提供了極大的方便。G 語言與傳統(tǒng) 高級編程語言最大的差別在于編程方式一般高級語言采用文本編程,而 G 語言 采用圖形化編程語言。G 語言是 LABVIEW 的核心,熟練掌握 G 語言的編程要 3 虛擬示波器軟件設(shè)計 1
46、7 素和語法規(guī)則,是開發(fā) LABVIEW 應(yīng)用程序的最重要的基礎(chǔ)。 3.1.2 LABVIEW 程序組成 該環(huán)境包括三個部分:程序前面板、框圖程序和圖標(biāo)連接端口。程序 前面板用于設(shè)置輸入數(shù)值和觀察輸出量,主要用來模擬真實儀器的前面板。在 程序前面板上,輸入量被稱為控制(Controls) ,為虛擬儀器的框圖程序提供數(shù) 據(jù);輸出量被稱為顯示(Indicators) ,顯示虛擬儀器流程圖中產(chǎn)生或獲得的數(shù)據(jù)。 控制和顯示是以各種圖標(biāo)形式出現(xiàn)在前面板上,如旋鈕、開關(guān)、按鈕、圖表、 圖形等,這使得前面板直觀易懂。 一個程序前面板都對應(yīng)著一段框圖程序??驁D程序用 LABVIEW 圖形 編程語言編寫,可以把
47、它理解成傳統(tǒng)程序的源代碼??驁D程序由節(jié)點(Node) 、 數(shù)據(jù)連線(Wire)構(gòu)成。節(jié)點是 VI 程序中的執(zhí)行元素,類似于文本編程語言程 序中的語句、函數(shù)或子程序。節(jié)點之間數(shù)據(jù)連線按照一定的邏輯關(guān)系相互連接, 可定義框圖程序內(nèi)的數(shù)據(jù)流動方向。節(jié)點之間、節(jié)點與前面板對象之間是同數(shù) 據(jù)端口和數(shù)據(jù)連線來傳遞數(shù)據(jù)的。數(shù)據(jù)端口是數(shù)據(jù)在前面板對象和框圖程序之 間傳輸?shù)耐ǖ?,是?shù)據(jù)在框圖程序內(nèi)節(jié)點之間傳輸?shù)慕涌?3。 LABVIEW 中有三種類型的數(shù)據(jù)端口:控制端口和指示端口以及節(jié)點端口。 控制端口和指示端口用于前面板對象,當(dāng) VI 程序運行時,從控制輸入的數(shù)據(jù)通 過控制端傳遞到框圖程序,供其中的程序使用,
48、產(chǎn)生的輸出數(shù)據(jù)再通過指示端 口傳輸?shù)角懊姘鍖?yīng)的指示中顯示。每個節(jié)點端口都有一個或數(shù)個數(shù)據(jù)端口用 于輸入或輸出。 LABVIEW 采用的一種獲得專利的數(shù)據(jù)流編程模式。這不同于基于文本的 編程語言的線形結(jié)構(gòu),不同于執(zhí)行一個傳統(tǒng)的控制流方法??刂屏鲌?zhí)行的是指 令驅(qū)動,而數(shù)據(jù)流執(zhí)行的是數(shù)據(jù)流驅(qū)動或依賴數(shù)據(jù)的。 但一個虛擬儀器的圖標(biāo)被放置在另一個虛擬儀器的流程圖中時,它就是一 個子儀器。圖標(biāo)連接端口可以把 VI 變成一個 Sub VI,然后象子程序一樣在其 他程序中調(diào)用。圖標(biāo)是 Sub VI 的直觀標(biāo)記,是 Sub VI 在其他程序框圖中被調(diào) 用的節(jié)點表現(xiàn)形式,而連接端口則表示該 Sub VI 與調(diào)用
49、它的 VI 之間進行數(shù)據(jù) 交換的輸入/輸出口,就象傳統(tǒng)編程語言子程序的參數(shù)14。 3.1.3 LABVIEW 中有關(guān)聲卡函數(shù)介紹 LABVIEW 中提供了一系列使用 Windows 底層函數(shù)編寫的與聲卡有關(guān)的函 數(shù)。這些函數(shù)集中在圖 3-1 所示的為 LABVIEW 中 Graphics & Sound 的函數(shù)中 Sound 函數(shù)中的 Input 函數(shù)。由于使用 Windows 底層函數(shù)(不用更高級方便的 西安交通大學(xué)城市學(xué)院本科畢業(yè)設(shè)計(論文) 18 MCI 函數(shù)以及 DirectX 接口)直接與聲卡驅(qū)動程序打交道,因而封裝程序低, 速度快,而且可以訪問,采集緩沖區(qū)中任意位置的數(shù)據(jù),具有很大
50、靈活性,能 夠滿足實時不間斷采集的需要。 圖 3-1 LABVIEW 中的 sound 函數(shù)的 Input 函數(shù) 在本設(shè)計中主要運用到 LABVIEW 中 Graphics & Sound 的函數(shù)中 Sound 函數(shù)中的 Input 這個子模塊。表 3-1 是 LABVIEW 中 Graphics & Sound 的函數(shù)中 Sound 函數(shù)中的 Input 中提供的函數(shù)15。 表 3-1 Input 函數(shù)簡介 函數(shù)名稱功能說明 configure 該函數(shù)的主要功能是設(shè)置聲卡中與數(shù)據(jù)采集有關(guān)的一些硬件參數(shù), 如采樣率,數(shù)據(jù)格式,緩沖區(qū)長度等。聲卡的采樣率由內(nèi)部時鐘控 制,只有 3-4 種固定頻率
51、可選,一般將采樣頻率設(shè)置為 44100HZ, 數(shù)據(jù)格式設(shè)置為 16bit。緩沖區(qū)長度可選默認(rèn)值。 start 該函數(shù)用于通知聲卡開始采集外部數(shù)據(jù)。采集到的數(shù)據(jù)會被暫存在 緩沖區(qū)中,這一過程無需程序干預(yù),由聲卡硬件使用 MDA 直接完成, 保證了采集過程的連續(xù)性。 3 虛擬示波器軟件設(shè)計 19 read 該函數(shù)用于等待采樣數(shù)據(jù)緩沖區(qū)滿的消息。當(dāng)產(chǎn)生這一消息時,它 將數(shù)據(jù)緩沖區(qū)的內(nèi)容讀取到用戶程序的數(shù)組中,產(chǎn)生一個數(shù)據(jù)采樣 集合。若計算機的速度不夠快,使得緩沖區(qū)內(nèi)容被覆蓋,則會產(chǎn)生 一個錯誤信息。這時應(yīng)調(diào)節(jié)緩沖區(qū)的大小,在采樣時間和數(shù)據(jù)讀取 之間找到一個理想的平衡點。 stop 該函數(shù)用于通知聲卡
52、停止采集外部數(shù)據(jù)。已采集而未被讀出的數(shù)據(jù) 會留在緩沖區(qū)中,可以使用 read 函數(shù)一次讀完。 clear 該函數(shù)用于完成最終的清理工作。例如關(guān)閉聲卡采樣通道,釋放請 求的一系列系統(tǒng)資源(包括 MDA,緩沖區(qū)內(nèi)存,聲卡端口等) 。 3.2 程序的流程圖 程序流程框圖如圖 3-2 所示: 初始化 聲卡 信號采集 波形顯示 參數(shù)顯示 LABVIEW 模塊 圖 3-2 虛擬示波器程序流程圖 流程圖簡介: 首先對設(shè)計中運用到的模塊進行初始化,然后通過聲卡對數(shù)據(jù)進行采 集,把采集到的信號送入 LABVIEW 模塊中,通過 LABVIEW 模塊的程序 運行下,把采集到的信號通過圖形的形式,把波形顯示出來。通
53、過波形的 顯示,最后把波形的其他參數(shù)以數(shù)字的形式都顯示出來。 西安交通大學(xué)城市學(xué)院本科畢業(yè)設(shè)計(論文) 20 3.3 程序的結(jié)構(gòu)框圖 程序的結(jié)構(gòu)框圖如圖 3-3 所示: 聲卡參數(shù)設(shè)置數(shù)據(jù)采集 頻譜分析 參數(shù)顯示 波形顯示 函數(shù)信號發(fā)生器 圖 3-3 程序的結(jié)構(gòu)框圖 結(jié)構(gòu)框圖簡介: 首先由函數(shù)信號發(fā)生器產(chǎn)生特定的信號,進入聲卡的緩存區(qū),聲卡開 始進行初始化的參數(shù)設(shè)置,設(shè)置號以后將緩存區(qū)的信號讀取出來,送給數(shù) 據(jù)采集卡,進行 A/D 轉(zhuǎn)換成計算機可以識別的數(shù)字信號,最后對該信號進 行頻譜分析、參數(shù)顯示和波形顯示。 3.4 LABVIEW 虛擬示波器的程序設(shè)計 3.4.1 前面板的設(shè)計 本論文設(shè)計的
54、虛擬示波器控制面板如圖 3-4 所示: 圖 3-4 示波器的控制面板 控制前面板說明: 本文的前面板可以顯示信號的波形、幅頻特性、相頻特性。以數(shù)字形 3 虛擬示波器軟件設(shè)計 21 式顯示的包括周期均方根、周期平均值、峰峰值、正峰值、負(fù)峰值、幅度、 頻率、相位值。 3.4.2 總程序的設(shè)計 最終設(shè)計出的程序的總框圖如圖 3-5: 圖 3-5 程序總框圖 總框圖說明: 信號通過聲卡采集進入虛擬儀器中,通過聲卡的基本設(shè)置,設(shè)置聲卡 的一些基本參數(shù),聲卡的采樣頻率不能太低,如果頻率太低,采集過程中, 不能連續(xù)的采集,示波器的輸出就會中斷。聲卡采集完信號數(shù)據(jù)后,聲卡 開始讀取數(shù)據(jù),通過對數(shù)據(jù)的讀取,虛擬
55、示波器把波形顯示出來;在波形 顯示的過程中,虛擬示波器還能通過頻譜分析,對波形的幅頻和相頻分析, 顯示虛擬示波器的幅頻特性和相頻特性;最后再把頻率、幅頻、相頻的數(shù) 據(jù)通過數(shù)組的分析,也顯示出來。在讀區(qū)過程中,還能把虛擬示波器的周 期平均、峰峰值、負(fù)峰值、正峰值、周期均方根、直流、均方根的數(shù)值也 顯示出來。而聲卡的讀取過程是通過一個 While 循環(huán)把這所有的過程連接 起來。讀取過程完后,經(jīng)過聲卡的清理后,再進行下一次的讀取過程。在 聲卡的讀取過程中,如果聲卡觸發(fā)有差錯的話,聲卡的讀取就會停止,聲 卡直接停止,While 循環(huán)也就結(jié)束了。 3.5 數(shù)據(jù)采集和處理模塊 數(shù)據(jù)采集模塊是虛擬示波器軟件
56、的硬件驅(qū)動部分,在這里主要是利用 LABVIEW 里面的聲卡函數(shù)完成聲卡的硬件參數(shù)設(shè)置、啟動聲卡采集數(shù)據(jù)、等 西安交通大學(xué)城市學(xué)院本科畢業(yè)設(shè)計(論文) 22 待采樣數(shù)據(jù)緩沖區(qū)滿的消息、通知聲卡停止采集等任務(wù)。圖3-6為數(shù)據(jù)采集模 塊的程序流程圖 開始 幅度調(diào)整位移調(diào)整速率調(diào)整 讀取數(shù)據(jù)送入緩存區(qū) 數(shù)據(jù)轉(zhuǎn)換 顯示波形 是否停止采樣 停止采樣 并釋放資源 參數(shù)測量 結(jié)束 否 圖 3-6 數(shù)據(jù)采集模塊的程序流程圖 具體的數(shù)據(jù)采集流程是:(1)初始化;對聲卡中與數(shù)據(jù)采集相關(guān)的一些硬 件參數(shù)進行設(shè)置;(2)然后,聲卡開始采集數(shù)據(jù),并將采集到的數(shù)據(jù)暫存在先 進先出的緩沖區(qū)中;(3)當(dāng)緩沖區(qū)存滿數(shù)據(jù)后,一方
57、面將數(shù)據(jù)讀取到用戶程序 的數(shù)組中,產(chǎn)生一個采樣數(shù)據(jù)集合,并在程序中對數(shù)據(jù)進行各種處理;(4)另 一方面,得到緩沖區(qū)滿的消息后,通知聲卡暫時停止采集外部數(shù)據(jù),并進一步 清空緩存里的內(nèi)容16。 如圖 3-7 所示,為數(shù)據(jù)采集和處理模塊。 圖 3-7 數(shù)據(jù)采集和處理模塊 程序說明: 3 虛擬示波器軟件設(shè)計 23 在 LABVIEW 軟件中,對于聲卡的聲道可以分為 mono 8-bit(單聲道 8 位) , mono 16-bit(單聲道 16 位) ,stereo 8-bit(立體聲 8 位)和 stereo 16-bit(立體 聲 16 位) 。其中,16 位聲道比 8 位聲道采樣信號的質(zhì)量好,立
58、體聲(stereo) 比單聲道(mono)采樣信號好,最好的采樣通道形式是 stereo 16-bit,這樣采樣 的波形穩(wěn)定,而且干擾小。另外,用單聲道采樣,左右聲道信號都相同,而且 每個聲道的幅值只有原信號幅值的 1/2;采用立體聲采樣,左右聲道互不干擾, 可以采兩路不同的信號,而且采樣的信號幅值與原幅值相同。當(dāng)然,還有一個 重要的原因是,如果選擇 mono(單聲道) ,SI 出來的數(shù)據(jù)是標(biāo)量,不能組成數(shù) 組,進而不便于數(shù)據(jù)的各種處理。所以在設(shè)計中我采用 stereo 16-bit 進行雙聲道 采樣。聲卡的采樣頻率(rate)有 4 種選擇,即 8000Hz,11025Hz,22050Hz
59、和 44100Hz,采樣頻率不同,采到的波形的質(zhì)量也不同,應(yīng)視具體情況采用合 適的頻率,在設(shè)計中,為了得到良好的演示效果,我采用了 44100Hz 的采樣頻 率。而在采樣率的選擇方面,本文采用了一個 case 循環(huán),目的是在采樣率為 44100Hz 的條件下,在循環(huán)內(nèi)產(chǎn)生波形數(shù)據(jù)。這個在后面波形產(chǎn)生模塊中進行 詳細(xì)解釋。 主要操作說明; 在 block diagram: Functions Graphics & Sound Sound Sound Input 選擇 Sound Input 函 數(shù)。 1) Functions Structures While Loop 選擇 While 循環(huán)。
60、2) Functions Structure Case 選擇 Case 循環(huán)。 3) 右鍵點擊 SI Config 函數(shù)的 Sound Format 輸入,選擇 create control,自動生 成 Sound Format 簇類型控鍵。其中包含三項數(shù)據(jù),分別為:sound quality;rate;bits persample。 4) 右鍵點擊 SI Config 函數(shù)的 Buffer Size 輸入,選擇 create control,自動生成 無符號長整數(shù)類型的控鍵。 5)Functions Cluster Unbundle 選擇 Unbundle 函數(shù)。對輸入簇 Cluster 進
61、行解包。當(dāng)接入 cluster 輸入?yún)?shù)后,輸出端子數(shù)自動調(diào)整為與 cluster 元 素數(shù)目相同。 3.5.1 聲音輸入設(shè)置 聲音輸入設(shè)置的前面板是對聲卡參數(shù)的一些設(shè)置,這些設(shè)置必須能夠滿足 設(shè)計的需要。參數(shù)設(shè)置如圖 3-8 所示。 西安交通大學(xué)城市學(xué)院本科畢業(yè)設(shè)計(論文) 24 圖 3-8 聲音輸入設(shè)置的前面板 聲音輸入設(shè)置的后面板如圖 3-9 所示。 圖 3-9 聲音輸入設(shè)置的后面板 程序說明: 聲音輸入設(shè)置該函數(shù)的主要功能是設(shè)置聲卡中與數(shù)據(jù)采集有關(guān)的一些硬件 參數(shù),如采樣率,數(shù)據(jù)格式,緩沖區(qū)長度等。聲卡的采樣率由內(nèi)部時鐘控制, 只有 3 到 4 種固定頻率可選,一般將采樣頻率設(shè)置為 4
62、4100HZ,數(shù)據(jù)格式設(shè)置 為 16bit。緩沖區(qū)長度可選默認(rèn)值。 主要操作說明: 在 block diagram: 3 虛擬示波器軟件設(shè)計 25 Functions Graphics & Sound Sound Input Configure 選擇 configure 函數(shù)。 3.5.2 聲音輸入讀取 聲音輸入讀取的前面板為聲卡采集時的參數(shù)設(shè)置。 聲音輸入讀取的前面板如圖 3-10 所示。 圖 3-10 聲音輸入讀取的前面板 聲音輸入讀取的后面板如圖 3-11 所示。 圖 3-11 聲音輸入讀取的后面板 程序說明: 該函數(shù)用于等待采樣數(shù)據(jù)緩沖區(qū)滿的消息。當(dāng)產(chǎn)生這一消息時,它將數(shù)據(jù)緩 西安交通
63、大學(xué)城市學(xué)院本科畢業(yè)設(shè)計(論文) 26 沖區(qū)的內(nèi)容讀取到用戶程序的數(shù)組中,產(chǎn)生一個數(shù)據(jù)采樣集合。若計算機的速 度不夠快,使得緩沖區(qū)內(nèi)容被覆蓋,則會產(chǎn)生一個錯誤信息。這時應(yīng)調(diào)節(jié)緩沖 區(qū)的大小,在采樣時間和數(shù)據(jù)讀取之間找到一個理想的平衡點。 主要操作說明: 在 block diagram: Functions Graphics & Sound Sound Input Read 選擇 read 函數(shù)。 3.5.3 聲音輸入清除 聲音輸入清除的前面板如圖 3-12 所示。 圖 3-12 聲音輸入清除的前面板 聲音輸入清除的后面板如圖 3-13 所示。 圖 3-13 聲音輸入清除的后面板 程序說明: 3
64、 虛擬示波器軟件設(shè)計 27 該函數(shù)用于完成最終的清理工作。例如關(guān)閉聲卡采樣通道,釋放請求的一 系列系統(tǒng)資源(包括 MDA,緩沖區(qū)內(nèi)存,聲卡端口等) 。 主要操作說明: 在 block diagram: Functions Graphics & Sound Sound Input Clear 選擇 clear 函數(shù)。 3.6 測量模塊 采樣點數(shù)測量模塊如圖 3-14 所示。 圖 3-14 采樣點數(shù)測量模塊 程序說明: 采樣點數(shù)測量模塊主要用于獲得波形的采樣點數(shù),其中采用的 Statistics 函 數(shù),它是用來確定波形運行時的采樣點數(shù),取決于輸入的程序中設(shè)定的值。 主要操作說明: 在 block
65、 diagram: Functions Mathematics Prob & Stat Statistics 選擇 Statistics 函數(shù)。 頻率測量模塊前面板如圖 3-15 所示。 西安交通大學(xué)城市學(xué)院本科畢業(yè)設(shè)計(論文) 28 圖 3-15 頻率測量模塊前面板 頻率測量模塊的后面板如圖 3-16 所示。 圖 3-16 頻率測量模塊的后面板 程序說明: 頻率測試模塊,主要用于測量信號波形的頻率。其中采用的函數(shù)為 Extract Single Tone Information 函數(shù)。它是用來獲取一個信號的,求出音頻信號的最 高幅度或者一個指定的頻率范圍,并返回一個單一的頻率、幅度、相位值。
66、 主要操作說明: 在 block diagram: Functions Signal Processing Wfm Measure Extract Single Tone Information 選擇 Extract Single Tone Information 函數(shù)。 3 虛擬示波器軟件設(shè)計 29 3.7 頻譜分析模塊 頻譜分析模塊的前面板是設(shè)置頻譜分析模塊的參數(shù)。 頻譜分析模塊的前面板如圖 3-17 所示。 3-17 頻譜分析模塊的前面板 頻譜分析模塊的后面板如圖 3-18 所示。 圖 3-18 頻譜分析模塊的后面板 程序說明: 頻譜分析模塊,它的作用是對信號進行頻譜分析。實現(xiàn)一個 FFT 運算。主 要利用了 FFT Spectrum 函數(shù)。FFT Spectrum 函數(shù)的功能為計算一個時間信號 的平均 FFT Sp
- 溫馨提示:
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. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 噪聲危害和控制
- 英美短篇小 說Unit 4 A New Dress
- 10資本主義時代的曙光教學(xué)課件
- 葡萄溝PPT模版教學(xué)課件
- 第四章+厭氧生物處理課件
- 遼寧省燈塔市第二初級中學(xué)八年級語文下冊 20俗世奇人好嘴楊巴課件 新人教版
- 胖乎乎的小手--課件正式版
- 六年級科學(xué)上冊33《精彩紛呈__展示篇》-優(yōu)選課件1大象版
- 六年級數(shù)學(xué)上冊41比的意義課件2新人教版
- 人教版美術(shù)三上第8課《星空的聯(lián)想》課件
- 第三章-商事登記與商業(yè)賬簿課件
- 人教版小學(xué)數(shù)學(xué)一年級下冊《找規(guī)律》整理143508課件
- 人教版小學(xué)二年級數(shù)學(xué)下冊第三單元《平移與旋轉(zhuǎn)》課件6
- 西師版三上數(shù)學(xué)第3課時-一位數(shù)乘兩位數(shù)的筆算(不進位)課件
- (部編)人教版小學(xué)語文三年級上冊《18富饒的西沙群島》名師教學(xué)ppt課件