六足爬行機器人畢業(yè)論文_第1頁
六足爬行機器人畢業(yè)論文_第2頁
六足爬行機器人畢業(yè)論文_第3頁
六足爬行機器人畢業(yè)論文_第4頁
六足爬行機器人畢業(yè)論文_第5頁
已閱讀5頁,還剩34頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

CDIO實驗報告實驗項目名稱:六足爬行機器人所屬課程名稱:工程實踐實驗日期2012年9月1日—12月28日班級姓名(學(xué)號)成 績摘要隨著計算機、網(wǎng)絡(luò)、機械電子、信息、自動化以及人工智能等技術(shù)的飛速發(fā)展,移動機器人的研究進(jìn)入了一個嶄新的階段。在腿型行走機器人的研究中,雙足機器人是研究的比較多的項目,同時,多足機器人的研究也占了很大的比例。多足機器人能夠比較好的適應(yīng)周圍的地形環(huán)境,但是相對于雙足機器人來說,由于要兼顧多條行走機構(gòu)之間的相互配合,在編程過程中就需要考慮多方面的因素,在本項目中,我們使用創(chuàng)新套件的部件組裝了一個六足爬行機器人(新型移動智能機器人),這就涉及到了六條行走走機構(gòu)的協(xié)調(diào)問題。多足機器人能夠直走前方有一個傳感器被遮擋則往反方向運動當(dāng)兩個傳感器被遮擋是則向后運動,實現(xiàn)簡單的避障行走,具有運動穩(wěn)定性好,適應(yīng)能力強,控制方便的優(yōu)點,它可以輕易地跨過比較大的障礙并且機器人所具有的大量的自由度可以是機器人的運動更加靈活,對凹凸不平的地形的適應(yīng)能力更強,復(fù)雜的肢體結(jié)構(gòu)和簡易靈巧的運動控制策略,因此多足機器人在未來有廣闊的前景。關(guān)鍵詞:移動機器人;六足爬行機器人;協(xié)調(diào);避障;穩(wěn)定性;新型移動智能機器人HexapodcrawlingrobotAbstractWiththerapiddevelopmentofcomputer,network,mechanics,electronics,informatics,automationandartificialintelligenttechnologyetc,roboticshasenteredanewstage.Legtypewalkingrobot,abipedrobotismoreresearchprojects,atthesametime,themulti-leggedrobotalsoaccountedforalargeproportion.Multi-leggedrobotisabletobetteradapttotheenvironmentofthesurroundingterrain,bipedrobottotakeintoaccounttheinteractionbetweenthewalkingmechanismintheprogrammingprocess,youneedtoconsidermanyfactorsinthisproject,weuseinnovativesuiteofcomponentsassembledasix-leggedcrawlingrobot,whichinvolvessixwalkingawayagencycoordinationproblem.Multi-leggedrobotabletogostraightinfrontofasensorisblockedthemovementintheoppositedirectionwhenthetwosensorsareobstructedbackwardmovement,simpleobstacleavoidancewalking,movement,goodstability,adaptability,andcontroloftheadvantagesofeasyitcaneasilycrosstheobstaclesandtherobothasalargenumberofdegreesoffreedomcanbethemovementoftherobotismoreflexible,strongeradaptabilityruggedterrain,thecomplexstructureofthelimbsandsimpleandsmartmotioncontrolstrategy,somulti-leggedrobothasbroadprospectsinthefuture.Keywords:Mobilerobot;Hexapodcrawlingrobot;Coordination;obstacleavoidance;stability;MT-UROBOT目錄目錄....................................................4一、引言..............................................61.1課題背景..................................................................61.2本項目研究的意義...........................................................61.3國內(nèi)外發(fā)展?fàn)顩r.............................................................71.4本文的研究方法.............................................................8二、設(shè)計原理及方法比較.................................92.1多足機器人相關(guān)簡介.........................................................92.1.1原理及其實物圖...........................................................92.1.2多足機器人的相關(guān)應(yīng)用....................................................102.2MT-U控制器模塊...........................................................102.2.1自由度..................................................................112.2.2控制按鍵部分............................................................112.3舵機及舵機控制卡模塊......................................................122.3.1舵機原理介紹...........................................................122.3.2舵機控制卡.............................................................132.4微控制器模塊..............................................................142.4.1微控制器................................................................142.4.2擴(kuò)展控制主芯片..........................................................152.5傳感器模塊................................................................162.5.1紅外傳感器..............................................................16三、方案設(shè)計.........................................163.1步態(tài)分析..................................................................163.2步態(tài)設(shè)計..................................................................173.2.1初始化..................................................................173.2.2直行行走(前方無障礙)..................................................173.2.3轉(zhuǎn)向(前方有障礙).....................................................右轉(zhuǎn)(左上方檢測到障礙,或者左邊有過近的障礙)........................左轉(zhuǎn):(右上方檢測到障礙,或右邊有過近的障礙).........................后退(正前方發(fā)現(xiàn)障礙,且無法轉(zhuǎn)彎)....................................183.3程序設(shè)計..................................................................183.3.1主程序設(shè)計..............................................................183.3.2運動程序設(shè)計............................................................19四、 作品調(diào)試......................................... 22五、 調(diào)試結(jié)果 235.1 設(shè)計成果: 235.2后續(xù)研究工作展望: 23六、 結(jié)論 24參考文獻(xiàn) 24致 謝 25附 錄 26一、引言1.1 課題背景本次項目設(shè)計是響應(yīng)我們學(xué)校的 《工程實踐》這課程首次提出的。眾所周知自1999年高校開始擴(kuò)大招生規(guī)模以來,高校畢業(yè)生就業(yè)率日趨下降,而全球性的金融危機更是讓就業(yè)形勢變的更加不容樂觀。其次,當(dāng)今社會所需要的人才是全面發(fā)展的綜合性人才,而我國高校所培養(yǎng)的人才多在綜合能力上有所欠缺,專業(yè)技能也不夠強、動手能力差、不善于去探討研究、合作意思更是差,很難把所學(xué)的專業(yè)知識熟練地應(yīng)用到實際工作中在社會上也很難找到適合自己的工作。所以我們學(xué)校針對就業(yè)問題對我們工科學(xué)院的同學(xué)提出了cdio的項目設(shè)計。項目任務(wù)是以CDID理念為指導(dǎo),在機器人創(chuàng)新實驗室的平臺上設(shè)立多個子項目,融合構(gòu)思、設(shè)計與實現(xiàn),完成機器人設(shè)計與實現(xiàn)的全過程。通過本項目的實施,來鍛煉我們的動手能力,合作意識,養(yǎng)成研究精神,提高我們的綜合能力。本項目設(shè)計涉及到先修課程為《工程導(dǎo)論》、《C語言程序設(shè)計》。在《工程導(dǎo)論》中培養(yǎng)學(xué)生的工程意識,明確工程師擔(dān)當(dāng)?shù)慕巧?,學(xué)習(xí)項目設(shè)計的相關(guān)知識,并通過《C語言程序設(shè)計》,使學(xué)生具備一定的軟件編程能力。在2-5學(xué)期的《工程實踐》課程的學(xué)習(xí)中,相繼學(xué)習(xí)《電路分析基礎(chǔ)》、《模擬電子技術(shù)》、《數(shù)字電路與邏輯設(shè)計》等課程,系統(tǒng)地學(xué)習(xí)電路、模擬電路、數(shù)字電路的基本知識。然后學(xué)習(xí)本課程,將所學(xué)電路、模擬電路、數(shù)字電路、軟件編程等知識運用到《工程實踐》的項目設(shè)計中,使學(xué)生初步具備工業(yè)控制系統(tǒng)的開發(fā)能力。后修課程為《智能小區(qū)》、《智能控制》、《機電控制系統(tǒng)設(shè)計》等,可進(jìn)一步在工業(yè)自動化控制領(lǐng)域完成控制系統(tǒng)的集成設(shè)計與實現(xiàn)。1.2本項目研究的意義人類在認(rèn)識自然、改造自然、推動社會進(jìn)步的過程中,不斷地創(chuàng)造出各種各樣為人類服務(wù)的工具,其中機器人技術(shù)的開發(fā)和研究更具有劃時代的意義?!皺C器人產(chǎn)業(yè)在二十一世紀(jì)將成為和汽車、電腦并駕齊驅(qū)的主干產(chǎn)業(yè)?!睆凝嫶蟮墓I(yè)機器人到微觀的納米機器人,從代表尖端技術(shù)的仿人型機器人到孩子們喜愛的寵物機器人,從民用的機器人到軍用的機器人,機器人正在日益走近人們的生活,成為人類最親密的伙伴。總體來說機器人技術(shù)綜合了機械和精密機械、微電子和計算機、自動控制和驅(qū)動、傳感和信息處理以及人工智能等多種學(xué)科的最新研究成果,是典型的機電一體化技術(shù)。它包括傳感器與感知系統(tǒng)、驅(qū)動、建模與控制、自動規(guī)劃與調(diào)度和計算機系統(tǒng)等。機器人的研究與應(yīng)用水平,是一個國家經(jīng)濟(jì)實力和科技發(fā)展水平的反映,一個國家如果不擁有一定數(shù)量和質(zhì)量的機器人,就不具備產(chǎn)品國際競爭的工業(yè)基礎(chǔ)。因此,世界上許多國家,包括中國在內(nèi),都對機器人的發(fā)展予以高度的重視。本文六足機器人是一種基于仿生學(xué)原理研制開發(fā)的新型足式機器人。新型機器人比傳統(tǒng)的輪式機器人有更好的移動性,它采用類擬生物的爬行機構(gòu)進(jìn)行運動,自動化程度高,具有豐富的動力學(xué)特性。此外,足式機器人相比其它機器人具有更多的優(yōu)點:它可以較易地跨過比較大的障礙(如溝、坎等),并且機器人足所具有的大量的自由度可以使機器人的運動更加靈活,對凹凸不平的地形的適應(yīng)能力更強;足式機器人的立足點是離散的,跟地面的接觸面積較小,因而可以在可達(dá)到的地面上選擇最優(yōu)支撐點,即使在表面極度不規(guī)則的情況下,通過嚴(yán)格選擇足的支撐點,也能夠行走自如。因此,足式步行機器人的研究已成為機器人學(xué)中一個引人注目的研究領(lǐng)域,由于六足機器人強大的運動能力,可以提供給運動學(xué)、仿生學(xué)和機械構(gòu)造原理研究有力的工具。在研究昆蟲運動方式、關(guān)節(jié)承力、穩(wěn)定姿態(tài)調(diào)整的過程中,可以運用本機器人對設(shè)想的蟲體姿態(tài)、運動過程進(jìn)行模擬,最大程度地接近真實,將理論和實踐聯(lián)系起來,從而更好地觀察昆蟲運動模式的優(yōu)點,以及探究哪些現(xiàn)象能夠運用到機械設(shè)計的實踐中去。這對于以上學(xué)科的研究和探索都是十分有意義的。當(dāng)然,我們還可以作為教學(xué)器械,通過研究昆蟲爬行時各腳的運動情況,用機械形式表達(dá)出來,也可以作為仿生玩具及探險、搜救設(shè)備,還可以進(jìn)入細(xì)小管道、地洞中勘察。在研究了昆蟲步態(tài)的基礎(chǔ)上,運用仿生原理,本文借鑒相關(guān)資料,使用一種六足機器人機械結(jié)構(gòu)設(shè)計的新思路,制作了基于這種設(shè)計思路的機器人。相信該機器人可以實現(xiàn)直線運動與轉(zhuǎn)向運動的合理、有效結(jié)合,轉(zhuǎn)向角度、角速度可控,直線行進(jìn)步距、速度可調(diào),行動靈活可靠。就我們學(xué)校而言Cdio工程實踐為我們提供了一個大家合作動手參與制作機器人的平臺;為我們開創(chuàng)了一個了解、認(rèn)識、熟悉機器人技術(shù)的機會;提高了我們的綜合能力;也為我們工科學(xué)生大學(xué)畢業(yè)能夠找到合適的工作,減輕我們的就業(yè)壓力。1.3國內(nèi)外發(fā)展?fàn)顩r機器人技術(shù)的發(fā)展從無到有,從低級到高級,隨著科學(xué)技術(shù)的進(jìn)步而不斷深入發(fā)展。談到足式機器人,當(dāng)然目前主流大多是聯(lián)想到和人相似、有親切感的雙足機器“人”,從某一層面來看,以雙足步行為演化上的一個極為小眾的特例,本身對達(dá)到穩(wěn)定運作控制的困難度很高,從了解「生物出生到可以開始自行運動所需的時間」便可以窺知一二。從另一個角度來看,人類所能自在運動的地表也局限在某一些型態(tài)之中,若要探討如何在各式自然地形上運動的法則,勢必得回過頭來探討多足動物的運動機制。而從物理直覺來評析,單就在崎嶇路面上運動的穩(wěn)定性來探討,采用多足機器人會比較簡單且實際?;谶@一些原因,仿生多足機器人的研發(fā)便有了背后的動機,模仿經(jīng)過長時間演化后動物的構(gòu)造,藉由觀察牠們的運動,了解為什么有如此的動作,再利用機構(gòu)或是控制去完成。在自然界中,我們看到體型較大、有優(yōu)秀運動能力的動物像馬、獵豹、羚羊等等都是四只腳的哺乳類動物,但考慮到穩(wěn)定性卻是六足比較占優(yōu)勢, 只要用簡單的三腳步態(tài)(tripod gait)即可讓重心輕易落在支撐的三角形中。四足動物的腳可能需要比較大的力量才能表現(xiàn)出他的特性, 但人類尚無法仿造出重要的肌肉和控制系統(tǒng),以現(xiàn)有機構(gòu)和馬達(dá)組成的系統(tǒng), 重量太重而無法有效運動。 這時,自由度的選擇以及機構(gòu)設(shè)計便成了一個很重要的課題。 近年來為實現(xiàn)生產(chǎn)過程自動化, 已有不少操作機器人廣泛應(yīng)用于生產(chǎn)過程, 尤其是那些人力所限和人所不及的環(huán)境或危險場所,將是機器 人進(jìn)一步發(fā)展的應(yīng)用領(lǐng)域。日 前,美軍的蜂鳴機 器人(Mini-Drohne) 在巴基斯坦擊斃了一名恐怖分子嫌疑人。在未來,這種昆蟲型機器人有望成為戰(zhàn)場上的主角。在美國,軍事科技研究一般擁有數(shù)億美元的巨資作為后盾。美國國防部高級研究計劃局(DARPA)常為各個大學(xué)和自由經(jīng)濟(jì)體的科研項目慷慨解囊。軍方亦擁有獨立的大型研究實驗室,然而其大部分研究成果從未公之于眾。盡管如此,目前披露的成果足以令人驚嘆不已,智能型戰(zhàn)斗機器人、自動汽車、植入電腦芯片的動物等等令人聯(lián)想起扣人心弦的科幻電影——這一切都有可能在未來的高科技戰(zhàn)場上大顯身手。目前,多足仿生機器人的研究基本上是基于模仿自然界中昆蟲的運動步態(tài)(如螞蟻)來設(shè)計的,通常都會選擇周期規(guī)則步態(tài)作為仿生多足機器人的步態(tài)規(guī)劃依據(jù)。雖然該類多足仿生機器人的腳具有較大的自由度,但是其控制起來較為煩瑣,并且不能精確的定位。中國與國外相比,目前還存在一定的差距,雖然掌握了機器人操作機的設(shè)計制造技術(shù)、控制系統(tǒng)硬件和軟件設(shè)計技術(shù)、運動學(xué)和軌跡規(guī)劃技術(shù),生產(chǎn)了部分機器人關(guān)鍵元器件,但可靠性低于國外產(chǎn)品;機器人應(yīng)用工程起步較晚,應(yīng)用領(lǐng)域窄,生產(chǎn)線系統(tǒng)技術(shù)與國外比有差距。中國的智能機器人和特種機器人也取得了不少成果。但是在多傳感器信息融合控制技術(shù)、遙控加局部自主系統(tǒng)遙控機器人、智能裝配機器人、機器人化機械等的開發(fā)應(yīng)用方面則剛剛起步。隨著社會文明程度的提高,對機器人的要求也會越來越高。中國要做好充分的準(zhǔn)備迎接新的技術(shù)挑戰(zhàn)。1.4本文的研究方法本文六足機器人是一種基于仿生學(xué)原理研制開發(fā)的新型足式機器人。機器人行走:步態(tài):六足機器人采用經(jīng)典三角步態(tài), 左1,3,右2組成第一組,右1,3,左2組成第二組。分別對兩組足操作,分別完成抬腿與跨步的動作。一、直走:(測距傳感器收到前方無障礙信號)抬腿:第一組足抬腿,第二組足下?lián)瓮瓿蓽?zhǔn)備工作;前行:第一組前推,第二組向后推,帶動機器人前行;復(fù)位,第二次抬腿:第二組足抬腿,第一組足下?lián)瓮瓿蓽?zhǔn)備工作;前行(2):第二組前推,第一組向后推,帶動機器人前行;以上完成第一步行走,循環(huán)執(zhí)行完成連貫行走動作;二、右轉(zhuǎn):(左上方檢測到障礙,或者左邊有過近的障礙)抬腿:第一組足抬腿,第二組足下?lián)瓮瓿蓽?zhǔn)備工作;轉(zhuǎn)彎:左邊腳前推,右邊腳略微后推,通過左右腳相互間的扭力完成右轉(zhuǎn)動作;復(fù)位,第二次抬腿:第二組足抬腿,第一組足下?lián)瓮瓿蓽?zhǔn)備工作;重復(fù)完成轉(zhuǎn)彎動作三、左轉(zhuǎn):(右上方檢測到障礙,或右邊有過近的障礙)抬腿:第一組足抬腿,第二組足下?lián)瓮瓿蓽?zhǔn)備工作;轉(zhuǎn)彎:右邊腳前推,左邊腳略微后推,通過左右腳相互間的扭力完成右轉(zhuǎn)動作;復(fù)位,第二次抬腿:第二組足抬腿,第一組足下?lián)瓮瓿蓽?zhǔn)備工作;重復(fù)完成轉(zhuǎn)彎動作二、設(shè)計原理及方法比較2.1多足機器人相關(guān)簡介機器人技術(shù)集機械、電子、計算機、材料、傳感器、智能控制等多種技術(shù)于一體,代表了機電一體化技術(shù)的核心成就。目前許多國家都投入大量的人力物力對它的基礎(chǔ)理論和應(yīng)用技術(shù)進(jìn)行了廣泛的研究,機器人技術(shù)水平的高低和應(yīng)用成就,在一定程度上體現(xiàn)了一個國家科技發(fā)展水平的高低,它的應(yīng)用在很大程度上可以促進(jìn)工業(yè)基礎(chǔ),特別是裝備制造業(yè)技術(shù)水平和能力的提高。近年來,隨著人類對在復(fù)雜環(huán)境中既具備高移動能力,又具高可靠性,且易于擴(kuò)展的移動平臺日益迫切的需求,有相當(dāng)多的研究探討兩足至多足機器人的應(yīng)用,過去兩足機器人多為輪型機構(gòu)系統(tǒng),其運動局限于二維平面,無法克服許多困難山區(qū)崎嶇的地形。因此,人類開始思考創(chuàng)造類似人類、昆蟲、動物等運動模式的仿生爬行機器人。仿生六足爬行機器人是一種基于仿生學(xué)原理研制開發(fā)的新型足式機器人。與傳統(tǒng)的輪式或履帶式機器人相比,足式機器人自由度多、可變性大、結(jié)構(gòu)復(fù)雜、控制繁瑣,但其在運動特性方面具有獨特的優(yōu)點:首先是足式機器人具有較好的機動性,對不平地面的適應(yīng)能力十分突出,由于其立足點是離散的,與地面的接觸面積較小,因而可以在可能達(dá)到的地面上選擇最優(yōu)支撐點,從而能夠相對容易地通過松軟地面(如沼澤和沙漠)以及跨越比較大的障礙(如溝、坎、臺階等);其次是足式機器人的運動系統(tǒng)可以實現(xiàn)主動隔振,允許機身運動軌跡與足運動軌跡解藕。盡管地面高低不平,機身的運動仍可達(dá)到相當(dāng)平穩(wěn);再次是在不平地面和松軟地面上的行進(jìn)速度較高,而能耗較少。正是由于上述特點,足式機器人正日益成為機器人技術(shù)領(lǐng)域的研究熱點。2.1.1原理及其實物圖從下方的圖2.1中可以看到我們的六足爬行機器人的大致組裝圖,需要的組裝配件包括:MT-U控制器,MT-U控制器擴(kuò)展板,兩個舵機控制器,另外還需要兩根四針的串口線將兩個舵機控制器連接到MT-U控制器擴(kuò)展板上的串口1和2;六足爬行機器人需要12個舵機組成機器人的六條腿型行走機構(gòu),每個腿型機構(gòu)需要兩個舵機支撐,每個舵機控制板控制六個舵機;在六足爬行機器人前方還需兩個紅外傳感器, 通過傳感器檢測以避開機器人前方的障礙物。圖 多足機器人的相關(guān)應(yīng)用在自然界和人類社會中存在一些人類無法到達(dá)的地方和可能危及人類生命的特殊場合。如行星表面、災(zāi)難發(fā)生礦井、防災(zāi)救援和反恐斗爭等,對這些危險環(huán)境進(jìn)行不斷地探索和研究,尋求一條解決問題的可行途徑成為科學(xué)技術(shù)發(fā)展和人類社會進(jìn)步的需要。地形不規(guī)則和崎嶇不平是這些環(huán)境的共同特點。從而使輪式機器人和履帶式機器人的應(yīng)用受到限制。以往的研究表明輪式移動方式在相對平坦的地形上行駛時,具有相當(dāng)?shù)膬?yōu)勢運動速度迅速、平穩(wěn),結(jié)構(gòu)和控制也較簡單,但在不平地面上行駛時,能耗將大大增加,而在松軟地面或嚴(yán)重崎嶇不平的地形上,車輪的作用也將嚴(yán)重喪失移動效率大大降低。為了改善輪子對松軟地面和不平地面的適應(yīng)能力,履帶式移動方式應(yīng)運而生但履帶式機器人在不平地面上的機動性仍然很差行駛時機身晃動嚴(yán)重。與輪式、履帶式移動機器人相比在崎嶇不平的路面步行機器人具有獨特優(yōu)越性能在這種背景下多足步行機器人的研究蓬勃發(fā)展起來。而仿生步行機器人的出現(xiàn)更加顯示出步行機器人的優(yōu)勢。多足步行機器人的運動軌跡是一系列離散的足印運動時只需要離散的點接觸地面對環(huán)境的破壞程度也較小可以在可能到達(dá)的地面上選擇最優(yōu)的支撐點對崎嶇地形的適應(yīng)性強。正因為如此多足步行機器人對環(huán)境的破壞程度也較小。輪式和履帶式機器人的則是一條條連續(xù)的轍跡。崎嶇地形中往往含有巖石、泥土、沙子甚至峭壁和陡坡等障礙物可以穩(wěn)定支撐機器人的連續(xù)路徑十分有限,這意味著輪式和履帶式機器人在這種地形中已經(jīng)不適用。多足步行機器人的腿部具有多個自由度使運動的靈活性大大增強。它可以通過調(diào)節(jié)腿的長度保持身體水平也可以通過調(diào)節(jié)腿的伸展程度調(diào)整重心的位置因此不易翻倒穩(wěn)定性更高。當(dāng)然多足步行機器人也存在一些不足之處。比如為使腿部協(xié)調(diào)穩(wěn)定運動從機械結(jié)構(gòu)設(shè)計到控制系統(tǒng)算法都比較復(fù)雜相比自然界的節(jié)肢動物仿生多足步行機器人的機動性還有很大差距。2.2MT-U控制器模塊如圖2.2所示2.2.1自由度獨立驅(qū)動電源/電池供電:6V,2000mAH,專用充電器,自動檢測充電狀態(tài),過流過熱保護(hù)控制方式:獨立控制芯片,最多可達(dá)12自由度控制通訊方式:串口控制(UART),可直接與MT-U機器人通訊;有2個小燈,它們指示 MT-UROBOT所處的狀態(tài)。圖控制按鍵部分開關(guān)按鈕:控制MT-UROBOT電源開關(guān)的按鈕,按此按鈕可以打開或關(guān)閉機器人電源;電源指示燈:按下MT-UROBOT的開關(guān)后,這個燈會發(fā)綠光,這時可以與機器人進(jìn)行交流了;充電指示燈:當(dāng)你給機器人充電時,充電指示燈發(fā)紅光;充電口:將充電器的相應(yīng)端插入此口,再將另一端插到電源上即可對機器人充電;下載口:充電口旁邊的下載口用于下載程序到機器人主板上,使用時只需將串口連接線的相應(yīng)端插入下載口,另一端與計算機連接好,這樣機器人與計算機就連接起來了;復(fù)位/MTOS按鈕:這是個復(fù)合按鈕,用于下載操作系統(tǒng)和復(fù)位。當(dāng)串口通信線接插在下載口上時,按擊此按鈕,機器人系統(tǒng)默認(rèn)為此操作為下載操作系統(tǒng);如果你想使用其復(fù)位功能則需要將通信線拔下,按擊此按鈕,機器人系統(tǒng)認(rèn)為此操作為系統(tǒng)復(fù)位;運行鍵:打開電源后,按擊運行鍵,機器人就可以運行內(nèi)部已存儲的程序,按照你的指令行動;擴(kuò)展電源:在主控盒得前側(cè)有專門的備用電源接口,用戶可以直接MT-UROBOT的連接和檢測MT-UROBOT的連接;除了運行MT-UROBOT的情況外,很多情況下MT-UROBOT是要和計算機連接以后使用的。連接MT-UROBOT是一項基本操作,下面是連接的標(biāo)準(zhǔn)步驟:取出串口連接線。一頭接MT-UROBOT的“下載口”插口,另一頭接PC機箱后的9針串口。如果你的電腦后面沒有空余9針串口,請咨詢電腦維護(hù)人員。(可以把暫時不用的設(shè)備移開,騰出一個串口。)打開MT-UROBOT,按擊控制按鍵中的“開關(guān)”鍵,見到“電源”指示燈發(fā)光即可。開機后液晶顯示屏LCD顯示正常。有兩個選擇:“運行”和“下載”用戶可以通過左側(cè)的上下按鈕進(jìn)行選擇,運行 OK后進(jìn)入運行或者下載。4.如果機器內(nèi)有多個其他程序,在運行后會有 1、2、、、一共8 個程序,通過上下選擇按鈕可以選擇其中某一個程序,按運行按鈕就可以運行。如果液晶屏是空白的,檢查電池是否有電,接觸是否良好,請充電或更換電池。如果沒有小太極圖或者小太極圖不跳動,說明操作系統(tǒng)沒有正常運行,按復(fù)位鍵重啟系統(tǒng)(注意此時拔掉通信線)。5.MT-UROBOT的檢測:雙擊程序運行圖標(biāo),會要求你新建(或打開)“流程圖”或“C語言程序”,選擇進(jìn)入“流程圖”界面,這樣就進(jìn)入了圖形化編程界面。在此界面中你可以簡單操作一個流程圖標(biāo),然后編譯、下載,就可以等待出現(xiàn)“下載成功!”,說明自檢程序已經(jīng)下載到機器人的操作系統(tǒng)中?;蛘哌x擇“C語言程序”,進(jìn)入程序編寫界面,輸入編寫的程序,然后編譯、下載,就可以等待出現(xiàn)“下載成功!”,說明自檢程序已經(jīng)下載到機器人的操作系統(tǒng)中。自檢程序下載完畢后,我們可以開始檢測MT-UROBOT了。拔下串口連接線,并將機器人帶到安全的地方(空曠,無障礙平地),進(jìn)行自檢。2.3舵機及舵機控制卡模塊2.3.1 舵機原理介紹型號與相關(guān)參數(shù):MG995金屬齒輪結(jié)構(gòu) 雙滾珠軸承連接線長度30厘米尺寸:40mmX20mmX36.5mm重量:62g技術(shù)參數(shù):無負(fù)載速度0.13秒/60

