全向自動巡線搬運機器人_第1頁
全向自動巡線搬運機器人_第2頁
全向自動巡線搬運機器人_第3頁
全向自動巡線搬運機器人_第4頁
全向自動巡線搬運機器人_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 課程設(shè)計報告書 題 目 全向自動巡線搬運機器人學(xué) 院 湖南文理學(xué)院芙蓉學(xué)院 專 業(yè) 班 級 學(xué) 號 姓 名 指導(dǎo)教師 2014 年 1 月 1日 一、課程設(shè)計目的自動機器人在現(xiàn)代工業(yè)和生產(chǎn)中廣泛運用,大大減少了人力物力。而機器人要完成指定動作,不光需要機械手臂,驅(qū)動模塊,還需要準(zhǔn)確的定位。這不光需要依靠指定的完成機械手臂的動作,同時還需要接受外部的檢測信號。在這次課程設(shè)計中,我們自主設(shè)計組裝了自動巡線機器人,完成在指定線路上的搬運物件工作。主要熟悉了機器人制作的整個流程(包括設(shè)計,仿真,安裝,調(diào)試等),利用SolidWorks裝配機器人,COSMOSMOTION仿真,機器人調(diào)試過程,AVR單

2、片機編程,UP-Commander調(diào)試環(huán)境,AVR Studio的Gcc編程環(huán)境,電機及舵機控制等。二、課程設(shè)計任務(wù) (1)利用Solidworks裝配機器人,并進(jìn)行運動仿真; (2)利用已給零件及傳感器搭建設(shè)計機器人; (3)運用UP-Commander在線調(diào)試機器人運動; (4)運用AVR Studio編程環(huán)境編寫C語言下載至AVR單片機中完成指定動作;三、硬件介紹 1.控制模塊:圖中為MultiFLEX2-AVR Controller Datasheet控制卡,基于控制卡編程實現(xiàn)機器人的功能。l功能概述 MultiFLEX2-AVR控制器是一款小型機器人通用控制器,集成開關(guān)量傳感器、模擬

3、量傳感器、RC舵機、機器人總線舵機控制接口,具有RS422總線接口和RS232 接口,具有豐富的擴展能力。具體特點如下:l控制接口豐富 可以控制R/C 舵機、機器人總線舵機,直流電機伺服驅(qū)動器等。l數(shù)據(jù)接口豐富 12路雙向IO接口,8 路10 位精度的AD 接口;RS-422總線、RS-232 接口。l多種開發(fā)環(huán)境 配套NorthSTAR圖形化集成開發(fā)環(huán)境,無需編寫C語言即可完成機器人控制程序編寫。此外,也支持AVRStudio,Eclipse 等IDE開發(fā)環(huán)境。l接口開放徹底 MultiFLEX 2-AVR開放所有底層源碼,用戶可以參照這些源碼開發(fā)自己的程序,也可以調(diào)用已封裝的函數(shù)接口。Mu

4、ltiFLEX2-AVR控制器有豐富的自我保護(hù)機制,對于超負(fù)荷功率輸出、電源反向輸入、電池電壓過低、電源輸入電壓過高等具有軟硬件保護(hù),可以及時有效保護(hù)控制器,并提示用戶錯誤信息。MultiFLEX2-AVR 控制器可以配備ZigBee 無線網(wǎng)絡(luò)電臺,實現(xiàn)機器人無線控制,機器人組網(wǎng),可為群體機器人研究、多機器人協(xié)作等科研領(lǐng)域提供快速機器人原型。MultiFLEX2-AVR控制器的具體參數(shù)如下所示: l 主處理器ATmega12816MHz,協(xié)處理器ATmega816MHz; l 6 個機器人舵機接口,兼容Robotis Dynamixel AX12+; l 8 個R/C舵機接口; l 12 個T

5、TL 電平的雙向I/O 口,GND/VCC/SIG 三線制; l 8 個AD 轉(zhuǎn)換器接口(05V); l 2 個RS-422 總線接口(可掛接1-127 個422 設(shè)備); l 1 個無源蜂鳴器; l 通過RS-232 與上位機通訊,可選無線通訊模組; l 使用USB接口的AVR-ISP下載調(diào)試器。應(yīng)用領(lǐng)域 l 小型機器人; l 其它要求配置多種傳感器、執(zhí)行器,機電系統(tǒng)快速原型。 2.舵機的介紹:圖中為proMOTION CDS 系列機器人伺服電機:功能概述 proMOTION CDS 系列機器人伺服電機(機器人舵機)屬于一種集電機、伺服驅(qū)動、總線式通訊接口為一體的集成伺服單元,非常適合替代R

