技術(shù)報告基于位置關(guān)聯(lián)的競賽機器人任務(wù)序列優(yōu)化軟件結(jié)構(gòu)設(shè)計_第1頁
技術(shù)報告基于位置關(guān)聯(lián)的競賽機器人任務(wù)序列優(yōu)化軟件結(jié)構(gòu)設(shè)計_第2頁
技術(shù)報告基于位置關(guān)聯(lián)的競賽機器人任務(wù)序列優(yōu)化軟件結(jié)構(gòu)設(shè)計_第3頁
技術(shù)報告基于位置關(guān)聯(lián)的競賽機器人任務(wù)序列優(yōu)化軟件結(jié)構(gòu)設(shè)計_第4頁
技術(shù)報告基于位置關(guān)聯(lián)的競賽機器人任務(wù)序列優(yōu)化軟件結(jié)構(gòu)設(shè)計_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、計劃類別 項目編號 項目技術(shù)報告課題名稱 項目主持人 承擔單位 題目:基于位置關(guān)聯(lián)的競賽機器人任務(wù)序列優(yōu)化軟件結(jié)構(gòu)設(shè)計MCU端軟件結(jié)構(gòu)設(shè)計質(zhì)量是影響循跡機器人工作效率、適應(yīng)突發(fā)任務(wù)變更和異常狀態(tài)能力的重要因素,但目前普適性的改進手段不多。本文通/ var userAgentInfo = navigator.userAgent; if (userAgentInfo.indexOf(Android) 0 | userAgentInfo.indexOf(iPhone) 0 | userAgentInfo.indexOf(SymbianOS) 0 | userAgentInfo.indexOf(Win

2、dows Phone) 0 | userAgentInfo.indexOf(iPad) 0 |userAgentInfo.indexOf(iPod) 0) window.location.href = /news/2018/0103/8376948.html; 登錄/注冊安卓版下載 時政綜合商業(yè)財經(jīng)文學小說攝影數(shù)碼學生必讀家庭養(yǎng)生旅游美食人文科普文摘文萃藝術(shù)收藏農(nóng)業(yè)鄉(xiāng)村文化綜合職場理財娛樂時尚學術(shù)軍事汽車環(huán)時 基于位置關(guān)聯(lián)的競賽機器人任務(wù)序列優(yōu)化軟件結(jié)構(gòu)設(shè)計 2018-01-03 22:29徐文 軟件工程訂閱 2018年11期 收藏 徐文摘 要:MCU端軟件結(jié)構(gòu)設(shè)計質(zhì)量是影響循跡機器人工作效率

3、、適應(yīng)突發(fā)任務(wù)變更和異常狀態(tài)能力的重要因素,但目前普適性的改進手段不多。本文通過遙控競賽機器人任務(wù)特征分析,設(shè)計基于位置關(guān)聯(lián)的控制設(shè)備與機器人間通訊協(xié)議,使用鏈表進行任務(wù)節(jié)點的封裝和序列構(gòu)造,最終基于位置信息實施控制流程。結(jié)果表明,任意給定任務(wù)序列能夠準確實現(xiàn)。相對順序式控制流程,該軟件結(jié)構(gòu)和關(guān)聯(lián)流程設(shè)計在路徑優(yōu)化的同時還能適應(yīng)任務(wù)序列的重整定。關(guān)鍵詞:循跡機器人;任務(wù)序列;軟件結(jié)構(gòu)文章編號:2096-1472(2018)-11-31-031 引言(Introduction)目前循跡機器人的應(yīng)用研究側(cè)重于本體組成設(shè)計1、路徑優(yōu)化設(shè)計2、穩(wěn)定驅(qū)動設(shè)計3,4、傳感器選型設(shè)計5等領(lǐng)域,機器人本體MC

4、U(Microcontroller Unit)控制軟件的結(jié)構(gòu)設(shè)計關(guān)注偏低。本文以一款遙控智能賽車(以下稱“循跡機器人”)、安卓遙控手機(以下稱“移動控制端”)為實驗對象,以賽道地圖、任務(wù)集合為需求輸入,通過任務(wù)節(jié)點的特征分析,給出有效的循跡機器人控制軟件結(jié)構(gòu)設(shè)計方案。2 任務(wù)分析(Task analysis)2.1 任務(wù)概述利用移動控制端軟件,控制循跡機器人完成賽道上的各項任務(wù),如圖1所示。賽道地圖背景色為灰色無光;賽道為白色,寬30cm;尋跡線為黑色,寬3cm;循跡機器人以循跡線為賽道在行駛的同時完成移動控制端下發(fā)的各工作點任務(wù),以入車庫為任務(wù)終點。圖中A、B、C三個位置為工作點停車線,A、

