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