4實驗指導(dǎo)書搭建指導(dǎo)對應(yīng)_第1頁
4實驗指導(dǎo)書搭建指導(dǎo)對應(yīng)_第2頁
4實驗指導(dǎo)書搭建指導(dǎo)對應(yīng)_第3頁
4實驗指導(dǎo)書搭建指導(dǎo)對應(yīng)_第4頁
4實驗指導(dǎo)書搭建指導(dǎo)對應(yīng)_第5頁
已閱讀5頁,還剩10頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第 6 章編程像計算機一樣,要控制自動化設(shè)備也需要有控制,要編寫就得要用計算機語言。常把計算機語言分成以下幾類:機器語言,指計算機中用二進(jìn)制表示的數(shù)據(jù)或指令,計算機可以直接執(zhí)行;自然語言,類似于人類交流使用的語言,常用于表示算法;高級語言,介于機器語言與自然語言之間的編程語言。程序設(shè)計語言大致可以分為面向過程的程序設(shè)計語言和面象的程序設(shè)計語言兩大類。面向過程的程序設(shè)計語言中,程序的執(zhí)行總是從一個主控模塊開始,該主控模塊就像是一個家庭的戶主,負(fù)責(zé)整個程序的執(zhí)行流程的管理,包括程序的開始執(zhí)行、運行過程以及運行結(jié)果的最終輸出等。而面象的程序設(shè)計語言則模擬現(xiàn)實世界的對象交流方式,先定義同類對象的模板,

2、即程序設(shè)計語言中的類,然后由類產(chǎn)生對象,通過對象之間的消息通信及交互實現(xiàn)整個程序的功能。通常,面向過程的語言在解決小規(guī)模上非常精確、方便,但對于大型、復(fù)雜問題有點力不從心。而面比較方便和快捷。象的程序設(shè)計語言對于解決大規(guī)模,“卓越”搭建的各種自動化構(gòu)型,均是由構(gòu)型自身搭載的控制器來控制,常用的是面象的設(shè)計語言C 語言?!碧峁┝藘煞N編程方式:使用通用編程Keil Vi“卓越形化編程4 MDK;使用圖Crater。使用 Keil Vi4 MDK 需要用戶具備一定的單片機 C 語言編程基礎(chǔ),產(chǎn)品配套的 USDG(Uptech Software Development Guide)包含了用戶編寫控制程

3、序需要的函數(shù)庫,用戶可以很方便地查詢需要的 API 函數(shù),編寫控制程序。Crater 是專門為“卓越”開發(fā)的一款圖形化編程,每個控制函數(shù)都被封裝成圖塊,用戶直接拖動需要的模塊并連接起來就可生成控制程序,簡單易用,適合 C 語言剛?cè)腴T的用戶。866.1USDG 介紹6.1USDG 介紹USDG(Uptech Software Development Guide)是用于LUBY 控制器編程的幫助文檔,包含了基于 LUBY 控制器的函數(shù)庫、硬件、綜合實驗等內(nèi)容,在編程過程中,可以很方便地在USDG 中查找所需要的 API 函數(shù),或參考“綜合案例”,編寫自己的 LUBY 控制器程序。圖 6-1 為US

4、DG 的界面。圖 6-1 USDGUSDG 是標(biāo)準(zhǔn)版的格式文檔,可以單擊“+”號展開感的目錄,如圖 6-2 所示。單擊目錄展開后的函數(shù),可以打開函數(shù)的相關(guān)內(nèi)容(如參數(shù)說明、返回值等),如圖 6-3所示。讀者可在本書的配套關(guān)盤中找到 USDG 電子文檔及文檔中的實驗參考程序源碼。87第 6 章編程圖 6-2 USDG 目錄圖 6-3 函數(shù)說明6.2Crater 圖形化編程Crater 圖形化編程(以下簡稱 Crater)是一個圖形化交互式控制程序開發(fā)工具。在軟886.2Crater 圖形化編程件中,通過鼠標(biāo)拖動類似邏輯框的控件和對控件做簡單的屬性設(shè)置,就可以快捷地編寫控制程序。程序編輯完后,可以

