行走機(jī)器人功能分析與調(diào)試畢業(yè)設(shè)計_第1頁
行走機(jī)器人功能分析與調(diào)試畢業(yè)設(shè)計_第2頁
行走機(jī)器人功能分析與調(diào)試畢業(yè)設(shè)計_第3頁
行走機(jī)器人功能分析與調(diào)試畢業(yè)設(shè)計_第4頁
行走機(jī)器人功能分析與調(diào)試畢業(yè)設(shè)計_第5頁
已閱讀5頁,還剩38頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、河北能源職業(yè)技術(shù)學(xué)院行走機(jī)器人功能分析與調(diào)試摘要:雖然機(jī)器人的研究、制作和使用已經(jīng)有幾十年的歷史,但是雙足直立行走的機(jī)器人世界上很少。主要因為穩(wěn)定性控制及雙足行走控制非常復(fù)雜,但為了研究出與人更加接近的機(jī)器人,這是必須克服的難關(guān)。主要是解決直立行走機(jī)器人腿部平衡的問題,包括硬件設(shè)計和軟件的設(shè)計,側(cè)重于對硬件的設(shè)計,即著重介紹直立行走機(jī)器人腿部平衡系統(tǒng)的相關(guān)知識、設(shè)計目的、設(shè)計思路、方案的確定、原理設(shè)計及分析、硬件調(diào)試。行走機(jī)器人是最典型的機(jī)電一體化數(shù)字化裝備,是集機(jī)械、電子、控制、計算機(jī)、傳感器、人工智能等多學(xué)科先進(jìn)技術(shù)于一體的智能機(jī)器人。它代表了機(jī)器人的尖端技術(shù),是當(dāng)代科技的研究熱點之一。目

2、前,國內(nèi)雙足機(jī)器人研究與世界先進(jìn)水平相比還有較大差距,特別是在教學(xué)機(jī)器人方面的研究更是寥寥無幾。為改善這種局面,提高我國高校師生的綜合技能,本論文在研制教學(xué)雙足機(jī)器人方面進(jìn)行了有益的嘗試和大膽的實踐,設(shè)計并制作出了一款適用于高校教學(xué)開發(fā)使用的小型雙足行走機(jī)器人。 本文詳細(xì)闡述了雙足機(jī)器人機(jī)構(gòu)設(shè)計和控制系統(tǒng)的研發(fā)過程,包括控制系統(tǒng)的硬件電路設(shè)計和制作,機(jī)器人雙足的外形設(shè)計與加工,以及雙足行走機(jī)器人的驅(qū)動和控制技術(shù)。結(jié)合對人類行走步態(tài)的研究,規(guī)劃了雙足機(jī)器人行走的姿態(tài)及軌跡,推導(dǎo)了雙足機(jī)器人穩(wěn)定步行的條件,并據(jù)此進(jìn)行了實物實驗,實現(xiàn)了穩(wěn)定的低速靜態(tài)步行。 本論文重點討論了靜態(tài)步行的算法設(shè)計和仿真,

3、詳細(xì)分析了基于零力矩點的雙足機(jī)器人動態(tài)步行運(yùn)動規(guī)劃方法,根據(jù)運(yùn)動學(xué)約束條件計算出各個關(guān)節(jié)的運(yùn)動軌跡。使用matlab軟件,以zmp點的軌跡作為約束條件,進(jìn)行了前向離線規(guī)劃試驗和zmp誤差補(bǔ)償試驗,實驗證明本文所采用的步態(tài)規(guī)劃方法可以滿足機(jī)器人連續(xù)穩(wěn)定行走的要求。教學(xué)雙足機(jī)器人運(yùn)動平穩(wěn),系統(tǒng)控制精度高,具有良好的教學(xué)功能和廣闊的應(yīng)用開發(fā)前景。 本文針對教學(xué)雙足行走機(jī)器人方面進(jìn)行了深入的研究,對他人今后進(jìn)行教學(xué)雙足機(jī)器人的研究提供了一套系統(tǒng)的研究方法,對同行具有借鑒和引導(dǎo)作用。目錄序11、自動機(jī)器人平臺總述21.1自動機(jī)器人平臺的總體構(gòu)成31.2自動機(jī)器人平臺按鍵部分41.3機(jī)器人平臺的充電42、

4、自動機(jī)器人平臺系統(tǒng)結(jié)構(gòu)42.1自動機(jī)器人平臺機(jī)械部分42.1.1機(jī)器人平臺機(jī)械部分組成42.1.2機(jī)器人平臺運(yùn)動詳解52.2自動機(jī)器人平臺控制系統(tǒng)62.2.1概述63、自動機(jī)器人平臺的裝配和調(diào)試133.1機(jī)器人裝配過程133.1.1主動輪電機(jī)裝配133.1.2電機(jī)安裝至鋁合金架板133.1.3從動輪及傳感器安裝133.1.4電路板的安裝133.2機(jī)器人平臺的調(diào)試144、可行性的上部機(jī)器手臂設(shè)計方案145、驅(qū)動軟件的編寫及調(diào)試176、取得的成果38序2012年2月,在寒假期間,比賽用機(jī)器人平臺運(yùn)抵學(xué)校,學(xué)校驗收后交付使用,3月份開學(xué)初,我和于長波組織學(xué)生開始籌備學(xué)習(xí)機(jī)器人平臺的使用,研究了平臺的

