LabVIEW虛擬儀器課程設(shè)計(jì)簡(jiǎn)易計(jì)算器2_第1頁
LabVIEW虛擬儀器課程設(shè)計(jì)簡(jiǎn)易計(jì)算器2_第2頁
LabVIEW虛擬儀器課程設(shè)計(jì)簡(jiǎn)易計(jì)算器2_第3頁
LabVIEW虛擬儀器課程設(shè)計(jì)簡(jiǎn)易計(jì)算器2_第4頁
LabVIEW虛擬儀器課程設(shè)計(jì)簡(jiǎn)易計(jì)算器2_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、. . . . LabVIEW虛擬儀器課程設(shè)計(jì)論文題目: 班 級(jí):學(xué) 號(hào):姓 名:指導(dǎo)教師: 目 錄一、LabVIEW簡(jiǎn)介31、虛擬儀器(VI) 的概念32、LabVIEW 的概念33、LabVIEW 特點(diǎn)與發(fā)展34、LABVIEW的應(yīng)用領(lǐng)域4二、設(shè)計(jì)思想4三、實(shí)現(xiàn)過程51、面板按鍵的設(shè)計(jì)與感應(yīng)52、數(shù)字的鍵入(08鍵入19數(shù)字)53、“0”的輸入74、小數(shù)點(diǎn)的鍵入75、等號(hào)的鍵入86、四則運(yùn)算的連續(xù)實(shí)現(xiàn)97、C鍵清零作用與CE退出鍵108、開方鍵109、倒數(shù)鍵1010、反號(hào)鍵 1111、backspace鍵與默認(rèn)事件1112、對(duì)result的處理11四、總結(jié)13一、 LabVIEW簡(jiǎn)介1、虛

2、擬儀器(VI) 的概念虛擬儀器(virtual instrument)是基于計(jì)算機(jī)的儀器。計(jì)算機(jī)和儀器的密切結(jié)合是目前儀器發(fā)展的一個(gè)重要方向。粗略地說這種結(jié)合有兩種方式,一種是將計(jì)算機(jī)裝入儀器,其典型的例子就是所謂智能化的儀器。隨著計(jì)算機(jī)功能的日益強(qiáng)大以與其體積的日趨縮小,這類儀器功能也越來越強(qiáng)大,目前已經(jīng)出現(xiàn)含嵌入式系統(tǒng)的儀器。另一種方式是將儀器裝入計(jì)算機(jī)。以通用的計(jì)算機(jī)硬件與操作系統(tǒng)為依托,實(shí)現(xiàn)各種儀器功能。虛擬儀器主要是指這種方式。上面的框圖反映了常見的虛擬儀器方案。 虛擬儀器實(shí)際上是一個(gè)按照儀器需求組織的數(shù)據(jù)采集系統(tǒng)。虛擬儀器的研究中涉與的基礎(chǔ)理論主要有計(jì)算機(jī)數(shù)據(jù)采集和數(shù)字信號(hào)處理。目

3、前在這一領(lǐng)域,使用較為廣泛的計(jì)算機(jī)語言是美國NI公司的LabVIEW。 虛擬儀器的起源可以追溯到20世紀(jì)70年代,那時(shí)計(jì)算機(jī)測(cè)控系統(tǒng)在國防、航天等領(lǐng)域已經(jīng)有了相當(dāng)?shù)陌l(fā)展。PC機(jī)出現(xiàn)以后,儀器級(jí)的計(jì)算機(jī)化成為可能,甚至在 Microsof t公司的 Windows 誕生之前,NI公司已經(jīng)在Macintosh計(jì)算機(jī)上推出了LabVIEW2.0 以前的版本。對(duì)虛擬儀器和 LabVIEW 2長(zhǎng)期、系統(tǒng)、有效的研究開發(fā)使得該公司成為業(yè)界公認(rèn)的權(quán)威。目前LabVIEW 的最新版本為 LabVIEW2011,LabVIEW 2009 為多線程功能添加了更多特性,這種特性在 1998 年的版本 5 中被初次引

