

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 畢業(yè)設(shè)計(論文) </b></p><p> 課 題: 虛擬信號發(fā)生器的研究與設(shè)計 </p><p> 專 業(yè): 自動化 </p><p> 班 級: 一班 </p>
2、;<p> 學(xué)生姓名: </p><p> 學(xué) 號: </p><p> 指導(dǎo)教師: </p><p><b> 摘 要</b></p><p> 本文
3、僅就基于LabWindows/CVI虛擬信號發(fā)生器進(jìn)行設(shè)計,虛擬信號發(fā)生器利用LabWindows/CVI提供的軟件平臺以及強(qiáng)大的函數(shù)庫,通過簡單的單片機(jī)MCU+DDS就可以產(chǎn)生頻帶寬,精度高,幅值、相位和頻率連續(xù)可調(diào)的波形,借助PC機(jī)的網(wǎng)絡(luò)傳輸功能可實現(xiàn)網(wǎng)絡(luò)控制和信號處理?;贚abWindows/CVI的虛擬信號采集卡利用C8051F020微處理器內(nèi)的A/D通道及I/O端口完成虛擬信號采集,放大處理和數(shù)據(jù)傳輸任務(wù),對信號的處理和顯示
4、可由PC機(jī)來完成或由網(wǎng)絡(luò)控制,減少硬件的開支,易于實現(xiàn)自動測控。最后,在對本文系統(tǒng)進(jìn)行全面測試,結(jié)果表明本方案可行,具有較大的通用性。</p><p> 通過虛擬信號發(fā)生器的設(shè)計,闡述利用labwindows/cvi進(jìn)行虛擬儀器設(shè)計的方法、步驟和實現(xiàn)技術(shù),并展望虛擬儀器的廣闊應(yīng)用前景。利用其軟件開發(fā)平臺,按步驟闡述了虛擬信號發(fā)生器的設(shè)計和實現(xiàn)過程,最終實現(xiàn)了信號發(fā)生器的設(shè)計,該信號發(fā)生器可以選擇波形以及幅值和頻
5、率。更能可以由用戶根據(jù)需要自行設(shè)計和擴(kuò)展,人及界面友好。</p><p> 關(guān)鍵詞:信號發(fā)生器;虛擬儀器;labwindows/cvi</p><p><b> Abstract</b></p><p> The content of this paper is about virtual function signal generato
6、r which is based on LabWindows/CVI and digital signal processor. It includes designing the structure of virtual signal generator which is based on LabWindows/CVI and digital signal processor, which includes hardware and
7、software structure, designing digital signal capture board which is based on C8051F020 and giving network measure and controlling based on TCP/IP and signal processor. Use LabWindows/CVI software platform and powe</p&
8、gt;<p> By the designing of the virtual signal generator,the designing methods,steps and technology of virtual instruments which is based on the labwindows/cvi are acquired,and prospect its wide application,after
9、 introduce the concept of the virtual signal generator,which makes the best use of the soft development platform,giving out the design and the implement steps of the virtual signal generator,and the virtual signal genera
10、tor is carried out finally which can be used to select the waveform 、amplitu</p><p> Keywords: signal generator ;Virtual Instrument ;labwindows/cvi</p><p><b> 目錄</b></p><
11、;p> 第一章緒論- 5 -</p><p> 第二章 LabWindows/CVI簡介- 7 -</p><p> 2.1 LABWINDOWS/CVI概述- 7 -</p><p> 2.2 LABWINDOWS /CVI的特點- 7 -</p><p> 2.3基于LABWINDOWS /CVI的虛擬儀器構(gòu)成
12、- 9 -</p><p> 2.3.1 儀器硬件平臺- 9 -</p><p> 2.3.2 虛擬儀器應(yīng)用軟件- 10 -</p><p> 2.4 虛擬儀器的內(nèi)部功能- 10 -</p><p> 2.5 LABWINDOWS /CVI的運行環(huán)境- 10 -</p><p> 2.6 虛擬儀器技
13、術(shù)及發(fā)展- 11 -</p><p> 2.6.1 虛擬儀器特點- 11 -</p><p> 2.6.2 虛擬儀器技術(shù)應(yīng)用- 12 -</p><p> 2.6.3 虛擬儀器的發(fā)展- 12 -</p><p> 第三章 虛擬信號發(fā)生器的理論研究- 13 -</p><p> 3.1虛擬信號發(fā)生器的
14、基本原理- 13 -</p><p> 3.2.信號發(fā)生器現(xiàn)狀及發(fā)展- 16 -</p><p> 第四章 虛擬信號發(fā)生器的設(shè)計- 18 -</p><p> 4.1 虛擬信號發(fā)生器設(shè)計- 18 -</p><p> 4.1.1 虛擬信號發(fā)生器的工作原理- 18 -</p><p> 4.1.2信
15、號的頻譜分析- 19 -</p><p> 4.1.3儀器硬件面板設(shè)計- 20 -</p><p> 4.1.4軟件設(shè)計(程序設(shè)計)- 24 -</p><p> 4.1.5運行程序完成項目文件- 36 -</p><p><b> 總結(jié)- 41 -</b></p><p>
16、致 謝- 43 -</p><p> 參考文獻(xiàn)- 44 -</p><p> 附錄一 英文翻譯資料- 45 -</p><p> 附錄二 程序- 53 -</p><p> (一)在虛擬信號發(fā)生器面板All Code 產(chǎn)生*.c文件中程序清單:- 53 -</p><p> ?。ǘ┬盘柊l(fā)生器完整
17、程序清單:- 55 -</p><p> 附錄三 各函數(shù)的功能和插入方法- 60 -</p><p><b> 緒論</b></p><p> 隨著計算機(jī)技術(shù)的高速發(fā)展和普及帶動了各個行業(yè)的進(jìn)步,有力地促進(jìn)了多年來發(fā)展相對緩慢的儀器技術(shù)的飛躍,給儀器儀表領(lǐng)域帶來了深刻的變化;新的測試?yán)碚?、測試方法、測試領(lǐng)域以及儀器結(jié)構(gòu)不斷出現(xiàn),而電
18、子測量技術(shù)的功能和作用也發(fā)生了質(zhì)的變化。 20世紀(jì)80年代中后期,國外提出了“虛擬儀器”,“虛擬系統(tǒng)”的概念,隨著微電子技術(shù)、計算機(jī)技術(shù)的飛速發(fā)展及其在測量與儀器上的應(yīng)用,測試領(lǐng)域的新理論、新方法以及儀器結(jié)構(gòu)不斷出現(xiàn)突破了傳統(tǒng)儀器的概念,繼而開創(chuàng)了儀器儀表的新時代-虛擬儀器。</p><p> 所謂虛擬儀器(Virtual Instrument,簡稱VI),就是用戶在計算機(jī)平臺上,根據(jù)要求定義和設(shè)計儀器的測試
19、功能,使得使用者在操作這臺計算機(jī)時,就像是在操作一臺自己設(shè)計的測試儀器。需要指出的是,虛擬儀器實質(zhì)是是一種創(chuàng)新的儀器設(shè)計思想,但虛擬儀器離不開計算機(jī)控制,軟件是虛擬儀器設(shè)計的核心。</p><p> 虛擬儀器的組成包括硬件和軟件兩個基本要素。虛擬儀器中硬件的主要功能是獲取真實世界中的被測信號,而軟件的作用是控制現(xiàn)實數(shù)據(jù)采集、分析、處理、顯示等功能,并將其集成為儀器操作與運行的命令環(huán)境。虛擬儀器的分類可以按照多種
20、分類方法,即可按照應(yīng)用領(lǐng)域,也可按照測量功能分類,但常按照虛擬儀器的接口總線方式分類。按照總線的接口方式分為:數(shù)據(jù)采集插卡式(DAQ)虛擬儀器、RS232/RS422虛擬儀器、并行接口虛擬儀器、USB虛擬儀器、GPIB虛擬儀器、VXI虛擬儀器、PXI虛擬儀器和最新的IEEE1394接口虛擬儀器。</p><p> 基于LabWindows/CVI的虛擬函數(shù)信號發(fā)生器、數(shù)據(jù)采集和信號處理的研究還處于發(fā)展階段,也是
21、國內(nèi)外研究的重要課題,國內(nèi)外都正在展開積極的研究。把信號發(fā)生、數(shù)據(jù)采集和信號處理集成在一起,利用網(wǎng)絡(luò)對其進(jìn)行控制和處理,并且在軟硬件的升級方面有很大的改善空間和靈活性,改變了人們對儀器的傳統(tǒng)觀念,適應(yīng)了現(xiàn)代測試系統(tǒng)的網(wǎng)絡(luò)化、智能化發(fā)展趨勢。就像我們所說的“軟件就是儀器”,他將成為一個具有廣泛應(yīng)用前景的新興產(chǎn)業(yè)。</p><p> 隨著計算機(jī)技術(shù)和個人電腦技術(shù)的出現(xiàn)和發(fā)展,傳統(tǒng)儀器開始向計算機(jī)化的方向發(fā)展,人們開
22、始考慮使用電腦來處理傳統(tǒng)儀器所測數(shù)據(jù)。20世紀(jì)80年代,隨著計算機(jī)技術(shù)的進(jìn)一步發(fā)展,個人電腦可以帶有多個擴(kuò)展槽,就出現(xiàn)了插在計算機(jī)里的數(shù)據(jù)采集卡。它可以金星一些簡單的數(shù)據(jù)采集,數(shù)據(jù)的后處理由計算機(jī)軟件完成,這就是虛擬儀器技術(shù)的雛形。1986年,美國National Instrument公司(以下簡稱NI公司)提出了“軟件即儀器的口號”,推出了NI-LabVIEW直觀的流程圖編程風(fēng)格的開發(fā)和運行程序平臺,同時提出了LabWindows/C
23、VI基于C語言的程序化編程風(fēng)格的開發(fā)和運行程序平臺,開啟了虛擬儀器的先河。虛擬儀器技術(shù)的提出與發(fā)展,標(biāo)志著二十一世紀(jì)自動測試與電子測量儀器領(lǐng)域技術(shù)發(fā)展的一個重要方向。</p><p> 虛擬儀器技術(shù)目前在國內(nèi)外發(fā)展很快,以美國國家儀器公司(NI公司)為代表的一批廠商已經(jīng)在市場上推出了基于虛擬儀器技術(shù)而設(shè)計的商品化儀器產(chǎn)品。</p><p> 本文圍繞基于LabWindows/CVI的虛
24、擬信號發(fā)生器的研究與設(shè)計,主要完成以下工作:</p><p> 基于LabWindows/CVI的信號發(fā)生器的硬件平面設(shè)計。</p><p> 基于LabWindows/CVI的信號發(fā)生器的軟件程序設(shè)計。</p><p> 3. 虛擬信號發(fā)生器的仿真調(diào)試運行結(jié)果。</p><p> 第二章 LabWindows/CVI簡介</p
25、><p> 1986年,美國National Instrument公司(以下簡稱NI公司)提出了“軟件即儀器的口號”,推出了NI-LabVIEW直觀的流程圖編程風(fēng)格的開發(fā)和運行程序平臺,同時提出了LabWindows/CVI基于C語言的程序化編程風(fēng)格的開發(fā)和運行程序平臺,開啟了虛擬儀器的先河。labwindows/cvi軟件,它以ANSI C為核心,功能強(qiáng)大,使用靈活的C語言平臺與數(shù)據(jù)采集,分析和表達(dá)的測控專業(yè)的工
26、具有機(jī)的結(jié)合起來。他的集成化開發(fā)平臺,交互式編程方法,豐富的控件和庫函數(shù)大大增強(qiáng)了C語言的功能,為熟悉C語言的開發(fā)人員建立檢測系統(tǒng),自動測量環(huán)境,數(shù)據(jù)采集系統(tǒng),過程監(jiān)控系統(tǒng)等提供了一個理想的軟件開發(fā)環(huán)境。</p><p> 2.1 LabWindows/CVI概述</p><p> LabWindows/CVI是面向儀器與測控過程的交互式C/C++開發(fā)平臺,它是一個用C語言構(gòu)建儀器系統(tǒng)
27、的交互式軟件開發(fā)環(huán)境,可以模塊化方式對C語言進(jìn)行編輯、編譯、連接和調(diào)試。其有以下特點:</p><p> 1.交互式程序開發(fā)。</p><p><b> 2.集成開發(fā)平臺。</b></p><p> 3.功能強(qiáng)大的函數(shù)庫。</p><p> 4.簡單直觀的圖形用戶界面設(shè)計。</p><p>
28、;<b> 5.完善的兼容性。</b></p><p> 6. 多種靈活的程序調(diào)試手段。</p><p><b> 7.網(wǎng)絡(luò)功能。</b></p><p> 2.2 LabWindows/CVI的特點</p><p> LabWindows/CVI作為一個優(yōu)秀的軟件開發(fā)平臺,和其他虛擬儀器
29、開發(fā)工具相比,具有如下特點:</p><p> (1)交互式的程序開發(fā)</p><p> LabWindows/CVI將源代碼編程、32位ANSIC編譯、連接、調(diào)試及標(biāo)準(zhǔn)ANSIC庫等集成在一個交互式開發(fā)平臺中,采用簡單直觀圖形用戶界面設(shè)計,利用函數(shù)面板輸入函數(shù)參數(shù)的參數(shù),采用事件驅(qū)動方式和回調(diào)函數(shù)方式的編程技術(shù),有效的提高了工程設(shè)計的效率和可靠性。</p><p&
30、gt; (2)功能強(qiáng)大的函數(shù)庫</p><p> 如接口函數(shù)、信號處理函數(shù)庫、Windows SDK(Software Development Kit)、儀器驅(qū)動函數(shù)庫等,利用這些函數(shù)庫可以輕松實現(xiàn)復(fù)雜的數(shù)據(jù)采集和儀器控制系統(tǒng)的開發(fā)。同時,LabWindows/CVI附加了各種軟件開發(fā)包,如數(shù)據(jù)庫軟件包、Internet軟件包、小波分析軟件包等,大大增強(qiáng)了LabWindows/CVI的性能。</p>
31、;<p><b> 靈活的程序調(diào)試手段</b></p><p> LabWindows/CVI提供了單步執(zhí)行、斷點執(zhí)行、過程跟蹤、參數(shù)檢查、運行時內(nèi)存檢查等多種調(diào)試手段。</p><p> LabWindows/CVI以面向虛擬儀器的交互式開發(fā)環(huán)境,滿足看用戶對軟件不斷變化的要求,在產(chǎn)品的設(shè)計中,可以快速的創(chuàng)建、配置并顯示測量。LabWindows
32、/CVI可以自動生成代碼、編譯和連接,省去了手工編寫,更有利于系統(tǒng)的開發(fā)。</p><p><b> 開放式的框架結(jié)構(gòu)</b></p><p> 在LabWindows/CVI環(huán)境中,可以結(jié)合使用標(biāo)準(zhǔn)的ANSIC源文件、obj文件和動態(tài)鏈接庫(DLL)。還可以將軟件中的儀器驅(qū)動程序庫與其他標(biāo)準(zhǔn)的C編譯器結(jié)合使用,無需更改開發(fā)工具。同時,可以在不同的工作小組之間共享
33、函數(shù)模塊和虛擬儀器程序。</p><p><b> 集成式的開發(fā)環(huán)境</b></p><p> LabWindows/CVI是集成式的開發(fā)環(huán)境,可用于創(chuàng)建基于DAQ、GPIB、PXI、VXI、串口和以太網(wǎng)的虛擬儀器系統(tǒng)。這一開發(fā)方式結(jié)合了交互式、簡單易用的開發(fā)方式與ANSIC代碼的強(qiáng)大編寫功能和靈活性。LabWindows/CVI中的交互式開發(fā)工具和函數(shù)庫可以輕松
34、實現(xiàn)自動化測試系統(tǒng)、實驗室研發(fā)、數(shù)據(jù)采集監(jiān)視項目、驗證測試和控制系統(tǒng)的設(shè)計。</p><p> 2.3基于LabWindows/CVI的虛擬儀器構(gòu)成</p><p> 基于LabWindows/CVI虛擬儀器通常由通用儀器硬件平臺和應(yīng)用軟件兩大部分構(gòu)成。</p><p> 2.3.1 儀器硬件平臺</p><p> 虛擬儀器的硬件平
35、臺主要是解決信號的輸入輸出,由計算機(jī)和I/O接口設(shè)備兩部分完成。計算機(jī)一般為一臺PC或工作站,它是硬件平臺的核心。I/O接口設(shè)備主要負(fù)責(zé)被測輸入信號的采集、放大和A/D轉(zhuǎn)換。根據(jù)采用不同的總線及其相應(yīng)的I/O接口硬件設(shè)備,如PC總線的數(shù)據(jù)采集卡/板(DAQ)、GPIB總線儀器模塊、VXI總線儀器模塊和串口總線儀器等,虛擬儀器的構(gòu)成只要分為5中類型,如圖1-1所示</p><p> 圖2-1 虛擬儀器結(jié)構(gòu)框圖&l
36、t;/p><p> 上述各種虛擬儀器系統(tǒng)都是通過應(yīng)用軟件將儀器硬件與計算機(jī)相結(jié)合構(gòu)成的,其中,串口測試系統(tǒng)是構(gòu)成虛擬儀器的最簡單、最基本的方式。</p><p> 本文中的硬件由工控機(jī)及其接口,數(shù)據(jù)采集卡和放大及濾波電路構(gòu)成,其原理框圖如圖2-2所示:</p><p><b> 圖2-2 原理框圖</b></p><p&g
37、t; 2.3.2 虛擬儀器應(yīng)用軟件</p><p> 虛擬儀器軟件由應(yīng)用程序和I/O接口儀器驅(qū)動程序兩大部分構(gòu)成。</p><p> 應(yīng)用程序包含兩個方面:</p><p> 實現(xiàn)虛擬儀器面板的流程圖軟件程序。</p><p> 定義測試功能的流程圖軟件程序。</p><p> I/O接口儀器驅(qū)動程序完成特
38、定的外部硬件設(shè)備的擴(kuò)展、驅(qū)動和通信。</p><p> 2.4 虛擬儀器的內(nèi)部功能</p><p> 虛擬儀器的內(nèi)被功能可以化分為:輸入信號的測量、數(shù)據(jù)分析處理和結(jié)果顯示三大部分。</p><p> 輸入信號的測量將模擬信號轉(zhuǎn)變?yōu)閿?shù)字信號并輸入到計算機(jī)中。</p><p> 數(shù)據(jù)分析處理充分利用了計算機(jī)的存儲和運算功能,并通過軟件實現(xiàn)
39、對輸入信號數(shù)據(jù)的分析處理。處理內(nèi)容包括數(shù)字信號處理、數(shù)字濾波、統(tǒng)計處理、數(shù)值計算與分析等。</p><p> 結(jié)果顯示充分利用了計算機(jī)資源,其測量結(jié)果數(shù)據(jù)的表達(dá)與輸出方式有多種方式。例如,虛擬儀器可以通過總線網(wǎng)絡(luò)進(jìn)行數(shù)據(jù)傳輸、通過文件將測試數(shù)據(jù)存于硬盤內(nèi)存中、計算機(jī)屏幕顯示或圖形用戶接口。</p><p> 2.5 LabWindows/CVI的運行環(huán)境</p><
40、p> 在LabWindows/CVI軟件平臺設(shè)計完成的虛擬儀器軟件由四個文件組成,如圖1-2所示。</p><p> 圖2-3 用LabWindows/CVI設(shè)計的虛擬儀器軟件組成</p><p> 1.*.prj文件:工程文件,由*.uir文件、*.c文件和*.h文件組成。</p><p> 2.*.c文件:源程序文件,此文件為標(biāo)準(zhǔn)的C語言程序文件。
41、文件由上部分組成,即頭文件(*.h)、主程序文件(Main)和回調(diào)函數(shù)(CallBack),其結(jié)構(gòu)和C語言的結(jié)構(gòu)一致。</p><p> 3.*.uir文件:用戶界面文件,該文件為虛擬儀器的面板文件,類似VB或VC中的窗體文件。該文件中包含儀器面板中的各類控件,如按鈕、開關(guān)等,每個控件都有自己的屬性,如按鈕的名稱,面板的標(biāo)題、長度、位置等。同時控件還有事件,當(dāng)有鼠標(biāo)單擊控件或用鍵盤改變控件時,將調(diào)用相應(yīng)的回調(diào)函
42、數(shù),完成相應(yīng)的功能,如完成數(shù)據(jù)處理、存盤、顯示、打印等功能。</p><p> 4.*.h文件:頭文件,與C中的*.h文件結(jié)構(gòu)完全一致在LabWindows/CV中,*.h文件是自動生成的,當(dāng)設(shè)計完*.uir文件后,會自動生成*.h文件。</p><p> 為設(shè)計完成上述4個文件,LabWindows/CVI開發(fā)環(huán)境提供了4個主要的界面窗口:工程文件編輯窗口(Project Windo
43、w)、用戶界面編輯窗口(User interface Editor Window)、源代碼文件編輯窗口(Source Window)和函數(shù)面板編輯窗口(Function Panel Window)。</p><p> 2.6 虛擬儀器技術(shù)及發(fā)展</p><p> 2.6.1 虛擬儀器特點</p><p> 虛擬儀器是計算機(jī)技術(shù)介入儀器領(lǐng)域所形成的一個新型的富有
44、生命力的儀器種類。其和傳統(tǒng)儀器相比,有以下幾個特點:</p><p><b> ?。?)性價比高</b></p><p> 規(guī)模經(jīng)濟(jì)效益使通用個人計算機(jī)具有很高的性價比,而且基于個人計算機(jī)的虛擬儀器和儀器系統(tǒng)可共享計算機(jī)硬件資源,從而大大增加了儀器的功能,降低了儀器的成本。</p><p><b> ?。?)開放性好</b&g
45、t;</p><p> 具有開放性的規(guī)?;O(shè)計,便于用戶根據(jù)測試任務(wù)隨心所欲的組建儀器或系統(tǒng),儀器擴(kuò)充、聯(lián)網(wǎng)和升級十分方便。</p><p><b> ?。?)智能化程度高</b></p><p> 虛擬儀器是基于計算機(jī)的儀器,其軟件具有強(qiáng)大的分析、計算、邏輯判斷等功能,可以在計算機(jī)上建立一個普通的智能儀器到智能專家系統(tǒng)。</p>
46、;<p> ?。?)界面友好,使用方便。 </p><p> 2.6.2 虛擬儀器技術(shù)應(yīng)用</p><p> 虛擬儀器技術(shù)作為計算機(jī)與儀器結(jié)合的產(chǎn)物,應(yīng)用前景十分廣泛??傮w而言,虛擬儀器是測量/測試領(lǐng)域的一個創(chuàng)新概念,改變了人們對儀器的傳統(tǒng)觀念,適應(yīng)了現(xiàn)代測試系統(tǒng)的網(wǎng)絡(luò)化、智能化發(fā)展趨勢。虛擬儀器技術(shù)應(yīng)用方式多種多樣,主要有如下幾個方面:</p><p
47、><b> 工業(yè)自動化</b></p><p> 虛擬儀器設(shè)計所采用的圖形化編程語言,十分適合工程師應(yīng)用,有利于提高企業(yè)自主開發(fā)和管理項目的能力,降低工業(yè)自動化技術(shù)改造成本。另一方面,采用虛擬儀器技術(shù),根據(jù)實際工藝和控制要求,將分布在企業(yè)不同位置的各個測量儀器和控制裝置連接為一個網(wǎng)絡(luò)系統(tǒng),通過計算機(jī)實施控制和管理,可降低成本,提高工業(yè)自動化改造的經(jīng)濟(jì)效益。</p>&
48、lt;p><b> 儀器產(chǎn)業(yè)的改造</b></p><p> 儀器制造業(yè)代表著一個國家科技和工業(yè)發(fā)展的水平。目前,像數(shù)字示波器、頻譜分析儀和邏輯分析儀等要主要依賴進(jìn)口。而采用虛擬儀器技術(shù),將過去儀器中許多靠硬件實現(xiàn)的功能用軟件實現(xiàn),利用商品化的數(shù)據(jù)采集和PC技術(shù),完全可以開發(fā)出各行各業(yè)急需的各種測量儀器。這是采用高新技術(shù)改造傳統(tǒng)產(chǎn)業(yè)的一個大有作為的領(lǐng)域。</p>&l
49、t;p><b> 實驗室應(yīng)用</b></p><p> 虛擬儀器是用戶自定義儀器,供應(yīng)商提供軟件平臺。這種變化給實驗教學(xué)帶 來了新的教學(xué)理念。實驗室平臺將由硬件、界面友好的應(yīng)用軟件、虛擬原型模型一起組成的試驗系統(tǒng),這種思想對從根本上改變傳統(tǒng)實驗教學(xué)方法,降低實驗室建設(shè)與管理成本,實現(xiàn)遠(yuǎn)程教學(xué)具有重要的參考價值。</p><p> 2.6.3 虛擬儀器的發(fā)展
50、</p><p> 電子測量儀器發(fā)展至今,答題可以分成四代:模擬儀器、數(shù)字化儀器、智能化儀器和虛擬儀器。</p><p> 第一代:模擬儀器。如指針式萬用表、指針式電壓表、指針式電流表等,他們的基本結(jié)構(gòu)是電磁機(jī)械式的,借助指針來顯示最終結(jié)果。</p><p> 第二代:數(shù)字化儀器。數(shù)字式儀器目前相當(dāng)普及,如數(shù)字式電壓表、數(shù)字式頻率計等。這類儀器將模擬信號的測量
51、轉(zhuǎn)化為數(shù)字信號測量,并以數(shù)字方式輸出最終結(jié)果,適用于快速響應(yīng)和較高準(zhǔn)確度的測量。</p><p> 第三代:智能儀器。智能儀器內(nèi)置微處理器,既能進(jìn)行自動測試,又具有一定的數(shù)據(jù)處理,可取代部分腦力勞動,習(xí)慣上稱為智能儀器。它的功能全部都是以硬件(或固化的硬件)的形式存在,無論是開發(fā)還是應(yīng)用,都缺乏靈活性。</p><p> 第四代:虛擬儀器。虛擬儀器是現(xiàn)代計算機(jī)技術(shù)、通信技術(shù)和測量技術(shù)相
52、結(jié)合的產(chǎn)物,是傳統(tǒng)儀器觀念的一次巨大變革,是儀器行業(yè)發(fā)展的一個重要方向。它的出現(xiàn)使得人類的測試技術(shù)進(jìn)入了一個新的發(fā)展紀(jì)元。</p><p> 隨著計算機(jī)技術(shù)、儀器技術(shù)和網(wǎng)絡(luò)通信技術(shù)的不斷完善,虛擬儀器將向三個方面發(fā)展:</p><p><b> 外掛式虛擬儀器</b></p><p> PXI型高精度集成虛擬儀器測試系統(tǒng)</p>
53、;<p><b> 網(wǎng)絡(luò)化虛擬儀器</b></p><p> 第三章 虛擬信號發(fā)生器的理論研究</p><p> 3.1虛擬信號發(fā)生器的基本原理</p><p> 信號發(fā)生器又稱信號源或震蕩器,在生產(chǎn)實踐和科技領(lǐng)域中有廣泛的應(yīng)用。各種波形曲線均可以用三角函數(shù)方程式來表示。能夠產(chǎn)生多種波形,如三角波、矩形波(含方波)、正弦波
54、的電路被稱為函數(shù)信號發(fā)生器。函數(shù)信號發(fā)生器在電路實驗和設(shè)備檢測中具有十分廣泛的用途。例如在通信、廣播、電視系統(tǒng)中,都需要射頻(高頻)發(fā)射,這里的射頻波就是載波,把音頻(低頻)、視頻信號或脈沖信號運載出去,就需要能夠產(chǎn)生高頻的振蕩器。在工業(yè)、農(nóng)業(yè)、生物醫(yī)學(xué)等領(lǐng)域內(nèi),如高頻感應(yīng)加熱、熔煉、淬火、超聲診斷、核磁共振成像等,都需要功率或大或小、頻率或高或低的振蕩器。函數(shù)信號發(fā)生器的實現(xiàn)方法通常有以下幾種:</p><p>
55、; 1.用分立元件組成的函數(shù)發(fā)生器:通常是單函數(shù)發(fā)生器且頻率不高,其工作不穩(wěn)定,不易調(diào)試。</p><p> 2.可以有晶體管、運放IC等通用器件制作,更多的則是用專門的函數(shù)信號發(fā)生器IC產(chǎn)生。早期的函數(shù)信號發(fā)生器IC,如L8038、XR2207/2209等,他們的功能較少,精度不搞,頻率上限只有300KHz,無法產(chǎn)生更高的頻率信號,調(diào)試方式也不夠靈活,頻率和占空比不能獨立調(diào)節(jié),二者相互影響。</p&g
56、t;<p> 3.利用單片集成芯片的函數(shù)發(fā)生器:能產(chǎn)生多種波形,達(dá)到較高的頻率,且易于調(diào)試鑒于此,美國美信公司開發(fā)了新一代函數(shù)信號發(fā)生器ICMAX038,它克服了“2”中芯片的缺點,可以達(dá)到更高的技術(shù)指標(biāo),是上述芯片望塵莫及的。MAX038頻率高、精度好,因此它被稱為高頻精密函數(shù)信號發(fā)生器IC。在鎖相環(huán)、壓控振蕩器、頻率合成器、脈寬調(diào)制器等電路的設(shè)計上,MAX038都是優(yōu)選的器件。</p><p>
57、; 4.利用專用直接數(shù)字合成DDS芯片的函數(shù)發(fā)生器:能產(chǎn)生任意波形并達(dá)到很高的頻率。但成本較高。</p><p> 生產(chǎn)所需參數(shù)的電測試信號儀器。按其信號波形分為四大類:①正弦信號發(fā)生器。主要用于測量電路和系統(tǒng)的頻率特性、非線性失真、增益及敏度等。按其不同性能和用途還可細(xì)分為低頻(20赫至10兆赫)信號發(fā)生器、高頻(100兆赫至300兆赫)信號發(fā)生器、微波信號發(fā)生器、掃頻和程控信號發(fā)生器、頻率合成式信號發(fā)生器
58、等。②函數(shù)(波形)信號發(fā)生器。能產(chǎn)生某些特定的周期性時間函數(shù)波形(正弦波、方波、三角波、鋸齒波和脈沖波等)信號,頻率范圍可從幾個微赫到幾千兆赫。除供通信、儀表和自動控制系統(tǒng)測試用外,還廣泛用于其他非電測量領(lǐng)域。③脈沖信號發(fā)生器。能產(chǎn)生寬度、幅度和重復(fù)頻率可調(diào)的矩形脈沖的發(fā)生器,可用以測試線性心痛的瞬態(tài)響應(yīng),或用作模擬信號來測試?yán)走_(dá)、多路通信和其他脈沖數(shù)字系統(tǒng)的性能。④隨機(jī)信號發(fā)生器。通常又分為噪聲信號發(fā)生器和偽隨機(jī)信號發(fā)生器兩類。噪聲信
59、號發(fā)生器主要用途為:在待測系統(tǒng)中引入一個隨機(jī)信號,以模擬實際工作條件中的噪聲而測定系統(tǒng)性能;外加一個已知噪聲信號與系統(tǒng)內(nèi)部噪聲比較以測定噪聲系數(shù);以隨機(jī)信號代替正弦或脈沖信號,以測定系統(tǒng)動態(tài)特性等。當(dāng)用噪聲信號進(jìn)行相關(guān)函數(shù)測量時,若測量時間不夠長,會出現(xiàn)統(tǒng)計性誤差</p><p> 在這里介紹1款經(jīng)典使用的安捷倫ESG-D系列信號發(fā)生器E4421B 詳細(xì)內(nèi)容以作參考:</p><p>
60、 E4421B信號發(fā)生器主要技術(shù)指標(biāo):</p><p> 頻率:250KHz—3GHz</p><p> 分辨率:0.01Hz</p><p><b> 轉(zhuǎn)換速度</b></p><p> 調(diào)制接通:<45ms.典型值</p><p> 調(diào)制斷開:<35ms.典型值</p>
61、<p> 精度:穩(wěn)定度×fc時基</p><p><b> 掃描方式</b></p><p> 工作方式:步進(jìn):頻率和功率以及任意列表</p><p> 停留時間:1ms-60s</p><p> 頻率點數(shù):2-401</p><p><b> 內(nèi)部基
62、本準(zhǔn)震蕩器</b></p><p><b> 時基參考輸出:</b></p><p><b> 頻率:10MHz</b></p><p> 幅度:>0.35Vrms,50Ω負(fù)載</p><p><b> 外參考輸入:</b></p><p
63、> 頻率:1,2,5,10MHz±典型值10ppm</p><p> 用OptIE5時為1ppm</p><p> 幅度:>0.15Vrms </p><p><b> 輸入阻抗:50Ω</b></p><p><b> 輸出阻抗:50Ω</b></p>
64、<p> 頻帶 頻帶 頻率范圍 N#</p><p> 1 250KHz≤249.999MHz 1</p><p> 2 249.999≤500MHz 0.5</p><p> 3 500MHz≤1GHz 1</p><p> 4 1≤2GHz 2</p>
65、;<p> 5 2≤4GHz 4</p><p><b> 頻譜純度</b></p><p> 單邊帶相位噪聲(典型值,在20KHz頻偏處)</p><p> 在500MHz處:<-120dBc/Hz</p><p> 在1000MHz處:<-116 dBc/Hz</p&g
66、t;<p> 在2000MHz處:<-110 dBc/Hz</p><p> 在3000 MHz處:<-104 dBc/Hz</p><p> 在4000 MHz處:<-104 dBc/Hz</p><p><b> 脈沖</b></p><p> 周期:16µs-30s</p&g
67、t;<p> 寬帶:8µs-30s</p><p><b> 分辨率:4µs</b></p><p> 3.2.信號發(fā)生器現(xiàn)狀及發(fā)展</p><p> 信號發(fā)生器作為一種常見的應(yīng)用電子儀器設(shè)備,傳統(tǒng)的可以完全由硬件電路搭接而成,如采用555振蕩電路發(fā)生正弦波、三角波和方波的電路便是可取的路徑之一,不用依
68、靠單片機(jī)。如工業(yè)過程控制,生物醫(yī)藥,地震模擬機(jī)械振動等領(lǐng)域常常用到低頻信號源。而由硬件電路構(gòu)成的低頻信號其性能難以令人滿意,而且由于低頻信號源所需的RC很大:大電阻,大電容在制作上有困難,參數(shù)精度亦難以保證,體積大,漏電,耗損顯著更是致命的弱點。一旦工作需求功能有增加,則電路復(fù)雜程度會大大增加。</p><p> 當(dāng)今是科學(xué)技術(shù)及儀器設(shè)備高度智能化飛速發(fā)展的信息社會,電子技術(shù)的進(jìn)步,給人們帶來了根本性的轉(zhuǎn)變。現(xiàn)
69、在帶電子領(lǐng)域中,單片機(jī)的應(yīng)用正在不斷的走向深入,這必將導(dǎo)致傳統(tǒng)控制與檢測技術(shù)的日益革新。單片機(jī)構(gòu)成的儀器具有高可靠性、高性能價格比,在智能儀表系統(tǒng)和辦公自動化等諸多領(lǐng)域得以極為廣泛的應(yīng)用,并走入家庭,從洗衣機(jī)、微波爐到音響汽車,處處可見其應(yīng)用。因此,單片機(jī)技術(shù)開發(fā)和應(yīng)用水平已逐步成為一個國家工業(yè)發(fā)展水平的標(biāo)志之一。</p><p> 一塊單片機(jī)芯片就是一臺計算機(jī)。由于單片機(jī)的這種特殊的結(jié)構(gòu)形式,在某些應(yīng)用領(lǐng)域中
70、,它承擔(dān)了大型計算機(jī)和通用微型計算機(jī)無法完成的一些工作。使其具有很多顯著的優(yōu)點和特點,因此在各個領(lǐng)域中都得到了很迅猛的發(fā)展。</p><p> 單片機(jī)的應(yīng)用使得信號發(fā)生器的性能價格比提高很多,控制功能強(qiáng),集成度高、體積小、可靠性高,并且可以在很低的電壓下工作,功耗降至μA級,一粒紐扣電池就可長期使用。</p><p> 隨著科技的不斷進(jìn)步和電子化產(chǎn)品的日益普及,電子產(chǎn)品的規(guī)模和體積有了
71、巨大的變化。各種復(fù)雜電路不斷出現(xiàn),體積不斷縮小,產(chǎn)品更新速度不斷加快。這些新的變化使得電路的設(shè)計工作變得日益復(fù)雜和繁重。電子產(chǎn)品設(shè)計時使用常規(guī)的人工方法,要耗費大量的人力財力。計算機(jī)硬件和軟件的發(fā)展,使得它應(yīng)用到各個領(lǐng)域。電子設(shè)計自動化得到了快速發(fā)展,大大減輕了設(shè)計壓力,縮短了設(shè)計開發(fā)時間,是電子開發(fā)人員必須掌握的技術(shù)。</p><p> 本次設(shè)計中應(yīng)用的LabWindows/CVI 軟件是美國NI(Natio
72、nal Instrument)公司開發(fā)的Measurement Studio軟件組中的一員。它是32位的面向計算機(jī)測控領(lǐng)域的虛擬儀器軟件開發(fā)平臺,可以在多種操作系統(tǒng)下運行。LabWindows/CVI是以ANSIC為核心的交互式虛擬儀器開發(fā)環(huán)境,它將功能強(qiáng)大的C語言與測控技術(shù)有機(jī)結(jié)合,具有靈活的交互式編方法和豐富的庫函數(shù),為開發(fā)人員建立檢測系統(tǒng)、自動測試環(huán)境、數(shù)據(jù)采集系統(tǒng)、過程監(jiān)控系統(tǒng)等提供了理想的軟件開發(fā)環(huán)境,是實現(xiàn)虛擬儀器及網(wǎng)絡(luò)化儀
73、器的快速途徑。通過信號發(fā)生器的計算機(jī)仿真設(shè)計研究,初步掌握軟件應(yīng)用及編程和信號發(fā)生器原理。</p><p> 第四章 虛擬信號發(fā)生器的設(shè)計</p><p> 4.1 虛擬信號發(fā)生器設(shè)計</p><p> 4.1.1 虛擬信號發(fā)生器的工作原理</p><p> 通過在圖形化用戶接口界面上(硬件面板)上鍵入信號幅值、頻率以及選擇生成的波
74、形和窗函數(shù)。通過軟件編程實現(xiàn)信號波形生成及頻譜分析。</p><p> 其設(shè)計的方法的基本思路:</p><p> 設(shè)計一個圖形化用戶接口。</p><p><b> 產(chǎn)生程序代碼。</b></p><p> 用功能面板插入相應(yīng)函數(shù),完成程序編制。</p><p><b> 封
75、裝代碼。</b></p><p> 4.1.2信號的頻譜分析</p><p> 所謂信號的頻譜分析就是指計算信號的傅里葉變換。連續(xù)信號與系統(tǒng)的傅里葉分析不便于直接用計算機(jī)進(jìn)行計算,使其應(yīng)用受到限制,而本設(shè)計用到的快速傅里葉變換(簡稱FFT)是一種時域和頻域都是離散化的變換,適合數(shù)值運算,成為分析離散和系統(tǒng)的有力工具。對于連續(xù)信號可以通過時域采樣,應(yīng)用FFT進(jìn)行近似譜分析。&
76、lt;/p><p> 快速傅里葉變換是離散傅里葉變換DFT的一種快速算法,由于有限長序列在其頻域也可以離散化有限長序列(DFT),因此離散傅里葉變換(DFT)在數(shù)字信息處理中是非常有用的。但是由于DFT的計算量太大,即使采用計算機(jī)也很難對問題進(jìn)行實時處理,而FFT出現(xiàn)以后使DFT的運算大大簡化,如:</p><p> 設(shè)x(n)為N點有限長序列,其DFT為</p><p
77、><b> ?。?</b></p><p> 一般來說x(n)和 都是復(fù)數(shù),X(k)也是復(fù)數(shù),因此每次計算一個X(k)值,需要N次復(fù)數(shù)乘法和N-1次復(fù)數(shù)加法,而X(k)一共有N個點(k從0取到N-1),故完成一次DFT運算總共需要N2復(fù)數(shù)乘法及N(N-1)次復(fù)數(shù)加法。這樣運算就復(fù)雜了,計算所需的時間也會多一些。而采用DIT-FFT算法(即時間抽取法)首先對時間進(jìn)行奇偶分解,然后對頻
78、率進(jìn)行前后分解</p><p> 下面為以N=8點為例的FFT的蝶形運算流圖:</p><p> 圖4-1 N=8的快速傅里葉變換蝶形運算流圖</p><p> 當(dāng)N=8時,流程圖應(yīng)有3級蝶形,每一級都有4個蝶形運算構(gòu)成。因此每一級運算都需要4次復(fù)數(shù)乘和8次復(fù)數(shù)加。所以一次FFT總共需要復(fù)數(shù)乘12次,復(fù)數(shù)加24次復(fù)數(shù)加,而DFT要總共需要復(fù)數(shù)乘64次,復(fù)數(shù)加
79、56次。故使用FFT 能大大減少運算量,減小了運算時間,能實時完成信號處理。</p><p> 故本文基于labwindows/cvi的頻譜顯示是通過對一個時域信號一次進(jìn)行濾波、加窗函數(shù)和快速傅里葉變換FFT并在波形圖上進(jìn)行顯示生成的。</p><p> 4.1.3儀器硬件面板設(shè)計</p><p> 啟動Labwindows/CVI 在設(shè)計面板之前先在File
80、菜單中新建Include(*.h)、Source(*.c)再新建User Interface(*.uir)面板。面板建好后開始創(chuàng)建控件。</p><p> 1、創(chuàng)建控件及修改空間屬性。</p><p> 用戶界面共12個控件,其中有兩個 Graph控件、兩個 Numeric Dial控件、兩個Ring Slide控件、四個Command Button 控件、兩個Ring控件。<
81、/p><p> 其整體硬件面板如下圖所示:</p><p> 圖4-2 用戶的圖形界面</p><p> 各種控件的相關(guān)屬性設(shè)置如下:</p><p> 面板:Constant Name為PANEL,Panel Title 為“虛擬信號發(fā)生器”。</p><p> 控件1:Graph控件,用于顯示波形,Const
82、ant Name為GRAPH1,Label為“波形顯示”,”Buttom X-Axis”中Axis Name是”t/s“,Minimum為0.00,Maximum為1000.00;Left Y-Axis中 Axis Name 是 A(t)/V,Minimum為-1,Maximum為1。 </p><p> 控件2: Graph控件,用于顯示頻譜,Constant Name為GRAPH2,Label為“頻譜顯示”
83、 Buttom X-Axis”中Axis Name是“w“ Minimum為0,Maximum為1000。Left Y-Axis中 Axis Name 是A(w)/V, Minimum為0,Maximum為100.</p><p> 控件3:Numeric Dial控件,用于設(shè)置幅值,Constant Name為AMPLE,Label為“幅值”, Default Values為0,Range Values
84、 中 Minimum為0,Maximum為1。</p><p> 控件4:Numeric Dial控件,用于設(shè)置頻率,Constant Name為FREQ,Label為“頻率”, Default Value為0, Range Values中 Minimum為0,Maximum為1000。</p><p> 控件5:Ring Slide控件,用于選擇波形,Constant Name為WA
85、VEFORM,Label為“波形選擇”,Lable/Value pairs 中 Lable分別為無、正弦波、三角波、鋸齒波、方波,其對應(yīng)的Value分別為0、1、2、3、4。</p><p> 控件6:Ring Slide控件,用于設(shè)置窗函數(shù),Constant Name為WINDOW,Label為“window”, Lable/Value pairs 中 Lable分別為none、Triangle、Hannin
86、g、Hamming、Blackman、Kaiser,其對應(yīng)的Value分別為0、1、2、3、4、5。</p><p> 控件7:Command Button控件,用于保存文件,Constant Name為SAVE,Callback Function為Save, ,Label為“_save to file”。</p><p> 控件8:Command Button 控件,用于讀取文件,C
87、onstant Name為READ,Callback Function為Read,Label為“ _read from file”。</p><p> 控件9:Command Button控件,用于開始運行,Constant Name為COMMANDBUTTON,Callback Function為refe,Label為”_OK”。</p><p> 控件10:Command Butt
88、on控件,用來 關(guān)閉運行,Constant Name為QUIT, Callback Function為quitCallback,Label為“ _QUIT”。</p><p> 控件11:Ring控件,Constant Name為OutputType,Lable/Value pairs 中 Lable分別為Binary、ASCII,其對應(yīng)的Value分別為0、1。</p><p> 控
89、件12:Ring控件,Constant Name為InputType,Lable/Value pairs 中</p><p> Lable分別為Binary、ASCII,其對應(yīng)的Value分別為0、1。</p><p><b> 2、創(chuàng)建源程序代碼</b></p><p> 控件創(chuàng)建完成即面板設(shè)計完成后,點擊功能菜單中的Code即可看見下
90、拉菜單Generate,鼠標(biāo)移至Generate則出現(xiàn)ALL Code如圖4-3,點擊ALL Code就會出現(xiàn)如圖4-4對話框選定QuitButton點擊OK即出現(xiàn)*.c文件及程序。</p><p> Code》generate》all code 選定 QuitButton點擊OK。</p><p> 圖4-3 產(chǎn)生源程序代碼的框圖</p><p> 當(dāng)選擇A
91、ll Code后,出現(xiàn)生成代碼窗口即generate all code窗口,如下圖所示:</p><p> 如圖4-4 生成所有代碼對話框</p><p><b> 在窗口中應(yīng)注意:</b></p><p> 當(dāng)你想讓你的程序的主函數(shù)為Win Main而不是Main是你可以選擇Generate WinMian() instead of M
92、ain()項前的矩形框。</p><p> Select panels to load and display at startup 項是指你選擇那一個Panel最為最初裝入并顯示的Panel,當(dāng)你創(chuàng)建多個Panel時你就需要選擇一個Panel作為最初顯示的面板。由于本程序只有一個Panel所以該P(yáng)anel就被缺省的作為最初顯示的面板而不再需要你去選擇。</p><p> Select
93、 QuituserInterface Callback 項是指你選擇那一個函數(shù)作為退出程序的終止函數(shù)。本程序是讓QuitCallback 作為退出函數(shù)。</p><p> 4.1.4軟件設(shè)計(程序設(shè)計)</p><p> 在All code中生成的源代碼進(jìn)行穿插加入函數(shù)生成完整的程序。</p><p> 按照程序流程圖完成程序的編制:</p>&
94、lt;p><b> Y</b></p><p><b> N</b></p><p> 圖 4-5 程序流程圖</p><p> 1、ok按鈕的回調(diào)函數(shù)refe()的編輯</p><p> 為了當(dāng)按下ok鍵以后通過調(diào)節(jié)幅值、頻率、及窗函數(shù)和波形選擇在兩個grap</p>
95、<p> 控件中生成波形及頻譜,我設(shè)置如下程序完成此操作:</p><p> 在程序中調(diào)用show_wave1函數(shù),在申明show_wave函數(shù),如下程序:</p><p> int CVICALLBACK refe (int panel, int control, int event,void *callbackData, int eventData1, int eve
96、ntData2)</p><p> { int i;</p><p> switch (event)</p><p><b> { </b></p><p> case EVENT_COMMIT:</p><p> show_wave1(); </p><p
97、> for (i=0;i<1000;i++)</p><p> wave[i]=(double)(rand() % 32768);</p><p><b> break; </b></p><p><b> }</b></p><p><b> return 0;&l
98、t;/b></p><p><b> }</b></p><p> void show_wave1(void)</p><p><b> {</b></p><p> int waveForm,window;</p><p> double ample;<
99、;/p><p> double phase=0,waveData[1000],filterData[1000],specData[1000];</p><p> double sampleRate=10000,freq;</p><p> double cutoff_freq=3000;</p><p> GetCtrlVal (pane
100、lHandle, PANEL_WAVEFORM, &waveForm);</p><p> GetCtrlVal (panelHandle, PANEL_AMPLE, &le);</p><p> GetCtrlVal (panelHandle, PANEL_FREQ, &freq);</p><p> GetCtrlVal (p
101、anelHandle, PANEL_WINDOW, &window);</p><p> switch (waveForm)</p><p><b> {</b></p><p><b> case 1:</b></p><p> SineWave (1000, ample, fre
102、q/sampleRate, &phase, waveData);</p><p><b> break;</b></p><p><b> case 2:</b></p><p> TriangleWave (1000, ample, freq/sampleRate, &phase, waveData
103、);</p><p><b> break;</b></p><p><b> case 3:</b></p><p> SawtoothWave (1000, ample, freq/sampleRate, &phase, waveData);</p><p><b>
104、break;</b></p><p><b> case 4:</b></p><p> SquareWave (1000, ample, freq/sampleRate, &phase, 50.0, waveData);</p><p><b> break;</b></p>&l
105、t;p><b> }</b></p><p> if(waveForm==0)</p><p> DeleteGraphPlot (panelHandle, PANEL_GRAPH1, -1, VAL_IMMEDIATE_DRAW);</p><p><b> else </b></p><
106、;p> { DeleteGraphPlot (panelHandle, PANEL_GRAPH1, -1, VAL_IMMEDIATE_DRAW); </p><p> PlotWaveform (panelHandle, PANEL_GRAPH1, waveData, 1000, VAL_DOUBLE, 1.0, 0.0, 0.0, sampleRate/1000, VAL_THIN_LINE,
107、VAL_EMPTY_SQUARE, VAL_SOLID, 1, VAL_RED);</p><p> Bw_LPF (waveData, 1000, sampleRate, cutoff_freq, 5, filterData);</p><p> Copy1D (filterData, 1000, specData);</p><p> switch (wi
108、ndow)</p><p><b> {</b></p><p><b> case 1:</b></p><p> TriWin (specData,1000);</p><p><b> break;</b></p><p><b>
109、; case 2:</b></p><p> HanWin (specData,1000);</p><p> break;</p><p><b> case 3:</b></p><p> HamWin (specData,1000);</p><p>
110、;<b> break;</b></p><p><b> case 4:</b></p><p> BkmanWin (specData, 1000);</p><p><b> break;</b></p><p><b> case 5:</b&
111、gt;</p><p> KsrWin (specData,1000,10);</p><p><b> break;</b></p><p><b> }</b></p><p> if (window==0)</p><p> DeleteGraphPlot (
112、panelHandle, PANEL_GRAPH2, -1, VAL_IMMEDIATE_DRAW);</p><p><b> else</b></p><p><b> {</b></p><p> FFT (filterData,specData , 1000);</p><p> D
113、eleteGraphPlot (panelHandle, PANEL_GRAPH2, -1, VAL_IMMEDIATE_DRAW); </p><p> PlotWaveform (panelHandle, PANEL_GRAPH2, specData, 1000, VAL_DOUBLE, 1.0, 0.0, 0.0, sampleRate/1000, VAL_THIN_LINE, VAL_EMPTY_SQU
114、ARE, VAL_SOLID, 1, VAL_RED);</p><p><b> }</b></p><p><b> } </b></p><p><b> } </b></p><p> 下面為上面程序的實時函數(shù)的生成方法:</p><p&g
115、t; 1 、點擊library>>use interface在彈出的話框中選擇</p><p> Controls/Graphs/Strip charts>>Generate Funcations>>GetCtrVal點擊select出現(xiàn)一個函數(shù)面板,如</p><p> 圖4-6 獲取當(dāng)前值的控制面板</p><p>
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于labview虛擬信號發(fā)生器的設(shè)計畢業(yè)論文
- 畢業(yè)論文----基于labview的虛擬信號發(fā)生器
- 畢業(yè)論文—基于labview的虛擬信號發(fā)生器
- 信號發(fā)生器設(shè)計與制作畢業(yè)論文
- 合成信號發(fā)生器設(shè)計畢業(yè)論文
- 函數(shù)信號發(fā)生器的設(shè)計【畢業(yè)論文】
- 畢業(yè)論文--方波信號發(fā)生器的設(shè)計
- 畢業(yè)論文——正弦信號發(fā)生器
- 秒信號發(fā)生器畢業(yè)論文
- 畢業(yè)論文——正弦信號發(fā)生器
- 簡易函數(shù)信號發(fā)生器設(shè)計【畢業(yè)論文】
- 多功能信號發(fā)生器畢業(yè)論文設(shè)計
- 基于labview的信號發(fā)生器設(shè)計畢業(yè)論文
- 畢業(yè)論文 基于fpga的信號發(fā)生器設(shè)計
- 數(shù)字信號發(fā)生器的設(shè)計畢業(yè)論文
- 基于labview的信號發(fā)生器設(shè)計畢業(yè)論文
- 函數(shù)信號發(fā)生器的fpga設(shè)計畢業(yè)論文
- 基于dds信號發(fā)生器的設(shè)計畢業(yè)論文
- 畢業(yè)論文--基于fpga的信號發(fā)生器設(shè)計
- 多功能信號發(fā)生器的設(shè)計-畢業(yè)論文
評論
0/150
提交評論