履帶式壁障小車_第1頁
履帶式壁障小車_第2頁
履帶式壁障小車_第3頁
履帶式壁障小車_第4頁
履帶式壁障小車_第5頁
已閱讀5頁,還剩30頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、完成小的組裝,首先應(yīng)該調(diào)試舵機,舵機的調(diào)試應(yīng)用多功能調(diào)試器多功能調(diào)試器使用之前要安裝驅(qū)動程序,將多功能調(diào)試器插在電腦上,會出現(xiàn)下面界面,選擇“從列表或指定位置安裝”“瀏覽”時找到InnoStar產(chǎn)品光盤,打開“部件資料匯總”文件夾,打開“多功能調(diào)試器”文件夾就可以看到“調(diào)試器驅(qū)動程序”,點擊“下一步”點擊“下一步”“完成”,再重復(fù)一遍上面的過程,多功能調(diào)試器的驅(qū)動就完成了。下面要用調(diào)試器調(diào)試舵機,連接調(diào)試器與舵機,調(diào)試舵機時一定要加外接電源打開機器人舵機調(diào)試系統(tǒng)軟件“RobotServoTerminal” 這里要修改Com口,右鍵“我的電腦”點擊“設(shè)備管理器”查看“端口”“USB Serial

2、 Port(COM3)”說明調(diào)試器用3號端口與電腦通信現(xiàn)在可以調(diào)試第一個舵機了,修改COM口為3,“Open”,“Search”搜索到第一個舵機的ID,“Stop”調(diào)試舵機模式“Servo Mode”時給定一定的速度,即“Speed”不為零,改變位置,即“Pos”不為中位,觀察舵機是否轉(zhuǎn)動;調(diào)試電機模式“Moter Mode”時,改變“Speed”,觀察舵機是否轉(zhuǎn)動。以上兩種情況舵機都轉(zhuǎn)動說明舵機可以正常工作。調(diào)試2號舵機搜索出的狀態(tài)同1號舵機將“舵機”的ID修改為2,設(shè)置“Set”其他位置的ID都自動修改了舵機的舵機模式、電機模式調(diào)試方法同1號舵機重復(fù)以上過程,設(shè)置其他幾號舵機,設(shè)定相應(yīng)的I

3、D號、調(diào)試舵機是否正常工作。完成舵機的調(diào)試,將舵機連接到控制器,控制器上有“Bobot Servo”7個連接口,選擇哪些口都可以,傳感器屬于輸入設(shè)備,連接到控制器的I/O口上,I/O口有12個,選擇那兩個口都可以,但一定要定義好,這里選擇0口和1口。編寫程序,對于AVR型單片機,有很多編程工具,這里介紹兩種軟件,“NorthStar”和“eclipse”“NorthStar”軟件用法簡介新建項目,控制器芯片為AVR選擇“MultiFLEX2-AVR”“下一步”壁障小車有四個輪子,所以有四個舵機,ID1-4,四個舵機都選擇“電機模式”,“舵機模式”的舵機轉(zhuǎn)動角度由0- 180,“電機模式”舵機轉(zhuǎn)

4、動角度由0- 360,小車執(zhí)行前進和后退程序,整周轉(zhuǎn),選擇“電機模式”。沒有模擬量轉(zhuǎn)數(shù)字量裝置AD通道個數(shù)為0有兩個傳感器,IO通道個數(shù)為2,Channel0和Channel1,且傳感器為輸入裝置生成以下界面兩個傳感器輸入口,定義兩個變量,變量類型int,再起一個名稱,另一個變量io1。引入一個while循環(huán)傳感器兩個數(shù)字輸入,io0如下,io1選擇通道2If語句,給兩個輸入賦予高電位的初值,即兩個傳感器都沒有檢測到障礙物,不向控制器輸入信號If條件成立,就是沒有檢測到障礙物,小車直走延時10毫秒If條件不成立,即有其中一個傳感器檢測到障礙物左側(cè)遇到障礙物條件成立,小車后退,延時10毫秒,向右

5、轉(zhuǎn),延時10毫秒If條件不成立,即小車右側(cè)傳感器檢測到障礙,舵機后退,延時10毫秒,舵機左轉(zhuǎn),延時10毫秒。后退左轉(zhuǎn)將各個模塊連接起來,得到壁障小車程序如下自動生成程序如下#include Apps/SystemTask.huint8 SERVO_MAPPING4 = 1,2,3,4;int main() int io0 = 0; int io1 = 0; MFInit(); MFInitServoMapping(&SERVO_MAPPING0,4); MFSetPortDirect(0x00000FFC); MFSetServoMode(1,1); MFSetServoMode(2,1);