0.17秒/60度(6.0V)

度(4.8V)

2.3

舵機扭矩:11KG使用溫度:-30~~+60攝氏度死區(qū)設(shè)定:4微秒工作電壓:3.0V-7.2V舵機是一個通過輸出軸的轉(zhuǎn)動來控制物體轉(zhuǎn)動的裝置。它在特定編碼的驅(qū)使下可以轉(zhuǎn)動到工作范圍內(nèi)的任意給定位置。因為它的輕便,位置控制簡易且精確,在機器人中使用尤多。多舵機的協(xié)調(diào)工作可滿足機器人的多自由度要求。舵機可以實現(xiàn)0~180°的旋轉(zhuǎn),當(dāng)軸處于正確位置時,舵機將停止運動;當(dāng)所在位置不對時,電路則驅(qū)動電機運轉(zhuǎn)到需求位置。舵機是采用比例調(diào)節(jié)方式控制速度。當(dāng)舵機轉(zhuǎn)動的距離大時,則加載在舵機上的能量就大,反之亦然。而舵機的轉(zhuǎn)動角度控制是由加載在控制線上的脈沖周期完成的, 即所謂的脈沖編碼調(diào)制。舵機設(shè)定為每隔 20ms接受一個脈沖,這樣的話,實際脈沖長度就可用來控制舵機轉(zhuǎn)動的角度。如圖 2.4,例如1.5ms的脈沖可使舵機轉(zhuǎn)動 90°。圖2.4 舵機轉(zhuǎn)角與脈沖周期關(guān)系圖當(dāng)舵機安裝好后,需要獲取其初始位置值,為編程做準(zhǔn)備;通常情況下,將舵機電源線直接接到舵機控制卡上,開啟控制卡電源,舵機自動復(fù)位時的位置作為初始位置,并參照此位置組裝電路以及編寫驅(qū)動程序。2.3.2 舵機控制卡控制卡最多可以同時控制八個舵機的運動,在上電狀態(tài)下(舵機控制器不和其他的控制部件進(jìn)行通訊),8個舵機控制端口分別輸出周期為20ms,寬度為1.5ms的脈寬調(diào)制波。因此,按照舵機的控制原理,如果各個控制端口上接有舵機,則各個舵機輸出角為90度??刂瓶ㄐ枰邮諒拇诎l(fā)來的控制信息,控制信息中包括舵機要轉(zhuǎn)動的角度以及其他的通訊協(xié)議。此時舵機控制卡就是一個外接控制器控制信號與舵機動作之間的轉(zhuǎn)換板。(1)端口定義舵機控制卡上有八個舵機接口,分別定義為(Servo1~Servo8);每個舵機輸出口可以控制舵機轉(zhuǎn)動(-90°~+90°);外接控制器上的串口(UART)直接和AT89C2051的串口相連,采用9600的波特率,此接口可以和其他采用TTL電平的設(shè)備進(jìn)行通訊。(2)通訊協(xié)議a 接收數(shù)據(jù):每一幀控制指令:4個字節(jié);第一個字節(jié):0xAF---- 數(shù)據(jù)幀起始字節(jié);第二個字節(jié):0x00~0x08---- 舵機序號(Servo1~Servo8);第三個字節(jié):0x00~0xB4---- 旋轉(zhuǎn)角度設(shè)定(-90°~+90°);第四個字節(jié):0xFA----數(shù)據(jù)幀結(jié)束字節(jié)。返回數(shù)據(jù):當(dāng)正確接收一幀數(shù)據(jù)之后,伺服舵機控制器會返回一個字節(jié)數(shù)據(jù)做為接收確認(rèn)信息。返回數(shù)據(jù)為:大寫字母‘ R’的ASCII碼。說明:舵機控制板通過串口和外部控制器進(jìn)行通訊,外部控制器要讓某個舵機轉(zhuǎn)動一定的角度,則需要按照一定的通訊協(xié)議向向舵機控制板發(fā)送控制信號。例如:要使用外接控制器的串口2,令第4個舵機轉(zhuǎn)動40度,就可以使用下面的控制方法。voidsend(intcom,intmotoID,intangle){serial_send(com,0x00AF);serial_send(com,motoID);serial_send(com,(char)angle);serial_send(com,0x00FA);}send(2,4,40);圖2.5 舵機控制卡2.4微控制器模塊大學(xué)版智能機器人計算機硬件的設(shè)計策略是盡量選擇高速、功能齊全、可靠、周邊設(shè)備集成度高的微控制器。大學(xué)版智能機器人微控制器采用TI公司生產(chǎn)的高速數(shù)字信號處理器TMS320LF2407A。同時,充分考慮到軟件開發(fā)工具問題。因為沒有優(yōu)秀方便的軟件開發(fā)工具,硬件只能成為專有系統(tǒng),而無法成為開發(fā)平臺。公司創(chuàng)新性的在DSP2407A上實現(xiàn)的自下載功能,使我們擁有了純軟件開發(fā)調(diào)試的優(yōu)秀工具C語言。C語言即可用于開發(fā)高層應(yīng)用軟件,又便于開發(fā)低層驅(qū)動,還能交互調(diào)試。同時還兼容了匯編語言的編程功能。2.4.1微控制器TI公司生產(chǎn)的TMS320系列DSP的體系結(jié)構(gòu)專為實時信號處理而設(shè)計,該系列DSP將實時處理能力和控制器外設(shè)功能集于一身,適合于應(yīng)用在控制系統(tǒng)中。TMS320系列中TMS320LF2407A是TI公司最新推出的高性能16位DSP,是240X家族中的新成員,是定點DSPC2000平臺系列中的一員,專門為電機控制與運動控制數(shù)字化優(yōu)化實現(xiàn)而設(shè)計。它集C2XX內(nèi)核增強型TMS320設(shè)計結(jié)構(gòu)及適用于控制的低功耗、高性能、優(yōu)化外圍電路于一體,CPU內(nèi)部采用增強型哈佛結(jié)構(gòu),四級流水線作業(yè),相對于過去的16的微處理器和微控制器,具有更高的性能和可靠性。主控制CPU是TQFP封裝,具有144個引腳。如圖3.23CPUTMS320LF2407A的CPU是基于TMS320C2XX的16位定點低功耗內(nèi)核。體系結(jié)構(gòu)采用四級流水線技術(shù)加快程序的執(zhí)行,可在一個處理周期內(nèi)完成乘法、加法和移位運算。其中央算術(shù)邏輯單元(CALU)是一個獨立的算術(shù)單元,它包括一個32位算術(shù)邏輯單元(ALU)、一個32位累加器、一個16×16位乘法器(MUL)和一個16位桶形移位器,同時乘法器和累加器內(nèi)部各包含一個輸出移位器。完全獨立于CALU的輔助寄存器單元(ARAU)包含八個16位輔助寄存器,其主要功能是在CALU操作的同時執(zhí)行八個輔助寄存器(AR7至AR0)上的算術(shù)運算。兩個狀態(tài)寄存器ST0和ST1用于實現(xiàn)CPU各種狀態(tài)的保存。TMS320LF2407A采用增強的哈佛結(jié)構(gòu),芯片內(nèi)部具有六條 16 位總線,即程序地址總 線(PAB)、數(shù)據(jù)讀地址總線(DRAB)、數(shù)據(jù)寫地址總線(DWAB)、 圖2.6主控制DSP芯片程序讀總線(PRDB)、數(shù)據(jù)讀總線(DRDB)、數(shù)據(jù)寫總線(DWEB),其程序存儲器總線和數(shù)據(jù)存儲器總線相互獨立, 支持并行的程序和操作數(shù)尋址,因此CPU的讀/寫可在同一周期內(nèi)進(jìn)行,這種高速運算能力使自適應(yīng)控制、卡爾曼濾波、神經(jīng)網(wǎng)絡(luò)、遺傳算法等復(fù)雜控制算法得以實現(xiàn)。存儲器配置TMS320LF2407A地址映象被組織為三個可獨立選擇的空間:程序存儲器(64K)、數(shù)據(jù)存儲器(64K)、輸入/輸出(I/O)空間(64K)。這些空間提供了共192K字的地址范圍。其片內(nèi)存儲器資源包括:544字×16位的雙端口數(shù)據(jù)/程序DARAM、2K字×16位的單端口數(shù)據(jù)/程序SARAM、片內(nèi)32K×16位的Flash程序存儲器、256字×16位片上BootROM、片上Flash/ROM具有可編程加密特性。TMS320LF2407A的指令集有三種基本的存儲器尋址方式:立即尋址方式、直接尋址方式、間接尋址方式。2.4.2 擴(kuò)展控制主芯片擴(kuò)展控制主芯片采用復(fù)雜可編程邏輯芯片( CPLD)EPM7064STC100,EPM7064S是Altera 公司推出的速度非??斓母咝阅?、高集成度可編程邏輯器件,屬于MAX7000系列,是特殊的可編程ASIC芯片。在第二代MAX結(jié)構(gòu)基礎(chǔ)上,采用先進(jìn)的CMOSEEPROM技術(shù)制造的,是100引腳的TQFP封裝,芯片內(nèi)部是一個包含有大量邏輯單元的陣列,采用了連續(xù)式的布線結(jié)構(gòu),因而可以通過設(shè)計模型精確地計算信號在器件內(nèi)部的時延。具有集成度高、工作速度快和在線編程方便的特性,適合于時序、組合邏輯電路以及輸入/輸出口擴(kuò)展的應(yīng)用;8通道10位模數(shù)轉(zhuǎn)換(A/D),轉(zhuǎn)換速度500ns;6通道數(shù)字量輸入(DI),每個通道具有光電隔離功能;5通道數(shù)字量輸出(DO),每個通道電流可達(dá)500mA;2路異步通信接口(串口SCI);CAN總線通信接口;3路MTBUS總線接口(包括并行接口、IIC接口、同步通信接口(SPI));擴(kuò)展卡電源級聯(lián)接口;擴(kuò)展卡信號級聯(lián)接口;5V電源擴(kuò)展接口;CPLD可編程JTAG口。圖2.7擴(kuò)展版功能圖2.5傳感器模塊2.5.1紅外傳感器測量射程范圍:10-80cm最大允許角度:>40°電源電壓:4.5-5.5V平均功耗:33-40mA5.峰值功耗:約200mA圖2.8更新頻率/周期:25Hz/40ms模擬輸出噪聲:<200mV精度和采集的AD位數(shù)以及轉(zhuǎn)化計算公式相關(guān),10AD一般能達(dá)到0.1CM.測量距離與輸出模擬電壓關(guān)系:2.4V~0.4VMT-UROBOT機器人的紅外傳感器共包含兩種器件:紅外發(fā)射管和紅外接收管可以安裝于MT-UROBOT機器人的正前方,兩只紅外發(fā)射管安裝于紅外接收管的兩側(cè);同時紅外發(fā)射管也可以安裝于MT-UROBOT機器人的正前方,兩只紅外接受管安裝于紅外發(fā)射管兩側(cè)。而且他們也可以安裝到滅火風(fēng)扇支架上面,因而可以說MT-UROBOT機器人提供給了用戶更多的發(fā)揮自主創(chuàng)新的空間。紅外發(fā)射管可以發(fā)出紅外線,紅外線在遇到障礙后被反射回來,紅外接收管接收到被反射回來的紅外線以后,通過 A/D轉(zhuǎn)換送入CPU進(jìn)行處理。MT-UROBOT機器人的紅外傳感器能夠看到前方 10cm~80cm,90°范圍內(nèi)的比210mmx150mm面積大的障礙物,如果障礙物太小太細(xì)、或者在它的可視范圍圖2.9以外,它可就沒法看到了。在MT-UROBOT機器人的可視范圍內(nèi),它的可視距離是可以調(diào)整的,具體參見后面?zhèn)鞲衅鞑糠?。三、方案設(shè)計3.1步態(tài)分析六足步行機器人的步態(tài)是多樣的,其中三角步態(tài)是六足步行機器人實現(xiàn)步行的典型步態(tài)。三角步態(tài)走法是六足昆蟲的基本走法,其規(guī)則是每次落腳和提腳前進(jìn)時相應(yīng)的一組足都是正三角型,這可以確保步態(tài)的穩(wěn)定。六足昆蟲在地面上行進(jìn)時,多以交替的三角步態(tài)運動,即在步行時將六只足分為兩組,以身體一側(cè)的前足、后足與另一側(cè)的中足作為一組,其他三只足作為另一組。在同一時間內(nèi)只有一組的三條足起行走作用:前足用爪固定物體后拉動蟲體前進(jìn),中足用以支撐并舉起所屬一側(cè)的身體,后足則推動蟲體前進(jìn),同時使蟲體轉(zhuǎn)向,行走時蟲體向前并稍向外轉(zhuǎn),三條足同時行動,形成一個穩(wěn)定的三角形,然后再與另一組的三條足交替進(jìn)行,通過兩組足交替地擺動和支撐,從而實現(xiàn)昆蟲的快速運動。其步態(tài)如圖3.1所示。圖3.1 三角步態(tài)運動示意圖3.2步態(tài)設(shè)計3.2.1初始化項目設(shè)計共使用12個舵機用于步態(tài)實現(xiàn)。每條腿上有兩個舵機,分別控制髖關(guān)節(jié)和膝關(guān)節(jié)的運動,舵機安裝呈正交,構(gòu)成垂直和水平方向的自由度。由于腿只有水平和垂直平面的運動自由度,所以只考慮利用三角步態(tài)實現(xiàn)直線行走。分別給12個舵機編號(left1~left6 ,right1~right6 ),從頭至尾部分別有奇數(shù)號舵機控制垂直方向,偶數(shù)號舵機控制水平方向運動。分組:左1,3,右2組成第一組,右1,3,左2組成第二組。分別對兩組足操作,分別完成抬腿與跨步的動作。編程控制伺服舵機旋轉(zhuǎn)角度(0°~180°),初始化設(shè)置所有舵機處于90°狀態(tài),此時機器人處于待機狀態(tài)。3.2.2 直行行走(前方無障礙)抬腿:第一組足抬腿,第二組足下?lián)瓮瓿蓽?zhǔn)備工作;前行:第一組前推,第二組向后推,帶動機器人前行;復(fù)位,第二次抬腿:第二組足抬腿,第一組足下?lián)瓮瓿蓽?zhǔn)備工作;前行(2):第二組前推,第一組向后推,帶動機器人前行;以上完成第一步行走,循環(huán)執(zhí)行完成連貫行走動作,如圖 3.1所示;3.2.3 轉(zhuǎn)向(前方有障礙) 右轉(zhuǎn)(左上方檢測到障礙,或者左邊有過近的障礙)抬腿:第一組足抬腿,第二組足下?lián)瓮瓿蓽?zhǔn)備工作;轉(zhuǎn)彎:左邊腳前推,右邊腳略微后推,通過左右腳相互間的扭力完成右轉(zhuǎn)動作;復(fù)位,第二次抬腿:第二組足抬腿,第一組足下?lián)瓮瓿蓽?zhǔn)備工作;重復(fù)完成右轉(zhuǎn)動作 左轉(zhuǎn):(右上方檢測到障礙,或右邊有過近的障礙)抬腿:第一組足抬腿,第二組足下?lián)瓮瓿蓽?zhǔn)備工作;轉(zhuǎn)彎:右邊腳前推,左邊腳略微后推,通過左右腳相互間的扭力完成右轉(zhuǎn)動作;復(fù)位:第二次抬腿:第二組足抬腿,第一組足下?lián)瓮瓿蓽?zhǔn)備工作;重復(fù)完成左轉(zhuǎn)動作 后退(正前方發(fā)現(xiàn)障礙,且無法轉(zhuǎn)彎)抬腿:第一組足抬腿,第二組足下?lián)瓮瓿蓽?zhǔn)備工作;前行:第一組后推,第二組向前推,帶動機器人后退;復(fù)位,第二次抬腿:第二組足抬腿,第一組足下?lián)瓮瓿蓽?zhǔn)備工作;前行(2):第二組后推,第一組向前推,帶動機器人后退;以上完成第一步行走,循環(huán)執(zhí)行完成連貫行走動作;3.3程序設(shè)計3.3.1 主程序設(shè)計軟件的主要功能是使機器人在向前行進(jìn)的過程中能夠避開障礙物,在本項目中一共采用兩個遠(yuǎn)紅外避障傳感器實現(xiàn)(具體實現(xiàn)過程參見步態(tài)設(shè)計)。本項目程序采用模塊化設(shè)計,通過程序調(diào)用實現(xiàn)功能,具體調(diào)用函數(shù)如下:#include<stdio.h>110;//舵機控制卡控制協(xié)議#includeintangle_right5=70;{"ingenious.h"intangle_right6=70;serial_send(com,0intangle_left1=90;x00AF);intcount=0;intangle_left2=80;serial_send(com,JintAD1=0;intangle_left3=120;ointID);intAD2=0;intangle_left4=90;serial_send(com,(intAD7=0;intangle_left5=90;char)angle);intAD8=0;intangle_left6=100;serial_send(com,0x00FA);voidzhizou();}intangle_right1=20;voidyouzou();//六條腿型結(jié)構(gòu)的初始voidzuozou();voidmain()化角度voidhoutui();{intangle_right2=90;serial_init(9600)intangle_right3=90;voidsend(intcom,int;intangle_right4=JointID,intangle)send(2,1,angle_right1);",AD2);",AD2);//初始化六條腿型結(jié)構(gòu)send(2,2,angle_riMprintf(7,"AD6=1"Mprintf(5,"ght2);,AD1);AD7=%d",AD7);send(2,3,angle_ri}ght3);elseifMprintf(5,"AD8=%dsend(2,4,angle_ri(AD2>200&&AD1<",AD8);ght4);180)send(2,5,angle_ri{Mprintf(7,"AD6=1"ght5);,AD1);send(2,6,angle_riyouzou();}ght6);elsesend(1,1,angle_leMprintf(3,"if(AD1>250&&AD2>ft1);AD1=%d",AD1);250)send(1,2,angle_le{ft2);Mprintf(3,"AD2=%dsend(1,3,angle_le",AD2);sleep(10);ft3);send(1,4,angle_leMprintf(5,"houtui();ft4);AD7=%d",AD7);send(1,5,angle_leMprintf(3,"ft5);Mprintf(5,"AD8=%dAD1=%d",AD1);send(1,6,angle_le",AD8);ft6);Mprintf(3,"AD2=%dsleep(10);Mprintf(7,"AD6=1"",AD2);while(1),AD1);{AD1=AD(1);}Mprintf(5,"AD2=AD(2);elseifAD7=%d",AD7);if(AD1<(AD1>200&&AD2<180&&AD2<180)180)Mprintf(5,"AD8=%d{{",AD8);zhizou();zuozou();Mprintf(7,"AD6=1",AD1);Mprintf(3,"Mprintf(3,"}AD1=%d",AD1);AD1=%d",AD1);}}Mprintf(3,"AD2=%dMprintf(3,"AD2=%d3.3.2 運動程序設(shè)計六足步行機器人采用對稱結(jié)構(gòu)設(shè)計,其程序也具有相當(dāng)強的相似性,其完成各個動作均能通過改變相應(yīng)舵機的轉(zhuǎn)動角度實現(xiàn),所以在此只列出直行程序示例,完整程序請參閱附錄;直行程序例程:voidzhizou()

