版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
圖形化語言編程學(xué)習(xí)導(dǎo)航1.圖形化語言編程有什么優(yōu)點?2.如何使用圖形化語言中的順序、循環(huán)、選擇?3.種程序結(jié)構(gòu)編程?目前,圖形化語言編程方式在簡易機器人開發(fā)軟件中比較流行。這種編程方式的主要優(yōu)點是直觀、易于理解,所以特別適合初學(xué)者。圖形化語言編程方式與設(shè)計程序流程圖類似,特點是借助若干圖形模塊(由圖形化語言開發(fā)環(huán)境提供)來設(shè)計控制程序。用戶設(shè)計好程序流程后,往毎個流程節(jié)點放置對應(yīng)的控制模塊即可。ROYA圖形化語言開發(fā)環(huán)境的主界面分成3個區(qū)域:控制模塊區(qū)、程序編輯區(qū)和信息提示區(qū)。
控制模塊區(qū)存放所有圖形化的控制模塊,控制模塊被組織成樹狀結(jié)構(gòu),單擊樹根或子樹前的加號可以將樹展開。
程序編輯區(qū)的空間比較大,是用戶借助控制模塊編寫程序的區(qū)域。
信息區(qū)用來顯示程序的編譯信息。如果在設(shè)計程序時存在一些錯誤,那么,在編譯程序階段信息區(qū)里就會出現(xiàn)相應(yīng)的警告。一、圖形化控制模塊
ROYA圖形化語言開發(fā)環(huán)境提供以下幾種控制模塊集:運動控制模塊集、輸入輸岀設(shè)備控制模塊集、運算控制模塊集、結(jié)構(gòu)控制模塊集、過程控制模塊集。
每一個模塊集又包括下一層的控制模塊(如圖所示)。運動控制模塊集用來控制機器人的行為,例如前進(jìn)、轉(zhuǎn)彎、后退等。輸入輸出控制模塊集用來控制機器人的輸入輸出設(shè)備,例如傳感器、電機、定時器等。程序的結(jié)構(gòu)由結(jié)構(gòu)控制模塊集來實現(xiàn)。ROYA軟件中,有4種結(jié)構(gòu)控制模塊,分別是選擇控制模塊、循環(huán)控制模塊、繼續(xù)循環(huán)模塊、跳出循環(huán)模塊,它們在程序編輯區(qū)中的圖形如圖所示。結(jié)構(gòu)控制模塊都有其控制屬性。例如,在選擇控制模塊的屬性對話框中需要設(shè)置一個比較條件,當(dāng)條件滿足時執(zhí)行選擇控制的左支路控制模塊,反之執(zhí)行選擇控制的右支路控制模塊。在循環(huán)控制模塊的屬性對話框中需要設(shè)定循環(huán)次數(shù),表示處于循環(huán)結(jié)構(gòu)中的控制模塊被執(zhí)行的次數(shù)。而跳出循環(huán)控制模塊用于需要跳出本層循環(huán)的場合。當(dāng)在一個循環(huán)體中有繼續(xù)循環(huán)模塊時,表示程序執(zhí)行完該模塊后不再執(zhí)行本循環(huán)體內(nèi)的其他模塊,而是返回到循環(huán)體的起始部位重新開始運行。
如果要在程序中添加自己的過程,則需要用到過程控制模塊集。各控制模塊的詳細(xì)使用方法可以參考ROYA軟件的幫助文檔。二、圖形化語言編程實例在這一部分,我們將在ROYA圖形化語言開發(fā)環(huán)境中,針對RoCon控制器電路板上的8個LED,設(shè)計和編制3個實驗程序,使之以不同的形式點亮發(fā)光。這3個實驗分別對應(yīng)于編程中經(jīng)常使用的順序、循環(huán)、選擇3種結(jié)構(gòu),是簡易機器人運用圖形化語言編程時很重要的概念和技巧。實驗1:順序點亮8個LED
1.實驗?zāi)康?/p>
了解和掌握有關(guān)順序結(jié)構(gòu)的概念及其圖形化語言編程的技巧順序結(jié)構(gòu)指程序指令按照先后次序逐條執(zhí)行,對外只有一個入口,一個出口。2.實驗要求
設(shè)計順序點亮8個LED的程序結(jié)構(gòu),在圖形化語言編程環(huán)境下編制程序流程。3.圖形化語言編程步驟
順序點亮8個LED的實驗示意和程序流程如圖所示。第一步:在控制模塊區(qū)雙擊“開關(guān)量”模塊,該模塊就會自動出現(xiàn)在程序編輯區(qū)。選中它并按住鼠標(biāo)左鍵,把該模塊拖到“開始”模塊下面(開始模塊在ROYA軟件啟動時自動出現(xiàn)在程序編輯區(qū)),如圖1所示。第二步:右擊程序編輯區(qū)中的“開關(guān)量”模塊,屏幕便顯示出“開關(guān)量輸入輸出設(shè)置”對話框(圖2),其作用是對開關(guān)量輸入輸出進(jìn)行設(shè)置。找到“選擇通道號”欄,選擇要控制的開關(guān)通道,然后定義這個通道的“輸入”或“輸出”屬性,最后一個屬性是確定這個開關(guān)量是“常量”還是“變量”。1在本實驗中,與這些屬性設(shè)置所對應(yīng)的選擇是:通道8、輸出模式、輸出常量設(shè)置為“1”(常量是指數(shù)字“0”或“1”,它們分別代表開關(guān)量的低、高電平),此時表示對于應(yīng)通道的LED發(fā)光。設(shè)置完畢后,單擊“確定”退出。
第三步:模仿第一步的操作方法,把“延時模塊”編排在“開關(guān)量”模塊下面,如圖所示。第四步:設(shè)置“延時”模塊的屬性(如下圖)。右擊程序編輯區(qū)的“延時模塊”,屏幕顯示“延時設(shè)置”對話框,在顯示的屬性欄中可以選中“使用變量”,也可不使用變量。默認(rèn)選擇為使用常數(shù)。向常數(shù)設(shè)置欄輸入“500”單位默認(rèn)為ms。設(shè)置完畢后單擊“確定”退出。第五步:在“延時模塊”的下面再放置兩個“開關(guān)量”模塊。將第一個“開關(guān)量”模塊的屬性設(shè)置為通道8、輸出模式、開關(guān)量常數(shù)為“0”(即讓上次點亮的LED熄滅);把第二個開關(guān)量模塊的屬性設(shè)置為通道9、輸出模式、開關(guān)量常數(shù)為“1”(即點亮第2個LED)。
第六步:在點亮第二個LED的開關(guān)量模塊下再編排一個“延時”模塊,延時500ms。
第七步:仿照上面第一步到第六步的步驟,直到8個LED都設(shè)置完畢。
第八步:“編譯”程序,并把程序下載到機器人控制器中。
4.運行
運行控制器程序,觀察LED的發(fā)光情況和所編程序的預(yù)想是否一致。如果與原來的設(shè)想不一致,則應(yīng)回到前面去修改程序。探究嘗試
請同學(xué)們按照實驗1的步驟,用ROYA圖形化語言完成8個LED順序點亮的程序。1.請問程序中“延時”模塊有什么作用?如果不加“延時”模塊會出現(xiàn)什么現(xiàn)象?2.改變“延時”模塊屬性中的時間長度,測試一下“延時”模塊的延時時間是否準(zhǔn)確?3.現(xiàn)實生活中,很多工作都需要嚴(yán)格按時間順序完成,同學(xué)們能舉幾個這方面的實例嗎?實驗2:LED循環(huán)點亮發(fā)光
實驗1介紹了一種順序控制結(jié)構(gòu),讓LED按順序發(fā)光、熄滅。不過程序運行一遍后,LED的狀態(tài)就再不發(fā)生變化了,LED工作的時日間太短了!在實驗2中將想辦法讓8個LED首尾相接不斷地發(fā)光、熄滅、發(fā)光、熄滅……如此循環(huán)下去。1.實驗?zāi)康?/p>
了解和掌握有關(guān)循環(huán)控制的概念、圖形化語言編程的技巧。循環(huán)控制是指程序指令在循環(huán)體內(nèi)按照先后次序逐條執(zhí)行;當(dāng)完成循環(huán)體內(nèi)要求的動作之后,又返回循環(huán)體的起始位置重新執(zhí)行。2.實驗要求
在圖形化語言開發(fā)環(huán)境下編制程序流程,在前面依次點亮8個LED的程序結(jié)構(gòu)的基礎(chǔ)上,使點亮的動作能夠首尾相接,周而復(fù)始地運行下去。3.圖形化語言編程步驟
點亮8個LED的循環(huán)實驗示意和程序流程如圖所示。圖形化編程的操作方式與前面所舉的例子一樣,唯一的區(qū)別是在“開始”模塊下加了一對“循環(huán)一循環(huán)結(jié)束”模塊,如圖2.23所示。在對該模塊的屬性進(jìn)行設(shè)置時,循環(huán)結(jié)構(gòu)既可選擇為無限循環(huán),又可選擇為有限循環(huán)(此時要標(biāo)明循環(huán)次數(shù))。圖2.24中設(shè)置為無限循環(huán)。4.運行運行控制器程序,觀察LED的發(fā)光情況和所編程序的預(yù)想是否致。如果與原來的設(shè)想不一致,則應(yīng)回到前面去修改程序。實驗3LED受控發(fā)光上面2個實驗有一個共同點,就是程序一旦運行起來是不受控制的,只有一條道走到底。但現(xiàn)實生活中常常會發(fā)生某些突發(fā)事件,這時,即使是簡易機器人,也應(yīng)該具有簡單的智能,能夠根據(jù)傳感器接收的環(huán)境信息做出反應(yīng)。實驗3體現(xiàn)的就是這樣一種功能。1.實驗?zāi)康?/p>
了解和掌握編程中有關(guān)選擇結(jié)構(gòu)(分支結(jié)構(gòu))的概念、圖形化語言編程的結(jié)構(gòu)和技巧簡易機器人在執(zhí)行任務(wù)時往往需要對各種狀態(tài)做出判斷和選擇,體現(xiàn)在程序上,就是根據(jù)對事先設(shè)定的條件成立與否的判斷,選擇下步沿哪一條程序分支繼續(xù)執(zhí)行。當(dāng)然,存在多個選擇的情況也時有發(fā)生,在這種場合判斷與選擇的處理和單一選擇時大同小異,因此在本實驗的例子中程序分支僅有兩個流向。2.實驗要求將一個接觸傳感器與簡易機器人控制板的某個輸入端口連接起來,機器人控制程序在每次循環(huán)開始時讀取接觸傳感器的狀態(tài),如果接觸傳感器被斷開,所有8個LED按實驗2循環(huán)顯示,如果接觸傳感器被接通,程序結(jié)束。這個實驗的意義除了理解選擇結(jié)構(gòu)之外,簡易機器人的控制器第一次通過程序?qū)⑤斎?接觸傳感器)與輸出(LED)有機地結(jié)合起來動作。從廣義來說,我們也就掌握了其他類型的輸入輸出器件如何與控制程序配合起來實現(xiàn)控制功能的方法。3.圖形化語言編程步驟程序流程圖如圖2.25所示。程序的總體結(jié)構(gòu)是一個無限循環(huán),但是每輪循環(huán)的前提是需要檢查一次接觸傳感器的輸入狀態(tài)。如果接觸傳感器被接通,則程序流向為結(jié)束運行,LED不再輪流點亮;否則,程序的流向?qū)磳嶒?的方式輪流點亮8個LED。實驗3的圖形化程序如圖2.26所示。該程序與實驗2的區(qū)別在于增加了一個接觸傳感器的“開關(guān)量”設(shè)置模塊和緊隨其后的個判斷條件的“選擇模塊”(來自“結(jié)構(gòu)控制集”),后者是分支結(jié)構(gòu)所必須具有的一部分。因為事先已經(jīng)將接觸田傳感器連接到傳感器輸入端口的通道0(圖2.27),因此在“開關(guān)量輸入輸出設(shè)置”對話框中應(yīng)該對應(yīng)地將通道號選擇為“通道0”,輸入輸出屬性設(shè)置為“輸入”,同時在變量設(shè)置欄設(shè)置了用于讀取開關(guān)狀態(tài)的變量“vl”。
“分支條件設(shè)置”對話框的設(shè)置如圖2.28所示。在該對話框中,設(shè)置判斷分支條件的輸入變量為“v1”,分支條件選擇為“==”(等于),判斷條件是常數(shù)1。如果vl=1,則執(zhí)行左邊的分支程序,否則執(zhí)行右邊的分支程序。從圖2.26可以看出,執(zhí)行左邊的分支程序的結(jié)果是跳出無限循環(huán),而右邊的分支程序的結(jié)果為執(zhí)行實驗2的LED顯示程序。4.運行運行控制器程序,觀察LED的發(fā)光情況和所編程序的預(yù)想是否一致。探究嘗試
查詢與中斷程序在判斷某個事件是否發(fā)生時可以采取查詢或者中斷兩種方式。打個比
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 單據(jù)合同范本
- 演出協(xié)議合同范本
- 關(guān)于房產(chǎn)合同范本
- 商場電梯故障救援應(yīng)急預(yù)案演練方案
- 小學(xué)環(huán)保手工藝創(chuàng)作方案
- 新興游戲類型的內(nèi)容審查制度
- 智慧消防監(jiān)控解決方案
- 理財顧問招聘筆試題及解答(某大型集團(tuán)公司)
- 考慮關(guān)稅差異和風(fēng)險偏好對制造商供應(yīng)鏈轉(zhuǎn)移決策的影響
- 《第1單元 地球運動》試卷及答案-高中地理選擇性必修1-中圖中華地圖版-2024-2025學(xué)年
- 2024病案庫房建設(shè)規(guī)范
- G -B- 17378.7-2007 海洋監(jiān)測規(guī)范 第7部分 近海污染生態(tài)調(diào)查和生物監(jiān)測(正式版)
- (高清版)JTST 325-2024 水下深層水泥攪拌樁法施工質(zhì)量控制與檢驗標(biāo)準(zhǔn)
- 2024年普法學(xué)法知識競賽題庫及參考答案【完整版】
- MOOC 珠寶玉石的鑒別與評價-中國地質(zhì)大學(xué)(武漢) 中國大學(xué)慕課答案
- 2024中國移動咪咕公司校園招聘公開引進(jìn)高層次人才和急需緊缺人才筆試參考題庫(共500題)答案詳解版
- MOOC 英文學(xué)術(shù)寫作實戰(zhàn)-北京大學(xué) 中國大學(xué)慕課答案
- 初中化學(xué)知識點總結(jié)歸納
- 湖北省武漢市東湖高新區(qū)2023-2024學(xué)年七年級下學(xué)期期中數(shù)學(xué)試題(含答案)
- 派駐海外工作員工薪酬福利實施專項方案
- 廣東高職高考數(shù)學(xué)題分類
評論
0/150
提交評論