用labview設計一個計算器(虛擬儀器)_第1頁
用labview設計一個計算器(虛擬儀器)_第2頁
用labview設計一個計算器(虛擬儀器)_第3頁
用labview設計一個計算器(虛擬儀器)_第4頁
用labview設計一個計算器(虛擬儀器)_第5頁
已閱讀5頁,還剩11頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、3 / 15虛擬儀器實驗報告目:名:系:號: 別:(學術、專業(yè))實驗一 labview 計算器一、實驗目的通過利用 labview 設計一個簡易計算器熟練的掌握labview 基本功能和基本操作方法。 二、實驗要求利用設計的計算器可以進行簡單的四則運算、 可以進行平方、 開根號和倒數(shù)運算、 計算器可以進行清零和關閉計算器操作、 在輸入數(shù)據(jù)時不慎將某個數(shù)字輸錯可以運用backspace清除該值等一些基本簡單的運算。三、實驗原理和框圖1、前面板設計前面板是labview勺圖形用戶界面,在labview境中可以對這些對象的外 觀和屬性進行設計,labview!供了非常豐富的界面對象,可以方便地設計出

2、生 動、直觀、操作方便的用戶界面。本系統(tǒng)中前面板顯示程序的輸入和輸出對象, 即,控件和顯示器。本程序中控件主要是按鈕,顯示器主要是文本顯示。在前面板設計過程中先在前面板整齊排列放置22 個確定按鈕, 將這 22 按鈕的標簽隱藏,然后修改這22個確定按鈕的名字分別為:09十個數(shù)字、小數(shù)點、正 負號、加、減、乘、除、等號、倒數(shù)、根號、清零、退格和 x 的 y 次方。前面板還包括一個文本顯示控件用于顯示計算的結果和計算器的某些提示, 通過改變顯示控件的大小使之于計算器的大小相適應。 計算器的前面板還有程序框圖中while循環(huán)的停止按鈕,當按鈕按下時計算器停止工作退出到labview勺編輯界面。為了前

3、面板的美觀和防止按鈕的移動, 分別將前面板的各個按鈕和文字進行組合和對前面板進行裝飾,裝飾采用修飾中的平面框。如下圖所示:計算器2.后面板設計程序框圖對象包括接線端和節(jié)點,將各個對象連線連接便創(chuàng)建了程序框圖,接線端的顏色和符號表明了相應輸入控件或顯示控件的數(shù)據(jù)類型。程序框圖是程序的核心,程序要實現(xiàn)的功能都是通過程序框圖反應出來的。本課程設計的程序框圖主要運用了 while循環(huán)、時間結構、條件結構和平鋪順序等結構。通過上圖可以看出當小數(shù)點按鈕按下時,0.和存臨時數(shù)據(jù)通過字符串連接控件將 兩者連接到一起;小數(shù)點按鈕沒有按下時,臨時數(shù)據(jù)和小數(shù)點通過字符串連接按 鈕也將兩者連接在一起,將連接到一起的數(shù)

4、據(jù)送到顯示控件。數(shù)值控件與運算按鈕沒有直接的連線, 這就需要對控件進行引用,將引用后 的結果經(jīng)過屬性節(jié)點和字符串至十進制轉換將按下的按鈕掃描到臨時數(shù)據(jù)進行 臨時保存。陶投下源類型陋控件引用原值新值運苴符 匚圖3-3四則運算的除法運算在四則運算的過程中,通過運算符按鈕對四則運算進行控制, 在進行除法運 算當除數(shù)為零時,會出現(xiàn)錯誤的提示。當除數(shù)不為零時,除法運算跟加減乘的運 算是一樣的。i fir.ujml1 1lilt.ll圖3-4清零操作清零操作就是將運算符、小數(shù)點、顯示和操作等控件的局部變量返回到計算圖3-5退格操作當輸入的數(shù)據(jù)較大或者在進行連續(xù)運算時,不慎將某個數(shù)輸入錯誤如果進行 清零操作