if(angle_left1<12

}{

0)

}while(count

!=do

{

1);{/*垂直方向*/if(count==0){ // 右1、3

angle_left1=angle_left1+2;

/*/*

另外三條腿的動作水平方向*/do

*/左2著地向下伸腳

60°

{send(1,1,angle_le

if(count==1)20)

if(angle_right1<1

ft1);

}

右邊

{//支腳前推1、3左邊2

60°{if(angle_left5<12

if(angle_right2<1angle_right1=angl

0)

20)e_right1+2;

{

{send(2,1,angle_right1);

angle_left5=angle_left5+2;

angle_right2=angle_right2+2;}if(angle_left3>60

ft5);

send(1,5,angle_le

send(2,2,angle_right2);)

}

}{if(angle_right3>2

if(angle_left4>60angle_left3=angle

0)

)_left3-2;

{

{ft3);

send(1,3,angle_le

angle_right3=angle_right3-2;

angle_left4=angle_left4-2;}if(angle_right5<1

send(2,3,angle_right3);

ft4);

send(1,4,angle_le20)

}

}{angle_right5=angle_right5+2;send(2,5,angle_right5);}

if(angle_left1>=120&&angle_left5>=120&&angle_right3<=60&&angle_right1>=120&&angle_left3<=90&&angle_right5>=120){

if(angle_right6<100){angle_right6=angle_right6+2;//左邊右2著地向上抬腳

1、360°

1;

count

=

send(2,6,angle_right6);}

}60°左邊

//向后移腳1、3右邊2

2;

}

左腳

//右腳1、3向上抬腳

2,90°}if(angle_left2<11

}while(count

!=

if(angle_left1>700)

2);

){

/*

垂直方向*/

{doangle_left2=angle_left2+2;

{

if(count==2)

angle_left1=angle_left1-2;{//左腳

2、右send(1,2,angle_le

腳1、3收回腳

send(1,1,angle_left2);

ft1);}

if(angle_right1>1

})if(angle_left6<13

{

if(angle_left5>700)

){

angle_right1=angle_right1-2;

{angle_left6=angle_left6+2;

send(2,1,angle_right1);

angle_left5=angle_left5-2;send(1,6,angle_le

}

send(1,5,angle_left6);

ft5);}

if(angle_left3<17

}0)if(angle_right4>8

{

if(angle_right3<10)

50){

angle_left3=angle_left3+2;

{angle_right4=angle_right4-2;

send(1,3,angle_le

angle_right3=angle_right3+2;ft3);send(2,4,angle_right4);

}

send(2,3,angle_right3);}

if(angle_right5>4

}0)if(angle_left2>=110&&angle_left6>=130&&angle_right4<=80&&angle_right2>=120&&angle_left4<=60&&angle_right6>=100){

{angle_right5=angle_right5-2;send(2,5,angle_right5);

if(angle_left1<=70&&angle_left5<=70&&angle_right3>=150&&angle_right1<=0&&angle_left3>=170&&angle_right5<=40){count=

}

count

=3;

}}

send(1,6,angle_le}

if(angle_right6>4

ft6);}while(count

!=

0)

}3);

