範文齋

儀器管理系統課程設計報告

每一臺儀器都應該有專人負責,在儀器的顯著位置貼上管理卡,上面有儀器管理人的姓名,儀器的購置時間,儀器的型號,儀器的使用的情況和儀器經常出現的問題。以下是小編整理的儀器管理系統課程設計報告,歡迎閱讀。

儀器管理系統課程設計報告

  儀器管理系統課程設計報告1

課程設計的要求和內容(包括原始數據、技術要求、工作要求)

虛擬儀器技術是測試技術和計算機技術相結合的產物,它融合了測試理論、儀器原理和技術、計算機接口技術、高速總線技術以及圖形化軟件編程技術於一身,實現了測量儀器的集成化、智能化、多樣化及可編程化,本課程設計的任務是幫助學生學習和了解虛擬儀器的原理及開發技術,掌握虛擬儀器軟件平臺LabVIEW的基本的編程方法及調試技術,並結合計算機聲卡來完成一個信號發生器與時頻分析儀的設計。

具體要求與內容:

1. 具備數字存儲示波器、信號發生器和信號分析儀三個主要功能模塊;

2. 可以通過前面板交互界面實現示波器與信號發生器功能切換;

3. 採集數據可以在單次和連續兩種方式進行切換,採集的數據可以進行存儲,類型可以在WAV、BIN和TXT三種類型進行切換,數據存儲要求用子VI實現;

4. 對於信號發生器,要求可以疊加各種噪聲,要求可以改變信號相關參數,同時能夠實現兩個以上信號疊加爲一個複合信號;

5. 時頻分析儀應該能夠完成大部分時域和頻域分析,可實現信號分析前的加窗或濾波器操作,可以對原始數據和結果數據進行保存,示波器的各個參數靈活可調並且可以將已存數據重新載入進行分析觀察。對於音頻信號可以選擇性的進行播放。

虛擬儀器技術概述

虛擬儀器技術就是利用高性能的模塊化硬件,結合高效靈活的軟件來完成各種測試、測量和自動化的應用。靈活高效的軟件能幫助您創建完全自定義的用戶界面,模塊化的硬件能方便地提供全方位的系統集成,標準的軟硬件平臺能滿足對同步和定時應用的需求。這也正是NI近30年來始終引領測試測量行業發展趨勢的原因所在。只有同時擁有高效的軟件、模塊化I/O硬件和用於集成的軟硬件平臺這三大組成部分,才能充分發揮虛擬儀器技術性能高、擴展性強、開發時間少,以及出色的集成這四大優勢。LabVIEW(Laboratory Virtual Instrument Engineering Workbench,實驗室虛擬儀器集成環境)是一種圖形化的編程語言(又稱G語言),它是由美國NI公司推出的虛擬儀器開發平臺,也是目前應用最廣、發展最快、功能最強的圖形化軟件集成開發環境。使用這種語言編程時,基本上不用寫程序代碼,取而代之是程序框圖。

時鐘顯示的結構

本課題設計的是一個數字電子時鐘。通過獲取電腦的系統時間,並分離出給數字,在通過布爾顯示顯示。數字的顯示主要是7個長條的布爾顯示組成,原理與7段數碼管相似。7段數碼管顯示不同的數字主要通過其7個布爾不同的真假值控制,將0-9對應的7段布爾顯

示值對應的局部變量存入條件結構的十個不同分支中,然後再把條件結構與截取時間字符連接來過去時間並顯示.

設計過程用到的控件和函數

在製作數碼管電子鐘的過程中,我們用到一個顯示控件,四十二個長方形LED組成的數碼管,四個圓形LED組成的兩個“冒號”,和一個圓形的按鈕,其中LED和按鈕都是布爾控件,這些控件都是放大前面板的。而前面板是圖形化的人機界面,模擬數碼管電子鐘工作的過程。在程序框圖上,用到一個獲取日期/時間(秒)、一個格式化日期/時間字符串、八個截取字符串、一個While循環、六個條件結(Case結構)、十六個常量、四百十二個局部變量、四十二個真常量、四十二個假常量等等。

設計過程:

一,在程序框圖放上一個獲取日期/時間(秒),獲取和返回計算機當前時間的時間標識。如果計算機當前時間是“上午 08:45:57 2010-12-30”,那麼獲取日期/時間(秒)同樣顯示“上午 08:45:57.59 2010-12-30”。計算機的時間格式是什麼,獲取日期/時間(秒)就顯示什麼樣的時間格式。