4、入。使用 LabVIEW 軟件,用戶可以借助于它提供的軟件環(huán)境,該環(huán)境由于其數(shù)據(jù)流編程特性、LabVIEW Real-Time 工具對(duì)嵌入式平臺(tái)開發(fā)的多核支持,以與自上而下的為多核而設(shè)計(jì)的軟件層次,是進(jìn)行并行編程的首選。 普通的 PC 有一些不可避免的弱點(diǎn)。用它構(gòu)建的虛擬儀器或計(jì)算機(jī)測(cè)試系統(tǒng)性能不可能太高。目前作為計(jì)算機(jī)化儀器的一個(gè)重要發(fā)展方向是制定了VXI 標(biāo)準(zhǔn),這是一種插卡式的儀器。每一種儀器是一個(gè)插卡,為了保證儀器的性能,又采用了較多的硬件,但這些卡式儀器本身都沒有面板,其面板仍然用虛擬的方式在計(jì)算機(jī)屏幕上出現(xiàn)。這些卡插入標(biāo)準(zhǔn)的 VXI 機(jī)箱,再與計(jì)算機(jī)相連,就組成了一個(gè)測(cè)試系統(tǒng)。VXI

5、 儀器價(jià)格昂貴,目前又推出了一種較為便宜的 PXI 標(biāo)準(zhǔn)儀器。2、LabVIEW 的概念與 C 和 BASIC 一樣,LabVIEW2也是通用的編程系統(tǒng),有一個(gè)完成任何編程任務(wù)的龐大函數(shù)庫。LabVIEW的函數(shù)庫包括數(shù)據(jù)采集、GPIB、串口控制、數(shù)據(jù)分析、數(shù)據(jù)顯示與數(shù)據(jù)存儲(chǔ),等等。LabVIEW2也有傳統(tǒng)的程序調(diào)試工具,如設(shè)置斷點(diǎn)、以動(dòng)畫方式顯示數(shù)據(jù)與其子程序(子VI)的結(jié)果、單步執(zhí)行等等,便于程序的調(diào)試。 LabVIEW標(biāo)志LabVIEW(Laboratory Virtual Instrument Engineering Workbench)是一種用圖標(biāo)代替文本行創(chuàng)建應(yīng)用程序的圖形化編程語言

6、。傳統(tǒng)文本編程語言根據(jù)語句和指令的先后順序決定程序執(zhí)行順序,而 LabVIEW則采用數(shù)據(jù)流編程方式,程序框圖中節(jié)點(diǎn)之間的數(shù)據(jù)流向決定了VI與函數(shù)的執(zhí)行順序。VI指虛擬儀器,是 LabVIEW的程序模塊。 LabVIEW提供很多外觀與傳統(tǒng)儀器(如示波器、萬用表)類似的控件,可用來方便地創(chuàng)建用戶界面。用戶界面在 LabVIEW中被稱為前面板。使用圖標(biāo)和連線,可以通過編程對(duì)前面板上的對(duì)象進(jìn)行控制。這就是圖形化源代碼,又稱G代碼。LabVIEW的圖形化源代碼在某種程度上類似于流程圖,因此又被稱作程序框圖代碼。3、LabVIEW 特點(diǎn)與發(fā)展虛擬儀器研究的另一個(gè)問題是各種標(biāo)準(zhǔn)儀器的互連與與計(jì)算機(jī)的連接。目

7、前使用較多的是IEEE488 或 GPIB協(xié)議。未來的儀器也應(yīng)當(dāng)是網(wǎng)絡(luò)化的。 LabVIEW(Laboratory Virtual instrument Engineering Workbench)是一種圖形化的編程語言的開發(fā)環(huán)境,它廣泛地被工業(yè)界、學(xué)術(shù)界和研究實(shí)驗(yàn)室所接受,視為一個(gè)標(biāo)準(zhǔn)的數(shù)據(jù)采集和儀器控制軟件。LabVIEW集成了與滿足 GPIB、VXI、RS-232和 RS-485 協(xié)議的硬件與數(shù)據(jù)采集卡通訊的全部功能。它還置了便于應(yīng)用TCP/IP、ActiveX等軟件標(biāo)準(zhǔn)的庫函數(shù)。這是一個(gè)功能強(qiáng)大且靈活的軟件。利用它可以方便地建立自己的虛擬儀器,其圖形化的界面使得編程與使用過程都生動(dòng)有趣

