智能機器人實驗二_第1頁
智能機器人實驗二_第2頁
智能機器人實驗二_第3頁
智能機器人實驗二_第4頁
智能機器人實驗二_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、實驗二智能機器人控制技術的研究一實驗目的1熟悉機器人控制系統(tǒng)的組成與與相關控制技術。2熟悉輪式移動機器人運動控制系統(tǒng)的組成與控制方法。3. 熟悉PID控制、模糊控制與神經(jīng)網(wǎng)絡控制算法的基本原理及其在智能機器人控制中的應用。二實驗基本理論機器人與計算機相區(qū)別的一個重要特征,就是機器人能夠運動。而運動就必須有動力部件,以及由這些動力部件驅動的結構。因此,合理選擇和設計運動系統(tǒng)是移動機器人設計中一項基本而重要的工作。通常,運動系統(tǒng)是由移動機構和驅動系統(tǒng)組成的,它們在控制系統(tǒng)的控制指揮下,完成各種移動動作?!拔磥碇恰睓C器人控制系統(tǒng)結構如圖 6 所示。其中,控制系統(tǒng)主板是控制系統(tǒng)的核心。運動控制卡和M

2、ultiFLEX 控制器又是主板上最重要的控制設備。圖 6 “未來之星”控制系統(tǒng)結構框圖運動控制卡主要有兩方面的功能:(1)接收上位機的指令,并將其轉化為驅動器的控制指令,控制兩組驅動器和電機執(zhí)行上位機要求的運動。(2)通過IIC 總線查詢陀螺儀和傾角計傳感器的數(shù)據(jù)信息,并做基本PID 運算;接收上位機的導航控制指令,結合姿態(tài)傳感器的姿態(tài)信息做相應的運算并控制兩組驅動器和電機閉環(huán)執(zhí)行預定的軌跡運動。MultiFLEX 控制器是“未來之星”機器人的核心控制器,是一個模塊化的機器人控制卡。同時,MultiFLEX 是一塊公開電路圖、公開源程序的控制卡。用戶可以根據(jù)這些資源,自行為它開發(fā)針對某個特定

3、機器人的程序,使MultiFLEX 具有決策能力。MultiFLEX 控制卡上的有多種輸入輸出接口,在“未來之星”上主要用于簡單傳感器信息的采集和處理,舵機和電機的運動控制。在 “未來之星”的系統(tǒng)架構中,最底層的運動/控制執(zhí)行層包括電機伺服控制器,舵機控制器等。MultiFLEX 控制卡搭載在機器人的總線上,當作一個控制執(zhí)行節(jié)點來使用??刂茍?zhí)行層接受來自上層的控制指令,處理大量高速原始數(shù)據(jù),并用簡單的算法完成對執(zhí)行器的自動控制,以及對傳感器的有效讀取,并把信息傳遞給上層。MultiFLEX 控制卡的外觀和卡上的接口說明如下圖所示:圖 7 MultiFLEX 控制卡的外觀圖卡上的各種接口說明如下

4、:A: 電源接口,+5-6V 電源 (J6)(1.0a 之后版本的控制卡使用同軸電源插座,極性為內(nèi)正外負)MultiFLEX 控制卡使用5-6V 的直流電源。至少要求5A 的電流輸出能力。B: 控制板總線接口 (J8)MultiFLEX 控制卡支持博創(chuàng)科技的標準總線,可以作為功能模塊安裝在博創(chuàng)科技的所有機器人產(chǎn)品上使用。具體使用方法請參考“MultiFLEX 控制卡數(shù)據(jù)手冊”。C: 4 路電機接口M1-M4 (J7)4路PWM 電機驅動輸出。最大允許電流2A,最高輸出電壓為供電電壓??梢灾С指鞣N小型直流有刷電機。D: RS-232 串口(J5)友迅達(FriendCOMM)標準的5 針RS-2

5、32 串行口。標準RS-232 電平。需要在這里插入232 通訊電纜。E: 7 路模擬輸入接口 AD0-AD6 (J2)ADC 輸入口允許輸入05V 模擬信號,在MultiFLEX 控制卡中可以轉換為數(shù)字信號。主要用于一些模擬電壓輸出的傳感器信號采集。其中靠近電路板內(nèi)側是信號輸入線(對應圖上字母S。需要注意輸入最低電壓0V,最大電壓為MultiFLEX 控制卡的電源電壓,即56V),中間是電源(56V,對應圖上“+”號),外側是地線(GND,對應圖上“-”號)F: 12 路PWM 舵機控制 PW0PW11(CH0CH11)(J4)12 路舵機的控制接口被分成了四組。這是為了避免各個接口的接插件