{/*

移動水平方向

*/

if(angle_right4<1do{

angle_right6=angle_right6-2;

40)

{if(count==3)腳左邊

{//向前前移右2右邊1、3

send(2,6,angle_right6);

angle_right4=angle_right4+2;}0)

if(angle_right2>6

左腳左邊

//向后移動1、3右邊2

send(2,4,angle_right4);{

}if(angle_left2>50angle_right2=angle_right2-2;send(2,2,angle_right2);}

){angle_left2=angle_left2-2;

if(angle_left2<=50&&angle_left6<=70&&angle_right4>=140&&angle_right2<=60&&angle_left4>=120&&angle_right6<=40)send(1,2,angle_le

{if(angle_left4<12

ft2);

count

=0)

}

0;//重復(fù)開始動作{

}if(angle_left6>70

}angle_left4=angle

)

}while(count

!=_left4+2;

{

0);}send(1,4,angle_le

angle_left6=angleft4);

_left6-2;四、作品調(diào)試本研究在比較了基于行為的體系結(jié)構(gòu)、 基于知識的體系結(jié)構(gòu)和混合式控制結(jié)構(gòu)之后,選擇混合式控制結(jié)構(gòu),將計劃作為一種行為 ,與實時避障行為間采取并行處理方式。相對應(yīng)地,傳感器檢測區(qū)域為避障區(qū)如果在避障區(qū)有障礙物 ,則由應(yīng)激避障模塊采取相應(yīng)的避障行為 ;該模塊具有最低優(yōu)先級 ,在無任務(wù)情況下 ,機器人根據(jù)傳感器選擇無障礙物方向直線運行 。目的是在全局環(huán)境下 ,暫時無任務(wù)的機器人同樣保持清醒的意識和一定的機動性 ,避免沖突 。趨向目標(biāo)模塊 。完成對機器人各模塊進(jìn)行任務(wù)分配和協(xié)調(diào)。 當(dāng)完成特定任務(wù)時,該模塊選擇規(guī)劃模塊,此時機器人采用的是基于知識的體系結(jié)構(gòu), 當(dāng)完成一般任務(wù)時,該模塊選擇實時避障模塊,此時機器人采用的是基于行為的體系結(jié)構(gòu)。針對不同的任務(wù),機器人可以采用不同的處理方式, 提高了系統(tǒng)的可靠性和反應(yīng)能力。 實時避障模塊。機器人在運動過程中 ,如果紅外線傳感器測得近障區(qū)有障礙物存在, 則機器人暫時停止趨向子目標(biāo)的運動 ,實施應(yīng)激避障行為,之后重新規(guī)劃目標(biāo)。經(jīng)多次試驗證實:機器人步態(tài)平穩(wěn)、行走良好,能自動識別障礙物和躲避障礙物,在出現(xiàn)突發(fā)障礙物時,機器人有一段思考時間,會出現(xiàn)一個小小的停頓,作出應(yīng)急反應(yīng)。機器人避障行走時智能控制,適應(yīng)性強、抗干擾能力好。五、調(diào)試結(jié)果5.1 設(shè)計成果:1.制作了一臺小型六足機器人,該機器人長 45cm,高15cm,寬25cm,每只腿上有兩個自由度,通過串口通訊發(fā)送控制字符,實現(xiàn)機器人的運動試驗。通過物理樣機的調(diào)試,驗證了所規(guī)劃運動姿態(tài)的可行性,獲得了設(shè)計、控制和調(diào)試六足機器人的直接經(jīng)驗,為以后的研究工作積累了必要的技術(shù)儲備。5.2后續(xù)研究工作展望:本次課題的完成構(gòu)建了六足機器人的物理樣機, 雖然取得了一定的成果,但是,還屬于初步研究,今后要在以下方面取得改進(jìn)和進(jìn)一步的研究。結(jié)構(gòu)的進(jìn)一步優(yōu)化和選材的改進(jìn)改進(jìn)制作機器人的材料,選用更輕巧堅固的材料,使機器人的重量減輕;選擇更加緊湊的結(jié)構(gòu)配置,使得機器人的物理樣機性能更加堅固、穩(wěn)定、美觀。驅(qū)動方式的改進(jìn)本次課題完成的機器人是外接電源供電的。 下步的研究應(yīng)該使機器人的電源內(nèi)置與機器人本體當(dāng)中。 只有機器人本體脫離了電源線的限制,才能實現(xiàn)機器人的大范圍自主活動,但是自帶電源的容量有限制了機器人的活動時間。增加機器人的功能如運用六維力傳感器、攝像頭、紅外傳感器等,增加機器人對外部信息的搜集和處理能力,使得機器人具有自主識別環(huán)境的能力, 在識別的基礎(chǔ)上,根據(jù)客觀環(huán)境的變化自主地選擇合適的步態(tài)和行進(jìn)的路徑。隨著傳感器系統(tǒng)的建立,使機器人具有語音識別能力和圖像的識別能力。不斷完善程序,使其具有繪圖、寫字等簡單的功能。六、 結(jié)論我們組的同學(xué)完成了機器人的組裝, 并且完成了復(fù)雜的編程,使智能機器人能夠避開障礙物行走。但由于我們的機器人是六足的,所以比較耗電。簡單的說就是能夠直走前方有一個傳感器被遮擋則往反方向運動當(dāng)兩個傳感器被遮擋是則向后運動,具有運動穩(wěn)定性好,適應(yīng)能力強,控制方便的優(yōu)點,它可以輕易地跨過比較大的障礙并且機器人所具有的大量的自由度可以是機器人的運動更加靈活,對凹凸不平的地形的適應(yīng)能力更強, 復(fù)雜的肢體結(jié)構(gòu)和簡易靈巧的運動控制策略,因此多足機器人在未來有廣闊的前景。參考文獻(xiàn)郭鴻勛、陳學(xué)東.六足步行機器人機械系統(tǒng),機械工程學(xué)報,2008.雷靜桃、高峰、崔瑩.多足步行機器人的研究現(xiàn)狀及展望.北京,機械設(shè)計學(xué)報,2006.羅孝龍、羅慶生等.仿生六足機器人多電機控制系統(tǒng)的研究與設(shè)計.計算機測量與控[期刊].2008.蔣新松,機器人學(xué)導(dǎo)論[M],遼寧,遼寧科學(xué)技術(shù)出版社,1993.徐小云,顏國正,丁國清.微型六足仿生機器人及其三角步態(tài)的研究【J].光學(xué)精密工程,2002,8(10):392.393漆向軍,陳霖,劉明丹.控制六足仿生機器人三角步態(tài)的研究[J】四川農(nóng)業(yè)大學(xué)信息與工程技術(shù)學(xué)院:2007(4)六足爬蟲機器人說明,教學(xué)型六足爬行機器人參考手冊致 謝在論文即將完成之際,我想向曾經(jīng)給我?guī)椭椭С值娜吮硎局孕牡母兄x。首先感謝控制工程學(xué)院,給我提供這么好的學(xué)習(xí)生活環(huán)境,在校學(xué)習(xí)和生活的日子是我一生中一段難忘的經(jīng)歷。本文是在老師的熱情關(guān)心和指導(dǎo)下完成的,他淵博的知識和嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度使我受益匪淺。對順利完成本課題起到了極大的作用。葉老師積極樂觀的生活態(tài)度,以誠相待的處事原則,給我留下了深深的印象,在此向他表示我最衷心的感謝!感謝生我養(yǎng)我的父母,他們給了我無私的愛,我深知他們?yōu)槲仪髮W(xué)所付出的巨大犧牲和努力。祝福他們,以及那些給予我關(guān)愛的長輩,祝他們幸福、安康!最后向在百忙之中評審本文的各位專家、老師表示衷心的感謝!附錄全套完整程序#include<stdio.h>voidhoutui();ght5);#includesend(2,6,angle_ri"ingenious.h"voidsend(intcom,intght6);JointID,intangle)send(1,1,angle_leintcount=0;//舵機控制卡控制協(xié)議ft1);intAD1=0;{send(1,2,angle_leintAD2=0;serial_send(com,0ft2);intAD7=0;x00AF);send(1,3,angle_leintAD8=0;serial_send(com,Jft3);ointID);send(1,4,angle_leserial_send(com,(ft4);intangle_right1=20;char)angle);send(1,5,angle_le//六條腿型結(jié)構(gòu)的初始serial_send(com,0ft5);化角度x00FA);send(1,6,angle_leintangle_right2=90;}ft6);intangle_right3=90;sleep(10);intangle_right4=voidmain()while(1)110;{{AD1=AD(1);intangle_right5=70;serial_init(9600)AD2=AD(2);intangle_right6=70;;AD7=AD(7);intangle_left1=90;send(2,1,angle_riAD8=AD(8);intangle_left2=80;ght1);intangle_left3=120;//初始化六條腿型結(jié)構(gòu)if(AD1<intangle_left4=90;send(2,2,angle_ri180&&AD2<180)intangle_left5=90;ght2);{intangle_left6=100;send(2,3,angle_right3);zhizou();voidzhizou();send(2,4,angle_rivoidyouzou();ght4);Mprintf(3,"voidzuozou();send(2,5,angle_riAD1=%d",AD1);Mprintf(3,"AD2=%d",AD2);Mprintf(5,"AD7=%d",AD7);