8、。 圖形化的程序語言,又稱為 “G” 語言。使用這種語言編程時(shí),基本上不寫程序代碼,取而代之的是流程圖或框圖。它盡可能利用了技術(shù)人員、科學(xué)家、工程師所熟悉的術(shù)語、圖標(biāo)和概念,因此,LabVIEW是一個(gè)面向最終用戶的工具。它可以增強(qiáng)你構(gòu)建自己的科學(xué)和工程系統(tǒng)的能力,提供了實(shí)現(xiàn)儀器編程和數(shù)據(jù)采集系統(tǒng)的便捷途徑。使用它進(jìn)行原理研究、設(shè)計(jì)、測(cè)試并實(shí)現(xiàn)儀器系統(tǒng)時(shí),可以大大提高工作效率。 利用 LabVIEW,可產(chǎn)生獨(dú)立運(yùn)行的可執(zhí)行文件,它是一個(gè)真正的32位/64位編譯器。像許多重要的軟件一樣,LabVIEW提供了Windows、UNIX、Linux、Macintosh的多種版本。 它主要的方便就是,一個(gè)

9、硬件的情況下,可以通過改變軟件,就可以實(shí)現(xiàn)不同的儀器儀表的功能,非常方便,是相當(dāng)于軟件即硬件!現(xiàn)在的圖形化主要是上層的系統(tǒng),國現(xiàn)在已經(jīng)開發(fā)出圖形化的單片機(jī)編程系統(tǒng)(支持32位的嵌入式系統(tǒng),并且可以擴(kuò)展的),不斷完善中(大家可以搜索 CPUVIEW 會(huì)有更詳細(xì)信息;) 4、LABVIEW的應(yīng)用領(lǐng)域 LABVIEW有很多優(yōu)點(diǎn),尤其是在某些特殊領(lǐng)域其特點(diǎn)尤其突出。 測(cè)試測(cè)量:LABVIEW最初就是為測(cè)試測(cè)量而設(shè)計(jì)的,因而測(cè)試測(cè)量也就是現(xiàn)在LABVIEW最廣泛的應(yīng)用領(lǐng)域。經(jīng)過多年的發(fā)展,LABVIEW在測(cè)試測(cè)量領(lǐng)域獲得了廣泛的承認(rèn)。至今,大多數(shù)主流的測(cè)試儀器、數(shù)據(jù)采集設(shè)備都擁有專門的LabVIEW驅(qū)動(dòng)

10、程序,使用LabVIEW可以非常便捷的控制這些硬件設(shè)備。同時(shí),用戶也可以十分方便地找到各種適用于測(cè)試測(cè)量領(lǐng)域的LabVIEW工具包。這些工具包幾乎覆蓋了用戶所需的所有功能,用戶在這些工具包的基礎(chǔ)上再開發(fā)程序就容易多了。有時(shí)甚至于只需簡(jiǎn)單地調(diào)用幾個(gè)工具包中的函數(shù),就可以組成一個(gè)完整的測(cè)試測(cè)量應(yīng)用程序。 控制:控制與測(cè)試是兩個(gè)相關(guān)度非常高的領(lǐng)域,從測(cè)試領(lǐng)域起家的LabVIEW自然而然地首先拓展至控制領(lǐng)域。LabVIEW擁有專門用于控制領(lǐng)域的模塊-LabVIEWDSC。除此之外,工業(yè)控制領(lǐng)域常用的設(shè)備、數(shù)據(jù)線等通常也都帶有相應(yīng)的LabVIEW驅(qū)動(dòng)程序。使用LabVIEW可以非常方便的編制各種控制程序

11、。 仿真:LabVIEW包含了多種多樣的數(shù)學(xué)運(yùn)算函數(shù),特別適合進(jìn)行模擬、仿真、原型設(shè)計(jì)等工作。在設(shè)計(jì)機(jī)電設(shè)備之前,可以現(xiàn)在計(jì)算機(jī)上用LabVIEW搭建仿真原型,驗(yàn)證設(shè)計(jì)的合理性,找到潛在的問題。在高等教育領(lǐng)域,有時(shí)如果使用LabVIEW進(jìn)行軟件模擬,就可以達(dá)到同樣的效果,使學(xué)生不致失去實(shí)踐的機(jī)會(huì)。 兒童教育:由于圖形外觀漂亮且容易吸引兒童的注意力,同時(shí)圖形比文本更容易被兒童接受和理解,所以LabVIEW非常受少年兒童的歡迎。對(duì)于沒有任何計(jì)算機(jī)知識(shí)的兒童而言,可以把LabVIEW理解成是一種特殊的“積木”:把不同的原件搭在一起,就可以實(shí)現(xiàn)自己所需的功能。著名的可編程玩具“樂高積木”使用的就是La