6、之間干涉。舵機的引線有三根,其中黃色是信號線(對應圖上字母S,靠近電路板內(nèi)側),橙色是電源(56V,對應圖上“+”號),棕色是地線(GND,對應圖上“-”號)G: 16 路數(shù)字I/O IO0-IO15 (J1,J3)16 路數(shù)字I/O 可以在UP-MRcommander 軟件中被配置為輸入或者輸出。如果配置為輸入,每個I/O 口能采集加在其上的電壓是高電平(1)還是低電平(0),主要用于檢測開關、按鈕、紅外傳感器等的狀態(tài)。如果配置為輸出,每個I/O 口可以輸出高低電平(高電平為電源電壓,低電平為0V),可以用于驅動LED、微型電機等器件。其中靠近電路板內(nèi)側是信號輸入線(對應圖上字母S。需要注意

7、輸入最低電壓0V,最大電壓為MultiFLEX 控制卡的電源電壓,即56V),中間是電源(56V,對應圖上“+”號),外側是地線(GND,對應圖上“-”號)。H: AVR 單片機在線編程接口(J6)MultiFLEX 控制卡使用AVR ATMega128 微控制器作為處理器,這款處理器具備在線編程(ISP)功能。使用ICCAVR、WINAVR 等PC 機上的C 語言編譯環(huán)境交叉編譯好的二進制文件可以通過該接口下載到處理器內(nèi)置的FLASH 存儲器中運行。I: 控制卡功能選擇撥碼開關(S1)H的上方即是控制卡功能選擇撥碼開關。撥碼開關共有8 路,每一路撥到ON 位置為接通。l 第 1、2 路接通且

8、3、4 路斷開時使用RS232 串口與PC 機的UP-MRcommander 軟件通訊;當?shù)?,2 路斷開且3、4 路接通時,控制卡通過標準總線與上位機連接。我們在這里要使用的是第二種方式,即1、2 處于OFF 的位置,3、4 處于ON 的位置。l 第 5、6 路撥碼開關用來選擇通訊的波特率。5 路為低位,6 路為高位;撥碼開關接通代表0。波特率有以下幾種:編號: 6 5 : 對應波特率0/1 狀態(tài) 0 0 : 115200BPS0 1 : 38400 BPS1 0 : 19200 BPS1 1 : 9600 BPSl 第 7 路撥碼開關用于選擇開機狀態(tài)。當為ON時開機自動執(zhí)行控制卡中上次保存

9、的指令,當為OFF 時待機,等待控制命令。l 第 8 路暫時保留未用,為以后擴展功能使用。在出廠時,撥碼開關的默認值是:使用標準總線與上位機連接,波特率19200BPS。MultiFLEX 控制卡的主要數(shù)據(jù)如下表所示:項目 數(shù)據(jù) 說明型號 MultiFLEX 1.0長/寬/高 105/50/19mm 不含20pin 總線接口供電 4.86.5VDC 推薦4.86V。電壓超過6.5V 可能損壞!保護 過流保護反接保護長時間電源反接仍可能損壞。過流保護生效后,需重新上電才能工作靜態(tài)功耗 0.3W保護電流 68A 超過此電流后,自動切斷。約10 秒后才能再次工作。I/O 電平 低電平 < GN

10、D + 1.5V高電平 > VCC 1.5V數(shù)字通訊接口 RS-232 接口 TX,RX,GND 三線制數(shù)字量輸入/輸出 16 個,復用 GND/VCC/SIG 三線制(SIG 可以為輸入或輸出,在UP-MRcommander 軟件中配置)模擬量輸入 8個(其中一個已經(jīng)內(nèi)部使用) GND/VCC/SIG 三線制(SIG 為信號輸入)功率輸出 4個 M+,M- 兩線制,最大每通道2A舵機輸出 12個 GND/VCC/SIG 三線制(SIG 為信號輸出)擴展接口 20線總線接口 博創(chuàng)科技標準的總線接口??梢酝ㄟ^該總線接口擴展其他外設。JTAG 功能 不支持ISP 功能 支持 GND/RST/

11、MOSI/MISO/SCK 五線,配套提供ISP 編程電纜無線通訊 支持 可選配無線通訊模塊,433MHz,19.2KBps三實驗平臺1. 系統(tǒng)結構實驗系統(tǒng)仍然采用博創(chuàng)公司的“未來之星”移動機器人平臺。依據(jù)各主要功能模塊的分層布置,“未來之星”機器人的內(nèi)部組裝結構從下往上依次如圖 8(a)-(d)所示。圖 8 “未來之星”機器人各主要功能模塊的分層布置運動層主要是能源和驅動部分?;A控制層安裝基本控制電路,主要有主板、MultiFLEX控制卡、運動控制卡、通訊板和接口。高級控制層上有LCD 及鍵盤模塊、嵌入式PC 系統(tǒng)、液晶屏模組、光敏溫敏傳感器等電路板。各層之間通過立柱互相固定。頭部安裝有攝

