labview連連看課程設(shè)計報告_第1頁
已閱讀1頁,還剩13頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p><b>  課程設(shè)計任務(wù)書</b></p><p><b>  目 錄</b></p><p>  1目的及基本要求1</p><p>  2 連連看設(shè)計原理2</p><p>  3連連看設(shè)計和仿真2</p><p>  3.1 主程序設(shè)計2<

2、;/p><p>  3.2 子程序詳細設(shè)計3</p><p>  3.3 設(shè)計中遇到的問題9</p><p>  4 結(jié)果及性能分析10</p><p>  4.1 運行結(jié)果10</p><p>  4.2 性能分析10</p><p><b>  參考文獻11</b&g

3、t;</p><p><b>  1目的及基本要求</b></p><p>  虛擬儀器技術(shù)就是利用高性能的模塊化硬件,結(jié)合高效靈活的軟件來完成各種測試、測量和自動化的應用。靈活高效的軟件能幫助您創(chuàng)建完全自定義的用戶界面,模塊化的硬件能方便地提供全方位的系統(tǒng)集成,標準的軟硬件平臺能滿足對同步和定時應用的需求。這也正是NI近30年來始終引領(lǐng)測試測量行業(yè)發(fā)展趨勢的原因所在

4、。只有同時擁有高效的軟件、模塊化I/O硬件和用于集成的軟硬件平臺這三大組成部分,才能充分發(fā)揮虛擬儀器技術(shù)性能高、擴展性強、開發(fā)時間少,以及出色的集成這四大優(yōu)勢。LabVIEW(Laboratory Virtual Instrument Engineering Workbench,實驗室虛擬儀器集成環(huán)境)是一種圖形化的編程語言(又稱G語言),它是由美國NI公司推出的虛擬儀器開發(fā)平臺,也是目前應用最廣、發(fā)展最快、功能最強的圖形化軟件集成開發(fā)

5、環(huán)境。使用這種語言編程時,基本上不用寫程序代碼,取而代之的是程序框圖。</p><p>  虛擬儀器 (VI) 的概念 虛擬儀器[1](virtual instrument)是基于計算機的儀器。計算機和儀器的密切結(jié)合是目前儀器發(fā)展的一個重要方向。粗略地說這種結(jié)合有兩種方式,一種是將計算機裝入儀器,其典型的例子就是所謂智能化的儀器。隨著計算機功能的日益強大以及其體積的日趨縮小,這類儀器功能也越來越強大,目前已經(jīng)

6、出現(xiàn)含嵌入式系統(tǒng)的儀器。另一種方式是將儀器裝入計算機。以通用的計算機硬件及操作系統(tǒng)為依托,實現(xiàn)各種儀器功能。虛擬儀器主要是指這種方式。上面的框圖反映了常見的虛擬儀器方案。 盡可能采用了通用的硬件,各種儀器的差異主要是軟件。 同時 可充分發(fā)揮計算機的能力,有強大的數(shù)據(jù)處理功能,可以創(chuàng)造出功能更強的儀器。</p><p>  熟悉LabVIEW開發(fā)環(huán)境,掌握基于LabVIEW的虛擬儀器原理、設(shè)計方法和實現(xiàn)技巧,運用專

7、業(yè)課程中的基本理論和實踐知識,采用LabVIEW開發(fā)工具,實現(xiàn)電子時鐘的設(shè)計和仿真。要求通過本課程設(shè)計使學生熟悉LabVIEW開發(fā)環(huán)境,掌握基于LabVIEW的虛擬儀器設(shè)計原理、設(shè)計方法和實現(xiàn)技巧,使學生掌握通信系統(tǒng)設(shè)計和仿真工具,為畢業(yè)設(shè)計做準備,為將來的學習及今后從事科學研究、工程技術(shù)工作打下較堅實的基礎(chǔ)。</p><p><b>  2 連連看設(shè)計原理</b></p>&

8、lt;p>  連連看是一種休閑游戲,當兩個相同的圖,可以使用三條線段連接,并且線段通過區(qū)域都為空(即,沒有圖)</p><p><b>  3連連看設(shè)計和仿真</b></p><p>  首先熟悉虛擬儀器的設(shè)計思想,而后便可著手進行連連看的相關(guān)設(shè)計,控件架構(gòu)以及函數(shù)設(shè)置。具體設(shè)計步驟如下:</p><p><b>  3.1 主