5、硬件電路和軟件程序的編寫,因今年機(jī)器人比賽的題目沒定下來,只能等待。2012年5月16日接到全國職業(yè)院校技能大賽規(guī)程,離正式比賽僅有20天。需要添購?fù)ㄓ嵞K等部分設(shè)備,否則不準(zhǔn)參賽,之后立即申報購買部分設(shè)備,包括通訊模塊,交通燈,工件,電源等,同時組織學(xué)生學(xué)習(xí)研究通訊模塊用法,并對參賽規(guī)程進(jìn)行分析,規(guī)劃比賽場地,制定可行性設(shè)計方案,三易其稿并著手采購機(jī)器人上部機(jī)構(gòu)零件。期間攻堅克難無數(shù),同學(xué)們非常辛苦。在規(guī)劃場地時,比賽場地尺寸:大小為8米*6米。其中外圍檔板高10cm,材質(zhì)為木工板,上面貼有30mm寬的白色引導(dǎo)條。我們采用普通透明膠帶加普通打印紙來代替比賽用的白色一道條,實驗室場地場地不夠大

6、,僅有6米*5米多。怎么辦,若對每個方格都按比例縮小,那么小車將無法完成正常轉(zhuǎn)向,我們分析比賽規(guī)則后,規(guī)劃出小車的理想行駛軌跡,把部分不重要的方格由原來的0.5米*0.5米壓縮到0.5米*0.2米,這樣原來的的正方形格畸變成長方形,整個比賽場地嚴(yán)重變形,經(jīng)過大家的多次精密計算,最終解決了比賽模擬場地面積不夠的問題,同時白色導(dǎo)條也以最小的經(jīng)濟(jì)成本得以解決。之后我們分析了機(jī)器人上部機(jī)構(gòu)傳動形式,分析各種電機(jī)的運(yùn)動特點,排除了使用伺服電機(jī),直流減速電機(jī)等驅(qū)動形式。查找各種電機(jī)的型號,價位并上網(wǎng)采購步進(jìn)電機(jī)及其配套的驅(qū)動器,之后又分析鏈條,齒輪,導(dǎo)條的傳動的特點,確定采用導(dǎo)條為支撐和傳動骨架,并上網(wǎng)查

7、找配件型號同時進(jìn)行采購。咨詢多位老教師(盧恩貴,李瑞春,魏國江等),排除了諧波齒輪,滾珠絲杠等多種傳動方法最后敲定了機(jī)器人手部形式,如何能有效的夾取工件,由于目前技術(shù)原因,機(jī)器人很多技術(shù)都不成熟,沒有太多的有效資料可供參考,我們邊想邊做,花費(fèi)很多時間,進(jìn)展很慢。另外采購角鋁,電鉆,方鐵管等配件,期間費(fèi)了很大周折。1、自動機(jī)器人平臺總述自動機(jī)器人平臺是專門為高職類機(jī)器人大賽提供的一個統(tǒng)一的機(jī)器人底盤。使用者可以根據(jù)大賽任務(wù)的要求,在此平臺上進(jìn)一步設(shè)計制作各種抓取、投放機(jī)構(gòu),利用機(jī)器人平臺提供的主控制板實現(xiàn)整體機(jī)器人的控制。1.1自動機(jī)器人平臺的總體構(gòu)成機(jī)器人平臺包括主動車輪、從動車輪、鋁合金框架

8、、直流電機(jī)、電池、電路板以及安裝在底部的16路傳感器組成。1.2自動機(jī)器人平臺按鍵部分自動機(jī)器人平臺上共有三個按鍵,12v電源開關(guān)、24v電源開關(guān)以及啟動按鈕。在開機(jī)時,注意先打開12v電源開關(guān),再打開24v電源開關(guān),最后按下啟動按鈕,機(jī)器人開始運(yùn)行;關(guān)機(jī)時,先關(guān)閉24v電源開關(guān),再關(guān)閉12v電源開關(guān)。1.3機(jī)器人平臺的充電機(jī)器人平臺的電源為三節(jié)鉛酸電池。電池充滿電壓可以達(dá)到13v,額定工作電壓12v。其中一節(jié)電池專門給主控制板和傳感器信號處理板供電,另2節(jié)電池串聯(lián)成24v,給電機(jī)驅(qū)動板供電,用于驅(qū)動機(jī)器人上的各種電機(jī),為了提高整體的抗干擾性能,12v和24v的電池不要共地。電池可重復(fù)充電10

