![基于NI.myDAQ的數(shù)據(jù)采集系統(tǒng)的設計說明書_第1頁](http://file4.renrendoc.com/view/b6cced8576cf9cff6378ac108ca1e464/b6cced8576cf9cff6378ac108ca1e4641.gif)
![基于NI.myDAQ的數(shù)據(jù)采集系統(tǒng)的設計說明書_第2頁](http://file4.renrendoc.com/view/b6cced8576cf9cff6378ac108ca1e464/b6cced8576cf9cff6378ac108ca1e4642.gif)
![基于NI.myDAQ的數(shù)據(jù)采集系統(tǒng)的設計說明書_第3頁](http://file4.renrendoc.com/view/b6cced8576cf9cff6378ac108ca1e464/b6cced8576cf9cff6378ac108ca1e4643.gif)
![基于NI.myDAQ的數(shù)據(jù)采集系統(tǒng)的設計說明書_第4頁](http://file4.renrendoc.com/view/b6cced8576cf9cff6378ac108ca1e464/b6cced8576cf9cff6378ac108ca1e4644.gif)
![基于NI.myDAQ的數(shù)據(jù)采集系統(tǒng)的設計說明書_第5頁](http://file4.renrendoc.com/view/b6cced8576cf9cff6378ac108ca1e464/b6cced8576cf9cff6378ac108ca1e4645.gif)
版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
可編輯版/XX科技大學本科畢業(yè)設計〔論文學院電子信息學院專業(yè)電子信息工程學生姓名趙越班級學號1140302124指導教師張貞凱二零一五年六月XX科技大學本科畢業(yè)論文基于NImyDAQ的數(shù)據(jù)采集系統(tǒng)的設計DesignofdataacquisitionsystembasedonmyDAQ可編輯版摘要在從前,各種數(shù)據(jù)采集都是通過人工的方式進行的,所以一直存在很大的局限性,即無法做到對大量的實驗數(shù)據(jù)的分析處理。隨著電子科技的發(fā)展,人們可以同時采集大量的信號數(shù)據(jù)并且通過計算機處理分析這些數(shù)據(jù)。虛擬儀器僅是一個程序化的儀器,這種儀器和計算機結(jié)合使用,使得人們可以在事先編好的程序下完成對數(shù)據(jù)的一系列處理分析工作。本文著重研究了幾種典型的基于NImyDAQ的數(shù)據(jù)采集系統(tǒng),設計了很多實用的虛擬儀器。如虛擬數(shù)字電壓表,它代替了傳統(tǒng)的電壓表,提高了測量效率和精準度。連續(xù)脈沖序列產(chǎn)生VI,它能夠產(chǎn)生任意占空比,任意頻率的方波。在脈沖寬度測量中,可以通過設置計數(shù)方式等方便快捷地測量出脈沖序列的寬度。連續(xù)信號采集則是通過DAQmxAPI采集信號,執(zhí)行連續(xù)的硬件定時信號采集。簡單的邊沿計數(shù)VI可以選擇計數(shù)的方式,方便快捷地統(tǒng)計出一個方波的波峰個數(shù)。同時本文在原有數(shù)據(jù)采集系統(tǒng)的基礎上對部分系統(tǒng)進行升級改進,實現(xiàn)了更加豐富的功能。關鍵詞:虛擬儀器;LabVIEW;NImyDAQAbstractInthepast,avarietyofdataacquisitionisperformedbyartificialmeans,ithasalotoflimitations,whichcannotbedoneonalargenumberofexperimentaldata.Withthedevelopmentofelectronictechnology,peoplecancollectandprocessinglargeamountsofsignaldataandanalyzethedatathroughcomputers.Virtualinstrumentisonlyaproceduralinstrument.Itispossibletocompleteaseriesofdataprocessingandanalysisworkinthepre-programmedprocedureswiththecombinationofvirtualinstrumentandcomputers.ThispaperfocusesonsometypicaldataacquisitionsystembasedonNImyDAQanddesignsmanyusefulvirtualinstrument.SuchasVirtualdigitalvoltmeter,whichreplacedthetraditionalvoltmeterandimprovedtheefficiencyandaccuracy.ContinuouspulsesequenceVI,itcangenerateaanydutyandanyfrequencysquarewave.Pulsewidthmeasurementcanmeasurethewidthofthepulsesequencequicklyandeasilybysettingthecountingmethods.ContinuoussignalacquisitionistoacquiresignalsbyusingDAQmxAPI.SimpleEdgeCountVIcanchoosethewayofcounting,itcancountthenumberofasquarewavecrestquicklyandeasily.Meanwhile,basedontheoriginaldataacquisitionsystem.Thispaperupgradepartofthesystemtoachievearicherfunction.Keywords:Virtualinstrument;LabVIEW,;NImyDAQ目錄TOC\o"1-3"\h第一章緒論11.1研究背景及意義11.2國內(nèi)外發(fā)展現(xiàn)狀11.3虛擬儀器21.3.1虛擬儀器產(chǎn)生的背景2虛擬儀器的概念3虛擬儀器的開發(fā)語言31.4本文的主要結(jié)構4第二章DAQ簡介52.1數(shù)據(jù)采集卡的硬件簡介52.2數(shù)據(jù)采集卡的軟件簡介62.3設置NImyDAQ設備62.4本章小結(jié)10第三章LabVIEW簡介113.1LabVIEW和G語言的概述113.2LabVIEW編程環(huán)境12啟動界面13前面板13程序框圖143.3
淺談G語言163.3.1G語言簡介163.3.2G語言的特色——數(shù)據(jù)流183.3.3G語言的基本結(jié)構203.4LabVIEW界面設計233.5本章小結(jié)23第四章基于NImyDAQ的數(shù)據(jù)采集系統(tǒng)244.1虛擬數(shù)字電壓表24電壓表的前面板布置244.1.2電壓表的程序框圖244.1.3測試過程254.1.4測試結(jié)果254.2連續(xù)信號采集264.2.1程序框圖的設計264.2.2系統(tǒng)前面板的布置264.2.3測試過程274.2.4測試結(jié)果274.3簡單的邊沿計數(shù)274.3.1程序框圖的設計274.3.2系統(tǒng)前面板的布置284.3.3測試過程28測試結(jié)果294.4脈沖寬度測量294.4.1程序框圖的設計294.4.2系統(tǒng)前面板布置304.4.3測試過程304.4.4測試結(jié)果314.5連續(xù)脈沖序列產(chǎn)生314.5.1程序框圖的設計314.5.2系統(tǒng)前面板的布置324.5.3測試過程324.5.4測試結(jié)果334.6本章小結(jié)33本文總結(jié)34致謝35參考文獻36第一章緒論本章主要講述了基于NIMyDAQ的數(shù)據(jù)采集系統(tǒng)設計的背景和意義,國內(nèi)外所設計的數(shù)據(jù)采集系統(tǒng)的開發(fā)現(xiàn)狀以及尚未解決的問題,隨后簡要提及了虛擬儀器的基本知識,最后列出本文的主要結(jié)構。1.1研究背景及意義由于科技的局限,先前測試現(xiàn)場的幾乎所有數(shù)據(jù)都是采用人工的方法進行讀取和記錄,無法同時準確有效的處理分析大量實驗數(shù)據(jù),所帶來的后果就是無法對其進行準確全面的分析,計算,所以阻礙了科學技術的發(fā)展以及儀器的大量普及[1]。第三次工業(yè)革命發(fā)生以后,計算機技術得到了飛速的發(fā)展,伴隨著精度越來越高、性能越來越好的數(shù)據(jù)采集系統(tǒng)的廣泛應用,使得多路數(shù)據(jù)不需要使用人工進行采集并且分析全部由計算機自動完成,從而提高了測量精度和可信度。而虛擬儀器的良好靈活多變性,使得虛擬儀器可以在PC端完美地兼容運行,同時在這個整體中是必不可少的[2]。把傳感器和硬件設備連接起來,需要一個媒介能夠進行信號處理,使得該信號能夠被計算機識別,分析,處理。虛擬數(shù)據(jù)采集系統(tǒng)一般是由以下幾個部分組成,首先是一個軟件程序,其次要有一個能夠分析處理數(shù)據(jù)的PC端,然后必備一個數(shù)據(jù)采集卡,最后是各種傳感器和數(shù)據(jù)分析儀[3]。1.2國內(nèi)外發(fā)展現(xiàn)狀<1>在科技比較發(fā)達的現(xiàn)代,數(shù)據(jù)采集系統(tǒng)幾乎都有高速度,高性能計算機的影子,高性能計算機的應用,極大的提高了對數(shù)據(jù)處理分析的準確性和可靠性,更重要的是數(shù)據(jù)采集系統(tǒng)不再需要很多硬件支持,節(jié)省了人力,物力,財力。<2>配套的軟件控制在每一次的數(shù)據(jù)測量采集中扮演著重要的角色,從而使得系統(tǒng)設計變得更加方便和高效。<3>數(shù)據(jù)采集與數(shù)據(jù)處理完美地結(jié)合成一個整體,因而可以完成數(shù)據(jù)采集與數(shù)據(jù)處理、數(shù)據(jù)分析的幾乎所有工作。<4>數(shù)據(jù)采集過程幾乎都是隨時隨地的,隨時隨地的標準是能滿足實際需要;對于一般用戶所使用的數(shù)據(jù)采集系統(tǒng),開發(fā)者則希望此系統(tǒng)能有比先前更高的速率和更大的準確率,以滿足更復雜,更多變的實際情況。<5>工業(yè)革命以來,微型電子電路技術也得到了空前的發(fā)展。電路設計得比先前更小更精煉,數(shù)據(jù)采集系統(tǒng)的速度得到了質(zhì)的飛躍,同時可信度非常之大,近幾年來單片機也被應用到該系統(tǒng)中,出現(xiàn)了突破傳統(tǒng)數(shù)據(jù)采集系統(tǒng)[4]。<6>近年來,隨著總線技術概念的提出,該技術在數(shù)據(jù)采集系統(tǒng)中取得了重要的地位,總線技術在一整套的測量測試系統(tǒng)中扮演著重要的角色。1.3虛擬儀器1.3.1虛擬儀器產(chǎn)生的背景傳統(tǒng)儀器技術經(jīng)歷了漫長的改進,一直到現(xiàn)在,已經(jīng)度過了從傳統(tǒng)的模擬儀器、后來的數(shù)字儀器和近代的虛擬儀器這三個過程,從1980年開始這些測量工具的發(fā)展進入到了一個更高的階段即:虛擬儀器時代。在大多數(shù)的實際情況下,在要測量某些數(shù)據(jù)時需要很多工具,如函數(shù)發(fā)生器、示波器、電壓表、頻率儀、電流表等,如果要測量更加龐大,功能更多的數(shù)字或者模擬電路系統(tǒng)還需要分析儀、IC測試儀等。這么多的測量儀器有很多缺點和不便,比如:需要很多錢、測量儀器太過龐大、小的實驗室容納不下,相互關聯(lián)起來使用時很容易發(fā)生錯誤,而且經(jīng)常由于儀器之間的連接、信號帶寬等方面的問題給每一次的測試測量造成很多不便利因素,使得數(shù)據(jù)測量變得更加困難[5]。要提高電子測量儀器的測量可信度和準確性,就要求設計的儀器本身具有自動調(diào)節(jié)、自動校準、量程轉(zhuǎn)換、處理分析和尋找故障的功能,實現(xiàn)了自己保存大量測量數(shù)據(jù)并在開發(fā)者需要調(diào)用的時候自動調(diào)出并參與運行處理,這些指標對于傳統(tǒng)儀器來說幾乎不可能實現(xiàn),在智能虛擬儀器實現(xiàn)之前幾乎被認為是不可能完成的任務。然而,計算機科學和微型電路電子技術的一步步發(fā)展壯大,極大的地加快了近幾年來虛擬儀器科技向前邁進的步伐。目前,科學家正在努力鉆研的的第五代全自動測試測量系統(tǒng)中,計算機扮演著非常重要的角色,計算機軟件技術和測量控制系統(tǒng)的強大兼容性,使得他們能夠很有效的融為一體并且更加高效,更加便捷[6]。隨著觀念的變化,科學家對傳統(tǒng)意義上儀器設計思路和方法等都發(fā)生了質(zhì)的轉(zhuǎn)化,人們提出了不同于傳統(tǒng)的儀器概念——虛擬儀器。由于虛擬儀器軟件能夠擁有測量采集、過程指導、數(shù)據(jù)分析、數(shù)據(jù)處理、結(jié)果顯示和人機交互界面等能力,使得先前老舊的傳統(tǒng)儀器能夠被后來開發(fā)者設計的軟件程序所替代。1.3.2虛擬儀器的概念虛擬儀器首次是由美國國家儀器公司提出來的,虛擬儀器實際上是虛擬現(xiàn)實技術的一個分支,其實虛擬儀器是僅僅是一種功能意義上的儀器,但它能充分發(fā)揮高性能計算機系統(tǒng)快速分析數(shù)據(jù),處理數(shù)據(jù)能力的優(yōu)勢,在高度集成的以及必要的硬件條件允許的情況下,利用事先編好的程序完成數(shù)據(jù)的一系列復雜的處理分析工作。,利用軟件程序、計算機的配合來完成那些老舊的傳統(tǒng)儀器不能完成的任務,大大地提升了傳統(tǒng)儀器在一系列數(shù)據(jù)分析和處理方面的能力,讓使用者能夠隨時隨地對虛擬儀器進行更新升級,甚至增強其功能[7]。虛擬儀器離不開計算機的支持,因為它是通過計算機編寫的程序,高性能計算機和儀器的緊密結(jié)合是以后虛擬儀器發(fā)展的重要突破口,所謂的虛擬儀器就是在常見的計算機上編寫一些軟件程序,并通過外界接口搭建硬件環(huán)境,使得使用者在使用這些虛擬的儀器的時候,就像在使用為自己量身定制的測量測試儀器。在上述系統(tǒng)中,外接硬件用來接收外界所要測量處理的信號,開發(fā)者自己編寫的軟件程序才是整個系統(tǒng)的核心內(nèi)容。幾乎所有操作者都可以利用編寫程序的方法,很快速并且高效地改變、添加,刪除虛擬儀器系統(tǒng)能實現(xiàn)的模塊,業(yè)內(nèi)把它稱之為"軟件程序等同于傳統(tǒng)儀器"。1.3.3虛擬儀器的開發(fā)語言目前,開發(fā)者把虛擬儀器定義為"基于高性能計算機的測控系統(tǒng)",這里并沒有說明這個虛擬系統(tǒng)的程序開發(fā)語言,目前許多種語言都有開發(fā)成功的虛擬儀器案例,但是眾多的開發(fā)人員經(jīng)過多方實踐,摸索和探究。考慮到各個方面的內(nèi)容,一致認為LabVIEW是虛擬儀器領域最便捷的圖形語言開發(fā)外在條件[8]。由于"G"語言的構成基礎是一個個形象的圖形,所以把這種用圖像表示的編程方式稱為G語言,它和傳統(tǒng)意義上的C++,JAVA,匯編語言等存在很大的相似點,如相似的編程結(jié)構、相似的控制語句流、程序調(diào)試工具以等。但G語言和其他編程語言也有著顯著的差異,常見的編程方法用一個個字符,字母來表示,而G語言用更加通俗易懂的圖像化語言來構成編程基礎,以一個個小模塊來完成最終的程序編寫。在這樣的開發(fā)環(huán)境下,一般使用者只需要少許的編程知識,因為這個開發(fā)環(huán)境下使用的都是開發(fā)者所熟悉的,形象的圖形和圖像,比如:各種旋鈕、開關和波形圖等,界面友好是它的一大特點。因此在這樣的開發(fā)環(huán)境下,就算沒有很多編程知識,也能設計出高效的產(chǎn)品,軟件。LabVIEW目前已經(jīng)廣泛地被社會各界所接受,LabVIEW可以說是一個完美的數(shù)據(jù)采集測量處理分析軟件。LabVIEW本身包含了很多數(shù)據(jù)庫和函數(shù)包含了所有滿足GPIB、HUI、ZNNX-2893和UY-987協(xié)議的硬件和NImyDAQ的所有功能。該軟件自帶了很多庫函數(shù),由于它具備這么多功能,所以其強大的靈活性深受開發(fā)者的喜愛。LabVIEW設計的初衷是提供一個大眾化的,方便的,快捷的開發(fā)工具。這個軟件極大的發(fā)展了虛擬儀器科學和數(shù)據(jù)采集系統(tǒng),使得人們可以在很多情況下的測量處理分析數(shù)據(jù)變得更加方便,當我們利用這個平臺進行數(shù)據(jù)采集,分析,處理,顯示,規(guī)劃的時候,極大的節(jié)省了使用者的時間,避免耗費巨大的人力和物力[9]。1.4本文的主要結(jié)構在接下來的章節(jié)中,將更深入的描述本課題所介紹的基于NImyDAQ的數(shù)據(jù)采集系統(tǒng)的設計。第二章主要介紹了NImyDAQ的運行原理和使用方法。第三章主要介紹了LabVIEW的使用方法以及G語言的基本知識。第四章著重分析了幾種典型的基于NImyDAQ的數(shù)據(jù)采集系統(tǒng),并在已有的基礎上拓展了他們的功能。在論文的結(jié)尾,對基于NImyDAQ的數(shù)據(jù)采集系統(tǒng)作了個簡單的總結(jié),同時也指出了尚未完全克服的問題。第二章DAQ簡介本節(jié)詳細介紹了數(shù)據(jù)采集器的軟件,硬件以及這個設備的基本配置方法。2.1數(shù)據(jù)采集卡的硬件簡介USB接口技術被應用在NImyDAQ上,NI數(shù)據(jù)采集卡采提供了模擬輸出<AO>、數(shù)字輸入和輸出<DIO>、電源和數(shù)字萬用表<DMM>函數(shù)。NImyDAQ的硬件電路和模擬輸入輸出模塊中的電路電子板是由美國XX儀器公司<TexasInstruments>提供。圖2-1所展示的是NImyDAQ的硬件設備[10]。圖2-1硬件程序框圖NImyDAQ提供了兩個模擬輸入通道。通過修改參數(shù)這兩個模擬輸入通道可被使用該軟件的人設置差分放大輸入和音頻輸入。數(shù)字輸入被應用了一種叫做多路復用的技術,業(yè)界認為的多路復用技術就是通過模擬和數(shù)字轉(zhuǎn)換器〔ADC>對低阻抗差分放大輸入以及音頻輸入通道在同一時間進行速率很高的采樣識別。在一般的實際情況下,信號有范圍限制,區(qū)間在負10伏到正10伏。如果使用者把它調(diào)節(jié)到音頻模式,則數(shù)據(jù)采集卡的兩個模擬信號可以看作是音頻的信號輸入。輸入到這個通道的信號頻率可高達20000HZ,如此高的模擬輸入速率滿足了波形采集的要求。要分析處理模擬輸入,開發(fā)者在大部分情況下必須使用NIELVISmx示波器、動態(tài)信號分析器和Bode分析儀[11]。數(shù)據(jù)采集卡上一般帶有8個數(shù)字輸入輸出的數(shù)據(jù)線接口。數(shù)據(jù)采集卡提供+15V,-15V,+5V的電壓的電源。+15V和–15V通常被用于模擬組件。例如,電阻和變壓器。+5V的電源通常用于電源數(shù)字組件。例如:數(shù)字輸入輸出等。電源、阻抗和數(shù)字I/O的總功率是有范圍限制的,最大上限為500mW,最小下限為100mW。2.2數(shù)據(jù)采集卡的軟件簡介NIELVISmx是使NImyDAQ能正常實現(xiàn)其功能所不能缺少的驅(qū)動軟件。NIELVISmx能使用基于LabVIEW的軟件,并且他最重要的功能是能夠控制NImyDAQ設備并且該軟件配備許多常見的使用的功能供開發(fā)者使用。NIELVISmx安裝時還會安裝LabVIEWExpressVI這個不能缺少,當開發(fā)者在編寫程序的時候能夠用它給軟件實現(xiàn)更多更豐富的功能。在NIMultisim中使用NIELVISmx可模擬信號、與NImyDAQ兩者聯(lián)合測量實際的信號并且可以處理分析計算總結(jié)采集的信號。2.3設置NImyDAQ設備DAQ中有一個連接器他有20位螺栓,要正確安裝這個連接器需注意與NImyDAQ保持在同一水平面上。如果插入該復雜的連接器時與NImyDAQ不對齊或者有角度的時候,勢必會造成硬件破損[12]。為保證正確的信號連接,螺栓端子必須按規(guī)定規(guī)范的插入數(shù)據(jù)采集卡中。圖2-2顯示了我們該如何正確的插入連接器。圖2-2數(shù)據(jù)采集卡的連接框圖圖2-3為可通過3.5mm音頻插頭和螺栓端子連接器訪問的音頻、AI、AO、DIO、GND和電源信號。表2-1為信號的詳細說明。圖2-3數(shù)據(jù)采集卡的I/O連接器表2-1螺栓端子信號說明信號名稱參考方向說明AUDIOIN-輸入音頻輸入-立體聲連接器的左側(cè)和右側(cè)音頻輸入AUDIOOUT-輸出音頻輸出-立體聲連接器的左側(cè)和右側(cè)音頻輸入+15V/-15VAGND輸出音頻輸出-立體聲連接器的左側(cè)和右側(cè)音頻輸出AGND--+15V/-15V電源AO0/AO1AGND輸出模擬地-AI、AO、+15V和-15V的參考接線端AI0+/AI0-;AI1+/AI1-AGND輸入模擬輸出通道0和1DIO<0.7>DGND輸入或輸出模擬輸入通道0和1DGND--數(shù)字地-DIO數(shù)據(jù)線和+5V電源的參考地5VDGND輸出5V電源圖2-4為NImyDAQ上DMM連接的示意圖。表2-2為信號說明。圖2-4DMM測量的連接表2-2DMM的信號說明信號名稱參考方向說明HI〔VΩCOM輸入電壓、電阻和二極管測量的正接線端COM--DMM測量的參考端HI<A>COM輸入電流測量的正接線端〔熔斷:F1.25A250V快速反應開發(fā)者要正確設定輸入通道和連接信號,就必須分清什么是浮接信號和什么是接地信號,所以我們必須明確信號到底是屬于什么。接下來的一節(jié)里我專門介紹了上述兩種信號。用作接地-參考的信號源必須連接大地或者建筑物。具有非隔離的特性,并且輸出并導入建筑物或者大地供電系統(tǒng)的設備或儀器是被認定為接地參考信號源。連接至同一供電系統(tǒng)的數(shù)字儀器之間是一定會存在電勢差的,但他們電勢差的范圍很小,通常是1mV~100mV之間。如果電勢差顯著增大,則提示電子線路接線不規(guī)范。接地信號測量方式也很重要,如果測量方法不規(guī)范,則電勢差是引起巨大誤差的主要原因。被稱作是浮接的信號源由于沒有連接至數(shù)據(jù)采集卡的參考地。常見的浮接信號源有通過傳統(tǒng)鋰電池供電的設備、降壓器輸入、熱阻抗、電池設備、聲學檢測器輸出和隔離放大器。一般情況下定義一個浮接信號源是看它是否具有隔離輸出的功能。要建立信號的參考一定要用跳線或者電阻把浮接信號連接都數(shù)據(jù)采集卡的工地引腳。否則,需要測量的輸入信號會在信號源超出共模電壓最大或者最小極限時產(chǎn)生誤差,從而影響測量。如果要配置信號源到共地引腳參考的最快捷方便的做法是用數(shù)據(jù)線把信號的正接線端和數(shù)據(jù)采集卡的AI+端相聯(lián)系起來[13]。然而也有特殊情況,如果電路中出現(xiàn)了較大的源阻抗,上述連接方式將導致測量結(jié)果產(chǎn)生明顯誤差。由于導線連接在大地端,所以正極線產(chǎn)生的靜電會導致耦合并導致噪聲的產(chǎn)生,噪聲有可能會單獨存在。噪聲不會以共模信號的形式出現(xiàn),而是以差分模擬信號的方式出現(xiàn),并且將會干擾使用者的測量結(jié)果。如圖2-5,在該情況下,通過一個電阻連接負極線至AGND,需要注意的是這個電阻的阻值是源阻抗的100倍,如果直接把連線負極連接至共地端是不對的。阻值大小要恰到好處,最理想的情況是源阻抗100倍的電阻,只有這樣能使信號路徑趨于穩(wěn)定[14]。圖2-5浮接信號源的非差分關聯(lián)連接另一個等值電阻至共地端的正極輸入可完全穩(wěn)定信號路徑,如圖2-6所示。雖然這個平衡輸入方法能更有效的降低噪聲,抑制噪聲的產(chǎn)生,從而提高測量精度,缺點是會算入兩個電阻阻值總和,并且是在串聯(lián)方式下的阻值總和,從而加大了電路的負載。例如,源阻抗為2k,每個電阻為100k,則為源引入了200k的多余的電路阻值負載,同時生成了一個–1%的誤差范圍[15]。圖2-6帶2個電阻的差分連接方式滿足模擬輸入數(shù)據(jù)線的正端口和負端口均為直流路徑接地的條件下,才能保證該電子電路放大器的正常工作。如信號源的阻抗不是很大,則優(yōu)先考慮阻值較大的負載。開發(fā)者不但要注意電阻阻值太小產(chǎn)生載入源,同時也要注意電阻阻值太大產(chǎn)生的顯著輸入誤差,這兩種情況均會導致誤差的產(chǎn)生,影響精度。解決方法是,直接連接負輸入端至共地端。2.4本章小結(jié)本章主要介紹了數(shù)據(jù)采集卡的軟硬件基本知識,同時列出了該儀器的基本配置使用方法。第三章LabVIEW簡介本節(jié)從四個方面詳細介紹了LabVIEW,首先介紹了LabVIEW和G語言,接著探討了LabVIEW的編程環(huán)境,然后詳細展示了G語言的基本使用方法,最后給大家展示了LabVIEW的界面設計過程。3.1LabVIEW和G語言的概述LabVIEW它的編程環(huán)境是用一個個圖像模塊完成,所以更加形象。該軟件編寫的程序是基于圖像的;在LabVIEW中使用的G語言和通常意義上的編程語言有很大的不同,傳統(tǒng)意義上的編程語言運行的方向是由上而下的,是根據(jù)代碼的先后順序運行的,采用數(shù)據(jù)流進行編程方式是該軟件使用上的一大特色,在程序中常見的模塊用圖表表示,并且用不同顏色的數(shù)據(jù)線表示運行的方向。業(yè)界通常把這種圖形化的編程語言稱為"G"語言即用圖形編程,LabVIEW寫軟件的最大好處是它不用寫復雜繁瑣的代碼,取而代之的是非常直觀形象的流程圖。整個編程過程所用到的點都是使用者常見的圖形和圖表。LabVIEW有以下幾個特點:〔l上手很容易。與傳統(tǒng)的編程語言相比,LabVIEW這種圖像化的編程軟件存在一個巨大的優(yōu)勢:代碼的產(chǎn)生不是通過文本的方式來生成,而是使用圖形來完成軟件的編寫。所以由它書寫的的程序是圖形化的,用圖形,非常直觀形象的顛覆了程序就是代碼的觀點?!?通用編程系統(tǒng)。采用圖形化編程方式不但沒有禁錮LabVIEW的能力,反而增強了其實用性,同時兼?zhèn)淞藗鹘y(tǒng)的編程系統(tǒng)的優(yōu)點。由于LabVIEW有一個豐富的函數(shù)庫,所以可完根據(jù)不同的需要完成幾乎是任何軟件的編寫。LabVIEW既有突破傳統(tǒng)的優(yōu)勢,也保留了一般常見的程序編譯軟件。LabVIEW對數(shù)據(jù)的處理采用了一種叫做實時動態(tài)監(jiān)控的的方法,所以它比傳統(tǒng)意義上的編程語言更高效,更快捷?!?模塊化。LabVIEW中的程序由許多小模塊組成,可以不用特別的編寫,直接使用;另外,通過該開發(fā)環(huán)境編寫的程序,不但可以單獨執(zhí)行,而且可以作為其他更復雜的程序的子系統(tǒng),同時協(xié)調(diào)使用。LabVIEW已經(jīng)滲透到了在社會的很多領域:測試測量:LabVIEW當初設計的初衷是為了采集數(shù)據(jù),所以現(xiàn)在很多虛擬儀器和數(shù)據(jù)采集系統(tǒng)都配備有對應的LabVIEW驅(qū)動程序,LabVIEW也包含了很多采集處理的工具包,開發(fā)者能夠在第一時間檢索并利用這些工具。有時一個復雜的測量工作只需要調(diào)用,組合幾個簡單的子程序??刂疲篖abVIEW同時配備有適用于控制的子程序——LabVIEWDSC。仿真:大量的高等算法函數(shù)也包含在該軟件的中,為模擬、編譯、軟件編程等方面提供了更快捷的方式。高速研發(fā):完成一個功能強大的,使用方便的,并且可以在很多場合應用的大型應用軟件,熟練的開發(fā)者所需的研發(fā)時間更短,比其他語言的編程時間縮短了將近二分之一??缙脚_:LABVEWI具有良好的兼容性。體現(xiàn)在LabVIEW的圖形化語言不需要考慮兼容性就可以在幾乎所有的操作系統(tǒng)上執(zhí)行:Windows、MacOS及Linux。3.2LabVIEW編程環(huán)境通過G語言開發(fā)的軟件程序,即虛擬儀器〔VI,它包括前面板、程序框圖兩部分。一個經(jīng)典的LabVIEW程序結(jié)構如圖3-1所示,類似于幾乎所有的軟件設計,在創(chuàng)建一個虛擬儀器程序前,開發(fā)人員需要根據(jù)實際要求構思友好的人機交互界面,對于虛擬儀器而言,界面設計最大的難點就是前面板的設計,其中就有添加各種顯示控件控件、布爾變量、必要的文字概述和圖片等,其次就是通過具體的圖像化編程實現(xiàn)開發(fā)者想要所需要的能力。然而在一般情況下,開發(fā)人員都是上述兩種方法的穿插施行。圖3-1LabVIEW程序圖啟動界面雙擊LabVIEW圖標,啟動LabVIEW,就打開了LabVIEW的啟動界面,如下圖3.2所示。在這個界面中可以看到有菜單欄,編輯欄,幫助欄等。3.2.2前面板前面板就是最直觀的人和機器交流的界面。開發(fā)者嘗試編寫一個虛擬軟件時第一部步是設計這個人機交互界面,然后根據(jù)實際需要設計前面板上的顯示控件等。開發(fā)者要新建一個LabVIEW程序時,便出現(xiàn)下圖3-2的前面板:圖3-2程序框圖界面菜單:在LabVIEW中菜單的作用是為了用戶方便修改和操作程序框圖上的對象。在圖3-2中,最頂上一欄被稱為通用菜單欄。工具欄:工具欄按鈕用于執(zhí)行運行、連續(xù)運行、設置斷點、終止、編譯、修改字體、組合、分布對象.即時幫助窗口:選擇"幫助→顯示即時幫助"顯示即時幫助窗口。圖標:圖標是子模塊的圖形化表示,一般有文字、圖形穿插其中。如果打開一個子VI,程序框圖上就會出現(xiàn)該子VI的圖標。3.2.3程序框圖創(chuàng)建前面板后,由于該軟件中自帶了很多函數(shù),可通過圖形化的函數(shù)來豐富各種功能,從而間接影響前面板的顯示內(nèi)容。下圖3-3展示了LabVIEW的程序界面框圖。圖3-3程序界面框圖函數(shù)選板:在函數(shù)選板中可以找到很多常用的函數(shù)。函數(shù)選板中包含大量的函數(shù)庫,所以一些常見的功能函數(shù)都能找到。按照程序和函數(shù)的類型,程序和函數(shù)有不同的分類方式。最終設計好的軟件中包括接線端和節(jié)點。用圖形化的數(shù)據(jù)線把各個子模塊關聯(lián)融合到一起,程序框圖就這樣做成了[16]?!?接線端:前面板中的顯示或者輸入控件在程序框圖中一般顯示為接線端。它的作用是傳遞前面板和后臺程序之間的信息。開始執(zhí)行后,經(jīng)過分析后的輸出數(shù)據(jù)值經(jīng)由前面板中的顯示控件接線端流出處理后的數(shù)據(jù)到程序框圖而重新進入前面板,在后來讓前面板中設置的顯示控件顯示出具體的數(shù)值?!?節(jié)點:節(jié)點就是開發(fā)者事先創(chuàng)建在程序框圖上的小模塊,它們通常帶有輸入輸出端,在VI運行時進行運算。節(jié)點就相當于一般意義上語言中的語句、循環(huán)結(jié)構、模塊和數(shù)組。LabVIEW有以下類型的節(jié)點:函數(shù)——系統(tǒng)自帶的執(zhí)行小模塊,把他和傳統(tǒng)編程語言中的數(shù)值常量、函數(shù)或模塊相比。ExpressVI——即可以幫助人們測量的小模塊,由于其包含強大的數(shù)據(jù)庫,所以他使用快捷,方便,但缺點是速度并不是太快。所以,如果程序?qū)π室蟾?一般不考慮使用該模塊?!?多態(tài)VI和函數(shù):當輸入的數(shù)據(jù)類型多,且互不相同時,多態(tài)VI便會根據(jù)實際情況作出調(diào)整。3.3淺談G語言3.3.1G語言簡介圖形化的編程語言和傳統(tǒng)的編程語言有著天壤之別,最大的優(yōu)勢是把用文本編輯的代碼用直觀的圖形表示。因此,LabVIEW是一個通俗易懂的很容易上手的軟件開發(fā)工具。同時由于它可以很方便的編寫程序,編寫通俗易懂的圖形語言,所以它可以極大的擴展你的科學和工程系統(tǒng)的能力,為編寫虛擬儀器和實現(xiàn)高速高效數(shù)據(jù)采集系統(tǒng)提供新的方法。當然開發(fā)者通過他可以大大提高工作效率。把G語言與C語言進行比較分析,我們能對G語言有更加深刻的了解。我們舉一個簡單的例子,每個學生在學習C語言編程的時候編寫的第一個程序最后都是在電腦上出現(xiàn)"HELLOWORLD!"。我們分析這兩種語言的書寫方法,看看有什么區(qū)別和相似?!?用C編寫程序"HELLOWORLD!"以下是C實現(xiàn)的代碼:#include<stdio.h>Voidmain<>{printf<"HelloWorld!\n">;}然后編譯執(zhí)行即可。<2>用LabVIEW編寫程序"HELLOWORLD!"為了顯示最后的結(jié)果,開發(fā)者需要在前面板中加入一個顯示控件,這個控件的位置在菜單的控制板里。在我們加入的這個顯示控件是輸入控件,為了避免錯誤,我們得把他轉(zhuǎn)換成輸出控件,這樣才能顯示最后的結(jié)果。如圖3-4所示:圖3-4程序前面板然后點擊窗口,在彈出來的對話框中選擇"程序視圖",可以看到流程圖中增加了一個與之對應的接線端。接下來在流程圖中添加一個字符串常量〔位于函數(shù)選板—編程—字符串—字符串常量來存放"HELLOWORLD!",為了能夠顯示成功,需要將常量和顯示控件連接起來,如圖3-5所示。至此,整個程序就編寫完成了。圖3-5程序框圖單擊工具條上第一個箭頭圖案的按鈕,運行VI,就能看到如圖3-6的最終效果:圖3-6運行結(jié)果以上分別用C和LabVIEW編寫的顯小程序,從中可以看到兩者最大的區(qū)別是:C語言是使用傳統(tǒng)的字母代碼來實現(xiàn)各種顯示功能,然而LabVIEW使用的是圖像化的語言。3.3.2G語言的特色——數(shù)據(jù)流在C語言中,程序的基本執(zhí)行順序基本按照代碼的書寫順序一步步執(zhí)行。在LabVIEW中,代碼運行的順序是根據(jù)數(shù)據(jù)線的連接方向來控制的:一個數(shù)據(jù)從程序框圖上的某個起始節(jié)點出發(fā),沿著與它相連的數(shù)據(jù)線流動到下一個節(jié)點的某個輸入端,數(shù)據(jù)在這個節(jié)點被加工處理后,再從這個節(jié)點的輸出端點沿著連線流出,流向下一個節(jié)點,如此反復直到流入某個終止節(jié)點為止。下面舉了個小例子,通過這個例子我們可以直觀的看到數(shù)據(jù)流的移動方向。我們先編寫一個G語言程序,將華氏溫度和攝氏溫度之間的轉(zhuǎn)化變得直觀:華氏溫度到攝氏溫度的轉(zhuǎn)換公式為:1℃=5×<℉-32>/9〔℉-華氏溫度,℃-攝氏溫度,實現(xiàn)的功能兩種程序如下:〔1用C編寫程序的代碼:#include<stdio.h>voidmain<>{flaotx,y;printf<"請輸入華氏溫度:\n">;scanf<"%f",&x>;y=<x-32>*5/9;printf<"攝氏溫度為%f!\n",y>;}〔2用LabVIEW編寫程序,在程序框圖的程序如下圖3-7所示:圖3-7程序節(jié)點以及連線在前面板中華氏溫度下的一欄里隨便輸入一個數(shù)值,然后點擊向右的箭頭,表示開始運行,在另外一個顯示控件里,就顯示出了轉(zhuǎn)換后的數(shù)值,如圖3-8所示:圖3-8運行結(jié)果在這個程序中,數(shù)據(jù)℉從輸入控件中輸入,沿著連線先后經(jīng)過了減法器〔℉-32=X、乘法器〔X*5=Y、除法器〔Y/9=℃,最后從輸出控件中輸出,完成了整個程序執(zhí)行的流程。3.3.3G語言的基本結(jié)構LabVIEW相比于傳統(tǒng)的編程語句它的數(shù)據(jù)類型有很多種,導致布爾與數(shù)據(jù)類型的相互聯(lián)系緊密嚴謹。一般而言,每一個數(shù)據(jù)類型可以對應多個輸入輸出組件;另一方面,存在不少的輸入輸出模塊可以同時對應多個不同類型的數(shù)據(jù)?!?數(shù)值控件:在LabVIEW的控件欄中可以找到是數(shù)值控件。數(shù)值控件不能通過外表判斷,雖然有些控件的外表不同,但它們都對應相同的數(shù)據(jù)類型,即數(shù)值類型[17]。此外,有很多例外的控件,雖然不在常規(guī)的位置,但這些控件也可以表示成數(shù)值型控件。表示法、數(shù)值范圍的作用是規(guī)范數(shù)據(jù)的大小,而不會影響數(shù)據(jù)其他屬性,以避免程序編譯時出現(xiàn)數(shù)值過大或者過?。伙@示格式不影響程序的運行,主要是為了提供更加方便快捷可靠的人機交互界面。〔2枚舉型:顧名思義,枚舉控件所對應的數(shù)據(jù)類型就是屬于枚舉型。在實際開發(fā)中,表示個數(shù)不多的幾種數(shù)值、幾種流程等定義時,枚舉控件是最好的選擇,一般而言枚舉控件的數(shù)據(jù)類型定義很嚴格,目的是防止代碼執(zhí)行過程中可能出現(xiàn)的錯誤?!?布爾型:"真"和"假"是構成布爾型數(shù)據(jù)的基礎。一般而言,用一個布爾型數(shù)據(jù)〔bit就能準確地表示真和假。在一般情況下,字節(jié)是現(xiàn)代計算機處理數(shù)據(jù)的最小單位,真和假恰好可以用一個字節(jié)的0或者1來代替?!?數(shù)組型:如果出現(xiàn)一組相同類型的數(shù)據(jù),一般而言,可以用數(shù)組型來進行表示。數(shù)組元素的數(shù)據(jù)類型可以表示成其他所有的數(shù)據(jù)類型,需要注意的是,數(shù)組本身不能重復嵌套作為另一個數(shù)組的元素。與傳統(tǒng)意義上的編程語言相類似,在LabVIEW這樣的開發(fā)環(huán)境下,開發(fā)者也使用"結(jié)構"來控制代碼的執(zhí)行順序。較常用的結(jié)構有:順序結(jié)構、條件結(jié)構、循環(huán)結(jié)構、事件結(jié)構以及定時結(jié)構等[18]。順序結(jié)構:如下圖3-9所示,程序的運行順序是按照數(shù)據(jù)在連線上的流動方向執(zhí)行。同時,G語言不但是一種圖像化的語言,而且一種自動執(zhí)行有多線程的語言。所謂多線程就是,如果在程序中有兩個并行放置、相互獨立沒有聯(lián)系的模塊,則LabVIEW會根據(jù)實際情況把它們放置到不同的線程中,同時執(zhí)行。順序結(jié)構可以讓兩個或者多個相互獨立的模塊按照開發(fā)者所需要的順序來執(zhí)行。圖3-9順序結(jié)構順序結(jié)構運行時,系統(tǒng)會按照框架的先后順序依次執(zhí)行。只有每個框架中的代碼運行結(jié)束,程序才會跳轉(zhuǎn)到下一個框架。開發(fā)者可以根據(jù)實際需要把能實現(xiàn)不同功能的代碼放置在不同的框架中,系統(tǒng)就會按框架的順序依次執(zhí)行。條件結(jié)構:如下圖3-10所示,LabVIEW中的條件結(jié)構類似于樹枝,有很多分支,每個分支分別對應不同的的程序代碼。條件結(jié)構可以按照開發(fā)者實際需要的變化,每次只運行其中的一個分支,或者多個分支。類似于傳統(tǒng)編程語言中的ifelse和switch語句。如果要選擇到底運行哪一個樹枝,可通過使用選擇器接線端,選擇器接線端可以連接布爾、整型,整數(shù)或者枚舉類型[19]。圖3-10條件結(jié)構循環(huán)結(jié)構:和大部分傳統(tǒng)意義上的編程語言一樣,LabVIEW也有循環(huán)結(jié)構,它們分別是for循環(huán)和while循環(huán)。其能力也與傳統(tǒng)意義上的編程語言的功能相仿,可以通過改變數(shù)值來改變循環(huán)體中的代碼運行次數(shù)?!?For循環(huán)如下圖3-11所示,配置For循環(huán)的相關參數(shù)可以設定某個代碼運行規(guī)定的次數(shù)。For循環(huán)的初始值一般是從0開始,重點是每執(zhí)行一次循環(huán),數(shù)值一般只增加1。需要注意的是For循環(huán)要么運行完畢,要么不運行,而不能運行到一半就退出。圖3-11for循環(huán)〔2While循環(huán)如下圖3-12所示,While循環(huán)作用是能夠多次執(zhí)行循環(huán)體中代碼,直至滿足開發(fā)者設定的參數(shù)為止。圖3-12while循環(huán)一般而言,外部數(shù)據(jù)要想跳進循環(huán)體只有通過隧道才可以進入,有這樣幾種進入隧道的方法:索引隧道、移位寄存器〔shiftregister、一般隧道。一般隧道,就是把數(shù)據(jù)傳入傳出循環(huán)結(jié)構。數(shù)據(jù)的類型和值在傳入傳出循環(huán)結(jié)構前后不發(fā)生變化。索引隧道是LabVIEW的一種獨特功能。索引隧道的作用是把一個不相干的數(shù)組和循環(huán)結(jié)構關聯(lián)起來,隧道在循環(huán)內(nèi)一側(cè)會自動取出數(shù)組的元素,依順序每次循環(huán)取出一個元素。用索引隧道傳出數(shù)據(jù),可以自動把循環(huán)內(nèi)的數(shù)據(jù)組織成數(shù)組。移位寄存器可以將數(shù)據(jù)從一個循環(huán)周期傳遞到另外一個周期。通過移位寄存器傳入傳出數(shù)據(jù),也是數(shù)據(jù)的類型和值都不會發(fā)生變化。移位寄存器的特殊之處在于在循環(huán)結(jié)構兩端的接線端是強制使用同一內(nèi)存的。因此,上一次迭代執(zhí)行產(chǎn)生的某一值,傳給移位寄存器右側(cè)的接線端,如果下一次迭代運行需要用到這個數(shù)據(jù),從移位寄存器左側(cè)的接線端引出就可以了。3.4LabVIEW界面設計使用LabVIEW編寫一個復雜并且功能強大的程序,在實際情況下是按照如下方法進行的:結(jié)合實際需要、構思、編程、編譯、發(fā)布及維護。細分設計階段,任何復雜功能強大的程序都必須先考慮程序的人機交互界面[20]。使用傳統(tǒng)的文本語言編程,人機交互界面通常需要開發(fā)者事先在圖紙上畫出原型。LabVIEW在這方面比其他種類的編程語言更好,由于圖像化編程做的非常成熟。由于數(shù)據(jù)庫中包含有大量現(xiàn)成的函數(shù),界面設計變得非常方便。有些軟件,人機界面設計的非常友好,非常便捷,讓人感到非常舒適。但漂亮視覺感不能作為評判的唯一標準,一個人機交互界面如果能更好的完成它的交互功能則可以說它是一個好的界面。用戶可以通過前面板輸入你已經(jīng)得到的數(shù)據(jù),交由程序自動處理;用戶也可以通過前面板得到程序處理分析后的數(shù)據(jù)。最后才是界面的美觀程度。做到這些才能算是一個優(yōu)秀上檔次的人機交互界面:安排合理,畫面簡潔,運行流暢,通俗易懂,一致性和合理性。3.5本章小結(jié)本章主要介紹了LabVIEW的基本使用方法,并且通過對比G語言和其他編程語言指出了G語言的編程方法和注意點,為下文要設計的虛擬儀器奠定基礎。第四章基于NImyDAQ的數(shù)據(jù)采集系統(tǒng)本節(jié)主要介紹了基于NImyDAQ所設計的幾種典型的數(shù)據(jù)采集系統(tǒng),如虛擬數(shù)字電壓表,連續(xù)信號采集,簡單的邊沿計數(shù),脈沖寬度測量以及連續(xù)脈沖產(chǎn)生。下面將做詳細的介紹。4.1虛擬數(shù)字電壓表在本文設計中,數(shù)字電壓表的設計運用了現(xiàn)在比較流行的虛擬儀器編程技術,使其突破了傳統(tǒng)發(fā)的禁錮,縮小了系統(tǒng)的提及,提高了系統(tǒng)執(zhí)行的效率,大幅提升了測量的可信度。4.1.1電壓表的前面板布置虛擬電壓表的前面板如圖4-1所示。左邊一個通道選擇框,右邊是模擬電壓表的量程等。圖4-1電壓表前面板布置4.1.2電壓表的程序框圖數(shù)據(jù)采集可和LabVIEW兩者結(jié)合設計的數(shù)字電壓表具有測量直流電壓和交流電壓的能力,數(shù)字電壓表的設計原理如下圖4-2所示。電壓-時間變換型原理是指測量時將被測電壓值轉(zhuǎn)換為時間間隔△t,電壓越大,△t越大,然后按△t大小控制定時脈沖進行計數(shù),其計數(shù)值即為電壓值。電壓-時間變換型又稱為V-T型或斜坡電壓式。圖4-2電壓表程序框圖展示4.1.3測試過程1.用AO0通道的輸出電作為測試源信號:在MAX中的myDAQ圖表上點擊右鍵,選擇測試面板,此時會彈出測試面板對話框。選擇模擬輸出選項卡。設置輸出值為3V到5V,然后點擊刷新按鈕。2.在前面板中選擇物理通道為Dev/1ai0,然后運行程序。3.在測試面板上改變AO0通道的輸出值,每次改變后都要點擊刷新,同時觀察模擬輸入值變化。4.1.4測試結(jié)果測試結(jié)果如下圖4-3所示,在測試面板中,我們選擇不同的輸出值,數(shù)字電壓表的指針也會指向?qū)闹?。圖4-3測試結(jié)果4.2連續(xù)信號采集這個數(shù)據(jù)采集系統(tǒng)通過使用DAQmxAPI采集信號,執(zhí)行連續(xù)的硬件定時信號采集。4.2.1程序框圖的設計連續(xù)信號采集程序框圖如下圖4-4所示,DAQmx創(chuàng)建虛擬通道的多態(tài)選擇器應選擇模擬輸入電壓,DAQmx的多態(tài)選擇器應選擇采樣時鐘,并設置常量為連續(xù)采樣。在循環(huán)內(nèi)放置一個等待函數(shù),等待時間先設置為1ms,用模擬將來可能在循環(huán)中對讀取數(shù)據(jù)的處理等操作所需要的時間。圖4-4連續(xù)信號采集的程序框圖4.2.2系統(tǒng)前面板的布置連續(xù)信號采集前面板如圖4-5所示,我們可以看到前面板中物理通道選擇框,采樣速率選擇框,右邊是采樣波形的顯示器。圖4-5連續(xù)信號采集前面板布置4.2.3測試過程1.打開NIELVISmx的FGEN軟面板,產(chǎn)生10kHz的正弦波形〔注意signalroute選擇通過Prototypingboard。2.將編寫好的VI前面板控件中的物理通道設置為Dev1/ai0〔假設已在MAX軟件中將ELVIS的邏輯名命名為Dev1,采樣率設置為100000,運行VI。3.觀察每通道可用采樣顯示,如果采集的速度大于讀取的速度,緩沖區(qū)會逐步填滿并最終溢出。觀察降低采樣率或增加循環(huán)等待時間的影響。4.2.4測試結(jié)果測試結(jié)果如下圖4-6所示,當采樣速率設置為1000時,采樣波形為一正弦波,接近原信號波形。圖4-6測試結(jié)果展示4.3簡單的邊沿計數(shù)4.3.1程序框圖的設計邊沿計數(shù)的程序框圖如圖4-7所示,可以看出,我們使用的第一個函數(shù)節(jié)點是創(chuàng)建虛擬通道節(jié)點,在虛擬通道函數(shù)中,首先要選擇我們想使用的計數(shù)器,然后啟動任務函數(shù)負責采集任務的啟動,不僅僅是計數(shù)器,其他類型的采集采用同樣的啟動任務函數(shù),在循環(huán)中,我們通過軟件設置時間間隔,上面的例子中,每100毫秒讀取一次計數(shù)器的當前值。圖4-7簡單邊沿技術的程序框圖4.3.2系統(tǒng)前面板的布置邊沿計數(shù)的前面板如圖4-8所示,有通道選擇選框,下面有初始計數(shù)次數(shù),同時我們可以選擇計數(shù)方向:升值計數(shù)或者是降值計數(shù)。在面板的右邊顯示最終的計數(shù)個數(shù)。圖4-8邊沿計數(shù)的前面板布置4.3.3測試過程1.用ELVIS的FGEN軟面板產(chǎn)生一個TTL方波信號作為測試的計數(shù)源信號:打開信號發(fā)生器〔FGEN軟面板,點擊方波以產(chǎn)生方波信號,頻率設置為1Hz,幅度設置為5V,DCOffset設置為2.5V,其他參數(shù)不變,點擊Run按鈕運行。2.在LabVIEW程序前面板上的計數(shù)器通道設置為Dev1/ctr0〔如果在MAX中配置的設備名不是"Dev1",則選擇其他相應的設備名,然后運行程序,應該可以觀察到前面板計數(shù)控件的值每秒鐘加1。3.可改變FGEN產(chǎn)生的方波信號的頻率,觀察計數(shù)值變化速度的情況。4.3.4測試結(jié)果測試結(jié)果如圖4-9所示,通過自帶的函數(shù)發(fā)生器,產(chǎn)生頻率是1HZ的正弦波,運行程序,我們可以看到前面板計數(shù)控件的值每秒鐘增加1。圖4-9邊沿計數(shù)測試結(jié)果和函數(shù)發(fā)生器4.4脈沖寬度測量利用自帶的計數(shù)器,通過LabVIEW編程測量單個脈沖的脈寬。4.4.1程序框圖的設計脈沖寬度測量如圖4-10所示,流程為:配置虛擬通道、讀取計數(shù)器值和清除任務。在配置虛擬通道VI中,需要選擇CI脈沖寬度。因為一個計數(shù)器就可以完成單脈寬測量,因此可以選擇不同的計數(shù)器,這也可以通過選擇不同的物理通道配置。圖4-10脈沖寬度測量的程序框圖4.4.2系統(tǒng)前面板布置脈沖寬度測量的前面板如圖4-11所示。在該前面板中,我們可以看到有通道選擇選框,同時可以選擇上升沿計數(shù)或者下降沿技術兩種方法,在前面板的右邊,有脈沖寬度顯示框,顯示要測的脈沖寬度。圖4-11脈沖寬度測量前面板布置4.4.3測試過程用函數(shù)發(fā)生器產(chǎn)生待測脈沖源:打開ELVIS的函數(shù)發(fā)生器〔FGEN軟面板,點擊方波以產(chǎn)生TTL方波信號。其中頻率設置為10Hz,占空比為20%,幅度為5Vpp,DCOffset為2.5V,點擊Run按鈕運行。1.將編寫好的VI前面板控件中的物理通道設置為Dev1/ctr0,開始邊沿設置為上升。2.設置脈沖的高電平持續(xù)時間,單位為秒,最大最小值分別為0.1和0.000001,運行VI,應該可以觀察到脈沖寬度的測量值為0.02秒[9]。改變FGEN產(chǎn)生的信號頻率或占空比,可以再次運行VI觀察測試結(jié)果的變化。4.4.4測試結(jié)果測試結(jié)果如圖4-12所示。用函數(shù)發(fā)生器產(chǎn)生10HZ的方波,在前面板中,我們可以看到需要測量的脈沖寬度為0.02。圖4-12測試結(jié)果和函數(shù)發(fā)生器4.5連續(xù)脈沖序列產(chǎn)生利用軟件庫中自帶的計數(shù)器同時編寫LabVIEW程序,可以連續(xù)的產(chǎn)生方波序列。4.5.1程序框圖的設計連續(xù)脈沖產(chǎn)生序列的程序框圖如圖4-13所示,首先通過一個DAQmx驅(qū)動來產(chǎn)生所需要的連續(xù)脈沖。同時,我們可以配置該脈沖的占空比,頻率,初始延遲等基本參數(shù)。然后把該任務送到DAQmx定時器中
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度建筑廢棄物回收利用居間合作合同
- 2025年度酒店客房用品倉儲物流服務合同范本
- 2025年度建筑垃圾資源化利用技術研發(fā)合同范本
- 2025年度新型環(huán)保紅磚綠色采購合同
- 2025年度智能物業(yè)升級服務補充合同協(xié)議
- 2025年度綠色建筑示范項目勞務分包施工合同
- 2025年度生態(tài)農(nóng)業(yè)科技園建設合作協(xié)議
- 2025年度智能家居設備代購與系統(tǒng)集成服務協(xié)議
- 2025年度企業(yè)并購貸款補充協(xié)議范文
- 2025年度建筑工程勞務外包與質(zhì)量保證合同
- 幼兒園大班綜合《月亮姑娘做衣裳》微課件
- 二年級看圖寫話看圖寫話素材
- 政務服務一網(wǎng)通辦平臺解決方案
- 2022年全球及中國肥胖人口數(shù)量及肥胖帶來的危害分析:預計2025年中國超重及肥胖人數(shù)將突破2.65億人圖
- 2022年垃圾焚燒發(fā)電項目可行性研究報告
- 無菌技術操作-PPT課件
- JTT888-2020公共汽車類型劃分及等級評定_(高清-最新)
- 某天然氣公司場站設備管理制度
- 臨時碼頭施工方案
- 汶川地震災后恢復重建生產(chǎn)力布局和產(chǎn)業(yè)調(diào)整專項規(guī)劃
- 教師專業(yè)發(fā)展與職業(yè)生涯規(guī)劃優(yōu)秀課件
評論
0/150
提交評論