12、bVIEW編程語言。兒童經(jīng)過短暫的指導(dǎo)就可以利用樂高積木提供的積木搭建成各種車輛模型、機(jī)器人等,再使用LabVIEW編寫控制其運(yùn)動(dòng)和行為的程序。除了應(yīng)用于玩具,LabVIEW還有專門用于中小學(xué)生教學(xué)使用的版本。 快速開發(fā):根據(jù)筆者參與的一些項(xiàng)目統(tǒng)計(jì),完成一個(gè)功能類似的大型應(yīng)用軟件,熟練的LabVIEW程序員所需的開發(fā)時(shí)間,大概只是熟練的C程序員所需時(shí)間的1/5左右。所以,如果項(xiàng)目開發(fā)時(shí)間緊,應(yīng)該優(yōu)先考慮使用LabVIEW,以縮短開發(fā)時(shí)間。 跨平臺(tái):如果同一個(gè)程序需要運(yùn)行于多個(gè)硬件設(shè)備之上,也可以優(yōu)先考慮使用LabVIEW。LabVIEW具有良好的平臺(tái)一致性。LabVIEW的代碼不需任何修改就可

13、以運(yùn)行在常見的三大臺(tái)式機(jī)操作系統(tǒng)上:Windows、Mac OS 與 Linux。除此之外,LabVIEW還支持各種實(shí)時(shí)操作系統(tǒng)和嵌入式設(shè)備,比如常見的PDA、FPGA以與運(yùn)行VxWorks和PharLap系統(tǒng)的RT設(shè)備。二、設(shè)計(jì)思想1、創(chuàng)建3個(gè)字符串顯示控件num1,num2,num3,其中:(1)第一個(gè)輸入數(shù)據(jù)存儲(chǔ)在num1中(2)第二個(gè)輸入數(shù)據(jù)存入num2中(3)將其賦給 num3,并使num2為空,以便輸入的數(shù)據(jù)存入num2(4)所有的運(yùn)算是在num1和 num3間進(jìn)行(5)運(yùn)算結(jié)果都賦給result,同時(shí)賦給num1,用于下一次的運(yùn)算2、創(chuàng)建4個(gè)布爾開關(guān)按鈕change,change

14、1,change2,change3,其中:(1)Change的真假用來判斷是第一個(gè)數(shù)據(jù)還是第二個(gè)數(shù)據(jù)(2)change1的功能是在輸入=,運(yùn)算完后,不需要初始化即可進(jìn)行下一次運(yùn)算(3)change2用來去掉數(shù)據(jù)小數(shù)末尾的0(4)change3用來保證backspace鍵僅對(duì)輸入的數(shù)據(jù)有效,對(duì)運(yùn)算結(jié)果無效3、創(chuàng)建2個(gè)數(shù)值顯示控件type1,type2,并分別在其后面板的屬性數(shù)據(jù)類型表示法中選擇U8其中:(1)type1用來存儲(chǔ)運(yùn)算符號(hào)(2)type2用來保證連續(xù)“+、-、*、/”的正確性(3)、所有的運(yùn)算結(jié)果都賦給result(4)result經(jīng)過去零處理后得到result1,將數(shù)據(jù)顯示在前面板

15、上。三、實(shí)現(xiàn)過程1、面板按鍵的設(shè)計(jì)與感應(yīng)首先,在前面板上建立一個(gè)簇,然后在簇中再建立布爾量,復(fù)制20個(gè)以滿足鍵的需求(0-9十個(gè)數(shù)字鍵,一個(gè)小數(shù)點(diǎn)鍵,一個(gè)等號(hào)鍵,四則運(yùn)算鍵,一個(gè)開方鍵,一個(gè)倒數(shù)鍵,一個(gè)反號(hào)鍵,一個(gè)清零鍵與一個(gè)退出鍵并注意按鍵的順序)。將按鍵給值并作適當(dāng)?shù)拿阑幚碓诤竺姘暹^將簇中元素按產(chǎn)生的順序組成一個(gè)一維數(shù)組,這樣就實(shí)現(xiàn)了每個(gè)鍵與數(shù)字(0-20)之間的對(duì)應(yīng)。每次按下一個(gè)鍵時(shí),通過查找出對(duì)應(yīng)的鍵并把結(jié)果(對(duì)應(yīng)的數(shù)字)連接到一個(gè)case結(jié)構(gòu),然后執(zhí)行對(duì)應(yīng)case結(jié)構(gòu)中的程序,至此就完成了對(duì)一個(gè)鍵的感應(yīng)過程。2、數(shù)字的鍵入(08鍵入19數(shù)字)由于第一個(gè)輸入和第二個(gè)輸入所存放的地方不