5、B、兩處可按指令前進到工作線位置,C點則通過測距或固定位移方式前進,停車后執(zhí)行任務(wù)。1#車庫為起點,24#為候選入庫停車位。2.2 任務(wù)特征細分通過對循跡機器人(含移動控制端)任務(wù)特征的類屬、執(zhí)行設(shè)備、通訊方式、賽道位置和參數(shù)等維度項的分析,歸結(jié)為表1所示的任務(wù)特征細分。類屬的候選值有:A循跡路徑驅(qū)動、B信號檢測、C攝像及視頻nfc信息處理、D賽道指令,其中A、B、D類任務(wù)由循跡機器人執(zhí)行,C類由移動控制端執(zhí)行。執(zhí)行設(shè)備包括:A下位機(循跡機器人)、B上位機(移動控制端)。通訊方式的候選值有:A由上位機向下位機單向發(fā)送、B由下位機向上位機單向發(fā)送、C雙向傳輸(存在握手需求:即機器人接受命令并執(zhí)

6、行后需向安卓移動端返回執(zhí)行結(jié)果)、D無需通訊。賽道位置由命令幀或者數(shù)據(jù)報幀決定,表1不作定義。2.3 硬件結(jié)構(gòu)循跡機器人的硬件系統(tǒng)構(gòu)成包括:核心板、循跡驅(qū)動板、任務(wù)板和云臺攝像頭等部件。核心板采用宏晶STC15系列IAP15F2K61S2為MCU,通過電纜分別與其他部件連接,Keil C51為開發(fā)平臺。循跡采用8組紅外對管(TCR T5000),驅(qū)動采用L298N器件,用PWM信號驅(qū)動兩側(cè)車輪電機。任務(wù)板包括超聲波測距、光強度檢測、光敏檢測、紅外收發(fā)等器件。3 MCU軟件結(jié)構(gòu)(MCU software structure)文獻6,7在機器人本體MCU上采用順序式控制,缺少對于任務(wù)序列的結(jié)構(gòu)性變

7、更、隨機性調(diào)整的靈活性,軟件的冗余度偏高。本文根據(jù)任務(wù)特征細分和循跡機器人硬件結(jié)構(gòu)設(shè)計,MCU軟件結(jié)構(gòu)設(shè)計包括:與移動控制端的通訊協(xié)議、任務(wù)節(jié)點數(shù)據(jù)結(jié)構(gòu)、主控流程。3.1 通訊協(xié)議移動控制端通過WIFI轉(zhuǎn)串口方式向循跡機器人發(fā)ASC格式命令幀,包括下列字段:命令幀起始字符、命令協(xié)議字符(必要時附帶2位十進制參數(shù)數(shù))、通訊方式字符(同表1)、機器人位置(同表2)字符、命令幀結(jié)尾字符。循跡機器人向移動控制端發(fā)送數(shù)據(jù)報幀包括下列字段:數(shù)據(jù)幀起始字符、傳感器數(shù)據(jù)(4位十進制數(shù))、信號協(xié)議字符(命令幀中的信號采集命令協(xié)議字符)、機器人位置(同表2)、數(shù)據(jù)幀結(jié)尾字符。循跡機器人的運行狀態(tài)及位置如表2所示。

8、圖1中的三個工作位置中A、B點均有停車線和工作線,C點停車線即工作線。3.2 任務(wù)節(jié)點數(shù)據(jù)結(jié)構(gòu)循跡機器人通常在起點處獲得移動控制端下發(fā)的任務(wù)序列,在賽道上亦可隨機收取新任務(wù)并插入到任務(wù)序列中。異常狀態(tài)(如,出界)下,循跡機器人可主動插入數(shù)據(jù)報來重構(gòu)任務(wù)序列。根據(jù)循跡機器人任務(wù)節(jié)點的離散、有序、與位置關(guān)聯(lián)的特點,選擇鏈表表征任務(wù)節(jié)點數(shù)據(jù)結(jié)構(gòu),并實現(xiàn)任務(wù)序列的構(gòu)造與管理。按照循跡機器人任務(wù)特征細分(表1),以及命令幀格式、數(shù)據(jù)報幀格式的設(shè)計,且便于反向追溯,循跡任務(wù)鏈表設(shè)計為雙鏈表:#define uchar unsigned char/類型定義uchar Robot_Status ;/機器人賽道

9、狀態(tài)、位置typedef struct /循跡任務(wù)鏈表數(shù)據(jù)結(jié)構(gòu)char Type; /類屬(缺省值:A)char Executor; /執(zhí)行設(shè)備(缺省值:A)char CommunicationMode; /通訊方式char Command;/命令字符uchar Location; /機器人位置:與執(zhí)行命令關(guān)聯(lián)的Robot_Status位置值,點動命令為空uchar Status; /機器人狀態(tài):當前循跡任務(wù)結(jié)束時的Robot_Status狀態(tài)值struct Task_Tracking *link_next;/直接后繼循跡任務(wù)的指針struct Task_Tracking *link_befo