二,在程序框圖放上一個格式化日期/時間字符串,在“時間格式字符串”創建常量並寫上“%X”,如果計算機當前時間格式是“上午10:25:31”,那麼格式化日期/時間字符串顯示“上午10:25:31”,

若計算機當前時間時間格式是“08:45:57”,那麼格式化日期/時間字符串顯示“08:45:57”。計算機的時間格式是什麼,格式化日期/時間字符串就顯示什麼樣的時間格式。

三是在程序框圖放上八個截取字符串,把它們排成一列,按從上往下的順序,在第一個截取字符串的偏移量處創建一個常量,因爲要截取時的十位上的數字,而我們的計算機的時間格式是“上(下)午 XX:XX:XX”,如“上午 11:40:12”,所以在常量上寫上“5”;在長度(剩餘)處創建一個常量,寫“1”,表示截取一個數字。而剩下的七個截取字符串,從上往下依次在偏移量處創建一個常量,並順序寫上“6、7、8、9、10、、11、12”(包括了兩個冒號),在長度(剩餘)處都創建一個常量和都寫上“1”。

四,在前面板放上七個方形指示燈,把它們排成數碼管的形狀,並調成合適的大小,爲了美觀,要把它們的標籤去掉。

五,在程序框圖放上一個條件結構,編輯條件結構,使有0、1、2、3、4、5、6、7、8、9共十個分支。編輯0分支,在0分支裏放上七個局部分量,分別與前面板的七個方形指示燈對應,然後放上一個真常量和一個假常量,真常量控制六個方形指示燈的亮,假常量控制一個方形指示燈的滅,將條件結構的布爾輸入端子與其中一個截取字符串的輸出端連接,當截取字符串輸出“0”時使得數碼管顯示“0”的形狀;其它分支類似於這樣的編輯,使得截取字符串輸出“1、2、3、4、5、6、7、8、9”時數碼管顯示“1、2、3、4、5、6、7、8、9”的形狀;這樣的條件結構總共有六個(相應的前面板也要總共有六個數碼管),分別與截取字符串的輸出連接,顯示時、分、秒,並設置所有的“0”分支爲“默認”。

六,在前面板上放上兩個圓形指示燈,組成冒號的形狀。然後在程序框圖上放上一個等於的關係運算比較符,它的一個輸入端與一個截取“:”的截取字符串的輸出端連接,另一個輸入端創建常量,填上“:”,當運行時會變亮(變紅色)。時間格式的另一個冒號也是這樣操作的。

七,把第五、第六步所創建的東西放入一個While循環裏,在前面板上放上一個圓形的指示燈,把它轉換爲輸入控件,在程序框圖上與循環條件相連接,當圓形指示燈變“綠”時數碼管停止工作,當變“紅”時數碼管開始工作。

八,在進行上面的操作時要時時注意前面板的數碼管的排列和修飾,注意程序框圖各個控件的排列的調整。還要不時的運行程序,以檢驗做得怎麼樣,隨時發現錯誤,及時修改。

製作完了數碼管電子鐘,命名爲“數碼管電子鐘”,打開軼件時數碼管電子鐘一般不會立即工作,因爲圓形指示燈是綠色的,還要點擊一下圓形指示燈使它變“紅”,這時數碼管纔會工作。

  儀器管理系統課程設計報告2

一、課程設計目的

掌握虛擬儀器的概念和系統組成,虛擬儀器系統的基本設計思想;認識虛擬儀器的軟件開發工具LabVIEW及圖形化編程語言;掌握虛擬儀器軟件的設計方法,能夠運用LabVIEW進行數據操作、結構控制、文件讀寫、信號處理、數學分析、波形分析等。

二、第一階段設計

1、第一題

第一題要求建立一個二維數組,由於沒有指定數組的具體數值,所以設計爲讓用戶

自行輸入數組的元素,並生成一個新的'數組,再進行後續的操作。數組長度是使用數組大小函數來獲得,經過數組大小函數後,通過索引數組來的到二維數組的行數與列數,想乘後的到數組的長度,查找元素和替換元素則是直接用已有的函數即可實現。

2、第二題

任意創建一個二維數組常量,並定義數組元素後用第一題的方法得到數組的長度,把數組和數組長度輸入到重排數組維數函數中,即可得到重新排列後的一維數組。而後讓用戶自己設計把最後多少個元素放置到數組前面,經過一維數組循環移位後即可實現功能。