16、同(第一個(gè)存于num1,第二個(gè)存于num2mun3再清空num2),所以有必要對(duì)此分開處理。創(chuàng)建2分支(真、假)的case結(jié)構(gòu)。用change控制分支的選擇:在處創(chuàng)建局部變量并轉(zhuǎn)換為讀入。由于數(shù)字的鍵入是數(shù)據(jù)輸入,change3用來保證backspace鍵僅對(duì)輸入的數(shù)據(jù)有效,故應(yīng)設(shè)置分支結(jié)構(gòu)的設(shè)計(jì):由于初始化中布爾量改變?cè)O(shè)置都為“F”,則若change為假,表示數(shù)字為第一個(gè)輸入,將得到的數(shù)據(jù)送給result1經(jīng)處理后由result顯示,同時(shí)送入num1用于即將的運(yùn)算??紤]到計(jì)算的連續(xù)性,即:當(dāng)前一次計(jì)算結(jié)束后,不需要再次清零即可進(jìn)行下一次的運(yùn)算,還需用到change1。由于上一次運(yùn)算結(jié)束后,所

17、得到的結(jié)果可能會(huì)出現(xiàn)多零現(xiàn)象,所以又必要設(shè)置change2狀態(tài)。具體的設(shè)計(jì)如圖:Change為假時(shí):Change為真時(shí),表示數(shù)據(jù)的第二次輸入,具體設(shè)計(jì)如下:至此,數(shù)字19的鍵入完成。3、“0”的輸入由于存在多零的問題,多零開頭時(shí),刪除多于零所以“0”的輸入應(yīng)區(qū)別于19的輸入。輸入“0”,涉與到多零和數(shù)據(jù)輸入,應(yīng)設(shè)置和狀態(tài)。當(dāng)change為真時(shí),表示是第二次輸入數(shù)據(jù),與19的輸入類似,另外考慮到多零的處理。具體設(shè)計(jì)如下:當(dāng)change為假時(shí),表示數(shù)據(jù)的第一次輸入,與第二次輸入的第一幀類似,具體設(shè)計(jì)如下:4、小數(shù)點(diǎn)的鍵入小數(shù)點(diǎn)的鍵入也相當(dāng)于數(shù)據(jù)的錄入,需要設(shè)置change3的狀態(tài)另外需考慮到:一個(gè)

18、數(shù)中不允許存在2個(gè)或者2個(gè)以上的小數(shù)點(diǎn)。同上,根據(jù)change個(gè)數(shù)改變判斷當(dāng)前輸入的小數(shù)點(diǎn)是第一輸入還是第二輸入。Change為假:Change為真:5、等號(hào)的鍵入當(dāng)num1和num3都鍵入值,且有確定的運(yùn)算關(guān)系后,按下等號(hào)鍵,顯示出結(jié)果。由于結(jié)果可能存在多零顯現(xiàn),所以需設(shè)置狀態(tài)。由于開方、取反、取倒操作不涉與到等于鍵,故只需設(shè)計(jì)+、-、* 、/四個(gè)鍵。具體設(shè)計(jì)如下:6、四則運(yùn)算的連續(xù)實(shí)現(xiàn)具體的實(shí)現(xiàn)過程和上一步類似,但是應(yīng)加入,保證計(jì)算的連續(xù)性7、C鍵清零作用與CE退出鍵C鍵的作用是:當(dāng)按下此鍵后,程序初始化CE鍵的作用是,當(dāng)按下此鍵后,程序結(jié)束循環(huán),并將0顯示在前面板上。8、開方鍵9、倒數(shù)鍵10、反號(hào)鍵11、backspace鍵與默認(rèn)事件backspace鍵僅對(duì)輸入數(shù)據(jù)有效12、對(duì)result的處理上述所有結(jié)果都賦值給result,result經(jīng)0值處理后,由result1輸出并在前面板上顯示。利用whil

溫馨提示

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

評(píng)論

0/150

提交評(píng)論