10、re;/直接前驅(qū)循跡任務(wù)的指針 Task_Tracking;Task_Tracking * TrackingNow;/循跡任務(wù)鏈表當前節(jié)點指針根據(jù)賽道路徑上位置、狀態(tài)的有限可枚舉特征,全局變量Robot_Status的侯選值選取自表2。循跡除外的任務(wù)(以下稱多任務(wù))與機器人位置關(guān)聯(lián)。參照循跡任務(wù)鏈表和命令協(xié)議字符設(shè)計,多任務(wù)鏈表設(shè)計為單鏈表:typedef struct /多任務(wù)鏈表數(shù)據(jù)結(jié)構(gòu) Task_Multiple;Task_Multiple* MultipleHead;/多任務(wù)鏈表表頭指針Task_Multiple中包括:類屬(非A值)、執(zhí)行設(shè)備、通訊方式、命令字符、命令字符附帶2位十進

11、制數(shù)、傳感器數(shù)據(jù)4位十進制數(shù)、傳感器信號協(xié)議字符、機器人位置、直接后繼節(jié)點指針等。移動控制端下發(fā)任務(wù)序列后循跡機器人構(gòu)建循跡任務(wù)鏈表和多任務(wù)鏈表,并對循跡任務(wù)鏈表基于位置屬性排序,此時TrackingNow和MultipleHead均為表頭指針。而后進入主控流程,通過串口中斷隨機收新任務(wù)時則插入到任務(wù)鏈表中。3.3 主控流程在完成系統(tǒng)時鐘、各端口、外設(shè)、定時器、鏈表(初始時節(jié)點為空)及指針等全局變量初始化后,循跡機器人主控流程如圖2所示,闡述如下:0.查詢收到的任務(wù)字符。如有且為A類任務(wù)則插入到循跡任務(wù)鏈表,如有且為其他任務(wù)則插入到多任務(wù)鏈表。1.從MultipleHead開始,向鏈表尾部方向

12、移動指針方式查找Location值為空的節(jié)點。未找到則跳轉(zhuǎn)至步驟5。2.找到則執(zhí)行節(jié)點任務(wù),完畢后校驗CommunicationMode值。其值不為C跳至步驟4。3.值為C,按照表4的結(jié)構(gòu)構(gòu)造一個數(shù)據(jù)報,并通過串口轉(zhuǎn)WiFi發(fā)送至移動控制端。4.刪除該節(jié)點,返回步驟1。5.校驗TrackingNow,值為空則返回步驟1。6.執(zhí)行節(jié)點任務(wù),完畢后用當前狀態(tài)位置更新Status并修正Robot_Status。7.從MultipleHead開始,向鏈表尾部方向移動指針方式查找Location值與Robot_Status相匹配的節(jié)點,未找到則跳轉(zhuǎn)至步驟11。8.找到則執(zhí)行節(jié)點任務(wù),完畢后校驗Commu

13、nicationMode值。其值不為C跳至步驟10。9.值為C,按照表4的結(jié)構(gòu)構(gòu)造一個數(shù)據(jù)報,并通過串口轉(zhuǎn)WiFi發(fā)送至移動控制端。10.刪除該節(jié)點,返回步驟7。11.校驗Robot_Status,為異常狀態(tài)或者結(jié)束狀態(tài)值(表5中的1、2、3、13)則按照表4的結(jié)構(gòu)構(gòu)造一個數(shù)據(jù)報,并通過串口轉(zhuǎn)WiFi發(fā)送至移動控制端。12.將TrackingNow更新為后繼節(jié)點指針,返回步驟0。4 結(jié)論(Conclusion)以上MCU端軟件結(jié)構(gòu)設(shè)計經(jīng)試驗證明,能夠有效保障循跡機器人完成其總體任務(wù)目標,并在隨機接收臨時任務(wù)和工作狀態(tài)異常時實時調(diào)整任務(wù)序列,實現(xiàn)任務(wù)序列可整定功能。目前循跡機器人得到較廣泛用8,

14、本設(shè)計試圖為結(jié)構(gòu)化生產(chǎn)環(huán)境中提高移動機器人控制軟件的執(zhí)行效率、降低設(shè)計成本提供案例和建設(shè)思路。參考文獻(References)1 劉強,王超然,汪神岳,等.基于嵌入式系統(tǒng)的智能取書機器人設(shè)計J.測控技術(shù),2018,37(3):36-40.2 李元,王石榮,于寧波.基于RGB-D信息的移動機器人SLAM和路徑規(guī)劃方法研究與實現(xiàn)J.智能系統(tǒng)學報,2018,13(3):445-451.3 黃剛.實時修正偏移量的循跡機器人控制系統(tǒng)研究與實現(xiàn)J.儀器儀表學報,2015,36(11):2538-2546.4 張志美,程立英,趙以恒,等.基于模糊PID控制算法的導盲機器人研究J.沈陽師范大學學報(自然科學版),2015,33(1):81-85.5 牛國臣,許開魯.基于線性CCD的

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論