9、00次以上。充電時需先取出電池。我們可按下面步驟進(jìn)行:1.關(guān)閉機(jī)器人平臺的電源;2.拔掉連接線,將電池依次取出,充電。3重新裝上充好的電池。每個平臺配備了一個充電器,可以給一個電池充電,充電時,充電器上面的指示燈呈藍(lán)色,充電完畢呈紅色。2、自動機(jī)器人平臺系統(tǒng)結(jié)構(gòu)2.1自動機(jī)器人平臺機(jī)械部分2.1.1機(jī)器人平臺機(jī)械部分組成機(jī)器人平臺的機(jī)械部分是指機(jī)器人執(zhí)行具體功能時所要用到的機(jī)械部件,共有以下幾個部分:1.主動輪機(jī)器人平臺的主動輪有兩只,金屬鋁芯,外包三根o型圈,能夠完成向前直走,向后轉(zhuǎn)彎,左轉(zhuǎn),右轉(zhuǎn)等這些平地上的技術(shù)動作。2.從動輪機(jī)器人平臺有1只從動輪,和兩只主動輪形成三角支撐著機(jī)器人的身體

10、。從動輪隨著主動輪的方向改變自己的方向。眾所周知,三點支撐結(jié)構(gòu)是最穩(wěn)定的結(jié)構(gòu),從動輪和兩個主動輪形成了一個穩(wěn)定的支撐結(jié)構(gòu)。3.直流電機(jī)機(jī)器人平臺上有兩個2臺額定電壓24vdc、150轉(zhuǎn)/分、70w功率直流減速電機(jī)。4鋁合金框架機(jī)器人平臺的框架使用了鋁合金型材制成,可以很方便地利用配備的專用螺母將設(shè)計的上部機(jī)構(gòu)安裝在平臺上。5鋁板機(jī)器人平臺上鋪設(shè)了5塊4mm厚的鋁板,可以根據(jù)自己的需要在這些鋁板上打孔,用于固定安裝上部機(jī)構(gòu),若需要這些鋁板,可以自行卸下,以減輕整體重量。2.1.2機(jī)器人平臺運(yùn)動詳解1機(jī)器人的動作機(jī)器人一共有三種動作:1)前進(jìn)兩個電機(jī)等速正轉(zhuǎn)時,機(jī)器人前進(jìn)。2)后退兩個電機(jī)等速反轉(zhuǎn)

11、時,機(jī)器人后退。3)轉(zhuǎn)彎兩個電機(jī)按一定比例不等速正轉(zhuǎn)時,機(jī)器人轉(zhuǎn)彎。2機(jī)器人運(yùn)動原理機(jī)器人運(yùn)動時,通過直流電機(jī)的軸轉(zhuǎn)動來驅(qū)動兩個主動輪的運(yùn)動,利用兩個主動輪來控制底盤的各種運(yùn)動(前進(jìn),后退或者轉(zhuǎn)彎)。底盤前端的從動輪前端有一個傳感器,用于探測地面白條的位置。探測后把相關(guān)數(shù)據(jù)傳給控制裝置(單片機(jī)),控制裝置分析計算后把相應(yīng)運(yùn)動指令轉(zhuǎn)化為pwm脈寬調(diào)速信號來控制電機(jī)的轉(zhuǎn)速,從而使機(jī)器人能夠沿著白條運(yùn)行。2.2自動機(jī)器人平臺控制系統(tǒng)2.2.1概述自動機(jī)器人平臺控制系統(tǒng)包括16路巡線傳感器、傳感器信號處理板、主控制板、電機(jī)驅(qū)動板和其他待開發(fā)擴(kuò)展部件組成。組成框圖如圖2.1所示。圖2-1機(jī)器人平臺控制系

12、統(tǒng)組成框圖圖2-1中,虛線框中的部分是機(jī)器人平臺已經(jīng)配備的部分,其他部分需要在設(shè)計中根據(jù)所設(shè)計的上部機(jī)構(gòu)的動作情況自行開發(fā),并用主控制板統(tǒng)一控制。2.2.2主控制板1.概述主控制板是機(jī)器人的大腦,承擔(dān)著信息接收、處理、外部設(shè)備控制的重要任務(wù),主控制板中處理器選用了stc12c5a60s2芯片為主控芯片,控制板支持兩大類輸入,既16通道專用巡線傳感器輸入,和8通道傳感器輸入;輸出也是支持2大類,即可調(diào)速行走電機(jī)控制輸出和不可調(diào)速行走電機(jī)控制輸出;具有一個可擴(kuò)展接口。stc12c5a60s2單片機(jī)是宏晶科技生產(chǎn)的單時鐘/機(jī)器周期(1t)的單片機(jī),是高速/低功耗/超強(qiáng)抗干擾的新一代8051單片機(jī),指