6、MFSetServoMode(3,1); MFSetServoMode(4,1); while (1) io0 = MFGetDigiInput(0); io1 = MFGetDigiInput(1); if (io0=1)&(io1=1) MFSetServoRotaSpd(1,1000); MFSetServoRotaSpd(2,-1000); MFSetServoRotaSpd(3,1000); MFSetServoRotaSpd(4,-1000); MFServoAction(); DelayMS(10); else if (io0=0) MFSetServoRotaSpd(1,-10

7、00); MFSetServoRotaSpd(2,1000); MFSetServoRotaSpd(3,-1000); MFSetServoRotaSpd(4,1000); MFServoAction(); DelayMS(1000); MFSetServoRotaSpd(1,1000); MFSetServoRotaSpd(2,1000); MFSetServoRotaSpd(3,1000); MFSetServoRotaSpd(4,1000); MFServoAction(); DelayMS(1000); else MFSetServoRotaSpd(1,-1000); MFSetSer

8、voRotaSpd(2,1000); MFSetServoRotaSpd(3,-1000); MFSetServoRotaSpd(4,1000); MFServoAction(); DelayMS(1000); MFSetServoRotaSpd(1,-1000); MFSetServoRotaSpd(2,-1000); MFSetServoRotaSpd(3,-1000); MFSetServoRotaSpd(4,-1000); MFServoAction(); DelayMS(1000); 編譯程序編譯成功將控制器與多功能調(diào)試器連接,將程序下載到單片機中下載完成,COM口自動關(guān)閉完成小車的

9、控制程序四足追光式機器人程序如下程序代碼#include Apps/SystemTask.huint8 SERVO_MAPPING10 = 1,2,3,4,5,6,7,8,9,10;int main() int io0 = 0; int io1 = 0; int io2 = 0; int ad0 = 0; int ad1 = 0; MFInit(); MFInitServoMapping(&SERVO_MAPPING0,10); MFSetPortDirect(0x00000FFF); MFSetServoMode(1,0); MFSetServoMode(2,0); MFSetServoMo

10、de(3,0); MFSetServoMode(4,0); MFSetServoMode(5,0); MFSetServoMode(6,0); MFSetServoMode(7,0); MFSetServoMode(8,0); MFSetServoMode(9,0); MFSetServoMode(10,0); MFSetServoPos(1,512,512); MFSetServoPos(2,512,512); MFSetServoPos(3,512,512); MFSetServoPos(4,512,512); MFSetServoPos(5,512,512); MFSetServoPos

11、(6,512,512); MFSetServoPos(7,512,512); MFSetServoPos(8,512,512); MFSetServoPos(9,512,512); MFSetServoPos(10,512,512); MFServoAction(); DelayMS(1000); while (1) ad0 = MFGetAD(0); ad1 = MFGetAD(1); if (ad0 300) if (ad1 300) if (ad0 - ad1) 80) MFDigiOutput(0,1); MFDigiOutput(1,0); MFDigiOutput(2,1); De

12、layMS(100); /左轉(zhuǎn) MFSetServoPos(1,540,512); MFSetServoPos(2,195,512); MFSetServoPos(3,749,512); MFSetServoPos(4,196,512); MFSetServoPos(5,459,512); MFSetServoPos(6,190,512); MFSetServoPos(7,375,512); MFSetServoPos(8,189,1023); MFSetServoPos(9,512,512); MFSetServoPos(10,512,512); MFServoAction(); Delay

13、MS(300); MFSetServoPos(1,640,302); MFSetServoPos(2,195,300); MFSetServoPos(3,449,908); MFSetServoPos(4,512,956); MFSetServoPos(5,559,302); MFSetServoPos(6,190,300); MFSetServoPos(7,475,302); MFSetServoPos(8,189,300); MFSetServoPos(9,512,300); MFSetServoPos(10,512,300); MFServoAction(); DelayMS(300);

14、 MFSetServoPos(1,640,300); MFSetServoPos(3,449,300); MFSetServoPos(4,196,956); MFSetServoPos(5,559,300); MFSetServoPos(7,475,300); MFServoAction(); DelayMS(300); MFSetServoPos(1,340,908); MFSetServoPos(2,512,960); MFSetServoPos(3,549,302); MFSetServoPos(4,196,300); MFSetServoPos(7,675,605); MFServoA