9、程序設(shè)計</b></p><p><b>  1.設(shè)計前面板</b></p><p>  前面板模擬連連看的前面板,用于連連看的使用。由于虛擬面板直接面向用戶,是連連看的核心。</p><p><b>  圖 1 前面板圖</b></p><p><b>  2.程序框圖<

10、;/b></p><p><b>  圖2 程序面板圖</b></p><p>  3.2 子程序詳細設(shè)計</p><p>  (1)連連看相同圖消除判斷</p><p>  (a)Z型雙節(jié)點連接是否成功</p><p>  圖 3 相同圖消除程序框圖</p><p>

11、;  判斷兩點是否可以z型雙折點相連。</p><p>  條件:在以兩點為端點的矩形內(nèi)存在全為零的行或列。</p><p>  算法:利用單折點相連算法,以其中一個為基準,在給定的矩形內(nèi)逐個按行(列)找零點,并判斷此零點能否與第二單折點連接,若能,則返回成功,否則繼續(xù)尋找,直到遇到非零點,返回失敗標志。</p><p>  (b)單折點連接成功是否成功</p

12、><p>  判斷第一點和第二點的位置關(guān)系決定線路輸出的排列順序。</p><p>  判斷行1列2元素是否為零:若為零,分別替換寵物位置里第一和第二行元素并且判斷能否直線相連。</p><p>  若均可以直線相連,輸出線路為行和列的疊加,但是有前后關(guān)系。</p><p>  (c)直線連接是否成功</p><p>  

13、圖 4 直線連接部分程序框圖</p><p>  判斷兩個相同的圖直線連接是否成功。</p><p>  (d)判斷連線是否成功</p><p>  圖 5 連線程序框圖</p><p>  判斷所連相同的圖連線是否成功。</p><p>  (e)點擊點是否為空</p><p>  圖 6 點

14、擊點程序框圖</p><p>  判斷此次點擊的點位置—通過比較點擊前后兩個數(shù)組元素,不同的為新點擊位置,判斷寵物數(shù)組中點擊位置是否為空白,若為空白,則本次點擊無效(后續(xù)程序完成),否則,本次點擊有效。</p><p>  (f)顯示可以連線成功的寵物</p><p>  圖 7 顯示連線成功程序框圖</p><p>  點擊后連線成功的寵物

15、可以顯示出來。</p><p><b>  (g)獲取點擊位置</b></p><p>  圖 8 獲取點擊位置程序框圖</p><p>  獲取兩次點擊數(shù)組元素的位置。</p><p><b>  (2)寵物的移動</b></p><p>  圖 9 寵物移動程序框圖&l

16、t;/p><p>  列向上移動,則先移動處于下方的元素。</p><p>  (3)調(diào)整二維數(shù)組的順序</p><p>  圖 10 調(diào)整二維數(shù)組程序框圖</p><p><b>  按行調(diào)整。</b></p><p><b>  (4)關(guān)卡寵物處理</b></p>

17、<p>  圖 11 關(guān)卡寵物處理程序框圖</p><p>  初始關(guān)卡——不變化;第1關(guān)——向下;第2關(guān)——向左;第3關(guān)——上下分離;第4關(guān)——左右分離;第5關(guān)——上下集中;第6關(guān)——左右集中;第7關(guān)——上左下右;第8關(guān)——左下右上;第9關(guān)——向外擴散;第10關(guān)——向內(nèi)集中。</p><p><b>  (5)隨機生成寵物</b></p>

18、<p>  圖 12 隨機生成寵物程序框圖</p><p>  1、生成兩個整數(shù)序列,一個(n1)為最終生成寵物數(shù)組的目標,另一個(n2)保存位置信息。</p><p>  2、對n2數(shù)組隨機取一個在其長度范圍內(nèi)的整數(shù)a,取出對應數(shù)組中的內(nèi)容num后將此元素刪除,表示以后不再選擇此位。</p><p>  3、隨機生成一個寵物代號b,并將n1中第num位

19、替換為b,一次循環(huán)中實現(xiàn)兩次2,3步的操作,目的是始終產(chǎn)生的寵物成對出現(xiàn)。</p><p>  4、當n2數(shù)組長度小于或等于0時,循環(huán)結(jié)束,本算法循環(huán)次數(shù)為 行數(shù)×列數(shù)/2。</p><p><b>  (6) 高分排行榜</b></p><p>  圖 13 高分排行榜程序框圖</p><p>  游戲結(jié)束后