13、令代碼完全兼容傳統(tǒng)8051,但速度快8-12倍。內(nèi)部集成max810專用復(fù)位電路,2路pwm,8路高速10位a/d轉(zhuǎn)換(250k/s),抗干擾能力強(qiáng),適合應(yīng)用在強(qiáng)干擾場合。具體功能和參數(shù)可以參考stc12c5a60s2數(shù)據(jù)手冊。主控制板使用的是40個引腳的單片機(jī),共有35個i/o接口,其中,p0、p2和p4.6口用于輸入,共17個端口,p1和p3部分接口用于輸出,共12個端口。主控制板實物如圖2-2所示。圖中,12v電源輸入插座連接12v電源,12v電源輸出插座連接傳感器信號處理板的12v電源插座(注意板子上的電源正極標(biāo)志,不要插反),巡線傳感器輸入接口用于連接傳感器信號處理板,啟動按鈕輸入插

14、座連接面板上啟動按鈕,左右車輪電機(jī)接口連接驅(qū)動板上的電機(jī)信號控制插座,程序下載接口用于程序的在線下載,8通道傳感器輸入接口可以用于連接8個npn型傳感器,非調(diào)速電機(jī)輸出接口用于上部機(jī)構(gòu)各種電機(jī)的控制。圖2-2主控制板外形圖圖中,為了減少對單片機(jī)端口的占用,使用了2片74hc245總線驅(qū)動電路構(gòu)成對單片機(jī)p2的復(fù)用,用單片機(jī)p4.4口的信號加以控制。當(dāng)p4.4為低電平時,p2口接收到的是16路傳感的低8位信號qq0-qq7,當(dāng)p4.4為高電平時,p2口接收到的是16路傳感器的高8位信號q8-qq15。28通道傳感器輸入接口8通道傳感器輸入接口用于連接光電、接近或者超聲傳感器等,可以在整體設(shè)機(jī)器人

15、時,充分利用各種傳感器探測外部信息,其中4通道輸入接口電路圖如圖2-3所示。圖2-3 通道傳感器輸入接口圖中,展示了4路傳感器輸入接口,輸入信號使用了單片機(jī)的p0.0-p0.3口,插座j8-j11分別接4個不同傳感器,傳感器直接使用市場現(xiàn)有的成熟產(chǎn)品,主要有:圖2-4所示的紅外傳感器,在機(jī)器人中,主要用來探測四周是否存在障礙或者是否到達(dá)預(yù)定物體附近,圖2-4 紅外傳感器 圖2-5接近開關(guān)其最大探測距離根據(jù)所用型號的不同,有30cm、1m、2m多種;圖2-5所示為接近開關(guān),主要用在機(jī)器人上探測一些運(yùn)動部件是否到位,探測距離一般在5mm以下。傳感器上有3根引線,分別接j8-j11的3個引腳。需要注

16、意的是:使用的傳感器必須是npn型,工作電壓在6v-36v之間。圖2-3所示的的電路均為低電平有效,即傳感器探測到目標(biāo)時,反相器輸出端即單片機(jī)的p0-p3腳為低電平信號,否則為高電平。3pwm和電機(jī)方向控制電路圖2-6 pwm和電機(jī)方向控制電路pwm和電機(jī)方向控制電路如圖2-6所示,stc12c5a60s2本身具有2路pwm輸出,即p1.3和p1.4為pwm輸出端口,分別控制左(p1.4控制)右(p1.3控制)電機(jī)的轉(zhuǎn)速,圖2-6中,p15和p12分別是左(p1.5控制)右(p1.2控制)電機(jī)的方向控制信號,需要注意的是,p1.5和p1.2是低電平有效,即p1.5和p1.2是低電平時,電機(jī)驅(qū)動

17、板上的繼電器常開觸點閉合,電機(jī)反轉(zhuǎn)。5非調(diào)速電機(jī)輸出接口本電路板上設(shè)置了8個非調(diào)速電機(jī)輸出接口,可以用來控制4個正反轉(zhuǎn)直流電機(jī)或者8個單向運(yùn)轉(zhuǎn)直流電機(jī),電路圖如圖2-7所示。圖2-7中,p16、p17,p32-p37為8個控制信號,使用了單片機(jī)的p1.6、p1.7和p3.2-p3.7口,同樣需要注意,這些信號均是低電平有效。圖2-7 非調(diào)速電機(jī)輸出接口6擴(kuò)展接口主控制板中,p1.0和p4.5兩個接口沒有使用,用插座對外引出,參賽隊可以根據(jù)自己機(jī)器人的設(shè)計情況加以使用。7下載接口本電路板上有一個db9串口接口,可以用來實現(xiàn)程序的在線下載。在線下載的主要步驟為:1)首先關(guān)閉本電路板的12v電源,取