3、第三題

首先是創建了個數組輸入控件,讓用戶自己輸入一維數組的元素,利用一維數組排序函數即可實現升序排列,然後把升序排列的結果利用反轉一維數組函數進行反轉,即可得到降序排列的數組。

4、第四題

首先建立了一個二維的數組常量,定義數組的元素後顯示出來。利用數組的最大值最小值函數得到數組的最大值最小值以及位置,由於位置是以數組形式表示的,則用數組索引把行數列數提取出來並顯示。但這個方法的問題在於,數組的最大值最小值函數並不能把數組中所有的最值的位置都輸出出來,它只輸出第一個找到的最值的位置。

5、第五題

建立一個簇然後在簇裏添加題目要求的內容後,把順序設置好,接着按順序把相應的輸入控件捆綁到簇中。

6、第六題

首先求階乘要分爲3種情況,一是等於零,而是大於零,還有就是小於零。讓用戶輸入n的值後,馬上進行判斷,如果等於零,則直接輸出1,如果小於零則輸出0(表示出錯),如果大於零則進入循環進行運算。For循環中,以n爲總循環次數,建立反饋節點(初值爲1),i加1後再與自身相乘,得到結果;while循環中,以i加1後的值是否大於n爲循環結束條件,其餘與for循環相似。

7、第七題

利用隨機數(0-1)函數,生成一個0-1(不等於1)的隨機數,在for循環結構中,讓其循環5次,第一次乘以10,作爲5位隨機數的第一位,第二次乘以100作爲5位隨機數的第二位,以此類推。但這樣會出現6位數的隨機數,所以在生成隨機數的時候就進行判斷,限定隨機數不能大於0.9。

8、第八題

建立數組輸入控件,把輸入後的數組通過數組大小函數計算出數組的長度作爲for循環的總循環次數,在for循環中把數組的每個元素提取出來,通過累加得到結果。

9、第九題

用for循環,循環2000次,每次生成一個隨機數,然後輸入波形圖中得到波形。建立順序結構,使用兩個定時器,先讀出第一個定時器的值,然後波形生成完成後進入順序結構把兩個定時器的值相減得到時間。

10、第十題

一開始想法是直接使用打開文本文件函數,打開文件後讀取完畢再關閉文件,設置2個按鈕。後來發現三個問題,一是如果還沒打開文件就點關閉文件按鈕的話程序就會死掉,二是在文件對話框中選擇取消後會報錯,三是打開文件後不關閉文件再次打開時是程序會死掉。後來經修改,程序改爲,一開始關閉文件按鈕是不可見的,只有點擊了打開文件按鈕後才顯示,而點擊了打開文件按鈕後該按鈕也將隱藏,點擊了關閉文件按鈕後才顯示。如果在對話框中選擇取消,則重置按鈕狀態,然後退出程序(在對labview的不斷熟悉中,意識到其實不需要使用如此複雜的邏輯關係。)

11、第十一題

一開始只使用了條件結構,判斷輸入的值是否大於等於0,如果是,則直接開平方後輸出,如果不是則彈出提示對話框並輸出-99999.0。後來發現如果這樣的話輸入負數的時候對話框將不斷彈出,所以後來加入了事件結構,但數值改變時才執行程序,解決了問題。

12、第十二題

建立事件結構,以兩個按鈕作爲事件結構的觸發條件,分別將一維數組和二維數組寫入電子表格文檔。和第10題一樣出現問題,即選擇取消後報錯,進入寫入電子表格文檔的子vi程序,把錯誤處理那改成no dialog則不再報錯。

13、第十三題

使用讀取電子表格文件函數讀取文件,然後顯示到數組中。遇到與12題一樣的問題,但這次打開函數的子vi找不到錯誤處理,所以在調用函數前加入了文件對話框,判斷是夠有錯誤,沒有錯誤才執行讀取。使用通用錯誤處理函數,使其不彈出對話框。

14、第十四題

矩陣計算行列式以及矩陣相乘都有現成的函數可以調用,在計算之前要考慮兩個問題,一是計算行列式時,矩陣必須爲方陣,二是計算矩陣相乘時,A矩陣的列數要和B矩陣的行數相等,所以在計算之前使用條件結構進行判斷,如果不滿足條件則彈出對話框提示,並使用條件結構防止對話框不停地彈出。

15、第十五

使用公式求積分函數,通過字符串常量把公司輸入,再設定上下限,得到結果。