5、就會導致以前的工作全部功虧于潰, 這是只需進行退格操作將輸入錯誤 的數(shù)值清除即可,不過計算后的結果不能進行退格操作。圖3-6開根號運算開根號是計算器最基本的功能,在進行開根號運算之前應該先對開根號的數(shù) 值進行判斷是否滿足開根號的條件。當根號下的數(shù)值小于零時,會顯示出“錯誤: 被開放數(shù)小于零!” ;根號下的數(shù)值大于等于零時,會通過計算顯示出正確的結果。圖3-7x的y次哥運算在進x的y次幕操作時,先輸入的為底數(shù)后輸入的為幕數(shù)。 x的y次幕運算已經(jīng)在前面定義過了,在這里只需調(diào)用就可以了圖3-8倒數(shù)運算倒數(shù)運算跟除法運算非常相似,只需將除法運算中的被除數(shù)改為固定數(shù) 就可以了,同時還必須考慮除數(shù)為零的情

6、況,這按除法運算的設計方法就可以了四、系統(tǒng)調(diào)試:1 .四則運算。此運算利用+、一、x、+可以進行一些基本簡單的混合運算;2 .開平方(sqrt)。此按鍵的功能是對某個數(shù)進行開方運算;3 .清除按鍵( backspace) 。 此按鍵的功能是當輸入有誤時, 用此按鍵可以清楚錯誤輸入;4 .清零按鍵( ce) 。 此按鍵的功能是直接將顯示數(shù)據(jù)清零, 從新開始新的運算;5 .x的y次方運算(x ay) o此按鍵的功能是進行x的y次方運算;6 .取倒數(shù)(1/x)。此按鍵的功能是求x的倒數(shù)。五、總結利用本次計算器課程設計實驗, 我對虛擬儀器技術有了更加一步的了解, 在全球數(shù)據(jù)采集( daq )市場中長期

7、保持領先地位的 ni 數(shù)據(jù)采集系列產(chǎn)品專門針對絕對精度、 高速性能、 易用性和安全性等方面進行優(yōu)化設計。 通過創(chuàng)造性地將模擬和數(shù)字設計相結合, ni 數(shù)據(jù)采集設備可以幫助工程師們輕松滿足各種測量要求。16 / 15實驗二模擬輸入一、實驗目的1 了解labview用進行數(shù)據(jù)采集的過程;2掌握基本的數(shù)據(jù)采集模塊的使用;3學會使用中級數(shù)據(jù)采集模塊進行編程;4學會用軟件觸發(fā)顯示實時波形。二、實驗要求通過bnc-2120連接器和p6014e采集卡,實現(xiàn)單通道多點采集,用軟件 觸發(fā)顯示實時波形。三、實驗原理及框圖1單通道連續(xù)數(shù)據(jù)采集本程序需調(diào)用 intermediate vi 中的 ai config v

8、i、ai strat vi 及 ai read vi 等來實現(xiàn),其程序如圖1所示,首先在ai config vi中需要指定緩沖區(qū)長度buffer size,其余參數(shù)可采用默認值。在 ai start vi中需要設置掃描速率scan rate,即 指定采樣頻率;止匕外,需將通道列表掃描的次數(shù) number of scans to acquire殳為0, 以實現(xiàn)連續(xù)采集。程序中設置了一個 while循環(huán),開始采集后,在循環(huán)中不斷讀 取緩沖區(qū)中數(shù)據(jù),并送往示波器加以顯示。用 ai clear vi來清除模擬輸入操作 和緩沖區(qū)的配置,并釋放 daq卡上的資源。waveform graphdevice

9、(1)channels hlconricmgstart昌4 -1buffer size (1000 sc停止uraljhfl圖1單通道連續(xù)數(shù)據(jù)采集程序2軟件觸發(fā)數(shù)據(jù)采集軟件觸發(fā)是在數(shù)據(jù)采集時,對a/d轉化的信號進行比較監(jiān)測,當滿足軟件觸 發(fā)的條件時開始將采集數(shù)據(jù)讀取到數(shù)據(jù)緩沖區(qū),并在采集結束后將數(shù)據(jù)傳輸?shù)接?算機。即信號采集一直在進行,但只對滿足條件的數(shù)據(jù)進行處理。其程序如圖2所示,主要需要對 ai read vi的conditional retrieval進行配置,包括觸發(fā)電平、觸發(fā)方式等。device (1)01configchannels (0)buffer size 11000 scc