18、出串口連接線。一頭接本電路板的db9下載口,另一頭接pc機(jī)箱后的9針串口。如果你的電腦后面沒有空余9針串口,可以使用usb轉(zhuǎn)串口轉(zhuǎn)接頭。2)打開stc-isp在線下載軟件,進(jìn)行程序的下載,具體操作方法見stc12c5a60s2數(shù)據(jù)手冊;下載完畢,從電路板上取下串口下載線。2.2.3巡線傳感器自動機(jī)器人平臺底部安裝了16路巡線傳感器,可以可靠地探測到地面白條以及白條的十字交叉點。光源發(fā)射部分采用了16個高亮led發(fā)射管,用16個光敏電阻接受地面反射回來的光線,輸出插座連接傳感器信號處理板的巡線傳感器輸入接口。2.2.4傳感器信號處理板1概述傳感器信號處理板僅自動機(jī)器人平臺使用,電路板實物如圖2-

19、8所示。圖中,巡線傳感器輸入接口連接安裝在機(jī)器人平臺底部的16路巡線傳感器;信號輸出接口連接單片機(jī)控制板,插座jp接12v電源,注意板子上的電源正極標(biāo)志,不要插反。圖2-8 傳感器信號處理板16路巡線傳感器將采集到的地面白條信息送入本電路板,對于采集的信息先進(jìn)行放大處理,放大后的信號跟標(biāo)準(zhǔn)電壓比較,保留白條反射的有效信號,過濾掉地面背景反射信號,有效信號再通過穩(wěn)壓、反向、放大處理后送入單片機(jī)控制板,同時用發(fā)光二極管的亮暗指示當(dāng)前某路傳感器是否在地面白條上。2信號放大電路本電路板使用了16路信號放大電路,第一路傳感器信號放大電路如圖2-9所示。(其余15路電路均相同)圖2-9 信號放大電路2-9

20、中,q0為單路傳感器輸入信號,數(shù)值很小,若巡線傳感器在地面白條上,大約在0.9v左右;若巡線傳感器不在地面白條上,數(shù)值大約在0.3v左右,此信號輸入到由運(yùn)放lm324組成的同相放大電路,調(diào)節(jié)電位器rw1可以改變整個放大電路的放大倍數(shù)(實際電路中,rl使用了阻值1k的排阻),即調(diào)節(jié)了放大電路輸出的qq0。若q0為地面白條反射的有效信號,通過調(diào)節(jié)rw1,使qq0的電壓輸出為9.5v-10v左右,若q0為地面背景反射的信號,根據(jù)地面背景的顏色以及光滑程度,qq0大致在4-6v左右,越低越好。3、自動機(jī)器人平臺的裝配和調(diào)試3.1機(jī)器人裝配過程機(jī)器人底盤安裝即把主動輪,電機(jī),從動輪,傳感器依次安裝至底盤

21、鋁合金框架上以及完成線路板之間的連接。3.1.1主動輪電機(jī)裝配安裝步驟:從左至右,依次結(jié)合螺栓,主動輪,連接鋼板,以及電機(jī),并且旋緊,把三個輪套套在主動輪上。3.1.2電機(jī)安裝至鋁合金架板直流電機(jī)直接對準(zhǔn)相應(yīng)鋼板部位,螺絲旋緊即可。3.1.3從動輪及傳感器安裝從動輪和傳感器直接對準(zhǔn)相應(yīng)部位,螺絲旋緊即可。3.1.4電路板的安裝1將三個電池固定在平臺上。2將傳感器信號處理板、電機(jī)驅(qū)動板、主控制板從下至上疊加在一起,固定了平臺上。3連接信號線:用20芯排線連接16路巡線傳感器的輸出和傳感器信號處理板的傳感器輸入接口;用20芯排線連接傳感器信號處理板的信號輸出接口與主控制板的16路傳感器輸入接口;面

22、板上的啟動按鈕連接主控制板的啟動按鈕插座;用10芯排線連接主控制板的左右車輪電機(jī)接口與電機(jī)驅(qū)動板的控制信號接口;左右車輪電機(jī)連接電機(jī)驅(qū)動板的左右電機(jī)輸出插座。4連接電源線:12v電源線連接主控制板的12v電源輸入插座;主控制板的12v電源輸出插座連接傳感器信號處理板的12v電源輸入插座;24v電源連接電機(jī)驅(qū)動板的24v電源插座。連接電源時,務(wù)必確認(rèn)主板上電源插座的正負(fù)極,切勿插反。3.2機(jī)器人平臺的調(diào)試在機(jī)器人平臺全部安裝完畢,初步檢查無誤后,下一步就進(jìn)行必要的調(diào)試,主要的調(diào)試步驟如下:1進(jìn)行傳感器信號處理板的調(diào)試。2將程序下載到單片機(jī)中。3將機(jī)器人平臺放到場地上。4先后打開12v電源和24v