15、ction(); DelayMS(300); MFSetServoPos(1,340,300); MFSetServoPos(2,195,960); MFSetServoPos(3,549,300); MFSetServoPos(7,675,300); MFServoAction(); DelayMS(300); MFSetServoPos(1,440,302); MFSetServoPos(2,195,300); MFSetServoPos(3,649,302); MFSetServoPos(5,359,605); MFSetServoPos(6,512,975); MFServoActio

16、n(); DelayMS(300); MFSetServoPos(1,440,300); MFSetServoPos(3,649,300); MFSetServoPos(5,359,300); MFSetServoPos(6,190,975); MFServoAction(); DelayMS(300); MFSetServoPos(1,540,302); MFSetServoPos(3,749,302); MFSetServoPos(5,459,302); MFSetServoPos(6,190,300); MFSetServoPos(7,375,908); MFSetServoPos(8,

17、512,978); MFServoAction(); DelayMS(300); else if (ad1- ad0) 80) MFDigiOutput(0,1); MFDigiOutput(1,1); MFDigiOutput(2,0); DelayMS(100); /右轉(zhuǎn) MFSetServoPos(1,540,512); MFSetServoPos(2,195,1023); MFSetServoPos(3,749,512); MFSetServoPos(4,196,512); MFSetServoPos(5,459,512); MFSetServoPos(6,190,512); MFSe

18、tServoPos(7,375,512); MFSetServoPos(8,189,512); MFSetServoPos(9,512,512); MFSetServoPos(10,512,512); MFServoAction(); DelayMS(300); MFSetServoPos(1,440,302); MFSetServoPos(2,195,300); MFSetServoPos(3,649,302); MFSetServoPos(4,196,300); MFSetServoPos(5,359,302); MFSetServoPos(6,190,300); MFSetServoPo

19、s(7,675,908); MFSetServoPos(8,512,978); MFSetServoPos(9,512,300); MFSetServoPos(10,512,300); MFServoAction(); DelayMS(300); MFSetServoPos(1,440,300); MFSetServoPos(3,649,300); MFSetServoPos(5,359,300); MFSetServoPos(7,675,300); MFSetServoPos(8,189,978); MFServoAction(); DelayMS(300); MFSetServoPos(1

20、,340,302); MFSetServoPos(3,549,302); MFSetServoPos(5,659,908); MFSetServoPos(6,512,975); MFSetServoPos(7,575,302); MFSetServoPos(8,189,300); MFServoAction(); DelayMS(300); MFSetServoPos(1,340,300); MFSetServoPos(3,549,300); MFSetServoPos(5,659,300); MFSetServoPos(6,190,975); MFSetServoPos(7,575,300)

21、; MFServoAction(); DelayMS(300); MFSetServoPos(1,640,908); MFSetServoPos(2,512,960); MFSetServoPos(3,449,302); MFSetServoPos(5,559,302); MFSetServoPos(6,190,300); MFSetServoPos(7,475,302); MFServoAction(); DelayMS(300); MFSetServoPos(1,640,300); MFSetServoPos(2,195,960); MFSetServoPos(3,449,300); MF

22、SetServoPos(5,559,300); MFSetServoPos(7,475,300); MFServoAction(); DelayMS(300); MFSetServoPos(1,540,302); MFSetServoPos(2,195,300); MFSetServoPos(3,749,908); MFSetServoPos(4,512,956); MFSetServoPos(5,459,302); MFSetServoPos(7,375,302); MFServoAction(); DelayMS(300); else MFDigiOutput(0,0); MFDigiOu

23、tput(1,1); MFDigiOutput(2,1); DelayMS(100); /前進 MFSetServoPos(1,640,512); MFSetServoPos(2,195,512); MFSetServoPos(3,349,512); MFSetServoPos(4,196,1023); MFSetServoPos(5,559,512); MFSetServoPos(6,190,512); MFSetServoPos(7,475,512); MFSetServoPos(8,189,512); MFSetServoPos(9,512,512); MFSetServoPos(10,

24、312,512); MFServoAction(); DelayMS(300); MFSetServoPos(1,340,908); MFSetServoPos(2,512,960); MFSetServoPos(3,383,300); MFSetServoPos(4,196,300); MFSetServoPos(5,459,302); MFSetServoPos(6,190,300); MFSetServoPos(7,375,302); MFSetServoPos(8,189,300); MFSetServoPos(9,512,300); MFSetServoPos(10,712,900)