10、7 j 1.1condition削 retricydlwavefarm graphstart停止an hte (1000 1【ans/5ri:pf hbmjerrorftl clear t 12雷圖2軟件觸發(fā)數(shù)據(jù)采集程序四實驗結果1單通道連續(xù)數(shù)據(jù)采集以1khz為采樣頻率,對正弦波信號源進行連續(xù)采樣,所得結果如圖3所示2軟件觸發(fā)數(shù)據(jù)采集以1v為觸發(fā)電平,在上升沿和下降沿到來時進行數(shù)據(jù)采集,所得結果如圖4device (1)1waveform graph3-channels (0)缸|卷二 tbuffer size (1000 scans):|10002-00.020.040.060.080-1

11、tfcnofl aha cr ant /停止31000.00stop圖3單通道連續(xù)數(shù)據(jù)采集結果圖4軟件觸發(fā)數(shù)據(jù)采集結果五實驗總結通過本次實驗,我初步了解了虛擬儀器的數(shù)據(jù)采集功能,學會了在labview 中編寫簡單的數(shù)據(jù)采集程序,基本達到了實驗目的,為以后學習和實驗打下了基 礎。實驗三、模擬輸出一、實驗目的在數(shù)據(jù)采集的基礎上,進一步熟悉數(shù)據(jù)輸出的各種模塊了解它們的作用和接 方式能夠正確運用dds原理產(chǎn)生單通道的正弦波信號,并能夠對頻率和幅度進 行調(diào)節(jié)。二、實驗要求輸出頻率f可調(diào),且頻率分辨率af可調(diào)的正弦波。以固定100ks/s采樣率采 集并實時顯示輸出波形。三實驗原理及框圖1dds原理介紹dd

12、s就是直接數(shù)字合成技術。在數(shù)據(jù)輸出中,先產(chǎn)生一系列的正弦波數(shù)據(jù), 存儲到buffer中,然后通過參數(shù)的配置,輸出不同頻率和幅度的正弦波,如圖 1 所示:圖1 dds原理框圖首先產(chǎn)生n個的正弦波的值存儲到buffer中,n表示這n個正弦波值采集 了多少個正弦波的周期。輸出波形的頻率為:匚 fsf = 一 nn. f = n(2)其中:f表示輸出信號的頻率,fs表示da的update ratq 也表示步長,n表示buffer里面存儲的正弦波值的周期,2、波形輸出配置dds是整個程序的主要部分,n表示buffer的大小。接下來將產(chǎn)生的dds數(shù)組輸入到write模塊中,具體模塊如圖2所示:圖2波形輸出

13、配置框圖config模塊中對通道以及buffer的大小進行配置,接著write模塊中將上一步 產(chǎn)生的dds數(shù)組輸入,該模塊的作用就是將輸入dds數(shù)組寫入到采集卡的buffer 中,為下一步的數(shù)據(jù)輸出做準備。start模塊主要有2個參數(shù)配置,如上圖所示。 該模塊則是將在buffer中的數(shù)據(jù)不停的輸出,0表示不停的連續(xù)輸出,而30000 則是update rate就是在dds中提到的fs。這是一個比較重要的參數(shù),對輸出信 號波形的好壞有很大的影響。比如用30k的的update rate輸出一個頻率為2k的信號,那么一個周期內(nèi)就 有15個點,基本上能比較完整的表示一個正弦波,而通過實驗表明本采集卡的

14、 最大update rate略大于30k,在產(chǎn)生3k信號的時候效果不是太好。3)實時參數(shù)更改實驗要求能夠對輸出的波形實時的更改其頻率以及幅度。因此在程序中加入 了一個while循環(huán),如圖3所示。(actu:=l waveform frequency (cycle5/sec)cflmpute sine waveformampli tud& | 一update rate iood pnints.i sec.)buffer, lod uidstart iavefora generati an質(zhì)頻率美辨率i(one charnelcontinuous gener at i. on9(rttestartloop witil stop button pressed or error ccute圖3 while循環(huán)設置循環(huán)左面的局部變量是為了判斷頻率或者步長是否發(fā)生變化,如果發(fā)生了變 化就產(chǎn)生新的ddsb號,重新對buffer寫入。在進入write模塊以前可以對幅 度進行調(diào)節(jié)。如果沒有變化,就不對 buffer進行操作。一直循環(huán)到按下stop鍵。要注意步長的更改,因為在設計上將fs固定,所以在改變步長以后 n也發(fā)生了變化,也就是buffer的大小發(fā)生了變化,所以必須對采集卡重

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論