23、電源,按下啟動按鈕,觀察機(jī)器人平臺運(yùn)行情況。4、可行性的上部機(jī)器手臂設(shè)計方案第一代旋轉(zhuǎn)機(jī)構(gòu)主要采用舵機(jī)控制云臺見下圖:但是第一代機(jī)器人上部機(jī)構(gòu)設(shè)計完成后,發(fā)現(xiàn)設(shè)計過于復(fù)雜,所用的傳感器在不接擴(kuò)展板的情況下,用一片單片機(jī)遠(yuǎn)遠(yuǎn)不能對其進(jìn)行精密控制,導(dǎo)致第一代機(jī)器人設(shè)計失敗。鑒于此情況我們參賽小組又連日趕制第二代上部機(jī)構(gòu),第二代機(jī)器人的上部機(jī)構(gòu)去掉了旋轉(zhuǎn)云臺,采用二維設(shè)計,這種設(shè)計的靈活度雖沒有第一代上部機(jī)構(gòu)靈活度高,但便于控制,如圖:連日來趕制的第二代機(jī)器人上部機(jī)構(gòu)終于完工,但小組成員并沒有高興起來,因為二代機(jī)器人上部機(jī)構(gòu)由于y軸步進(jìn)電機(jī)的功率過小,導(dǎo)致不能正常的驅(qū)動機(jī)器手進(jìn)行上下移動,此時小組成

24、員以陷入困境。辛辛苦苦做出來的二代機(jī)器手卻因為y軸步進(jìn)電機(jī)功率過小而不能使機(jī)器手動作,鑒于此情況我們當(dāng)中的一位成員突然想到電梯的結(jié)構(gòu),大多數(shù)電梯都有配重裝置,我們馬上開工,對二代上部機(jī)構(gòu)進(jìn)行改進(jìn),做出了第三代機(jī)器人上部機(jī)構(gòu),如下圖:此處說明:y軸步進(jìn)電機(jī)不能采用功率非常大的電機(jī),因為y軸步進(jìn)電機(jī)的動作是最頻繁的,功率過大后很有可能導(dǎo)致蓄電池的電能在沒有完成任務(wù)之前就沒電啦。5、驅(qū)動軟件的編寫及調(diào)試 ;-*河北能源職業(yè)技術(shù)學(xué)院機(jī)器人小組調(diào)試程序*-;-*以下為偽指令定義程序*-num equ 7fh ;count equ 7eh ;需要循跡的路線條數(shù)hlwp bit p1.0 ;start bi

25、t p1.1 ;rdir bit p1.2 ; ;右電機(jī)rpwm bit p1.3 ;lpwm bit p1.4 ;ldir bit p1.5 ; ;左電機(jī)ccon equ 0d8h;pca 控制寄存器cl equ 0e9h; /pca 計數(shù)器低位ch equ 0f9h; /pca 計數(shù)器高位cmod equ 0d9h; /pca 工作模式寄存器ccap0l equ 0eah; /pca 模塊 0 的捕捉/比較寄存器低 8 危ccap0h equ 0fah; /pca 模塊 0 的捕捉/比較寄存器高 8 位ccap1l equ 0ebh; /pca 模塊 1 的捕捉/比較寄存器低 8 位。cc

26、ap1h equ 0fbh; /pca 模塊 1 的捕捉/比較寄存器高 8 位。fosc_0 equ 79h;fosc_0為pwm0占空比設(shè)置形參 ,右電機(jī)fosc_1 equ 7ah;fosc_1為pwm1占空比設(shè)置形參,左電機(jī)ccapm0 equ 0dah; /pca 模塊0 pwm 寄存器ccapm1 equ 0dbh; /pca 模塊1 pwm 寄存器pca_pwm0 equ 0f2h; /pca 模塊0 pwm 寄存器pca_pwm1 equ 0f3h; /pca 模塊1 pwm 寄存器?forward equ 1 ;backward equ 0 ;p1m1 equ 91h ;p1m

27、0 equ 92h ;p2m1 equ 95h ;p2m0 equ 96h ;p4sw equ 0bbh ;- 以下為傳感器低高8位-;-hlwp=0時讀取低八位,wl_wp=1時讀取高八位-wp_0_8 equ p2.0 ;wp_1_9 equ p2.1 ;wp_2_10 equ p2.2 ;wp_3_11 equ p2.3 ;wp_4_12 equ p2.4 ;wp_5_13 equ p2.5 ;wp_6_14 equ p2.6 ;wp_7_15 equ p2.7 ;-s2con equ 9ah ;ie2 equ 0afh ;s2buf equ 9bh ;auxr equ 8eh ;aux

28、r1 equ 0a2h ;brt equ 9ch ;iap_contr equ 0c7h ;reload_count equ 0fdh;串行口波特率設(shè)置為9600;-*以下為主程序*-org 0000hljmp mainorg 0043hljmp main_1org 0100h;* main: mov c,start ; 檢測小車啟動鍵是否按下 jc main ; mov sp,#0c0h ; mov s2con,#50h ;串口2方式1 mov brt,#reload_count ; 設(shè)定波特率為9600 mov auxr,#11h ; mov ie2,#01h ; setb ea mov