12、像頭和激光筆。激光筆主要用來和攝像頭配合使用,進行簡單的圖像激光測距。2. “未來之星”機器人控制系統(tǒng)硬件部分控制系統(tǒng)是機器人的核心,是機器人順利完成各項任務的基本保證?!拔磥碇恰睓C器人的控制主要涉及到頭部控制、手臂控制和運動控制。頭部的控制主要通過一個旋轉舵機來實現(xiàn)頭部轉動。手臂控制包括肩關節(jié)、肘關節(jié)、腕關節(jié)和指關節(jié),左右手臂各具有5 個自由度。在運動控制部分,“未來之星”采用兩輪驅動,兩個直流伺服驅動器對兩個直流伺服電機進行閉環(huán)控制,能夠比較精確的控制機器的運動軌跡。結合帶陀螺儀和傾角計導航的運動控制卡,機器人可以實現(xiàn)精確的運動控制,有效地鎖定航向、自動補償和糾正因外力造成的運動偏差。在

13、演示軟件FStar 2.2.1 的基本控制頁面(如),我們可以看到上述三個部位的運動控制功能演示。有關電機方面的具體控制,在此不在贅述,請查閱相關資料。圖9 FStar 2.2.1 軟件系統(tǒng)的基本控制頁面軟件部分通過實驗一已經(jīng)了解到“未來之星”機器人的FStar 軟件平臺。從軟件系統(tǒng)的層次架構中,我們主要通過發(fā)送命令、解析命令到行為執(zhí)行來實現(xiàn)對機器人的控制。因此,我們必須熟悉各硬件設備與主機的通訊協(xié)議以及在軟件平臺上的行為控制接口函數(shù)。其中幾個重要的接口控制函數(shù),列舉如下:SetBothMotorsSpeed 功能:同時發(fā)送左右兩側電機速度參數(shù):Inleftspeed: int 類型,左側電機

14、速度Inrightspeed: int 類型,右側電機速度SetLMotorSpeed 功能:發(fā)送左側電機速度參數(shù):Inleftspeed:int 類型,左側電機速度SetRMotorSpeed 功能:發(fā)送右側電機速度參數(shù):Inrightspeed:int 類型,右側電機速度Brake 功能:剎車參數(shù):無SetPIDpara 功能:設置鎖定航向PID 參數(shù)參數(shù):pid1: UCHAR 類型,比例系數(shù)pid2:UCHAR 類型,積分系數(shù)pid3:UCHAR 類型,微分系數(shù)TurnLByGyro 功能:左轉(基于陀螺)參數(shù):inangle: int 類型,要轉動的角度(真實角度的10 倍)inSp

15、eed:UCHAR 類型,轉動的速度(真實速度的1/100)LockDirection 功能:鎖定航向參數(shù):cmd:UCHAR 類型,命令標志speed:UCHAR 類型,速度(實際速度的1/100)SetServeMotor 功能:設置伺服電機參數(shù):inSpeed:int 類型,伺服電機速度ResetServe 功能:所有舵機復位參數(shù):無SendArmData 功能:控制機械臂運動參數(shù):angle:UCHAR 數(shù)組類型,機械臂舵機角度值speed:UCHAR 數(shù)組類型,機械臂舵機轉動時速度值WaveHead 功能:頭部轉動控制參數(shù):angle:int 類型,要轉過的角度speed:UCHAR

16、 類型,轉動的速度四、實驗內(nèi)容在程序的對話框中添加按鈕控件基本控制“前進,后退,左轉,右轉,圓形”分別命名,接著為其添加類向導函數(shù)void CFstarTestDlg:OnForward() / TODO: Add your control notification handler code herem_Cmd.SetBothMotorsSpeed(200,200);/前進void CFstarTestDlg:OnTurnleft() / TODO: Add your control notification handler code herem_Cmd.SetBothMotorsSpeed(

17、-100,100);/左轉void CFstarTestDlg:OnTurnright() / TODO: Add your control notification handler code herem_Cmd.SetBothMotorsSpeed(100,-100);/右轉void CFstarTestDlg:OnBackward() / TODO: Add your control notification handler code herem_Cmd.SetBothMotorsSpeed(-200,-200);/后退void CFstarTestDlg:OnBrake() / TODO

18、: Add your control notification handler code herem_Cmd.Brake(1);/停止,2,圓形實現(xiàn)程序:void CFstarTestDlg:OnYx() / TODO: Add your control notification handler code here/clock_t start,finish; /clock_t start,finish;/ TODO: Add your control notification handler code here/m_Cmd.SetBothMotorsSpeed(200,350);/start=clock(); / while(1) m_Cmd.SetBothMotorsSpeed

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論