25、; MFServoAction(); DelayMS(300); MFSetServoPos(1,340,300); MFSetServoPos(2,195,960); MFSetServoPos(3,449,300); MFSetServoPos(5,459,300); MFSetServoPos(7,375,300); MFSetServoPos(10,312,900); MFServoAction(); DelayMS(300); MFSetServoPos(1,440,302); MFSetServoPos(2,195,300); MFSetServoPos(3,549,302); M

26、FSetServoPos(5,359,302); MFSetServoPos(7,675,908); MFSetServoPos(8,512,978); MFSetServoPos(10,712,900); MFServoAction(); DelayMS(300); MFSetServoPos(1,440,300); MFSetServoPos(3,549,300); MFSetServoPos(5,359,300); MFSetServoPos(7,675,300); MFSetServoPos(8,189,978); MFSetServoPos(10,312,900); MFServoA

27、ction(); DelayMS(300); MFSetServoPos(1,540,302); MFSetServoPos(3,649,302); MFSetServoPos(5,659,908); MFSetServoPos(6,512,975); MFSetServoPos(7,623,300); MFSetServoPos(8,189,300); MFSetServoPos(10,712,900); MFServoAction(); DelayMS(300); MFSetServoPos(1,540,300); MFSetServoPos(3,649,300); MFSetServoP

28、os(5,659,300); MFSetServoPos(6,190,975); MFSetServoPos(7,575,300); MFSetServoPos(10,312,900); MFServoAction(); DelayMS(300); MFSetServoPos(1,640,302); MFSetServoPos(3,349,908); MFSetServoPos(4,512,956); MFSetServoPos(5,559,302); MFSetServoPos(6,190,300); MFSetServoPos(7,475,302); MFSetServoPos(10,71

29、2,900); MFServoAction(); DelayMS(300); else MFDigiOutput(0,1); MFDigiOutput(1,0); MFDigiOutput(2,1); DelayMS(100); /左轉(zhuǎn) MFSetServoPos(1,540,512); MFSetServoPos(2,195,512); MFSetServoPos(3,749,512); MFSetServoPos(4,196,512); MFSetServoPos(5,459,512); MFSetServoPos(6,190,512); MFSetServoPos(7,375,512);

30、 MFSetServoPos(8,189,1023); MFSetServoPos(9,512,512); MFSetServoPos(10,512,512); MFServoAction(); DelayMS(300); MFSetServoPos(1,640,302); MFSetServoPos(2,195,300); MFSetServoPos(3,449,908); MFSetServoPos(4,512,956); MFSetServoPos(5,559,302); MFSetServoPos(6,190,300); MFSetServoPos(7,475,302); MFSetS

31、ervoPos(8,189,300); MFSetServoPos(9,512,300); MFSetServoPos(10,512,300); MFServoAction(); DelayMS(300); MFSetServoPos(1,640,300); MFSetServoPos(3,449,300); MFSetServoPos(4,196,956); MFSetServoPos(5,559,300); MFSetServoPos(7,475,300); MFServoAction(); DelayMS(300); MFSetServoPos(1,340,908); MFSetServ

32、oPos(2,512,960); MFSetServoPos(3,549,302); MFSetServoPos(4,196,300); MFSetServoPos(7,675,605); MFServoAction(); DelayMS(300); MFSetServoPos(1,340,300); MFSetServoPos(2,195,960); MFSetServoPos(3,549,300); MFSetServoPos(7,675,300); MFServoAction(); DelayMS(300); MFSetServoPos(1,440,302); MFSetServoPos

33、(2,195,300); MFSetServoPos(3,649,302); MFSetServoPos(5,359,605); MFSetServoPos(6,512,975); MFServoAction(); DelayMS(300); MFSetServoPos(1,440,300); MFSetServoPos(3,649,300); MFSetServoPos(5,359,300); MFSetServoPos(6,190,975); MFServoAction(); DelayMS(300); MFSetServoPos(1,540,302); MFSetServoPos(3,749,302); MFSetServoPos(5,459,302); MFSetServoPos(6,190,300); MFSetServoPos(7,375,908); MFSetServoPos(8,512,978); MFServoAction(); DelayMS(300); else MFDigiOutput(0,1); MFDigiOutput(1,1); MFDigiOutput(2,0); DelayMS(100); /右轉(zhuǎn) MFSetServoPos(1,540,

溫馨提示

  • 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)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論