6、C 舵機,作為微型機器人的關(guān)節(jié)、輪子、履帶驅(qū)動,也可用于其他簡單位置控制場合。主要特點如下: l大扭矩:16Kgfcm · l高轉(zhuǎn)速:最高0.16s/60°輸出轉(zhuǎn)速 lDC 6.8V14V 供電 l0.32°位置分辨率 l雙端輸出軸,適合安裝在機器人關(guān)節(jié) l高精度全金屬齒輪組,雙滾珠軸承 l連接處O 型環(huán)密封,防塵防濺水 l位置伺服控制模式下轉(zhuǎn)動范圍0-300° l在速度控制模式下可連續(xù)旋轉(zhuǎn),調(diào)速 l總線連接,理論可串聯(lián)254 個單元 l高達(dá)1M 通訊波特率 l0.25KHz 的伺服更新率 l具備位置、溫度、電壓、速度反饋 l通訊協(xié)議兼容Robotis

7、Dynamixel CDS5516 機器人舵機采用先進(jìn)的伺服控制技術(shù)和高速微處理器,響應(yīng)速度快、到位準(zhǔn)確無抖動。相比傳統(tǒng)RC 舵機50Hz 的控制頻率,CDS 系列機器人舵機通過高達(dá)250Hz 的控制頻率,確保位置控制的準(zhǔn)確和保持力矩的穩(wěn)定性。 CDS5516 機器人舵機采用周轉(zhuǎn)型高精度電位器測量位置,舵機輸出軸可連續(xù)整周旋轉(zhuǎn),運動扭矩輸出高達(dá)16kgf.cm。 CDS5516 具備總線接口,理論多至254 個機器人舵機可以通過總線組成鏈型, 通過異步串行接口統(tǒng)一控制。每個舵機可以設(shè)定丌同的節(jié)點地址,多個舵機可以統(tǒng)一運動也可以單個獨立控制。 CDS5516 的通訊指令集完全開放,舵機通過異步串

8、行接口不用戶的上位機通訊, 用戶可對其參數(shù)設(shè)置、功能控制。通過異步串行接口収送指令, CDS5516 可以設(shè)置為電機模式或位置控制模式。在電機模式下,CDS5516 可以作為直流減速電機使用,速度可調(diào);在位置控制模式下,CDS5516 擁有0-300°的轉(zhuǎn)動范圍,在此范圍內(nèi)具備精確位置控制性能,速度可調(diào)。CDS5516 機器人舵機的外形和安裝方式兼容傳統(tǒng)舵機。 應(yīng)用領(lǐng)域 CDS5516 繼承RC 舵機的優(yōu)點,并針對機器人應(yīng)用進(jìn)行了優(yōu)化。其理想應(yīng)用領(lǐng)域是: l 小型仿人形機器人 l 小型關(guān)節(jié)式機器人 l 其他小型仿生機器人 l 機器人輪子、履帶驅(qū)動 l 需要簡單位置控制的工業(yè)自動化 3

9、.紅外線傳感器 紅外線傳感器是利用紅外線的物理性質(zhì)來進(jìn)行測量的傳感器。紅外線又稱紅外光,它具有反射、折射、散射、干涉、吸收等性質(zhì)。 4.灰度傳感器 灰度傳感器是模擬傳感器,有一只發(fā)光二極管和一只光敏電阻,安裝在同一面上?;叶葌鞲衅骼貌煌伾臋z測面對光的反射程度不同,光敏電阻對不同檢測面返回的光其阻值也不同的原理進(jìn)行顏色深淺檢測。在有效的檢測距離內(nèi),發(fā)光二極管發(fā)出白光,照射在檢測面上,檢測面反射部分光線,光敏電阻檢測此光線的強度并將其轉(zhuǎn)換為機器人可以識別的信號。四、課程設(shè)計步驟 1、機構(gòu)設(shè)計整個全向運動搬運機器人由大致三個模塊組成:1.由4直流電機與4輪組成的驅(qū)動模塊。2.由7舵機組成的搬運

10、卸載模塊。3.又1個紅外線傳感器和兩個灰度傳感器組成的傳感模塊。 2、其完成的任務(wù)為 1.沿著指定黑色軌跡帶上進(jìn)行運動,停止以及調(diào)整動作轉(zhuǎn)彎,這個功能由驅(qū)動部分和紅外線傳感部分協(xié)作完成。2.在指定地點進(jìn)行貨物的搬運與卸載,這一部分主要由機器人上部的機械手和灰度傳感部分協(xié)作完成。實際圖 通過Solidworks裝配零件如下圖,并進(jìn)行運動仿真,曲線見附頁3、機構(gòu)裝配 整個全向運動搬運機器人由1個控制板,4個電機組成轉(zhuǎn)向機構(gòu),7個舵機組成手臂模塊,1個紅外線傳感器和2個灰度傳感器以及相應(yīng)的連接件構(gòu)成。 安裝舵機前,先將舵機接入控制板上的CH端口,將舵機復(fù)中位,減少以后調(diào)試過程中由于中位不對而導(dǎo)致的重