Mprintf(3,"AD1=%d",AD1);Mprintf(3,"AD2=%d",AD2);

/*六足行走的第一步,下面六條if 語句控制三條腿的動作,根據(jù)三點確定一個面的原理,三條腿能支撐六足平臺的穩(wěn)定*/Mprintf(5,"AD8=%d",AD8);

Mprintf(5,"AD7=%d",AD7);

voidzhizou(){Mprintf(7,"AD6=1",AD1);

Mprintf(5,"AD8=%d",AD8);

do{}else if(AD2>200&&AD1<

Mprintf(7,"AD6=1",AD1);

if(count==0){180)

}

if(angle_right1<1{

else

20)if(AD1>250&&AD2>

{250)youzou();

{

angle_right1=angle_right1+2;sleep(10);Mprintf(3,"AD1=%d",AD1);

houtui();

send(2,1,angle_right1);}Mprintf(3,"AD2=%d",AD2);

Mprintf(3,"AD1=%d",AD1);

if(angle_left3>60)Mprintf(5,"AD7=%d",AD7);

Mprintf(3,"AD2=%d",AD2);

{Mprintf(5,"AD8=%d",AD8);

Mprintf(5,"AD7=%d",AD7);

angle_left3=angle_left3-2;send(1,3,angle_leMprintf(7,"AD6=1"

Mprintf(5,"AD8=%d

ft3);,AD1);

",AD8);

}}else if

Mprintf(7,"AD6=1"

if(angle_right5<1(AD1>200&&AD2<

,AD1);

20)180)

}

{{angle_right5=angl}

e_right5+2;zuozou();

}send(2,5,angle_ri

count=

}ght5);

1;}

}

