




已閱讀5頁,還剩78頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
摘要摘 要虛擬儀器是在計(jì)算機(jī)基礎(chǔ)上通過增加相關(guān)硬件和軟件構(gòu)建而成的、具有可視化界面的儀器,它融合了測試?yán)碚摗x器原理和技術(shù)、計(jì)算機(jī)接口技術(shù)、高速總線技術(shù)以及圖形軟件編程技術(shù)等于一體,利用計(jì)算機(jī)強(qiáng)大的數(shù)字的處理能力來實(shí)現(xiàn)儀器的諸多功能,打破了傳統(tǒng)儀器的框架,形成了一種新的儀器模式。文章分析了虛擬儀器技術(shù)的現(xiàn)狀及今后的發(fā)展趨勢,介紹了虛擬儀器、LabVIEW的相關(guān)知識。敘述了虛擬頻率計(jì)的理論基礎(chǔ),闡述了過零計(jì)數(shù)法測頻原理和線性插值法原理。設(shè)計(jì)了過零計(jì)數(shù)法測頻的程序框圖,介紹了DAQmx驅(qū)動(dòng)軟件的編程方法,創(chuàng)建仿真設(shè)備,排除波形過零點(diǎn)附近的波動(dòng)干擾。用仿真設(shè)備產(chǎn)生模擬波形并驗(yàn)證過零計(jì)數(shù)法測頻的程序框圖的正確性。介紹了數(shù)據(jù)采集理論,設(shè)計(jì)了USB2832數(shù)據(jù)采集卡驅(qū)動(dòng)層程序,完成了頻率測量和誤差分析,驗(yàn)證了奈奎斯特定理。關(guān)鍵詞:虛擬儀器,LabVIEW,過零計(jì)數(shù)法,線性插值法,數(shù)據(jù)采集卡75ABSTRACTAbstractVirtual Instrument is based on computer related hardware and software by increasing the building made with a visual interface of the instrument, which combines the test theory, theory and technology equipment, computer interface technology, high-speed bus technology and graphics software programming technology. The use of powerful digital computer processing power to achieve the instruments many features, the traditional instruments of the framework is broken, the formation of a new instrument model is established. The Virtual Instrument technology present conditionand and future development trend are firstly analyzed in this paper, the knowledge of related virtual instrument and LabVIEW are described. The theoretical basis of virtual frequency meter are elaborated,the working principles of zero-crossing counting method and linear interpolation method are elaborated. The flow diagram of virtual frequency meter is designed.The programming method of the driver software related DAQmx are described, the simulation equipment is established, the fluctuations of waveform are excluded. analog waveform is generated by simulation equipment, The flow diagram of virtual frequency meter is verified. The theoretical data collection is described,the driver diagram of USB2832 data acquisition card is designed. Frequency measurement and error analysis are completed, Nyquist theorem is verified.Key Words: Virtual Instrument, LabVIEW ,zero-crossing counting method, linear interpolation, data acquisition card目錄目 錄第1章 引言11.1 測控技術(shù)的發(fā)展現(xiàn)狀11.2 虛擬儀器的概述21.2.1 虛擬儀器的概念21.2.2虛擬儀器的特點(diǎn)及優(yōu)勢31.2.3 虛擬儀器技術(shù)的發(fā)展趨勢41.2.4 虛擬儀器技術(shù)在教學(xué)實(shí)驗(yàn)中的應(yīng)用前景41.3 論文主要內(nèi)容5第2章 過零計(jì)數(shù)法測頻原理與系統(tǒng)設(shè)計(jì)62.1過零計(jì)數(shù)法測頻原理62.2 線性插值法82.3 虛擬頻率計(jì)系統(tǒng)設(shè)計(jì)102.4小結(jié)11第3章 應(yīng)用層程序設(shè)計(jì)與仿真123.1 程序模塊化設(shè)計(jì)概述123.1.1 程序設(shè)計(jì)的模塊化原則123.1.2 軟件系統(tǒng)的模塊化設(shè)計(jì)原則133.2 虛擬頻率計(jì)應(yīng)用層程序設(shè)計(jì)143.2.1 LabVIEW編程語言的組成部分143.2.2 程序設(shè)計(jì)流程圖153.2.3 應(yīng)用層程序設(shè)計(jì)163.2.3.1 LabVIEW名詞和函數(shù)163.2.3.1 應(yīng)用層程序設(shè)計(jì)183.3 DAQmx仿真193.3.1 NI數(shù)據(jù)采集卡的驅(qū)動(dòng)軟件193.3.2 DAQmx驅(qū)動(dòng)函數(shù)213.3.2.1 DAQmx驅(qū)動(dòng)函數(shù)介紹213.2.3.2 DAQmx驅(qū)動(dòng)函數(shù)設(shè)計(jì)243.3.2 過零點(diǎn)附近的波動(dòng)處理263.4仿真結(jié)果283.5 本章小結(jié)29第4章 數(shù)據(jù)采集304.1 數(shù)據(jù)采集理論304.1.1 數(shù)據(jù)采集技術(shù)概論304.1.1.1 A/D轉(zhuǎn)換304.1.1.2 采樣定理314.1.2 采集系統(tǒng)的一般組成及各部分功能描述324.1.3 傳感器344.1.4 輸入信號的類型344.2 數(shù)據(jù)采集卡364.2.1 數(shù)據(jù)采集卡的性能指標(biāo)364.2.2 數(shù)據(jù)采集卡的組成374.2.3 USB2832數(shù)據(jù)采集卡384.3 37芯D端子板394.4 AD模擬量輸入的信號連接方法404.5 數(shù)據(jù)采集過程424.5.1 非空查詢方式獲取AD數(shù)據(jù)424.5.2 數(shù)據(jù)采集VI的層次結(jié)構(gòu)474.5.3 數(shù)據(jù)采集卡的連接與檢測484.6 頻率測量494.7 誤差分析514.8 本章小結(jié)52第5章 總結(jié)與展望535.1 全文總結(jié)535.2 展望53參考文獻(xiàn)55致 謝57外文資料原文58外文資料譯文65第1章 引言第1章 引言1.1 測控技術(shù)的發(fā)展現(xiàn)狀測控技術(shù)在現(xiàn)代科學(xué)技術(shù)、工業(yè)生產(chǎn)和國防科技等諸多領(lǐng)域中應(yīng)用十分廣泛,它的現(xiàn)代化已被認(rèn)為是科學(xué)技術(shù)、國防現(xiàn)代化的重要條件和明顯標(biāo)志。20世紀(jì)70年代以來,計(jì)算機(jī)、微電子等技術(shù)迅猛發(fā)展,在其推動(dòng)下,測控儀器與技術(shù)不斷進(jìn)步,相繼誕生了智能儀器、PC儀器、VXI儀器、虛擬儀器及互換性虛擬儀器等微機(jī)化儀器及其自動(dòng)測控系統(tǒng),計(jì)算機(jī)與現(xiàn)代化儀器設(shè)備間的界限日漸模糊,測控領(lǐng)域和范圍不斷拓寬1。近年來,以計(jì)算機(jī)為中心、以網(wǎng)絡(luò)為核心的網(wǎng)絡(luò)化測控技術(shù)與網(wǎng)絡(luò)化測控系統(tǒng)得到越來越多的應(yīng)用,尤其是在航空航天等國防科技領(lǐng)域。網(wǎng)絡(luò)化的測控系統(tǒng)大體上由兩部分組成:測控終端與傳輸介質(zhì),隨著個(gè)人計(jì)算機(jī)的高速發(fā)展,測控終端的位置越來越多的被個(gè)人計(jì)算機(jī)所占據(jù),其中,軟件系統(tǒng)是計(jì)算機(jī)系統(tǒng)的核心,甚至是整個(gè)測控系統(tǒng)的靈魂,應(yīng)用于測控領(lǐng)域的軟件系統(tǒng)稱為監(jiān)控軟件。傳輸介質(zhì)組成的通信網(wǎng)絡(luò)主要完成數(shù)據(jù)的通信與采集,這種數(shù)據(jù)采集系統(tǒng)是整個(gè)測控系統(tǒng)的主體,是完成測控任務(wù)的主力。這種“監(jiān)控軟件數(shù)據(jù)采集系統(tǒng)”構(gòu)架的測控系統(tǒng)結(jié)構(gòu)在很多領(lǐng)域都得到了廣泛的應(yīng)用,并形成了一套完整的理論2。隨著科學(xué)技術(shù)的發(fā)展,在我國國防、通信、航天、航空、氣象、環(huán)境監(jiān)測、制造等領(lǐng)域,要求測控和處理的信息量越來越大、速度越來越快。同時(shí)測控對象的空間位置日益分散,測控任務(wù)日益復(fù)雜,測控系統(tǒng)日益龐大,因此,提出了測控現(xiàn)場化、遠(yuǎn)程化、網(wǎng)絡(luò)化的要求。傳統(tǒng)的單機(jī)儀器己遠(yuǎn)遠(yuǎn)不能適應(yīng)大數(shù)量、高質(zhì)量的信息采集要求,產(chǎn)生了由計(jì)算機(jī)控制的測控系統(tǒng),系統(tǒng)內(nèi)單元通過各種總線互連,進(jìn)行信息的傳輸3。網(wǎng)絡(luò)化的測控技術(shù)興起于國外,是在計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)、通信技術(shù)高速發(fā)展,以及對大容量分布式測控的大量需求背景下發(fā)展起來。主要可分為以下幾個(gè)階段。第一階段:起始于20世紀(jì)70年代通用儀器總線(GPIB)的出現(xiàn),GPIB實(shí)現(xiàn)了計(jì)算機(jī)與測控系統(tǒng)的首次結(jié)合,使得測量儀器從獨(dú)立的手工操作單臺儀器開始走向計(jì)算機(jī)控制的多臺儀器的測控系統(tǒng)。此階段是網(wǎng)絡(luò)化測控系統(tǒng)的雛形與起始階段。第二階段:起始于20世紀(jì)80年代VXI標(biāo)準(zhǔn)化儀器總線的出現(xiàn),VXI系統(tǒng)可以將大型計(jì)算機(jī)昂貴的外設(shè)、VXI設(shè)備、通信線路等硬件資源以及大型數(shù)據(jù)庫程序等軟件資源納入網(wǎng)絡(luò),使得這些寶貴的資源得以共享。此階段是網(wǎng)絡(luò)化測控系統(tǒng)的初步發(fā)展階段。第三階段:隨著技術(shù)的發(fā)展,現(xiàn)場總線技術(shù)的出現(xiàn)帶動(dòng)了現(xiàn)場總線控制系統(tǒng)(FCS)的迅速發(fā)展,使得可以在一個(gè)工廠范圍內(nèi)通過總線將成千上萬個(gè)智能傳感器/變送器等智能化的儀表組成一個(gè)網(wǎng)絡(luò)化測控儀器系統(tǒng),此階段是網(wǎng)絡(luò)化測控系統(tǒng)的快速發(fā)展階段。第四階段:在對現(xiàn)代化要求極高的領(lǐng)域,傳統(tǒng)的測控系統(tǒng)已經(jīng)逐漸無法滿足用戶的要求。許多部門或大型企業(yè)迫切要求構(gòu)建基于Internet或大型局域網(wǎng)的網(wǎng)絡(luò)化測控系統(tǒng),即通常所說的分布式測控網(wǎng)絡(luò),此階段是網(wǎng)絡(luò)化測控系統(tǒng)發(fā)展的成熟階段4。1.2 虛擬儀器的概述1.2.1 虛擬儀器的概念虛擬儀器的概念是由美國國家儀器公司(NationalInstruments)最先提出的5。所謂虛擬儀器是基于計(jì)算機(jī)的軟硬件測試平臺,它可代替?zhèn)鹘y(tǒng)的測量儀器,如示波器、邏輯分析儀、信號發(fā)生器、頻譜分析儀等;可集成于自動(dòng)控制、工業(yè)控制系統(tǒng)之中;可自由構(gòu)建成專有儀器系統(tǒng)。虛擬儀器是智能儀器之后的新一代測量儀器。虛擬儀器的核心技術(shù)思想就是“軟件即是儀器”。該技術(shù)把儀器分為計(jì)算機(jī)、儀器硬件和應(yīng)用軟件三部分。虛擬儀器以通用計(jì)算機(jī)和配備標(biāo)準(zhǔn)數(shù)字接口的測量儀器(包括GPIB、RS-232等傳統(tǒng)儀器以及新型的VXI模塊化儀器)為基礎(chǔ),將儀器硬件連接到各種計(jì)算機(jī)平臺上,直接利用計(jì)算機(jī)豐富的軟硬件資源,將計(jì)算機(jī)硬件(處理器、存儲器、顯示器)和測量儀器(頻率計(jì)、示波器、信號源)等硬件資源與計(jì)算機(jī)軟件資源(包括數(shù)據(jù)的處理、控制、分析和表達(dá)、過程通訊以及圖形用戶界面)有機(jī)的結(jié)合起來6。1.2.2虛擬儀器的特點(diǎn)及優(yōu)勢虛擬儀器是基于計(jì)算機(jī)的功能化硬件模塊和計(jì)算機(jī)軟件構(gòu)成的電子測試儀器,而軟件是虛擬儀器的核心。如圖2-1所示,其中軟件的基礎(chǔ)部分是設(shè)備驅(qū)動(dòng)軟件,而這些標(biāo)準(zhǔn)的儀器驅(qū)動(dòng)軟件使得系統(tǒng)的開發(fā)與儀器的硬件變化無關(guān)。這是虛擬儀器最大的優(yōu)點(diǎn)之一,有了這一點(diǎn),儀器的開發(fā)和換代時(shí)間將大大縮短7。虛擬儀器中應(yīng)用程序?qū)⒖蛇x硬件(如GPIB,VXI,RS-232,DAQ板)和可重復(fù)用庫函數(shù)等軟件結(jié)合在一起,實(shí)現(xiàn)了儀器模塊間的通信、定時(shí)與觸發(fā)。源代碼庫函數(shù)為用戶構(gòu)造自己的虛擬儀器(VI)系統(tǒng)提供了基本的軟件模塊。由于VI的模塊化、開放性和靈活性,以及軟件是關(guān)鍵的特點(diǎn),當(dāng)用戶的測試要求變化時(shí)可以方便地由用戶自己來增減硬、軟件模塊,或重新配置現(xiàn)有系統(tǒng)以滿足新的測試要求8。圖2-1 虛擬儀器的開發(fā)框圖虛擬儀器技術(shù)的優(yōu)勢在于可由用戶定義自己的專用儀器系統(tǒng),且功能靈活,很容易構(gòu)建,所以應(yīng)用面極為廣泛。虛擬儀器技術(shù)十分符合國際上流行的“硬件軟件化”的發(fā)展趨勢,因而常被稱作“軟件儀器”。它功能強(qiáng)大,可實(shí)現(xiàn)示波器、邏輯分析儀、頻譜儀、信號發(fā)生器等多種普通儀器全部功能,配以專用探頭和軟件還可檢測特定系統(tǒng)的參數(shù),如汽車發(fā)動(dòng)機(jī)參數(shù)、汽油標(biāo)號、爐窯溫度、血液脈搏波、心電參數(shù)等多種數(shù)據(jù);它操作靈活,完全圖形化界面,風(fēng)格簡約,符合傳統(tǒng)設(shè)備的使用習(xí)慣,用戶不經(jīng)培訓(xùn)即可迅速掌握操作規(guī)程。1.2.3 虛擬儀器技術(shù)的發(fā)展趨勢虛擬儀器是微電子、通信、計(jì)算機(jī)等現(xiàn)代科學(xué)技術(shù)高速發(fā)展的產(chǎn)物。自從1785年庫侖發(fā)明靜電扭秤,1834年哈里斯提出靜電電表結(jié)構(gòu)以來,電測儀表和電子儀器隨相關(guān)技術(shù)的進(jìn)步、儀器儀表元器件質(zhì)量的提高和測量理論方法的改進(jìn)得到飛速發(fā)展。伴隨微電子技術(shù)、計(jì)算機(jī)技術(shù)、網(wǎng)絡(luò)技術(shù)的迅速發(fā)展及在電工電子測量技術(shù)領(lǐng)域的應(yīng)用,測量儀器也不斷進(jìn)步和發(fā)展,出現(xiàn)了智能儀器9。智能儀器是將微機(jī)置于儀器內(nèi)部,使儀器具有控制、存儲、運(yùn)算、邏輯判斷及自動(dòng)操作等智能特點(diǎn),并在測量準(zhǔn)確度、靈敏度、可靠性、自動(dòng)化程度、運(yùn)用能力及解決測量技術(shù)問題的深度和廣度等方面都有明顯的進(jìn)步。這種內(nèi)置微處理器的儀器,既能進(jìn)行自動(dòng)測試又能完成數(shù)據(jù)處理,可取代部分的腦力勞動(dòng)。隨著電子技術(shù)、微計(jì)算機(jī)技術(shù)的發(fā)展,智能儀器的智能水平不斷提高?;谔摂M儀器技術(shù)的數(shù)據(jù)采集系統(tǒng)的提出在一定程度上解決了傳統(tǒng)數(shù)據(jù)采集所面臨的問題,虛擬儀器數(shù)據(jù)采集系統(tǒng)成為當(dāng)今數(shù)據(jù)采集系統(tǒng)發(fā)展的重要方向。本文正是在虛擬儀器技術(shù)的基礎(chǔ)上對多通道數(shù)據(jù)采集系統(tǒng)進(jìn)行了設(shè)計(jì),實(shí)現(xiàn)多路信號的采集,并對實(shí)驗(yàn)數(shù)據(jù)進(jìn)行實(shí)時(shí)顯示、記錄、分析處理。虛擬儀器的出現(xiàn)是儀器發(fā)展史上的一場革命,代表著儀器發(fā)展的最新趨勢和新方向,并且是信息技術(shù)的重要領(lǐng)域擴(kuò)充,對科學(xué)技術(shù)的發(fā)展和工業(yè)生產(chǎn)將產(chǎn)生不可估量的影響10。1.2.4 虛擬儀器技術(shù)在教學(xué)實(shí)驗(yàn)中的應(yīng)用前景在電工及機(jī)械電子類課程中,實(shí)驗(yàn)是一種重要的教學(xué)手段。學(xué)生通過實(shí)驗(yàn)可以加深對所學(xué)知識的理解,增強(qiáng)學(xué)習(xí)的興趣,提高動(dòng)手能力,鍛煉在實(shí)踐中發(fā)現(xiàn)問題、分析問題、解決問題的能力。但是,近年來高校的大幅度擴(kuò)招,學(xué)生人數(shù)急劇增加,實(shí)驗(yàn)室的設(shè)備和規(guī)模已遠(yuǎn)遠(yuǎn)不能滿足教學(xué)的需要,實(shí)驗(yàn)室常規(guī)設(shè)備多已老化,有的技術(shù)落后有待更換,同時(shí)常規(guī)實(shí)驗(yàn)設(shè)備的價(jià)格高,用途單一,大量更換所需的經(jīng)費(fèi)高。又由于基礎(chǔ)實(shí)驗(yàn)室面向的專業(yè)多、任務(wù)重,實(shí)驗(yàn)室也僅能按照大綱要求做一些簡單的驗(yàn)證實(shí)驗(yàn),學(xué)生無法熟悉儀器儀表的使用,更很少有機(jī)會(huì)做設(shè)計(jì)性實(shí)驗(yàn),這對調(diào)動(dòng)學(xué)生學(xué)習(xí)的積極性,培養(yǎng)創(chuàng)造精神,加強(qiáng)實(shí)踐動(dòng)手能力都十分不利。虛擬儀器技術(shù)的出現(xiàn)不僅在測控領(lǐng)域掀起了一場革命,同時(shí)也給傳的教學(xué)實(shí)驗(yàn)研究帶來了巨大的變化?;谟?jì)算機(jī)的自動(dòng)化實(shí)驗(yàn)室大大提高了研究人員的工作效率并改進(jìn)了學(xué)生的學(xué)習(xí)方式。與以往費(fèi)時(shí)的采集數(shù)據(jù)的過程不同,現(xiàn)在,老師和同學(xué)都可以集中精力分析結(jié)果并得出結(jié)論,學(xué)生們可以將大部分時(shí)間花在實(shí)驗(yàn)工作的執(zhí)行上,而非實(shí)驗(yàn)系統(tǒng)設(shè)備的搭建中。隨著科學(xué)技術(shù)的不斷發(fā)展以及相應(yīng)學(xué)科高等教育課程教學(xué)內(nèi)容的更新,為了改善實(shí)驗(yàn)條件、改革實(shí)驗(yàn)教學(xué)方法、更新實(shí)驗(yàn)教學(xué)內(nèi)容、提高實(shí)驗(yàn)教學(xué)課程的開設(shè)水平,把虛擬儀器引入實(shí)驗(yàn)教學(xué)已成為一種必然趨勢。1.3 論文主要內(nèi)容全文共分為五章,介紹了虛擬頻率計(jì)的設(shè)計(jì)原理。運(yùn)用LabVIEW語言編寫了虛擬頻率計(jì)的應(yīng)用層程序和驅(qū)動(dòng)層程序,運(yùn)用DAQmx仿真設(shè)備對該虛擬頻率計(jì)進(jìn)行仿真分析,連接數(shù)據(jù)采集卡,進(jìn)行測量和誤差分析。第一章介紹了測控技術(shù)發(fā)展現(xiàn)狀和虛擬儀器技術(shù)的概念、特點(diǎn)和優(yōu)勢以及它的發(fā)展趨勢。第二章闡述了虛擬頻率計(jì)的設(shè)計(jì)原理,包括過零計(jì)數(shù)法測頻原理和線性插值法原理。第三章用LabVIEW語言編寫了應(yīng)用層函數(shù),完成了過零計(jì)數(shù)法測量頻率的程序框圖的設(shè)計(jì)。編寫了DAQmx驅(qū)動(dòng)層函數(shù),創(chuàng)建了DAQmx仿真設(shè)備,完成了仿真分析。第四章編寫了數(shù)據(jù)采集程序,完成了頻率測量和誤差分析。第五章為全文的的總結(jié)和展望。第2章 過零計(jì)數(shù)法測頻原理與系統(tǒng)設(shè)計(jì)第2章 過零計(jì)數(shù)法測頻原理與系統(tǒng)設(shè)計(jì)2.1過零計(jì)數(shù)法測頻原理頻率是單位時(shí)間內(nèi)的振動(dòng)次數(shù)。振動(dòng)既包括機(jī)械振動(dòng),也包括電信號的振動(dòng),其數(shù)學(xué)表達(dá)式為 (2-1)式中振動(dòng)頻率;振動(dòng)次數(shù);產(chǎn)生振動(dòng)所需要的時(shí)間。不含直流分量的正弦波每個(gè)周期內(nèi)都應(yīng)有兩個(gè)過零點(diǎn)。因此,可以根據(jù)過零點(diǎn)次數(shù)來判斷振動(dòng)次數(shù)。由于采樣時(shí)間間隔是由數(shù)據(jù)采集卡決定的,是一個(gè)確定值,所以可以得到正弦波的周期為;從而可以計(jì)算出頻率11。確定過零點(diǎn)有不同的方法:1)確定正過零點(diǎn) 對被測信號進(jìn)行數(shù)據(jù)采集,得到被測信號序列為。我們把該信號序列中上次采樣為負(fù)值、本次采樣為正值的點(diǎn)記為正過零點(diǎn),兩個(gè)正過零點(diǎn)的時(shí)間間隔為: (2-2) 式中 采樣時(shí)間隔; 兩次過零點(diǎn)時(shí)間內(nèi)采樣的次數(shù); 兩個(gè)正過零點(diǎn)之間的時(shí)間間隔,也即 (2-3)2)線性插值確定過零點(diǎn) 在相鄰兩個(gè)采樣時(shí)刻的采樣值由負(fù)變正或由正變負(fù)時(shí),在之間存在信號的過零點(diǎn),如圖2-1所示。根據(jù)線性插值公式可求得過零點(diǎn)的時(shí)間坐標(biāo)值為: (2-4) 式中:為時(shí)刻的采樣值;為時(shí)刻的采樣值。同理,可求出第2個(gè)過零點(diǎn),第3個(gè)過零點(diǎn)的計(jì)算公式為: (2-5)式中: 為時(shí)刻的采樣值;為時(shí)刻的采樣值。 圖2-1 用線性插值法求過零點(diǎn)于是可得信號的頻率計(jì)算式為 (2-6)將式(2-4),(2-5)代入式(2-6)整理得 (2-7)式中: 為采樣頻率; 為采樣間隔; 為在時(shí)間內(nèi)的采樣數(shù)。 從式(2-7)與(2-2)比較來看,當(dāng)認(rèn)為時(shí),式(2-7)與式(2-2)完全相同。2.2 線性插值法 在實(shí)際問題及科學(xué)研究中,因素之間往往存在著函數(shù)關(guān)系,然而,這種關(guān)系經(jīng)常很難有明顯的解析表達(dá),通常只是由觀察與測試得到一些離散數(shù)值。有時(shí),即使 給出了解析表達(dá)式,卻由于表達(dá)式過于復(fù)雜,不僅使用不便,而且不易于進(jìn)行計(jì)算與理論分析。解決這類問題的方法有兩種:一種是插值法,另一種是擬合法。插值法是一種古老的數(shù)學(xué)方法,它來自生產(chǎn)實(shí)踐,早在一千多年前,我國科學(xué)家在研究歷法上就應(yīng)用了線性插值與二次插值,但它的基本理論卻是在微積分產(chǎn)生之后才逐漸完善的,其應(yīng)用也日益增多,特別是在計(jì)算機(jī)軟件中,許多庫函數(shù),如, 等的計(jì)算實(shí)際上歸結(jié)于它的逼近函數(shù)的計(jì)算。逼近函數(shù)一般為只含有算術(shù)運(yùn)算的簡單函數(shù),如多項(xiàng)式、有理分式(即多項(xiàng)式的商)。在工程實(shí)際問題當(dāng)中,我們也經(jīng)常會(huì)碰到諸如此類的函數(shù)值計(jì)算問題。被計(jì)算的函數(shù)有時(shí)不容易直接計(jì)算,如表達(dá)式過于復(fù)雜或者只能通過某種手段獲取該函數(shù)在某些點(diǎn)處的函數(shù)值信息或者導(dǎo)數(shù)值信息等。因此,我們希望能用一個(gè)簡單函數(shù)逼近被計(jì)算函數(shù),然后用該簡單函數(shù)的函數(shù)值近似替代被計(jì)算函數(shù)的函數(shù)值。這種方法就叫插值逼近或者插值法。插值法要求給出函數(shù)的一個(gè)函數(shù)的函數(shù)表,然后選定一種簡單的函數(shù)形式,比如多項(xiàng)式、分段線性函數(shù)及三角多項(xiàng)式等,通過已知的函數(shù)表來確定一個(gè)簡單的函數(shù)作為的近似,概括地說,就是用簡單函數(shù)為離散數(shù)組建立連續(xù)模型12。許多實(shí)際問題都用函數(shù)來表示內(nèi)在規(guī)律的數(shù)量關(guān)系,其中相當(dāng)一部分函數(shù)是通過實(shí)驗(yàn)或觀測得到的。雖然在上是存在的,有的還是連續(xù)的,但只能給出上的一系列點(diǎn)的函數(shù)值,這只是一張函數(shù)表,有的函數(shù)雖然有解析表達(dá)式,但由于計(jì)算復(fù)雜,使用不方便,通常也造一個(gè)函數(shù)表,如大家熟悉的三角函數(shù)表、對數(shù)表等。為了研究函數(shù)的變化規(guī)律,往往需要求出不在表上的函數(shù)值。因此,我們希望可以根據(jù)給定的函數(shù)表做一個(gè)既能反映函數(shù)的特性,又便于計(jì)算的簡單函數(shù)。用近似。通常選一類簡單的函數(shù)作為,并使對成立。這樣確定下來的就是我們希望的插值函數(shù),此即為插值法。圖2-2 線性插值法線性插值是數(shù)學(xué)、計(jì)算機(jī)圖形學(xué)等領(lǐng)域廣泛使用的一種簡單插值方法,如圖2-2所示。假設(shè)我們已知坐標(biāo)與,要得到區(qū)間內(nèi)某一位置在直線上的值。根據(jù)圖中所示,我們得到假設(shè)方程兩邊的值為,那么這個(gè)值就是插值系數(shù)從到的距離與從到距離的比值。由于值已知,所以可以從公式得到的值 (2-8)同樣, (2-9)這樣,在代數(shù)上就可以表示成為: (2-10)或者: (2-11)這樣通過就可以直接得到。實(shí)際上,即使不在到之間并且也不是介于0到1之間,這個(gè)公式也是成立的。在這種情況下,這種方法叫作線性外插。已知求的過程與以上過程相同,只是與要進(jìn)行交換。2.3 虛擬頻率計(jì)系統(tǒng)設(shè)計(jì)1數(shù)據(jù)采集卡的選擇NI的數(shù)據(jù)采集卡價(jià)格昂貴,不適合在教學(xué)實(shí)踐中推廣,所以本次設(shè)計(jì)選擇非NI的數(shù)據(jù)采集卡。根據(jù)數(shù)據(jù)采集卡的采樣頻率、采樣方法、分辨率等性能指標(biāo),選擇合適的數(shù)據(jù)采集卡。2數(shù)據(jù)采集卡驅(qū)動(dòng)程序設(shè)計(jì)根據(jù)選擇的數(shù)據(jù)采集卡,編寫數(shù)據(jù)采集卡驅(qū)動(dòng)程序,使數(shù)據(jù)采集卡與LabVIEW連接。3頻率計(jì)算程序設(shè)計(jì)數(shù)據(jù)采集卡與計(jì)算機(jī)相連,啟動(dòng)數(shù)據(jù)采集卡,進(jìn)行數(shù)據(jù)采集、A/D轉(zhuǎn)換后將得到的一維數(shù)組存入指定存儲單元,在LabVIEW中編寫程序,從得到的一維數(shù)組中確認(rèn)第1,3過零點(diǎn)前后的采樣值。設(shè)計(jì)原理中提供的方法,在LabVIEW中編寫計(jì)算頻率的程序,在前面板上顯示測量結(jié)果。程序流程圖設(shè)計(jì)如圖2-3所示。圖2-3 虛擬頻率計(jì)主程序流程圖2.4小結(jié)本章是本論文中重要的一章,它展現(xiàn)了作者對整個(gè)題目研究的核心內(nèi)容,是基于前一章的理論分析后,在仿真軟件中實(shí)踐出的結(jié)果,并進(jìn)行了詳細(xì)的闡述和分析,主要包括了以下兩個(gè)內(nèi)容:1)過零計(jì)數(shù)法測頻原理。2)線性插值法原理。第3章 應(yīng)用層程序設(shè)計(jì)與仿真第3章 應(yīng)用層程序設(shè)計(jì)與仿真軟件是虛擬儀器的關(guān)鍵。設(shè)計(jì)一個(gè)虛擬儀器系統(tǒng),在硬件平臺確定之后,就可以通過設(shè)計(jì)不同的軟件,實(shí)現(xiàn)不同的儀器功能。在設(shè)計(jì)、實(shí)現(xiàn)虛擬儀器的軟件系統(tǒng)時(shí),需要考慮眾多因素,如硬件需求、計(jì)算機(jī)硬件、操作系統(tǒng);軟件是否建立在開放的結(jié)構(gòu)上,是否需要編程經(jīng)驗(yàn),利用此軟件程序是否能在不同的計(jì)算機(jī)平臺上移植,將來能否方便的擴(kuò)展虛擬儀器的功能等。由于選用專用的開發(fā)軟件,必須具有一定的儀器以及數(shù)據(jù)采集設(shè)備配合使用13。3.1 程序模塊化設(shè)計(jì)概述數(shù)據(jù)采集系統(tǒng)的性能在很大程度上取決于其應(yīng)用軟件的研究與開發(fā),所以在明確了系統(tǒng)設(shè)計(jì)目標(biāo)之后,應(yīng)該采用好的程序開發(fā)方法,如結(jié)構(gòu)化設(shè)計(jì)方法、模塊化思想、多線程以及軟件系統(tǒng)的評價(jià)標(biāo)準(zhǔn)等等。3.1.1 程序設(shè)計(jì)的模塊化原則模塊化結(jié)構(gòu)是所有設(shè)計(jì)良好的軟件系統(tǒng)的基本特點(diǎn),任何一個(gè)大的程序系統(tǒng),總是由若干功能相對獨(dú)立的模塊組成。好的軟件結(jié)構(gòu)應(yīng)體現(xiàn)自頂向下的控制方式,模塊之間的控制表現(xiàn)為統(tǒng)帥和從屬的關(guān)系。信息抽象與信息隱含是模塊的基本特征。模塊(Module)實(shí)際上反映了數(shù)據(jù)(Data)與過程(Process)的抽象。在模塊化問題求解時(shí),在最高抽象級可以采用面向問題的環(huán)境語言的抽象術(shù)語進(jìn)行描述;而在較低抽象級,則可采用過程性術(shù)語。模塊化的概念加上逐步求精的辦法,就把面向問題的術(shù)語和面向?qū)崿F(xiàn)的術(shù)語兩者結(jié)合起來。模塊獨(dú)立性有兩個(gè)定性的標(biāo)準(zhǔn)度量:即塊內(nèi)聯(lián)系(內(nèi)聚)與塊間聯(lián)系(耦合)。塊間聯(lián)系是指模塊之間的聯(lián)系,塊間聯(lián)系越小,模塊獨(dú)立性越高。塊內(nèi)聯(lián)系是指模塊內(nèi)部各部分(語句與語句段)之間的聯(lián)系。一個(gè)模塊的塊內(nèi)聯(lián)系大,模塊獨(dú)立性會(huì)提高。好的模塊結(jié)構(gòu),塊間聯(lián)系應(yīng)盡可能小,塊內(nèi)聯(lián)系應(yīng)盡可能大14。3.1.2 軟件系統(tǒng)的模塊化設(shè)計(jì)原則為使研制出的軟件具有良好的可靠性、易維護(hù)性、易擴(kuò)充性及易裝卸性,軟件設(shè)計(jì)應(yīng)遵循規(guī)范化的模塊化設(shè)計(jì)原則。1)自頂向下逐步求精的設(shè)計(jì)方法軟件設(shè)計(jì)往往在開始時(shí)不了解問題的全部細(xì)節(jié),只能對問題做出全局性的決策,即設(shè)計(jì)表征解決問題一般策略的抽象算法。對抽象算法做進(jìn)一步求精,進(jìn)入下一層抽象。在求精過程的每一步,抽象概念(語句或數(shù)據(jù))都被精細(xì)化。2)根據(jù)邏輯功能劃分物理模塊模塊的分解:消除重復(fù)的功能部分,使得模塊的塊內(nèi)聯(lián)系較高,塊間聯(lián)系較低。模塊的合并。模塊的復(fù)制。3)模塊的作用范圍應(yīng)處在模塊的控制范圍之內(nèi)模塊的作用范圍是指模塊內(nèi)判定影響的范圍。只要某模塊中含有依賴于某種判定操作,則該模塊就處于該判定的作用范圍之內(nèi)。4)依據(jù)邏輯功能確定模塊之間的調(diào)用關(guān)系模塊之間的調(diào)用與被調(diào)用,決定于模塊各自的邏輯功能,因而對模塊的扇入扇出并無加以限制的必要。一般來講,底層模塊的扇入較高,頂層模塊的扇出較高。5)模塊接口應(yīng)保持簡明降低模塊接口的復(fù)雜性,是模塊設(shè)計(jì)中必須考慮的問題。保持模塊接口的簡明,一方面須減少模塊間傳遞的信息量,更重要的是使所傳遞的必要信息具有明確的邏輯含義。6)模塊應(yīng)保持單入口性質(zhì)單入口模塊,易于理解。由于副作用的減少,可以降低錯(cuò)誤的發(fā)生率。模塊的出口可以有多個(gè),但均應(yīng)具有明確的邏輯含義。7)模塊結(jié)構(gòu)增加中間判斷層次,提高可擴(kuò)充性3.2 虛擬頻率計(jì)應(yīng)用層程序設(shè)計(jì)3.2.1 LabVIEW編程語言的組成部分所有的LabVIEW應(yīng)用程序,即虛擬儀器(VI),它包括前面板(Front Panel)、流程圖(Block Diagram)以及圖標(biāo)/連結(jié)器(Icon/Connector)三部分15。1)前面板前面板是VI的監(jiān)護(hù)室用戶接口,與真實(shí)物理儀器面板相似,前面板可以包含旋鈕、刻度盤、開關(guān)、圖表和其他界面工具,允許用戶通過鍵盤或者鼠標(biāo)獲取數(shù)據(jù)顯示結(jié)果。2)流程圖流程圖提供VI的圖形化源程序。在流程圖中對VI編程,以控制和操縱定義在前面板上的輸入和輸出功能。流程圖中包括前面板上的控件連線端子,還有一些前面板上沒有,但編程必須有的東西,例如函數(shù)、結(jié)構(gòu)和連線等。如果將VI與傳統(tǒng)儀器相比較,那么前面板上的控件對應(yīng)的就是傳統(tǒng)儀器上的按鈕、顯示屏等控件,而流程圖上的連線端子相當(dāng)于傳統(tǒng)儀器箱內(nèi)的硬件電路。在許多情況下,使用VI可以仿真?zhèn)鹘y(tǒng)儀器,不僅在屏幕上出現(xiàn)一個(gè)惟標(biāo)準(zhǔn)儀器面板,而且其功能也與傳統(tǒng)標(biāo)準(zhǔn)儀器相差無幾。這種設(shè)計(jì)思想的優(yōu)點(diǎn)體現(xiàn)在兩方面: 類似流程圖的設(shè)計(jì)思想很容易被工程人員接受和掌握,特別是那些沒有很多程序設(shè)計(jì)經(jīng)驗(yàn)的工程人員。 設(shè)計(jì)的思路和運(yùn)行過程清晰而且直觀。如通過使用數(shù)據(jù)探針、高亮執(zhí)行調(diào)試等多種方法,程序以較慢的速度運(yùn)行,使沒有執(zhí)行的代碼顯示灰色,執(zhí)行后的代碼會(huì)高亮顯示,同時(shí)在線顯示數(shù)據(jù)流線上的數(shù)據(jù)值,完全跟蹤數(shù)據(jù)流的運(yùn)行。3)圖標(biāo)/連接設(shè)計(jì)這部分的設(shè)計(jì)突出體現(xiàn)了虛擬儀器模塊化程序設(shè)計(jì)的思想。在設(shè)計(jì)大型自動(dòng)檢測系統(tǒng)時(shí)一步完成一個(gè)復(fù)雜系統(tǒng)的設(shè)計(jì)是相當(dāng)有難度的。而在LabVIEW中提供的圖標(biāo)/連接工具正是為實(shí)現(xiàn)模塊化設(shè)計(jì)而準(zhǔn)備的??砂岩粋€(gè)復(fù)雜自動(dòng)檢測系統(tǒng)分為多個(gè)子系統(tǒng),都可完成一定的功能。這樣設(shè)計(jì)的優(yōu)點(diǎn)體現(xiàn)在如下幾方面:把一個(gè)復(fù)雜自動(dòng)檢測系統(tǒng)分為多個(gè)子系統(tǒng),程序設(shè)計(jì)思路清晰,給設(shè)計(jì)者調(diào)試程序帶來了諸多的方便。同時(shí)也對于將來系統(tǒng)的維護(hù)提供了便利。一個(gè)復(fù)雜自動(dòng)檢測系統(tǒng)分為多個(gè)子系統(tǒng),每一個(gè)子系統(tǒng)都是一個(gè)完整的功能模塊,這樣把測試功能細(xì)節(jié)化,便于實(shí)現(xiàn)軟件復(fù)用,大大節(jié)省軟件研發(fā)周期,提高系統(tǒng)設(shè)計(jì)的可靠性。3.2.2 程序設(shè)計(jì)流程圖 根據(jù)實(shí)驗(yàn)原理中用線性插值法確定過零點(diǎn)的方法,先要找到采集到的數(shù)據(jù)中離由正到負(fù)過零點(diǎn)前后兩個(gè)點(diǎn)。將采集到的數(shù)組送到For循環(huán)中,逐個(gè)比較其與零的大小關(guān)系,如果第個(gè)數(shù)大于零,那么再比較第個(gè)數(shù),如果第個(gè)數(shù)小于或等于零,則滿足條件,將存入新的數(shù)組,循環(huán)完成時(shí)可得到由組成的一個(gè)新數(shù)組。用該數(shù)組中的數(shù)索引采集到的數(shù)組,就可以找到數(shù)據(jù)中由正到負(fù)過零點(diǎn)前后兩個(gè)采樣點(diǎn),根據(jù)式(2-7)編寫頻率計(jì)算程序,得到信號源的頻率。確定過由正到負(fù)過零點(diǎn)前后兩個(gè)采樣點(diǎn)程序流程圖程序流程圖如圖3-1所示。圖3-1 確定過由正到負(fù)過零點(diǎn)前后兩個(gè)采樣點(diǎn)程序流程圖3.2.3 應(yīng)用層程序設(shè)計(jì)3.2.3.1 LabVIEW名詞和函數(shù)程序設(shè)計(jì)之前,先介紹LabVIEW的幾個(gè)名詞和函數(shù)。1)數(shù)組 在LabVIEW中,數(shù)組中的元素是同一類型的數(shù)據(jù)集合,而且必須都是控件或者都是指示控件。這些數(shù)據(jù)的類型可以是數(shù)值型、布爾型、字符串型等。一個(gè)數(shù)組可以是一維、二維或者多維,每維最多可以有個(gè)元素。數(shù)組的索引是從0開始的,范圍介于0到之間,其中是數(shù)組中元素的個(gè)數(shù)。2)For循環(huán)For循環(huán)將連接到總數(shù)N接線端的值作為執(zhí)行次數(shù)的子程序框圖。計(jì)數(shù)接線端可提供當(dāng)前的循環(huán)總數(shù),取值范圍是0到。創(chuàng)建For循環(huán)后,可使用移位寄存器將值從上一個(gè)循環(huán)傳遞到下一個(gè)循環(huán)。如將數(shù)組連接到For循環(huán),啟用自動(dòng)索引可讀取和處理數(shù)組中的各個(gè)元素。也可配置For循環(huán)使其返回由循環(huán)生成的值所組成的數(shù)組,啟用啟用自動(dòng)索引。循環(huán)框外面的數(shù)據(jù)可以通過數(shù)據(jù)通道進(jìn)入循環(huán)框內(nèi),同樣,循環(huán)框內(nèi)的數(shù)據(jù)也可以通過數(shù)據(jù)通道傳送到循環(huán)框外。數(shù)據(jù)通道是用連線工具連接循環(huán)框內(nèi)外的數(shù)據(jù)端口時(shí),在框架上自動(dòng)形成方形通道圖標(biāo),圖標(biāo)空心表明此時(shí)數(shù)據(jù)通道具有自動(dòng)索引功能,實(shí)心圖標(biāo)不能索引,F(xiàn)or循環(huán)的數(shù)據(jù)通道默認(rèn)為能自動(dòng)索16。本次設(shè)計(jì)中將采集到的數(shù)組送入For循環(huán)進(jìn)行處理。For循環(huán)結(jié)構(gòu)如圖3-2所示。 圖3-2 For循環(huán)結(jié)構(gòu) 圖3-3 移位寄存器函數(shù)3)移位寄存器 移位寄存器可用于將上一次循環(huán)的值傳遞至下一次循環(huán)。移位寄存器以一對接線端的形式出現(xiàn),分別位于循環(huán)兩側(cè)的邊框上,位置相對。右側(cè)接線端含有一個(gè)向上的箭頭,用于存儲每次循環(huán)結(jié)束時(shí)的數(shù)據(jù)。LabVIEW將數(shù)據(jù)從移位寄存器右側(cè)接線端傳遞到左側(cè)接線端。循環(huán)將使用左側(cè)接線端的數(shù)據(jù)作為下一此循環(huán)的初始值。該過程在所有循環(huán)執(zhí)行完畢后結(jié)束。循環(huán)執(zhí)行后,右側(cè)接線端將返回移位寄存器保存的值。移位寄存器可以傳遞任何數(shù)據(jù)類型,并和與其連接的第一個(gè)對象的數(shù)據(jù)類型自動(dòng)保持一致。連接到各個(gè)移位寄存器接線端的數(shù)據(jù)必須屬于同一種數(shù)據(jù)類型。循環(huán)中可添加多個(gè)移位寄存器。如循環(huán)中的多個(gè)操作都需使用之上一次循環(huán)的值,可以通過多個(gè)移位寄存器保存結(jié)構(gòu)中不同操作的數(shù)據(jù)值。本次設(shè)計(jì)中移位寄存器傳遞的是一個(gè)初始化的數(shù)組,將滿足條件的存入到該數(shù)組一次循環(huán)時(shí),將該數(shù)組傳遞到左側(cè)接線端,作為下一次循環(huán)的初始值。移位寄存器函數(shù)如圖3-3所示。 4)條件結(jié)構(gòu)條件結(jié)構(gòu)包括一個(gè)或多個(gè)子程序框圖,或分支,結(jié)構(gòu)執(zhí)行時(shí),僅有一個(gè)子程序框圖或分支在執(zhí)行。連接至選擇器接線端的值可以是布爾、字符串、整數(shù),或枚舉類型,用于確定要執(zhí)行的分支。右鍵單擊結(jié)構(gòu)邊框,可添加或刪除分支??墒褂脴?biāo)簽工具來輸入條件選擇器標(biāo)簽的值,并配置每個(gè)分支處理的值。當(dāng)控制條件為布爾型數(shù)值時(shí),有Ture和False兩種選擇框架,這是LabVIEW默認(rèn)的選擇框架方式。當(dāng)控制條件為數(shù)值型時(shí),選擇器標(biāo)簽值為整數(shù)0、1、2,選擇框架的個(gè)數(shù)可根據(jù)實(shí)際需要確定,最多可包含個(gè)條件。本次設(shè)計(jì)中如果有滿足條件的i則將其存入數(shù)組中,如果沒有,進(jìn)行下一次循環(huán)。條件結(jié)構(gòu)面板如圖3-4所示。 圖3-4 條件結(jié)構(gòu) 圖3-5 初始化數(shù)組5)初始化數(shù)組該函數(shù)的作用是創(chuàng)建維數(shù)組,其中的每個(gè)元素都被初始化為“元素”的值。通過定位工具可調(diào)整函數(shù)的大小,增加輸出數(shù)組的維數(shù)。連線板可顯示該多態(tài)函數(shù)的默認(rèn)數(shù)據(jù)類型。“元素”是用于初始化“初始化的數(shù)組”中所有元素的值?!霸亍笨梢允侨我忸愋偷臉?biāo)量數(shù)據(jù)?!熬S數(shù)大小”須為數(shù)值。如維數(shù)大小為0,函數(shù)將創(chuàng)建空數(shù)組。維數(shù)組的“維數(shù)大小”接線端必須為?!俺跏蓟臄?shù)組”的數(shù)據(jù)類型與“元素”一致17。本次設(shè)計(jì)中,初始化一個(gè)數(shù)組,用來存放滿足條件的。初始化數(shù)組函數(shù)面板如圖3-5所示。6)索引數(shù)組索引數(shù)組函數(shù)通過設(shè)定索引值得到 維數(shù)組的元素或子數(shù)組,該函數(shù)功能為訪問數(shù)組中的某個(gè)元素或子數(shù)組。數(shù)組是一個(gè)一維數(shù)組,索引功能為設(shè)定某一具體數(shù)值,索引后的結(jié)果.如果是數(shù)組的某一元素。如果數(shù)組是一個(gè)二維數(shù)組,則索引功能增添為索引行和索引列,索引后的結(jié)果是數(shù)組的某一子數(shù)組。本次設(shè)計(jì)中,用該函數(shù)來索引找到的離過零點(diǎn)前后兩個(gè)點(diǎn)后計(jì)算頻率。索引數(shù)組函數(shù)面板如圖3-6所示。圖3-6 索引數(shù)組3.2.3.1 應(yīng)用層程序設(shè)計(jì)根據(jù)程序流程圖3-1,從數(shù)據(jù)采集卡中讀取關(guān)于的一維數(shù)組,讀取的采樣數(shù)為個(gè),將一維數(shù)組送入循環(huán)中求得滿足條件的,所以循環(huán)次數(shù)為次。初始化一個(gè)一維數(shù)組,將滿足條件的的索引存入該初始化的數(shù)組。這里用條件結(jié)構(gòu)來判斷是否滿足條件,如果滿足,將存入初始化的數(shù)組,不滿足,則進(jìn)行下一次循環(huán)。循環(huán)結(jié)束后得到一個(gè)關(guān)于的新的一維數(shù)組。確定過由正到負(fù)過零點(diǎn)前后兩個(gè)采樣點(diǎn)程序框圖如圖所示3-7所示。圖3-7 確定過由正到負(fù)過零點(diǎn)前后兩個(gè)采樣點(diǎn)程序框圖用關(guān)于的一維數(shù)組中兩個(gè)連續(xù)的元素索引關(guān)于的一維數(shù)組,就得到了和,關(guān)于的一維數(shù)組中,的下一個(gè)數(shù)就是,的下一個(gè)數(shù)就是。為在時(shí)間內(nèi)的采樣數(shù),關(guān)于的一維數(shù)組中兩個(gè)連續(xù)的元素之間的差就是時(shí)間內(nèi)的采樣數(shù)。根據(jù)實(shí)驗(yàn)原理,采樣頻率由數(shù)據(jù)采集卡確定的,是一個(gè)已知的定量,此時(shí)如果根據(jù)公式(2-7)將采樣頻率直接代入計(jì)算,就可以得到正弦波的頻率。頻率計(jì)算程序框圖如圖3-8(a)所示。 圖3-8(a) 頻率計(jì)算程序框圖為了設(shè)計(jì)結(jié)果更加精確,這里將圖3-8(a)的程序放入循環(huán),可以計(jì)算多次求平均值。用“數(shù)組大小”函數(shù)求關(guān)于的一維數(shù)組的大小,用作循環(huán)次數(shù)。初始化一個(gè)數(shù)組,用來存放每次循環(huán)后計(jì)算得到的頻率。這里用移位寄存器將關(guān)于頻率的一維數(shù)組函數(shù)保留下來。最后用一維數(shù)組求和函數(shù)求關(guān)于頻率的一維數(shù)組的元素的和,求平均值,得到頻率。頻率計(jì)算程序框圖如圖3-8(b)所示。圖3-8(b) 頻率計(jì)算程序框圖3.3 DAQmx仿真3.3.1 NI數(shù)據(jù)采集卡的驅(qū)動(dòng)軟件在基于DAQ插卡的虛擬儀器系統(tǒng)中,驅(qū)動(dòng)軟件起著非常重要的作用。他將DAQ插卡和計(jì)算機(jī)有效的融合成為一個(gè)DAQ儀器系統(tǒng),完整的實(shí)現(xiàn)了儀器的數(shù)據(jù)采集、分析處理和顯示輸出等三大功能。目前,大多數(shù)DAQ插卡生產(chǎn)商都向用戶提供了驅(qū)動(dòng)軟件或驅(qū)動(dòng)程序(驅(qū)動(dòng)函數(shù)庫),驅(qū)動(dòng)程序?qū)⒌讓拥?、?fù)雜的硬件操作隱蔽起來,為用戶提供了更方便的軟件調(diào)用接口,應(yīng)用程序只需要調(diào)用隨DAQ插卡提供方的現(xiàn)成驅(qū)動(dòng)函數(shù)即可。同時(shí)還提供書記采集演示程序及其源代碼。提到虛擬儀器軟件的組成。大多數(shù)人首先想到的就是應(yīng)用程序?qū)?,就是主要的開發(fā)環(huán)境。它包括諸如LabVIEW、LabWindows/CVI(ANSIC)和Measurement Studio(Visual Studio 編程語言)之類的軟件。測試執(zhí)行層結(jié)合了應(yīng)用程序?qū)铀_發(fā)的功能。接下去一層通常很容易被忽視,但它對于軟件開發(fā)效率來說卻是至關(guān)重要的。測和控制服務(wù)層包括與硬件通信的驅(qū)動(dòng)程序。測量和控制服務(wù)必須能訪問并發(fā)揮硬件功能和性能,它們也必須與所有其他的驅(qū)動(dòng)和已成為解決方案一部分的眾多模塊化I/O 協(xié)同工作18。數(shù)據(jù)采集(DAQ)是虛擬儀器獲取信息必不可少的基本功能,DAQ是LabVIEW的核心,使用LabVIEW必須要掌握DAQ軟件的開發(fā)和使用。NI推出LabVIEW7.0后,將DAQ分為傳統(tǒng)DAQ和DAQmx,使得原本十分強(qiáng)大的DAQ功能變得更加完善。它包含有很多DAQ卡的驅(qū)動(dòng),分別有各自的API函數(shù)。NI在20世紀(jì)90年代首次發(fā)布了傳統(tǒng)NI-DAQ驅(qū)動(dòng)。傳統(tǒng)NI-DAQ通過提供對各種設(shè)備的擴(kuò)展功能對已有的DAQ庫進(jìn)行了許多改進(jìn),這些改進(jìn)包括雙緩沖采集、對特定傳感器類型提供內(nèi)置標(biāo)度,例如熱電偶和應(yīng)變計(jì)、信號調(diào)理、以及一個(gè)單一的且可與多種設(shè)備和操作系統(tǒng)(OS)協(xié)同工作的函數(shù)庫。90年代后期,NI-DAQ團(tuán)隊(duì)意識到保持API與以前版本的兼容性的這個(gè)要求增加了向傳統(tǒng)NI-DAQ添加新特性和設(shè)備的難度。此外,在長期的發(fā)展過程中,傳統(tǒng)NI-DAQ的API產(chǎn)生了許多需要解決的問題。NI-DAQ開發(fā)者難以直觀地?cái)U(kuò)展API而且難以優(yōu)化不斷增長的客戶應(yīng)用范圍。因此NI認(rèn)為一個(gè)全新的API設(shè)計(jì)和體系結(jié)構(gòu)可以幫助NI-DAQ開發(fā)者更輕松地添加新特性和新設(shè)備,解決許多現(xiàn)有的驅(qū)動(dòng)問題,并且同時(shí)可以優(yōu)化性能。DAQmx驅(qū)動(dòng)軟件功能遠(yuǎn)強(qiáng)于基本的數(shù)據(jù)采集驅(qū)動(dòng),它在數(shù)據(jù)采集和控制應(yīng)用的開發(fā)中,體現(xiàn)出更高的效率和性能。DAQmx控制DAQ系統(tǒng)(包括NI信號調(diào)理設(shè)備)的每一方面,從配置,在LabVIEW中編程,直到低層操作系統(tǒng)和設(shè)備控制。通過具有即測即用功能的虛擬通道和DAQ助手(DAQ Assistant)快速收集實(shí)際數(shù)據(jù)。利用測量VI、函數(shù)、數(shù)據(jù)類型和分析功能集成,建立應(yīng)用程序。借助優(yōu)化的DMA數(shù)據(jù)傳輸和單點(diǎn)I/O,測量更快、更穩(wěn)定19。3.3.2 DAQmx驅(qū)動(dòng)函數(shù)運(yùn)用DAQmx的VI和DAQ助手,建立模擬設(shè)備,通過模擬設(shè)備產(chǎn)生正弦波,編寫數(shù)據(jù)采集通道,進(jìn)行頻率測量,并和LabVIEW自帶的頻率測量函數(shù)相比較。3.3.2.1 DAQmx驅(qū)動(dòng)函數(shù)介紹介紹函數(shù)之前,先明確幾個(gè)名詞:物理通道:連接被測信號的實(shí)際端子(對差分輸入方式而言,每個(gè)物理通道對應(yīng)兩個(gè)端子)。虛擬通道:是一組屬性設(shè)置的集合,包含虛擬通道名、對應(yīng)的物理通道、輸入接線方式(差分、RSE、NRSE)、輸入范圍、縮放比例等。虛擬通道分為兩種:局部和全局虛擬通道。局部虛擬通道。局部虛擬通道僅存在于某個(gè)DAQmx定義任務(wù)中;而全局虛擬通道可以長期保存在MAX中且可被多個(gè)任務(wù)所使用。DAQmx任務(wù):它是一個(gè)或多個(gè)虛擬通道的集合,此外,它還包含了定時(shí)、觸發(fā)等屬性。它代表了所要實(shí)施的一次信號測量或信號的發(fā)生操作。DAQmx任務(wù)分為兩種:一種是獨(dú)立于程序而存在、可以被各個(gè)程序所使用,且可長期保存到的任務(wù)。另一種是僅存在于某程序使用的所謂臨時(shí)任20。1)DAQmx數(shù)據(jù)采集選板。DAQmx所有的VI都位于All Functions模板的NI Measurement子模板的DAQmxData Acquistion子模板內(nèi),如圖3-9所示。 圖3-9 DAQmx數(shù)據(jù)采集選板 圖3-10 DAQ Assistant選板2)DAQ助手由于DAQmx將傳統(tǒng)DAQ VI進(jìn)行了整合,因此他的VI雖然總數(shù)上精簡很多,但數(shù)量數(shù)上仍然相當(dāng)可觀,NI公司由此專門設(shè)計(jì)了圖形化的設(shè)置工具DAQ Assistant,用于簡化用戶操作??梢栽贒AQmx-Data Acquisition子模板內(nèi)選擇DAQ Assistant,如圖3-10所示。DAQ助手可通過圖形化界面讓用戶交互式地創(chuàng)建、編輯、運(yùn)行NI-DAQmx虛擬通道和任務(wù)。每個(gè)NI-DAQmx虛擬通道由DAQ設(shè)備上的一個(gè)物理通道以及該物理通道的配置信息,比如輸入范圍和自定義縮放。一個(gè)NI-DAQmx任務(wù)就是一個(gè)包含虛擬通道、定時(shí)、觸發(fā)信息、以及其他與采集和生成相關(guān)的屬性集合21。DAQ助手函數(shù)面板如圖3-11所示。3)NI-DAQmx虛擬通道創(chuàng)建NI-DAQmx虛擬通道創(chuàng)建函數(shù)可以創(chuàng)建一個(gè)虛擬通道并將它添加至任務(wù),也可用于創(chuàng)建多個(gè)虛擬通道,并將它們都添加至一個(gè)任務(wù)中。如果沒有指定某個(gè)任務(wù),則該函數(shù)自動(dòng)創(chuàng)建一個(gè)任務(wù)。NI-DAQmx虛擬通道創(chuàng)建函數(shù)包含無數(shù)個(gè)的例程,這些例程對應(yīng)虛擬通道執(zhí)行的特定測量或生成。NI-DAQmx虛擬通道創(chuàng)建函數(shù)面板如圖3-12所示。 圖3-11 DAQ助手 圖3-12 NI-DAQmx虛擬通道創(chuàng)建4)NI-DAQmx觸發(fā) NI-DAQmx觸發(fā)函數(shù)可用于對觸發(fā)進(jìn)行配置來執(zhí)行指定操作。最常用的操作是開始觸發(fā)和參考觸發(fā)。開始觸發(fā)用于啟動(dòng)采集或生成,參考觸發(fā)則用于在一組采集樣本中創(chuàng)建預(yù)觸發(fā)數(shù)據(jù)結(jié)束后和后觸發(fā)數(shù)據(jù)開始前的位置??蓪@兩個(gè)觸發(fā)進(jìn)行配置,使其發(fā)生在數(shù)字邊沿、模擬邊沿、或模擬信號進(jìn)入或離開窗口時(shí)。NI-DAQmx觸發(fā)函數(shù)面板如圖3-13所示。5)NI-DAQmx定時(shí)NI-DAQmx定時(shí)函數(shù)用于對硬件定時(shí)的數(shù)據(jù)采集操作進(jìn)行定時(shí)配置,包括指定操作是連續(xù)執(zhí)行還是有限執(zhí)行、選擇采集或生成的樣本數(shù)量以進(jìn)行有限操作、以及需要時(shí)創(chuàng)建緩沖區(qū)。對于需要采樣定時(shí)(模擬輸入,模擬輸出,計(jì)數(shù)器)的操作,NI-DAQmx定時(shí)函數(shù)的采樣時(shí)鐘例程可用于設(shè)置采樣時(shí)鐘源和采樣速率,采樣時(shí)鐘源可以是內(nèi)部也可以是外部的信號源。采樣時(shí)鐘能夠控制采集或生成樣本的速率。每個(gè)時(shí)鐘脈沖將啟動(dòng)任務(wù)中每個(gè)虛擬通道的樣本采集或生成。NI-DAQmx定時(shí)函數(shù)面板面板如圖3-14所示。圖3-13 NI-DAQmx觸發(fā) 圖3-14 NI-DAQmx定時(shí)6)NI-DAQmx開始任務(wù)NI-DAQmx開始任務(wù)函數(shù)可以將一個(gè)任務(wù)顯式轉(zhuǎn)換成運(yùn)行狀態(tài)。在運(yùn)行狀態(tài)下,任務(wù)將進(jìn)行指定的采集和生成。當(dāng)NI-DAQmx讀取函數(shù)運(yùn)行而NI-DAQmx開始任函數(shù)未運(yùn)行時(shí),任務(wù)將隱式轉(zhuǎn)換成運(yùn)行狀態(tài)或自動(dòng)啟動(dòng)。這種隱式轉(zhuǎn)換也會(huì)發(fā)NI
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 戰(zhàn)略合作的尋求與維護(hù)計(jì)劃
- 城市交通可持續(xù)發(fā)展規(guī)劃師重點(diǎn)基礎(chǔ)知識點(diǎn)
- 法學(xué)概論知識點(diǎn)學(xué)習(xí)中的難點(diǎn)與突破試題及答案
- 2024年山東財(cái)經(jīng)大學(xué)輔導(dǎo)員考試真題
- 2024年湖北省醫(yī)療保障局下屬事業(yè)單位真題
- 陜西省山陽縣2025屆七年級數(shù)學(xué)第二學(xué)期期末統(tǒng)考試題含解析
- 2024年海南省外事辦公室下屬事業(yè)單位真題
- 2024年貴州省應(yīng)急管理廳下屬事業(yè)單位真題
- 2024年安徽省生態(tài)環(huán)境廳下屬事業(yè)單位真題
- 2024年防城港市園林管理處招聘筆試真題
- 電力調(diào)度自動(dòng)化系統(tǒng)預(yù)案
- 透析患者高鉀血癥飲食護(hù)理
- 搜索三力測試題及答案
- 2025年陜西省八年級中考三模生物試題(原卷版+解析版)
- 高分子化學(xué)材料結(jié)構(gòu)與性能試題及答案
- 特種設(shè)備操作人員培訓(xùn)管理制度
- 2025年湖北省孝感市中考物理模擬試卷(3月份)(含解析)
- 2024年四年級英語下冊 Module 4 Things we enjoy Unit 12 The ugly duckling第1課時(shí)教學(xué)實(shí)錄 牛津滬教版(三起)
- 2025年煤化工主要設(shè)備一覽及工作原理等分析
- ICU醫(yī)院感染暴發(fā)應(yīng)急處置演練方案
- 中外教育史知到課后答案智慧樹章節(jié)測試答案2025年春泰山學(xué)院
評論
0/150
提交評論