20、,根據(jù)得分的高低進行排名,名次,排名和姓名均可輸入。</p><p><b>  (7) 繪制路徑</b></p><p>  圖 14 繪制路徑程序框圖</p><p><b>  寵物路徑行列互換。</b></p><p><b>  (8) 獎懲措施</b></p&

21、gt;<p>  圖 15 獎懲措施程序框圖</p><p>  可是原來的生命,提示,得分,和時間改變。能形成新的生命,提示,得分和時間。這一系列可以根據(jù)個人喜好調(diào)節(jié)。</p><p>  (9) 提示可以連接成功的寵物</p><p>  圖 16 提示連接成功程序框圖</p><p>  當點擊提示按鈕的時候,會出現(xiàn)兩個可

22、消的寵物。</p><p>  (10) 重新排列寵物</p><p>  圖 17 重新排列寵物程序框圖</p><p>  3.3 設(shè)計中遇到的問題</p><p>  由于是第一次進行LabVIEW的課程設(shè)計,缺乏相關(guān)的設(shè)計經(jīng)驗,因此一開始的時候確實無從下手。但是經(jīng)過老師和同學的指點,包括自己獨立思考與查閱相關(guān)資料,我漸漸對這個軟件熟悉

23、了,并且覺得圖形化編程的好處實在是非常多的。</p><p>  設(shè)計期間,我確實遇到了許多的問題。由于對編程軟件的不熟悉,導致在找相關(guān)控件時花費了許多時間,而且常常找到的是錯誤的控件,這直接造成程序運行失誤。這一點在熟悉軟件之后,好了很多。其次,在熟悉設(shè)計原理的時候,由于對相關(guān)邏輯關(guān)系以及函數(shù)關(guān)系的不太熟悉,也繞了不少彎子。后期,在總體完成連連看的設(shè)計后,基本功能都得到了實現(xiàn),但是一直顯得不太美觀。連連看功能很

24、簡單,實現(xiàn)起來也很簡單,但要做得美觀、簡潔卻不那么容易。比如讓其顯示更多生動的字體,在一個小窗口里實現(xiàn)更多的動畫。程序要實現(xiàn)豐富的內(nèi)容及完美的界面主要還是要靠扎實的基礎(chǔ),掌握各控件的使用及各類型的模塊間的轉(zhuǎn)換。本來把本次課程設(shè)計的界面顯示做成各種字體的,但由于時間及能力的關(guān)系,沒有做得更好。這一點很遺憾,但愿有機會可以彌補。</p><p>  總體來說,設(shè)計過程遇到的問題不少,但是收獲也更多。通過這次課程設(shè)計,

25、真正體驗到LABVIEW的強大功能。</p><p><b>  4 結(jié)果及性能分析</b></p><p><b>  4.1 運行結(jié)果</b></p><p>  圖 18 運行結(jié)果框圖</p><p><b>  4.2 性能分析</b></p><

26、p><b>  連連看玩法</b></p><p>  連連看是一種休閑游戲,當兩個相同的圖,可以使用三條線段連接,并且線段通過區(qū)域都為空(即,沒有圖)。</p><p>  初始關(guān)卡——不變化;第1關(guān)——向下;第2關(guān)——向左;第3關(guān)——上下分離;第4關(guān)——左右分離;第5關(guān)——上下集中;第6關(guān)——左右集中;第7關(guān)——上左下右;第8關(guān)——左下右上;第9關(guān)——向外擴

27、散;第10關(guān)——向內(nèi)集中。</p><p><b>  參考文獻</b></p><p>  [1] labview入門與提高.趙品編著.人民郵電出版社.2000.11</p><p>  [2] labview 高級應用.趙品編著.人民郵電出版社.2000.11</p><p>  [3] labview印刷電路板設(shè)計

28、教程.肖玲妮編著.清華大學出版社2003.8</p><p>  [4] labview完全自學手冊.龍馬工作室編著.人民郵電出版社2005.10.2</p><p>  [5] 虛擬儀器設(shè)計基礎(chǔ)教程.黃松嶺,吳靜著.清華大學出版社,2008</p><p>  [6] AMTLAB和 LabVIEW仿真技術(shù)及應用實例.聶春燕,張猛,張萬里著.清華大學出版社,200

溫馨提示

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

評論

0/150

提交評論