29、auxr1,#10h ; mov 41h,#00h ;以下是等待裁判的出發(fā)命令, mov 51h,#00h ;以下是等待裁判的出發(fā)命令, mov 61h,#00h ;以下是等待裁判的出發(fā)命令, mov 71h,#00h ;以下是等待裁判的出發(fā)命令,main_wait1: mov a,41h cjne a,#03h,main_wait1;main_wait2: mov a,51h cjne a,#04h,main_wait2;main_wait3: mov a,61h cjne a,#05h,main_wait3;main_wait4: mov a,71h cjne a,#09h,main_wa

30、it4; mov auxr1,#00h mov auxr,#00h mov ie2,#00h clr ea lcall s_t;. lcall qian1 lcall turn_90l lcall qian1 lcall qian1 ;發(fā)關(guān)鍵點1信息 lcall qian1 lcall qian1 ;發(fā)關(guān)鍵點2信息 lcall qian1 lcall turn_90r lcall qian1 lcall turn_90l lcall qian1 lcall qian1 ;到貨架位置了,掃描工件代碼 lcall qian1 lcall qian1 lcall qian1 lcall qian1

31、lcall qian1 lcall qian1 lcall turn_90r lcall qian1 lcall qian1 lcall qian1 ;發(fā)關(guān)鍵點3信息 lcall qian1main_jiaotong:lcall qian1 djnz 74h,main_jiaotong lcall turn_90r lcall qian1 lcall qian1 lcall qian1 lcall qian1 lcall qian1 lcall qian1 lcall qian1 lcall qian1 ;發(fā)關(guān)鍵點4信息 lcall qian1 lcall qian1 lcall qian1

32、lcall qian1 lcall qian1 sjmp $qian1: nopqian1_1:lcall jiu_pian lcall caiyan_16 mov a,count cjne a,#1h,qian1_1 ret;*;-以下為s_t初始化程序-s_t: mov p1m1,#00h; mov p1m0,#18h; mov p2m1,#0ffh; mov p2m0,#00h; mov p4sw,#50h; /p4.4和p4.6口設(shè)置,都為i/o輸出口 lcall pwm0_1; /pwm的初始化設(shè)置 ret;- 以下為motor程序-motor:mov cmod,#80h mov c

33、con,#00h mov cl,#00h mov ch,#00h setb 0a8h.6 ;開pca中斷 setb ea ;開總中斷 setb 0d8h.6 ;將pca計數(shù)器打開,非常重要 ; setb rdir;forward 左電機(jī)正轉(zhuǎn)向后走 ,以一個輪的為前,雙輪為后 mov ccap0h,fosc_1 mov ccap0l,fosc_1 mov ccapm0,#42h;/8位pwm輸出,無中斷 mov pca_pwm0,#00h ;有脈沖輸出,值為03h時無脈沖輸出 ; clr ldir;backward 右電機(jī)反轉(zhuǎn)向前走,以一個輪的為前,雙輪為后 mov ccap1h,fosc_0

34、mov ccap1l,fosc_0 mov ccapm1,#42h; /8位pwm輸出,無中斷 mov pca_pwm1,#00h ret;- 以下為pwm0占空比設(shè)置- pwm0: mov ccap0h,#150 mov ccap0l,#150 mov ccapm0,#42h;/8位pwm輸出,無中斷 mov pca_pwm0,#00h ;有脈沖輸出,值為03h時無脈沖輸出 ret;- 以下為pwm1占空比設(shè)置-pwm1: mov ccap1h,#250 mov ccap1l,#250 mov ccapm1,#42h; /8位pwm輸出,無中斷 mov pca_pwm1,#00h ret;-

35、 以下為pca時鐘源 控制寄存器 計數(shù)初值 設(shè)置- pwm0_1: mov ccon,#00h mov ch,#00h mov cl,#00h mov cmod,#00h ret;- 以下為delay_ms程序-delay_ms: ; 調(diào)用延時程序前要賦值給r6 dl0: mov r7,#250 dl1: nop nop djnz r7,dl1 djnz r6,dl0 ret;- 以下為stop_l程序-stop_l: mov ccap0h,#0 mov ccap0l,#0 mov ccapm0,#42h mov pca_pwm0,#0 ret;- 以下為stop_r程序-stop_r: mo

36、v ccap1h,#0 mov ccap1l,#0 mov ccapm1,#42h mov pca_pwm1,#0 ret;- 以下為turn_90r程序-turn_90r:turn_0r: mov fosc_0,#165 ;左電機(jī)速度 mov fosc_1,#165 ;右電機(jī)速度 clr rdir setb ldir lcall motor mov r6,#250 lcall delay_ms mov r6,#250 lcall delay_ms mov r6,#250 lcall delay_ms mov r6,#250 lcall delay_ms mov r6,#250 lcall d