11、新搭建的冗余過程。先將4個直流電機與轉(zhuǎn)向舵機組成驅(qū)動模塊組裝完成后,與底板固定完成底部的搭建工作,在機械臂中分配7個舵機,一個舵機負(fù)責(zé)夾子的轉(zhuǎn)動,一個舵機負(fù)責(zé)夾子的夾緊與松開功能,其他舵機負(fù)責(zé)裝夾物的定位。4、連接電纜 1.將車輪4個電機串聯(lián)在一起,再通過一端接入MultiFLEX控制卡上。 2.將車輪7個舵機串聯(lián)在一起,再通過一端接入MultiFLEX控制卡上。 3.將紅外線傳感器接入MultiFLEX控制器io口上。 4.將兩個灰度傳感器接入MultiFLEX控制器ad口上。5、微調(diào)初始姿態(tài)為了更好的進(jìn)行預(yù)期動作,可以將機器人的舵機位置調(diào)整合適,由于之前已將舵機調(diào)整中位,所以這部調(diào)整較為簡

12、單,只需旋轉(zhuǎn)舵機的舵盤的位置即可,即當(dāng)機器人通電后,舵機自動調(diào)至中位,此時為機器人的初始姿態(tài)。之后的所有調(diào)試,都是基于這個初始姿態(tài)設(shè)計的。6、機器人步態(tài)調(diào)試我們在UP-commander下調(diào)試機器人的預(yù)期動作,通過調(diào)節(jié)舵機轉(zhuǎn)角、轉(zhuǎn)速,電機的轉(zhuǎn)速、運動時間來完成預(yù)期機器人的動作,包括機器人的直行,轉(zhuǎn)彎,機械臂的裝夾物件等動作,過程中應(yīng)注意USB-Serial接口的位置,金屬片應(yīng)指向芯片。在在線調(diào)試環(huán)境中,完成各個動作的細(xì)節(jié)數(shù)值,包括轉(zhuǎn)角,轉(zhuǎn)速及運動時間等。由于UP-commander環(huán)境下無法讀取IO口的數(shù)值,所以要完成傳感器部分的設(shè)計必須采用C語言的調(diào)試環(huán)境。7、AVR Studio調(diào)試程序在

13、該編譯環(huán)境下,可以更直觀的觀測到所有輸出與輸入端口,可以很好的完成對機器人的控制。源代碼見附頁,程序流程如下: 當(dāng)小車偏離黑色帶時,灰度傳感器檢測到偏離,當(dāng)左邊灰度傳感器檢測到時,控制器控制左邊車輪前進(jìn),右邊車輪后退,就實現(xiàn)了小車向右轉(zhuǎn)彎,當(dāng)右邊灰度傳感器檢測到時,控制器控制右邊車輪前進(jìn),左邊車輪后退,就實現(xiàn)了小車向左轉(zhuǎn)彎,若沒有檢測到黑帶,左右車輪都前進(jìn),當(dāng)前面有障礙物時,紅外線傳感器檢測到障礙物,向MultiFLEX控制器io口上傳輸?shù)碗娖?,機器人停止前進(jìn),控制器向手臂發(fā)出指令,這時各舵機按照手臂預(yù)定動作程序運動。五、功能描述該自動巡線機器人能夠準(zhǔn)確的識別小弧度的彎道,并能迅速準(zhǔn)確的校正前

14、進(jìn)的姿態(tài)保證機器人能夠準(zhǔn)確的沿指定的路線前進(jìn),并在指定的位置停止,裝夾貨物。六、 總結(jié)通過這次課程設(shè)計,我們了解了機器人的制作過程,自己親手安裝調(diào)試開發(fā)機器人,不僅鍛煉了我們的動手能力,而且還在過程中熟悉了嵌入式系統(tǒng)的編程設(shè)計,不知不覺中鍛煉了我們的創(chuàng)新思維。平時在課上學(xué)到電機和運動副的問題,卻很少有機會去動手實現(xiàn)這些,這次讓不但讓我們親手接觸這些,還學(xué)會了控制電機,運用他們調(diào)整機器人的運動及穩(wěn)定性。不僅將平時課本中的知識移植到了實驗中,還在實踐中不斷的完善知識體系,更好的達(dá)到了學(xué)以致用的目的。整個課程設(shè)計下來,發(fā)覺那些看似高科技的機器人原來離我們并不那么遙遠(yuǎn),只要好好發(fā)揮我們的創(chuàng)新能力,沒有