5、編譯并作簡便、功能強大的特點,動作。到“卓越”控制器中運行。編程環(huán)境具有操在圖標(biāo)拖動中創(chuàng)建復(fù)雜的邏輯,的構(gòu)型按照您的意愿本程序默認(rèn)包含標(biāo)題欄、件界面如圖 6-4 所示。、工具箱、繪圖區(qū)、代碼區(qū)、輸出窗口、狀態(tài)欄等。軟圖 6-4 Crater 界面Crater 主要采用模塊圖代碼的結(jié)構(gòu)。用戶在視圖區(qū)拖出模塊圖,程序便在右側(cè)生成代碼,如圖 6-5 所示。Crater 的代碼區(qū)是基于USDG 強大的函數(shù)封裝功能實現(xiàn)的(見 USDG 文檔)。根據(jù)用戶連接的模塊圖生成基于USDG 和C 語言的代碼。此代碼保存為文件后,在用戶需要編譯的情況下調(diào)用 ARM 編譯器將它編譯成 LUBY 控制器需要的文件,并且

6、在用戶需要的情況下到控制器里供用戶選擇使用。Crater 代碼區(qū)所生成的函數(shù)大部分都是基于USDG 封裝好的,部分庫函數(shù)如圖 6-6 所示。89第 6 章編程圖 6-5 C 語言代碼生成圖 6-6 部分庫函數(shù)906.2Crater 圖形化編程6.2.1開發(fā)環(huán)境搭建首先雙擊安裝文件“Luby_Crater_Setup.exe”(讀者可在本書配套光盤中找到 Crater 安裝程序)選擇安裝語言,如圖 6-7 所示。單擊“OK”,出現(xiàn)安裝向?qū)Ы缑?,如圖 6-8 所示。圖 6-7 選擇語言圖 6-8 Crater 安裝向?qū)ёC協(xié)議界面,如圖 6-9 所示。單擊“下一步”,出現(xiàn)圖 6-9 Crater證協(xié)

7、議單擊“我接受”,進(jìn)入安裝位置選擇,如圖 6-10 所示。選擇安裝位置并單擊安裝,開始安裝并顯示安裝進(jìn)度,如圖 6-11 所示。最后顯示安裝完成,如圖 6-12 所示。91第 6 章編程圖 6-10選擇安裝位置圖 6-11安裝進(jìn)度顯示圖 6-12 安裝完成926.2Crater 圖形化編程6.2.2Crater使用介紹界面的風(fēng)格與常見的 Windows 應(yīng)用類似,最上面是菜單欄和,最下面是狀態(tài)欄及信息提示欄,中間部分的最左邊是流程圖工具箱(即控件庫),中間是程序設(shè)計工作區(qū),右邊是流程圖程序?qū)?yīng)的 C 語言代碼顯示區(qū)。單擊“菜單欄”中的“幫助”,在下拉菜單中單擊“幫助”(如圖 6-13 所示)就

8、可打開Crater 的幫助文檔,幫助文檔(如圖 6-14 所示)中有對重復(fù)。功能的詳細(xì)說明,在此不再一一圖 6-13 “幫助”菜單圖 6-14 幫助文檔下面通過一個實驗來讓大家初步了解 Crater的使用。6.2.3Crater設(shè)計實驗1實驗?zāi)康氖煜rater作。93第 6 章編程2實驗器材計算機(安裝 Crater,有一個 USB 口) 1多功能調(diào)試器(含USB AB 線)1舵機線1紅外接近傳感器1舵機(ID 號設(shè)置為 1)1LUBY 控制器1LUBY 控制器電池13實驗過程步驟 1環(huán)境。運行 Crater,創(chuàng)建工程文件“demo”,單擊“確定”(如圖 6-15 所示),進(jìn)入編程圖 6-1