37、elay_ms mov r6,#250 lcall delay_ms mov r6,#250 lcall delay_ms mov r6,#250 lcall delay_ms mov r6,#250 lcall delay_ms mov r6,#250 lcall delay_ms mov r6,#250 lcall delay_ms mov r6,#250 lcall delay_ms mov r6,#250 lcall delay_ms mov r6,#250 lcall delay_ms mov r6,#250 lcall delay_ms mov r6,#250 lcall dela

38、y_ms clr p1.0 ;選擇低8位巡線發(fā)光管 mov a,p2 anl a,#0e0h cjne a,#0,turn_1r sjmp turn_0rturn_1r: mov r6,#10 ;檢測第二遍 lcall delay_ms clr p1.0 ; 選擇低8位巡線發(fā)光管 mov a,p2 anl a,#0e0h cjne a,#0,turn_2r sjmp turn_0rturn_2r: ret;-;- 以下為turn_90l程序-turn_90l:turn_0l: mov fosc_0,#165 ;左電機(jī)速度 mov fosc_1,#165 ;右電機(jī)速度 setb rdir clr

39、 ldir lcall motor mov r6,#250 lcall delay_ms mov r6,#250 lcall delay_ms mov r6,#250 lcall delay_ms mov r6,#250 lcall delay_ms mov r6,#250 lcall delay_ms mov r6,#250 lcall delay_ms mov r6,#250 lcall delay_ms mov r6,#250 lcall delay_ms mov r6,#250 lcall delay_ms mov r6,#250 lcall delay_ms setb p1.0 ;

40、選擇高8位巡線發(fā)光管 mov a,p2 anl a,#07h cjne a,#0,turn_1l sjmp turn_0lturn_1l: mov r6,#10 lcall delay_ms setb p1.0 ; 選擇高8位巡線發(fā)光管 mov a,p2 anl a,#07h cjne a,#0,turn_2l sjmp turn_0lturn_2l: mov fosc_0,#160 ;左邊電機(jī) mov fosc_1,#160;右邊電機(jī) setb rdir setb ldir lcall motor mov r6,#100 ;延時1000ms lcall delay_ms lcall dela

41、y_ms lcall delay_ms lcall delay_ms lcall delay_ms lcall delay_ms ret;-需要數(shù)的線路條數(shù)-caiyan_16:mov count,#00h mov num,#00h clr p1.0 ;選擇低8位巡線發(fā)光管 mov a,p2 mov r7,#8 clr ccaiy_l0: rrc a jnc caiy_l1 inc numcaiy_l1: djnz r7,caiy_l0 setb p1.0 ;選擇高8位巡線發(fā)光管 mov a,p2 mov r7,#8 clr ccaiy_l3: rrc a jnc caiy_l4 inc nu

42、mcaiy_l4: djnz r7,caiy_l3 mov a,num cjne a,#9,caiy_l5 inc count ljmp caiy_l_end caiy_l5: cjne a,#10,caiy_l6 inc count ljmp caiy_l_end caiy_l6: cjne a,#11,caiy_l7 inc count ljmp caiy_l_end caiy_l7: cjne a,#12,caiy_l8 inc count ljmp caiy_l_end caiy_l8: cjne a,#13,caiy_l9 inc count ljmp caiy_l_end caiy

43、_l9: cjne a,#14,caiy_la inc count ljmp caiy_l_end caiy_la: cjne a,#15,caiy_lb inc count ljmp caiy_l_end caiy_lb: cjne a,#16,caiy_l_end inc count caiy_l_end: ret;-以下為糾偏走直線程序-jiu_pian:clr p1.0 ;檢測低八位mov a,p2anl a,#20hjz loop_high_1mov fosc_0,#215mov fosc_1,#140 ;右邊電機(jī)setb rdirsetb ldirlcall motorlcall

44、delay_mslcall delay_mslcall delay_msloop_high_1:setb p1.0 ;檢測高八位mov a,p2anl a,#04hjz loop_low_2mov fosc_0,#140mov fosc_1,#215 ;zuosetb rdirsetb ldirlcall motorlcall delay_mslcall delay_mslcall delay_msloop_low_2:clr p1.0 ;檢測低八位mov a,p2anl a,#10hjz loop_high_2mov fosc_0,#215mov fosc_1,#140setb rdirsetb ldirlcall motorlcall delay_mslcall delay_mslcall delay_msloop_high_2:setb p1.0 ;檢測高八位mov a,p2anl a,#08hjz loop_low_3mov fosc_0,#140mov fosc_1,#215setb rdirsetb ldirlcall motorlcall delay_mslcall delay_mslcall delay_msloop_low_3:clr p1

溫馨提示

  • 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

提交評論