if(angle_left2<11}

0)if(angle_left1<12

}while(count

!=

{0)

1);{

/*的動作*/

另外三條腿

angle_left2=angle_left2+2;angle_left1=angle

do_left1+2;

{

send(1,2,angle_lesend(1,1,angle_le

if(count==1){

ft2);

}ft1);}

if(angle_right2<1

if(angle_left6<1320)

0)if(angle_left5<12

{

{0){

angle_right2=angle_right2+2;

angle_left6=angle_left6+2;angle_left5=angle_left5+2;

send(2,2,angle_ri

send(1,6,angle_leght2);

ft6);send(1,5,angle_le

}

}ft5);}

if(angle_left4>60

if(angle_right4>8)

0)if(angle_right3>2

{

{0){

angle_left4=angle_left4-2;

angle_right4=angle_right4-2;angle_right3=angle_right3-2;

ft4);

send(1,4,angle_le

send(2,4,angle_right4);send(2,3,angle_ri

}

}ght3);}if(angle_left1>=120&&angle_left5>=120&&angle_right3<=60&&angle_right1>=120&&a

if(angle_right6<100){angle_right6=angle_right6+2;

if(angle_left2>=110&&angle_left6>=130&&angle_right4<=80&&angle_right2>=120&&angle_left4<=60&&angle_right6>=100)ngle_left3<=90&&angl

{e_right5>=120){

send(2,6,angle_right6);

2;

count

=})3);}{}while(count!=do2);angle_left1=angle{_left1-2;if(count==3)do{{send(1,1,angle_leif(count==2)ft1);if(angle_right2>6{}0){if(angle_right1>1if(angle_left5>70))angle_right2=angl{{e_right2-2;angle_right1=anglangle_left5=anglesend(2,2,angle_rie_right1-2;_left5-2;ght2);send(2,1,angle_risend(1,5,angle_le}ght1);ft5);if(angle_left4<12}}0){if(angle_left3<17if(angle_right3<10)50)angle_left4=angle{{_left4+2;angle_left3=angleangle_right3=anglsend(1,4,angle_le_left3+2;e_right3+2;ft4);send(1,3,angle_lesend(2,3,angle_ri}ft3);ght3);if(angle_right6>4}}0){if(angle_right5>4if(angle_left1<=70)0&&angle_left5<=70&&angle_right6=angl{angle_right3>=150&&ae_right6-2;ngle_right1<=0&&anglangle_right5=angle_left3>=170&&angle_send(2,6,angle_rie_right5-2;right5<=40)ght6);{}send(2,5,angle_ricount=ght5);3;if(angle_left2>50}})}{if(angle_left1>70}while(count!=angle_left2=angle_left2-2;

{send(1,2,angle_le

voidzuozou(){

angle_left1=angle_left1+2;ft2);

}

do{

send(1,1,angle_leif(angle_left6>70

if(count==0){

ft1);

}){

if(angle_right1<1

if(angle_left5<1220)

0)

溫馨提示

  • 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

提交評論