自主移動機器人培訓教材.ppt
《自主移動機器人培訓教材.ppt》由會員分享,可在線閱讀,更多相關(guān)《自主移動機器人培訓教材.ppt(29頁珍藏版)》請在裝配圖網(wǎng)上搜索。
全自主移動機器人 自主移動機器人 培訓教程 全自主移動機器人 深圳市鷗鵬科技有限公司簡介 深圳市鷗鵬科技有限公司 OpenTechnologyLtd 是一家專業(yè)從事機電一體化和專業(yè)機器人創(chuàng)新產(chǎn)品研究 開發(fā) 生產(chǎn)和銷售的高新技術(shù)企業(yè) 開發(fā)的具有自主知識產(chǎn)權(quán)的機電一體化和專業(yè)機器人集成技術(shù)及產(chǎn)品不僅可以廣泛的應用于工業(yè)自動化領(lǐng)域 而且還可以廣泛的應用于普通高等院校和職業(yè)技術(shù)學院的自動化和機電一體化等相關(guān)專業(yè)的實訓 教學和研究 本手冊主要圍繞普通高等院校和職業(yè)技術(shù)學院的數(shù)控原理與數(shù)控技術(shù) 專業(yè)機器人和控制原理和控制工程等綜合創(chuàng)新實驗室的建設(shè)來介紹產(chǎn)品 但這些產(chǎn)品并不僅僅限于教學應用 他們的大多數(shù)產(chǎn)品都可以直接應用于工業(yè)領(lǐng)域 更詳細信息請登錄 www open 全自主移動機器人 自主移動機器人簡介 Robocup足球機器人世界杯是目前世界上規(guī)模最大的智能機器人聯(lián)盟 Robocup中型組足球機器人是目前Robocup足球機器人比賽中最富挑戰(zhàn)性的課題之一 博得許多機器人研究機構(gòu)和大學的青睞 DM B系列智能機器人系統(tǒng)既能夠面向RobotCup中型組足球機器人競賽提供一個標準比賽任務(wù) 能夠用于如實時計算機視覺 多機器人協(xié)作算法等其他多種研究 還可以滿足機電 自動控制等課程的教學演示 工程實訓 以提高學生的綜合創(chuàng)新能力 可擴展成工業(yè)領(lǐng)域和服務(wù)領(lǐng)域的智能無人小車和智能服務(wù)機器人 全自主移動機器人 DM B系列智能機器人標準配置 DM B200 DM B400 全自主移動機器人 自主移動機器人整體外形圖 全自主移動機器人 自主移動機器人機械模塊 機械外殼 驅(qū)動輪 全維視覺安裝架 踢球機構(gòu) 傳感器安裝位 全自主移動機器人 自主移動機器人電氣控制模塊 直流伺服電機 電源系統(tǒng) 運動控制器 螺線管 全自主移動機器人 自主移動機器人傳感器模塊 全維視覺 前向視覺 電子羅盤 可選 紅外傳感器 可選 超聲波傳感器 可選 全自主移動機器人 自主移動機器人使用 接口連線 筆記本啟動 機器人上電 硬件模塊測試 硬件模塊測試 硬件檢查 全自主移動機器人 自主移動機器人軟件模塊 運動控制模塊 視覺模塊 策略模塊 WindowsXPProfessional操作系統(tǒng)需要攝像頭驅(qū)動程序運動控制動態(tài)鏈接庫TML lib dll 視覺動態(tài)庫omni vision dll 決策動態(tài)庫decision making lib和控制動態(tài)庫control lib 推薦運行在PCCPU800MHz以上 256M以上內(nèi)存環(huán)境 軟件運行環(huán)境 全自主移動機器人 程序模塊劃分及工作流程一 運行于BlackGen上的程序從結(jié)構(gòu)上可以分為4個主要模塊 視覺模塊決策模塊運動控制模塊通信模塊除BlackGen之外 還有一個教練 Coach 程序用于遠程控制和查看當前信息 BlackGen運行在機器人的筆記本中 Coach運行在場外的計算機里面 一個Coach程序可以控制多個BlackGen程序 全自主移動機器人 程序模塊劃分及工作流程二 全自主移動機器人 程序模塊劃分及工作流程三 BlackGen整個進程由5個線程組成 視覺線程 決策線程運動控制線程通信線程另外還有一個主線程 它是程序的入口 它先為整個進程作一些必要的初始化 如 初始化攝像頭 讀取配置文件等 然后創(chuàng)建另外4個線程 接著就等待鍵盤輸入和處理指令 鍵盤輸入的指令有start 開始 stop 暫停 end 程序結(jié)束 全自主移動機器人 程序模塊劃分及工作流程四 全自主移動機器人 視覺模塊 全自主移動機器人 視覺模塊主要完成以下任務(wù) a 基于Camera類的視頻采集 b 基于CBaseVision類及其子類 CFrontVision和COmniVision 的圖像分析處理 c 兩個視覺的信息融合 updateWorld函數(shù) 全自主移動機器人 基于Camera類的視頻采集 Camera類表示攝像頭設(shè)備 主要用來初始化攝像頭和從攝像頭中獲得的圖像原始數(shù)據(jù) 通過攝像頭獲得的是24位RGB格式的圖像數(shù)據(jù) RGB red green blue 是在三基色理論基礎(chǔ)上開發(fā)的相加混合顏色空間 這也是在圖像處理中通常采用的顏色空間 其中在320 240的圖像上每個象素點用3個Byte表示其RGB值 主要采用了directShow技術(shù)進行視頻捕捉 Camera類的接口很簡單 為了方便使用 只有兩個公共函數(shù) boolInit intdev num char pBuffer 執(zhí)行初始化攝像頭 在第一次從設(shè)備讀取圖像原始數(shù)據(jù) RGB顏色模式 之前 一定要執(zhí)行初始化 第一個參數(shù)dev num表示該設(shè)備的在當前操作系統(tǒng)中的枚舉值 第二個參數(shù)pBuffer表示存放圖像原始數(shù)據(jù)的緩沖區(qū) 該緩沖區(qū)大小至少為3 320 240個BYTE voidCaptureImage char pBuffer 捕捉圖像原始數(shù)據(jù) 參數(shù)pBuffer表示存放圖像原始數(shù)據(jù)的緩沖區(qū) 全自主移動機器人 基于CBaseVision類及其子類的圖像分析處理 軟件在識別中使用顏色分割的方法 軟件中需要識別八種顏色 我們通過對H I S三個數(shù)組都設(shè)成BYTE型 每一為為代表一種顏色 如果某個顏色分量的某個值屬于某中顏色 則對應與該顏色的此顏色分量數(shù)組中的相應位設(shè)為1 否則設(shè)為0 這樣通過用某個象素的H I S值作為H I S三個數(shù)組的索引對三個值進行位與即可得到當前象素屬于的顏色 也成為 8通道 的方法 這樣效率比較高 此部分已經(jīng)被封裝成vision dll在程序中通過加載dll實現(xiàn) 其中的大部分文件的源代碼是開放的 全自主移動機器人 CBaseVision類圖像處理的典型步驟 全自主移動機器人 CFrontVision類中圖像處理實現(xiàn)過程 全自主移動機器人 兩個視覺的信息融合 軟件有兩個攝像頭采集視頻 采用的是不同的圖像處理方法 因此在視覺融合方面需要做一些工作 即不論所得的有效信息是從全維視覺得到還是從前向視覺得到 在決策模塊認為是一致的 boolupdateWorld CFrontVision frontVision boolfrontOK COmniVision omniVison boolomniOK World w 更新信息函數(shù) 該函數(shù)為上面的結(jié)構(gòu)體中變量賦值 第一個參數(shù)frontVision指向前向視覺對象 第二個參數(shù)frontOk true表示前向視覺參與視覺融合 false表示不參與 第三個參數(shù)omniVision指向全維視覺對象 第四個參數(shù)omniOk true表示全維視覺參與視覺融合 false表示不參與 注 在軟件中主要是通過經(jīng)驗來融合兩個視覺的信息 該部分應該根據(jù)具體情況考慮修改 并且沒有寫單獨一個視覺的情況 如果需要可自己添加 第五個參數(shù)w World對象中包含Vision2Player成員 該成員會被賦值 全自主移動機器人 決策模塊 決策模塊的輸入是視覺模塊的輸出 是球場上各個對象的信息 如球相對于機器人的坐標 兩個球門中心點相對于機器人的坐標等等 決策模塊的輸出是具體的運動參數(shù) 如左右輪速 它們將成為運動控制模塊的輸入 在這里面運動控制模塊所做的是根據(jù)過去部分的和當前的視覺信息判斷出當前狀態(tài) 根據(jù)這個狀態(tài)使用對應的算法計算出適合的運動參數(shù) 決策模塊主要是通過一個有限狀態(tài)自動機來完成決策過程的 而這個狀態(tài)機是通過讀取配置文件來構(gòu)建的 BlackGen在初始化的時候先讀取這個配置文件并在程序中構(gòu)建出一個狀態(tài)機供決策使用 用戶可以根據(jù)自己的需要針對不同情況編寫不同的配置文件 全自主移動機器人 決策模塊的原理 全自主移動機器人 決策模塊的原理 找球 FindBall 就是當視覺沒有在圖像上識別出球時所處的狀態(tài) 機器人采用自轉(zhuǎn)的方式找球 如果看到球 跳到拿球狀態(tài) 拿球 GoToBall 就是機器人看見球了 但是球還沒進入機器人的帶球機構(gòu) 這個狀態(tài)的動作需要一個具體的算法 一個已知目標點求左右輪速的算法 當看不見球了狀態(tài)跳到找球 如果球進入機器人的帶球機構(gòu)時跳到帶球狀態(tài) 帶球 DriveToGoal 就是球在帶球機構(gòu)中 而球門并不在機器人的射程中所處的狀態(tài) 機器人針對對方球門的位置算出不同的左右輪速 同樣這里也需要一個特定的算法 如果球不見了狀態(tài)跳到找球 如果球脫離了帶球狀態(tài)跳到拿球狀態(tài) 如果對方球門看不見則跳到找球門的狀態(tài) 如果對方球門進入射程范圍就跳到射門狀態(tài) 找球門 FindOppGoal 就是球在機器人的帶球機構(gòu)中 但是機器人看不見對方球門 機器人需要帶著球找對方球門 這里我們直接設(shè)置左右輪速 25 40 走圓弧來完成這個工作 射門 Kick 是球在帶球機構(gòu)中 對方球門又在射程中 機器人打開踢球機構(gòu)把球彈出 同樣如果球不見了就跳到找球狀態(tài) 全自主移動機器人 具體決策線程的流程 全自主移動機器人 教練與通信模塊 通信模塊的主要作用就是監(jiān)聽網(wǎng)絡(luò)等待教練程序發(fā)過來的指令 在這里我們只定義了兩種指令 s 小寫s 代表start開始 S 大寫s 代表stop暫停教練程序與通信模塊是通過數(shù)據(jù)結(jié)構(gòu)Referee2Player來完成的 structReferee2Player charcmd roleTyperole 其中cmd為指令 即 s 和 S role還沒有實際的用途 全自主移動機器人 運動控制模塊 BlackGen機器人采用TECHNOSOFT公司的IPM100運動控制板作為運動控制器 用來將上位機指令轉(zhuǎn)換為運動輸出 BlackGen采用運動控制動態(tài)鏈接庫TML lib dll來完成對IPM板的控制 而控制工作主要在ipm類里面實現(xiàn) 全自主移動機器人 運動控制模塊接口說明 主要成員函數(shù) boolIpm initIpm 初始化控制板 intIpm readASPD 讀取實際的左右輪速并把結(jié)果保存在R ASPD和L ASPD這兩個成員變量中 boolIpm DetectBlock doublelwset doublerwset 判斷機器人的左右輪是否處在堵轉(zhuǎn)狀態(tài) 輸入為lwset和rwset實際向IPM板發(fā)送的左右輪速 函數(shù)給bLBlocking和bRBlocking兩個成員變量賦值 這兩個變量分別代表了左右輪是否堵轉(zhuǎn) 第一個參數(shù)lwset為發(fā)到IPM板上的左輪速第二個參數(shù)rwset為發(fā)到IPM板上的右輪速boolIpm LoadConfig constchar filename 讀取配置文件 得到初始化參數(shù) 第一個參數(shù)filename為IPM板相關(guān)的配置文件 默認為 ipm cfg voidIpm axisOff 讓機器人處于poweroff的狀態(tài) voidIpm axisOn 讓機器人處于poweron的狀態(tài) voidIpm kickerOn 打開機器人的踢球機構(gòu) voidIpm kickerOff 關(guān)閉機器人的踢球機構(gòu) boolIpm SendToIPM 把類成員lv和rv作為左右輪速以速度控制的形式發(fā)送指令給IPM板 全自主移動機器人 全自主移動機器人維護 保持設(shè)備正常 故障排除 檢查相關(guān)連線 日常維護- 1.請仔細閱讀文檔,確保文檔完整性,對于不預覽、不比對內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請點此認領(lǐng)!既往收益都歸您。
下載文檔到電腦,查找使用更方便
9.9 積分
下載 |
- 配套講稿:
如PPT文件的首頁顯示word圖標,表示該PPT已包含配套word講稿。雙擊word圖標可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計者僅對作品中獨創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 自主 移動 機器人 培訓教材
鏈接地址:http://www.3dchina-expo.com/p-6334905.html