- 相關(guān)推薦
儀器管理系統課程設計報告
每一臺儀器都應該有專(zhuān)人負責,在儀器的顯著(zhù)位置貼上管理卡,上面有儀器管理人的姓名,儀器的購置時(shí)間,儀器的型號,儀器的使用的情況和儀器經(jīng)常出現的問(wèn)題。以下是小編整理的儀器管理系統課程設計報告,歡迎閱讀。
儀器管理系統課程設計報告1
課程設計的要求和內容(包括原始數據、技術(shù)要求、工作要求)
虛擬儀器技術(shù)是測試技術(shù)和計算機技術(shù)相結合的產(chǎn)物,它融合了測試理論、儀器原理和技術(shù)、計算機接口技術(shù)、高速總線(xiàn)技術(shù)以及圖形化軟件編程技術(shù)于一身,實(shí)現了測量?jì)x器的集成化、智能化、多樣化及可編程化,本課程設計的任務(wù)是幫助學(xué)生學(xué)習和了解虛擬儀器的原理及開(kāi)發(fā)技術(shù),掌握虛擬儀器軟件平臺LabVIEW的基本的編程方法及調試技術(shù),并結合計算機聲卡來(lái)完成一個(gè)信號發(fā)生器與時(shí)頻分析儀的設計。
具體要求與內容:
1. 具備數字存儲示波器、信號發(fā)生器和信號分析儀三個(gè)主要功能模塊;
2. 可以通過(guò)前面板交互界面實(shí)現示波器與信號發(fā)生器功能切換;
3. 采集數據可以在單次和連續兩種方式進(jìn)行切換,采集的數據可以進(jìn)行存儲,類(lèi)型可以在WAV、BIN和TXT三種類(lèi)型進(jìn)行切換,數據存儲要求用子VI實(shí)現;
4. 對于信號發(fā)生器,要求可以疊加各種噪聲,要求可以改變信號相關(guān)參數,同時(shí)能夠實(shí)現兩個(gè)以上信號疊加為一個(gè)復合信號;
5. 時(shí)頻分析儀應該能夠完成大部分時(shí)域和頻域分析,可實(shí)現信號分析前的加窗或濾波器操作,可以對原始數據和結果數據進(jìn)行保存,示波器的各個(gè)參數靈活可調并且可以將已存數據重新載入進(jìn)行分析觀(guān)察。對于音頻信號可以選擇性的進(jìn)行播放。
虛擬儀器技術(shù)概述
虛擬儀器技術(shù)就是利用高性能的模塊化硬件,結合高效靈活的軟件來(lái)完成各種測試、測量和自動(dòng)化的應用。靈活高效的軟件能幫助您創(chuàng )建完全自定義的用戶(hù)界面,模塊化的硬件能方便地提供全方位的系統集成,標準的軟硬件平臺能滿(mǎn)足對同步和定時(shí)應用的需求。這也正是NI近30年來(lái)始終引領(lǐng)測試測量行業(yè)發(fā)展趨勢的原因所在。只有同時(shí)擁有高效的軟件、模塊化I/O硬件和用于集成的軟硬件平臺這三大組成部分,才能充分發(fā)揮虛擬儀器技術(shù)性能高、擴展性強、開(kāi)發(fā)時(shí)間少,以及出色的集成這四大優(yōu)勢。LabVIEW(Laboratory Virtual Instrument Engineering Workbench,實(shí)驗室虛擬儀器集成環(huán)境)是一種圖形化的編程語(yǔ)言(又稱(chēng)G語(yǔ)言),它是由美國NI公司推出的虛擬儀器開(kāi)發(fā)平臺,也是目前應用最廣、發(fā)展最快、功能最強的圖形化軟件集成開(kāi)發(fā)環(huán)境。使用這種語(yǔ)言編程時(shí),基本上不用寫(xiě)程序代碼,取而代之是程序框圖。
時(shí)鐘顯示的結構
本課題設計的是一個(gè)數字電子時(shí)鐘。通過(guò)獲取電腦的系統時(shí)間,并分離出給數字,在通過(guò)布爾顯示顯示。數字的顯示主要是7個(gè)長(cháng)條的布爾顯示組成,原理與7段數碼管相似。7段數碼管顯示不同的數字主要通過(guò)其7個(gè)布爾不同的真假值控制,將0-9對應的7段布爾顯
示值對應的局部變量存入條件結構的十個(gè)不同分支中,然后再把條件結構與截取時(shí)間字符連接來(lái)過(guò)去時(shí)間并顯示.
設計過(guò)程用到的控件和函數
在制作數碼管電子鐘的過(guò)程中,我們用到一個(gè)顯示控件,四十二個(gè)長(cháng)方形LED組成的'數碼管,四個(gè)圓形LED組成的兩個(gè)“冒號”,和一個(gè)圓形的按鈕,其中LED和按鈕都是布爾控件,這些控件都是放大前面板的。而前面板是圖形化的人機界面,模擬數碼管電子鐘工作的過(guò)程。在程序框圖上,用到一個(gè)獲取日期/時(shí)間(秒)、一個(gè)格式化日期/時(shí)間字符串、八個(gè)截取字符串、一個(gè)While循環(huán)、六個(gè)條件結(Case結構)、十六個(gè)常量、四百十二個(gè)局部變量、四十二個(gè)真常量、四十二個(gè)假常量等等。
設計過(guò)程:
一,在程序框圖放上一個(gè)獲取日期/時(shí)間(秒),獲取和返回計算機當前時(shí)間的時(shí)間標識。如果計算機當前時(shí)間是“上午 08:45:57 2010-12-30”,那么獲取日期/時(shí)間(秒)同樣顯示“上午 08:45:57.59 2010-12-30”。計算機的時(shí)間格式是什么,獲取日期/時(shí)間(秒)就顯示什么樣的時(shí)間格式。
二,在程序框圖放上一個(gè)格式化日期/時(shí)間字符串,在“時(shí)間格式字符串”創(chuàng )建常量并寫(xiě)上“%X”,如果計算機當前時(shí)間格式是“上午10:25:31”,那么格式化日期/時(shí)間字符串顯示“上午10:25:31”,
若計算機當前時(shí)間時(shí)間格式是“08:45:57”,那么格式化日期/時(shí)間字符串顯示“08:45:57”。計算機的時(shí)間格式是什么,格式化日期/時(shí)間字符串就顯示什么樣的時(shí)間格式。
三是在程序框圖放上八個(gè)截取字符串,把它們排成一列,按從上往下的順序,在第一個(gè)截取字符串的偏移量處創(chuàng )建一個(gè)常量,因為要截取時(shí)的十位上的數字,而我們的計算機的時(shí)間格式是“上(下)午 XX:XX:XX”,如“上午 11:40:12”,所以在常量上寫(xiě)上“5”;在長(cháng)度(剩余)處創(chuàng )建一個(gè)常量,寫(xiě)“1”,表示截取一個(gè)數字。而剩下的七個(gè)截取字符串,從上往下依次在偏移量處創(chuàng )建一個(gè)常量,并順序寫(xiě)上“6、7、8、9、10、、11、12”(包括了兩個(gè)冒號),在長(cháng)度(剩余)處都創(chuàng )建一個(gè)常量和都寫(xiě)上“1”。
四,在前面板放上七個(gè)方形指示燈,把它們排成數碼管的形狀,并調成合適的大小,為了美觀(guān),要把它們的標簽去掉。
五,在程序框圖放上一個(gè)條件結構,編輯條件結構,使有0、1、2、3、4、5、6、7、8、9共十個(gè)分支。編輯0分支,在0分支里放上七個(gè)局部分量,分別與前面板的七個(gè)方形指示燈對應,然后放上一個(gè)真常量和一個(gè)假常量,真常量控制六個(gè)方形指示燈的亮,假常量控制一個(gè)方形指示燈的滅,將條件結構的布爾輸入端子與其中一個(gè)截取字符串的輸出端連接,當截取字符串輸出“0”時(shí)使得數碼管顯示“0”的形狀;其它分支類(lèi)似于這樣的編輯,使得截取字符串輸出“1、2、3、4、5、6、7、8、9”時(shí)數碼管顯示“1、2、3、4、5、6、7、8、9”的形狀;這樣的條件結構總共有六個(gè)(相應的前面板也要總共有六個(gè)數碼管),分別與截取字符串的輸出連接,顯示時(shí)、分、秒,并設置所有的“0”分支為“默認”。
六,在前面板上放上兩個(gè)圓形指示燈,組成冒號的形狀。然后在程序框圖上放上一個(gè)等于的關(guān)系運算比較符,它的一個(gè)輸入端與一個(gè)截取“:”的截取字符串的輸出端連接,另一個(gè)輸入端創(chuàng )建常量,填上“:”,當運行時(shí)會(huì )變亮(變紅色)。時(shí)間格式的另一個(gè)冒號也是這樣操作的。
七,把第五、第六步所創(chuàng )建的東西放入一個(gè)While循環(huán)里,在前面板上放上一個(gè)圓形的指示燈,把它轉換為輸入控件,在程序框圖上與循環(huán)條件相連接,當圓形指示燈變“綠”時(shí)數碼管停止工作,當變“紅”時(shí)數碼管開(kāi)始工作。
八,在進(jìn)行上面的操作時(shí)要時(shí)時(shí)注意前面板的數碼管的排列和修飾,注意程序框圖各個(gè)控件的排列的調整。還要不時(shí)的運行程序,以檢驗做得怎么樣,隨時(shí)發(fā)現錯誤,及時(shí)修改。
制作完了數碼管電子鐘,命名為“數碼管電子鐘.vi”,打開(kāi)軼件時(shí)數碼管電子鐘一般不會(huì )立即工作,因為圓形指示燈是綠色的,還要點(diǎn)擊一下圓形指示燈使它變“紅”,這時(shí)數碼管才會(huì )工作。
儀器管理系統課程設計報告2
一、課程設計目的
掌握虛擬儀器的概念和系統組成,虛擬儀器系統的基本設計思想;認識虛擬儀器的軟件開(kāi)發(fā)工具LabVIEW及圖形化編程語(yǔ)言;掌握虛擬儀器軟件的設計方法,能夠運用LabVIEW進(jìn)行數據操作、結構控制、文件讀寫(xiě)、信號處理、數學(xué)分析、波形分析等。
二、第一階段設計
1、第一題
第一題要求建立一個(gè)二維數組,由于沒(méi)有指定數組的具體數值,所以設計為讓用戶(hù)
自行輸入數組的元素,并生成一個(gè)新的數組,再進(jìn)行后續的操作。數組長(cháng)度是使用數組大小函數來(lái)獲得,經(jīng)過(guò)數組大小函數后,通過(guò)索引數組來(lái)的到二維數組的行數與列數,想乘后的到數組的長(cháng)度,查找元素和替換元素則是直接用已有的函數即可實(shí)現。
2、第二題
任意創(chuàng )建一個(gè)二維數組常量,并定義數組元素后用第一題的方法得到數組的長(cháng)度,把數組和數組長(cháng)度輸入到重排數組維數函數中,即可得到重新排列后的一維數組。而后讓用戶(hù)自己設計把最后多少個(gè)元素放置到數組前面,經(jīng)過(guò)一維數組循環(huán)移位后即可實(shí)現功能。
3、第三題
首先是創(chuàng )建了個(gè)數組輸入控件,讓用戶(hù)自己輸入一維數組的元素,利用一維數組排序函數即可實(shí)現升序排列,然后把升序排列的結果利用反轉一維數組函數進(jìn)行反轉,即可得到降序排列的數組。
4、第四題
首先建立了一個(gè)二維的數組常量,定義數組的元素后顯示出來(lái)。利用數組的最大值最小值函數得到數組的最大值最小值以及位置,由于位置是以數組形式表示的,則用數組索引把行數列數提取出來(lái)并顯示。但這個(gè)方法的問(wèn)題在于,數組的最大值最小值函數并不能把數組中所有的最值的位置都輸出出來(lái),它只輸出第一個(gè)找到的最值的位置。
5、第五題
建立一個(gè)簇然后在簇里添加題目要求的內容后,把順序設置好,接著(zhù)按順序把相應的輸入控件捆綁到簇中。
6、第六題
首先求階乘要分為3種情況,一是等于零,而是大于零,還有就是小于零。讓用戶(hù)輸入n的值后,馬上進(jìn)行判斷,如果等于零,則直接輸出1,如果小于零則輸出0(表示出錯),如果大于零則進(jìn)入循環(huán)進(jìn)行運算。For循環(huán)中,以n為總循環(huán)次數,建立反饋節點(diǎn)(初值為1),i加1后再與自身相乘,得到結果;while循環(huán)中,以i加1后的值是否大于n為循環(huán)結束條件,其余與for循環(huán)相似。
7、第七題
利用隨機數(0-1)函數,生成一個(gè)0-1(不等于1)的隨機數,在for循環(huán)結構中,讓其循環(huán)5次,第一次乘以10,作為5位隨機數的第一位,第二次乘以100作為5位隨機數的第二位,以此類(lèi)推。但這樣會(huì )出現6位數的隨機數,所以在生成隨機數的時(shí)候就進(jìn)行判斷,限定隨機數不能大于0.9。
8、第八題
建立數組輸入控件,把輸入后的數組通過(guò)數組大小函數計算出數組的長(cháng)度作為for循環(huán)的總循環(huán)次數,在for循環(huán)中把數組的每個(gè)元素提取出來(lái),通過(guò)累加得到結果。
9、第九題
用for循環(huán),循環(huán)2000次,每次生成一個(gè)隨機數,然后輸入波形圖中得到波形。建立順序結構,使用兩個(gè)定時(shí)器,先讀出第一個(gè)定時(shí)器的.值,然后波形生成完成后進(jìn)入順序結構把兩個(gè)定時(shí)器的值相減得到時(shí)間。
10、第十題
一開(kāi)始想法是直接使用打開(kāi)文本文件函數,打開(kāi)文件后讀取完畢再關(guān)閉文件,設置2個(gè)按鈕。后來(lái)發(fā)現三個(gè)問(wèn)題,一是如果還沒(méi)打開(kāi)文件就點(diǎn)關(guān)閉文件按鈕的話(huà)程序就會(huì )死掉,二是在文件對話(huà)框中選擇取消后會(huì )報錯,三是打開(kāi)文件后不關(guān)閉文件再次打開(kāi)時(shí)是程序會(huì )死掉。后來(lái)經(jīng)修改,程序改為,一開(kāi)始關(guān)閉文件按鈕是不可見(jiàn)的,只有點(diǎn)擊了打開(kāi)文件按鈕后才顯示,而點(diǎn)擊了打開(kāi)文件按鈕后該按鈕也將隱藏,點(diǎn)擊了關(guān)閉文件按鈕后才顯示。如果在對話(huà)框中選擇取消,則重置按鈕狀態(tài),然后退出程序(在對labview的不斷熟悉中,意識到其實(shí)不需要使用如此復雜的邏輯關(guān)系。)
11、第十一題
一開(kāi)始只使用了條件結構,判斷輸入的值是否大于等于0,如果是,則直接開(kāi)平方后輸出,如果不是則彈出提示對話(huà)框并輸出-99999.0。后來(lái)發(fā)現如果這樣的話(huà)輸入負數的時(shí)候對話(huà)框將不斷彈出,所以后來(lái)加入了事件結構,但數值改變時(shí)才執行程序,解決了問(wèn)題。
12、第十二題
建立事件結構,以?xún)蓚(gè)按鈕作為事件結構的觸發(fā)條件,分別將一維數組和二維數組寫(xiě)入電子表格文檔。和第10題一樣出現問(wèn)題,即選擇取消后報錯,進(jìn)入寫(xiě)入電子表格文檔的子vi程序,把錯誤處理那改成no dialog則不再報錯。
13、第十三題
使用讀取電子表格文件函數讀取文件,然后顯示到數組中。遇到與12題一樣的問(wèn)題,但這次打開(kāi)函數的子vi找不到錯誤處理,所以在調用函數前加入了文件對話(huà)框,判斷是夠有錯誤,沒(méi)有錯誤才執行讀取。使用通用錯誤處理函數,使其不彈出對話(huà)框。
14、第十四題
矩陣計算行列式以及矩陣相乘都有現成的函數可以調用,在計算之前要考慮兩個(gè)問(wèn)題,一是計算行列式時(shí),矩陣必須為方陣,二是計算矩陣相乘時(shí),A矩陣的列數要和B矩陣的行數相等,所以在計算之前使用條件結構進(jìn)行判斷,如果不滿(mǎn)足條件則彈出對話(huà)框提示,并使用條件結構防止對話(huà)框不停地彈出。
15、第十五題
使用公式求積分函數,通過(guò)字符串常量把公司輸入,再設定上下限,得到結果。