9、5 新建項目步驟 2從左側(cè)“工具箱”中的“公共資源”中找到“變量”模塊,拖動“變量圖標(biāo)”到中間編程區(qū)域,如圖 6-16 所示。說明:在工具箱窗口要創(chuàng)建的模塊圖標(biāo)上按下鼠標(biāo)左鍵,拖動到流程圖編輯窗口松開鼠標(biāo)(此時光標(biāo)變?yōu)橐獎?chuàng)建的模塊圖標(biāo)),即可創(chuàng)建一個該模塊。946.2Crater 圖形化編程圖 6-16 添加變量步驟 3雙擊拖動到編程區(qū)域的“變量”圖標(biāo),彈出設(shè)置窗口,將“變量名稱”設(shè)置為“demo_n”,如圖 6-17 所示,單擊“確定”。連接“開始”與“變量”圖標(biāo),如圖 6-18 所示。圖 6-17 設(shè)置變量95第 6 章編程圖 6-18 連線說明:在流程圖編輯區(qū)中選中要連接的起點模塊,模塊

10、圖標(biāo)上下會顯示紅域,將鼠標(biāo)放到紅域按住左鍵不放,移動鼠標(biāo)到要連接的終點模塊(此過程中從起點模塊的到光標(biāo)位置有一條直線),松開鼠標(biāo),這兩個模塊之間就會出現(xiàn)一條曲線,此時兩個模塊之間已經(jīng)建立連接。如果拖動到空白位置,則無法建立連接,松開鼠標(biāo)后不會有曲線出現(xiàn)。步驟 4創(chuàng)建一個循環(huán)結(jié)構(gòu),使設(shè)計的程序連續(xù)不停地運行,拖動“公共資源”中的“條件循環(huán)”到編程區(qū),其包含“While”和“Endloop”即循環(huán)開始和結(jié)束兩個模塊,并將其連接到程序中,如圖 6-19 所示。步驟 5從“工具箱”中的“資源”添加一個“數(shù)字輸入”模塊到程序中,用來查詢開關(guān)狀態(tài),并設(shè)置端為 0,如圖 6-20 所示,連接該模塊到程序中。

11、966.2Crater 圖形化編程圖 6-19增加“條件循環(huán)”圖 6-20增加“數(shù)字輸入”97第 6 章編程步驟 6添加“條件判斷”(在“公共資源”中),其包含“If”和“Endlf”兩個模塊,在“If”中設(shè)置判斷條件為“demo_n=1”,并連接“條件判斷”到程序中,如圖 6-21 所示。圖 6-21 條件判斷設(shè)置步驟 7添加兩個“舵機”模塊(“外部設(shè)備”中),根據(jù)開關(guān)狀態(tài)讓舵機正轉(zhuǎn)或反轉(zhuǎn),設(shè)置屬性如圖 6-22 所示。圖 6-22 舵機設(shè)置986.2Crater 圖形化編程步驟 8添加一個延時模塊“Delay”(“資源”中),讓舵機有時間執(zhí)行動作,在“Delay”模塊中,設(shè)置時間為 1 0

12、00 ms,如圖 6-23 所示。圖 6-23 延時設(shè)置步驟 9連接所有模塊,完整程序如圖 6-24 所示。圖 6-24 完整的程序步驟 10單擊“菜單欄”中“項目”下拉菜單里的“編譯項目”,編譯完成后生成可執(zhí)行文件。步驟 11根據(jù) 3.3.2 所述,連接好計算機、LUBY 控制器和多功能調(diào)試器,單擊“菜單欄”中 “項目”下拉菜單里的“項目”即可將程序到控制器中。99第 6 章編程步驟 12根據(jù) 4.2.8 所述將紅外接近傳感器接到 LUBY 控制器的 AD0,將舵機接到控制器舵機控制接口,即可觀察程序運行結(jié)果:當(dāng)紅外接近傳感器未探測到物時,舵機向一個方向轉(zhuǎn)動,當(dāng)紅外接近傳感器探測到物時,舵機向反方向轉(zhuǎn)動。4實驗結(jié)論(1)Crater 采用圖形化編程方式,拖動一些封裝好的模塊,即可編寫控制器程序。(2)圖形化編程過程中,可生成 C 語言代碼,方便用戶檢查程序邏輯,

溫馨提示

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

評論

0/150

提交評論