15、做不到的只有想不到的。其實我們想開發(fā)的功能還很多,但是由于時間和器件的問題,我們只開發(fā)了機器人中的一小部分,當(dāng)這一小部分就讓我們感受到了其中的艱辛與快樂。當(dāng)調(diào)試過程中屢次受挫時,我們沒有放棄,不斷的修改程序,不斷的仿真曲線,當(dāng)我們初見成效時,我們擊掌相慶。總之,經(jīng)過了這個課程設(shè)計讓我們受益匪淺,鍛煉自己的動手能力,還體現(xiàn)了團隊合作的精神,從頭到尾我們都是一個團體,收獲頗多。附頁:一、Solidworks運動仿真曲線:圖1 前輪角速度曲線圖2 前輪角加速度曲線圖3 前輪平均速度曲線圖4 前輪動能曲線圖5 前輪舵機角速度曲線圖6 前輪舵機角加速度曲線圖7 舵機動能曲線2、 機器人裝配圖:3、 機器

16、人工程圖四、C語言源程序#include "Apps/SystemTask.h"uint8 SERVO_MAPPING11 = 1,2,3,4,5,6,7,10,20,30,40;int main() int ad2 = 0; int io0 = 0; MFInit(); MFInitServoMapping(&SERVO_MAPPING0,11); MFSetPortDirect(0x00000FFE); MFSetServoMode(1,0); MFSetServoMode(2,0); MFSetServoMode(3,0); MFSetServoMode(4,

17、0); MFSetServoMode(5,0); MFSetServoMode(6,0); MFSetServoMode(7,0); MFSetServoMode(10,1); MFSetServoMode(20,1); MFSetServoMode(30,1); MFSetServoMode(40,1); while (1) io0 = MFGetDigiInput(0); ad0 = MFGetAD(0); ad1 = MFGetAD(1); if (io0=0) MFSetServoPos(1,860,80); MFSetServoPos(2,488,80); MFSetServoPos

18、(3,210,80); MFSetServoPos(4,400,80); MFSetServoPos(5,540,80); MFSetServoPos(6,860,80); MFSetServoPos(7,290,80); MFSetServoRotaSpd(10,0); MFSetServoRotaSpd(20,0); MFSetServoRotaSpd(30,0); MFSetServoRotaSpd(40,0); MFServoAction(); DelayMS(8000); MFSetServoPos(1,860,80); MFSetServoPos(2,488,80); MFSetS

19、ervoPos(3,220,80); MFSetServoPos(4,400,80); MFSetServoPos(5,540,80); MFSetServoPos(6,860,80); MFSetServoPos(7,510,80); MFSetServoRotaSpd(10,0); MFSetServoRotaSpd(20,0); MFSetServoRotaSpd(30,0); MFSetServoRotaSpd(40,0); MFServoAction(); DelayMS(3000); MFSetServoPos(1,550,80); MFSetServoPos(2,488,80);

20、 MFSetServoPos(3,300,80); MFSetServoPos(4,420,80); MFSetServoPos(5,550,80); MFSetServoPos(6,860,80); MFSetServoPos(7,510,80); MFSetServoRotaSpd(10,0); MFSetServoRotaSpd(20,0); MFSetServoRotaSpd(30,0); MFSetServoRotaSpd(40,0); MFServoAction(); DelayMS(4500); MFSetServoPos(1,550,80); MFSetServoPos(2,4

21、88,80); MFSetServoPos(3,300,80); MFSetServoPos(4,420,80); MFSetServoPos(5,550,80); MFSetServoPos(6,860,80); MFSetServoPos(7,300,80); MFSetServoRotaSpd(10,0); MFSetServoRotaSpd(20,0); MFSetServoRotaSpd(30,0); MFSetServoRotaSpd(40,0); MFServoAction(); DelayMS(4000); MFSetServoPos(1,680,60); MFSetServo

22、Pos(2,488,60); MFSetServoPos(3,400,60); MFSetServoPos(4,300,60); MFSetServoPos(5,420,60); MFSetServoPos(6,860,60); MFSetServoPos(7,300,60); MFSetServoRotaSpd(10,0); MFSetServoRotaSpd(20,0); MFSetServoRotaSpd(30,0); MFSetServoRotaSpd(40,0); MFServoAction(); DelayMS(5000); MFSetServoPos(1,860,80); MFS

23、etServoPos(2,488,80); MFSetServoPos(3,860,80); MFSetServoPos(4,770,80); MFSetServoPos(5,680,80); MFSetServoPos(6,860,80); MFSetServoPos(7,300,80); MFSetServoRotaSpd(10,0); MFSetServoRotaSpd(20,0); MFSetServoRotaSpd(30,0); MFSetServoRotaSpd(40,0); MFServoAction(); DelayMS(4000); else if (ad0<300) MFSetServoPos(1,860,80); MFSetServoPos(2,488,80); MFSetServoPos(3,860,80); MFSetServoPos(4,770,80); MFSetServoPos(5,680,80); MFSetServoPos(6,860,80); MFSetServoPos(7,300,80);

溫馨提示

  • 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

提交評論