版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
機(jī)器人操作系統(tǒng)(ROS)機(jī)器人操作系統(tǒng)(ROS)MoveIt!的使用10.2機(jī)器人操作系統(tǒng)(ROS)10.2.1MoveIt!系統(tǒng)架構(gòu)MoveIt!系統(tǒng)架構(gòu)如圖所示,內(nèi)容參考官方文檔概念說(shuō)明。move_group是MoveIt!的核心節(jié)點(diǎn),能夠?qū)⑵渌墓δ芙M件綜合在一起為用戶提供ROS中的動(dòng)作指令和服務(wù),其本身并不具備強(qiáng)大豐富的功能,依靠各種功能包和插件的集成,通過(guò)服務(wù)或消息的方式接收機(jī)器人發(fā)出的消息和機(jī)器人的TF坐標(biāo)變換。MoveIt!系統(tǒng)架構(gòu)機(jī)器人操作系統(tǒng)(ROS)10.2.1MoveIt!系統(tǒng)架構(gòu)
用戶可以通過(guò)如下三種方式訪問(wèn)move_group提供的操作和服務(wù):基于move_group_interface的C++接口,基于moveit_commander的Python接口和使用rviz插件的GUI接口。move_group需要使用ROS參數(shù)服務(wù)器來(lái)獲取以下三種信息:URDF:在ROS參數(shù)服務(wù)器上查找robot_description參數(shù),以獲取機(jī)器人模型的描述信息。SRDF:在ROS參數(shù)服務(wù)器上查找robot_description_semantic參數(shù),以獲取機(jī)器人模型的配置信息,配置信息通常由用戶使用MoveIt!SetupAssistant創(chuàng)建。Config:機(jī)器人的其他配置信息,包括關(guān)節(jié)限制、運(yùn)動(dòng)學(xué)、運(yùn)動(dòng)規(guī)劃、感知和其他信息。機(jī)器人操作系統(tǒng)(ROS)10.2.1MoveIt!系統(tǒng)架構(gòu)運(yùn)動(dòng)規(guī)劃(Motionplanning)就是在將機(jī)器人從初始姿態(tài)和位置移動(dòng)到目標(biāo)姿態(tài)和位置的過(guò)程中,避開(kāi)環(huán)境中的障礙物并防止自身碰撞的一種算法MoveIt!通過(guò)插件機(jī)制(plugininterface)與運(yùn)動(dòng)規(guī)劃器(motionplanner)進(jìn)行交互,可以使用多個(gè)庫(kù)的不同運(yùn)動(dòng)規(guī)劃器,使得MoveIt!擴(kuò)展性更強(qiáng)。MoveIt!中包含有多種運(yùn)動(dòng)規(guī)劃器,包括基于采樣的運(yùn)動(dòng)規(guī)劃器OMPL(move_group默認(rèn)使用),基于搜索的運(yùn)動(dòng)規(guī)劃器SBPL和基于最優(yōu)化的運(yùn)動(dòng)規(guī)劃器CHOMP等。運(yùn)動(dòng)規(guī)劃器結(jié)構(gòu)如圖所示,運(yùn)動(dòng)規(guī)劃請(qǐng)求需要根據(jù)實(shí)際情況設(shè)置一些約束條件:①位置約束:限制link的空間區(qū)域。②方向約束:限制link的運(yùn)動(dòng)方向(滾轉(zhuǎn)、俯仰和偏航)。③可見(jiàn)性約束:限制link上的某個(gè)點(diǎn)在某個(gè)區(qū)域的可見(jiàn)性。④關(guān)節(jié)約束:限制關(guān)節(jié)的運(yùn)動(dòng)范圍。⑤用戶指定約束:用戶通過(guò)回調(diào)函數(shù)定義約束條件。運(yùn)動(dòng)規(guī)劃器結(jié)構(gòu)機(jī)器人操作系統(tǒng)(ROS)10.2.1MoveIt!系統(tǒng)架構(gòu)規(guī)劃場(chǎng)景用于重現(xiàn)機(jī)器人的周圍狀態(tài)以及機(jī)器人的自身姿態(tài)。這一功能主要由規(guī)劃場(chǎng)景監(jiān)聽(tīng)器(PlanningSceneMonitor)實(shí)現(xiàn),如圖所示:規(guī)劃場(chǎng)景框圖機(jī)器人操作系統(tǒng)(ROS)10.2.2如何使用MoveIt!配置助手配置機(jī)械臂運(yùn)行如下命令安裝MoveIt!,如圖所示:$sudoapt-getinstallros-melodic-moveit*安裝MoveIt!機(jī)器人操作系統(tǒng)(ROS)10.2.2如何使用MoveIt!配置助手配置機(jī)械臂
MoveIt!配置助手(SetupAssistant)是一個(gè)使用MoveIt!配置機(jī)器人的圖形界面,主要功能是產(chǎn)生機(jī)器人的SRDF文件,另外還產(chǎn)生其他配置文件,從而創(chuàng)建一個(gè)MoveIt!配置的功能包,完成機(jī)器人的配置、可視化和仿真等工作。運(yùn)行如下命令,啟動(dòng)設(shè)置助手,如圖所示:$roslaunchmoveit_setup_assistantsetup_assistant.launchMoveIt!配置助手其中,按鍵“CreateNewMoveItConfigurationPackage”功能為新建配置功能包,按鍵“EditExistingMoveItConfigurationPackage”功能為使用已有的配置功能包。機(jī)器人操作系統(tǒng)(ROS)10.2.2如何使用MoveIt!配置助手配置機(jī)械臂點(diǎn)擊按鍵“CreateNewMoveItConfigurationPackage”后,點(diǎn)擊“Browse”按鈕,加入相關(guān)模型,模型位置:robot_arm/robot_arm_description/urdf(需將本書對(duì)應(yīng)代碼拷貝至工作空間并進(jìn)行編譯),點(diǎn)擊“LoadFiles”完成模型加載,如圖所示。加載機(jī)械臂模型機(jī)器人操作系統(tǒng)(ROS)10.2.2如何使用MoveIt!配置助手配置機(jī)械臂點(diǎn)擊“Self-Collisions”,配置自碰撞矩陣,如圖所示。默認(rèn)的自碰撞矩陣生成器搜索機(jī)械臂所有關(guān)節(jié),這個(gè)碰撞免檢矩陣是可以安全地關(guān)閉檢查,從而減少行動(dòng)規(guī)劃的處理時(shí)間。采樣密度指定了多少個(gè)隨機(jī)機(jī)械臂位置來(lái)檢查碰撞,默認(rèn)10000個(gè)碰撞檢查??牲c(diǎn)擊“GenerateCollisionMatrix”自動(dòng)完成設(shè)置。配置自碰撞矩陣機(jī)器人操作系統(tǒng)(ROS)10.2.2如何使用MoveIt!配置助手配置機(jī)械臂點(diǎn)擊“VirtualJoints”,分配機(jī)械臂的虛擬關(guān)節(jié),如圖所示。這里定義機(jī)械臂與世界坐標(biāo)系的關(guān)系,把機(jī)械臂關(guān)節(jié)固定到某個(gè)物體上,例如機(jī)械臂有一個(gè)滑動(dòng)底座,可以將機(jī)械臂的底座與里程計(jì)(odom)通過(guò)一個(gè)關(guān)節(jié)連接,此時(shí)機(jī)械臂就可以在二維平面滑動(dòng)。這里用不上,直接跳過(guò)。分配機(jī)械臂虛擬關(guān)節(jié)機(jī)器人操作系統(tǒng)(ROS)10.2.2如何使用MoveIt!配置助手配置機(jī)械臂點(diǎn)擊“PlanningGroups”,配置機(jī)械臂的規(guī)劃群組,如圖所示。規(guī)劃組可以將機(jī)械臂劃分為不同的組,例如機(jī)械臂本身和夾爪部分。運(yùn)動(dòng)規(guī)劃會(huì)針對(duì)這一個(gè)組完成運(yùn)動(dòng)規(guī)劃,在配置過(guò)程中還可以選擇運(yùn)動(dòng)學(xué)解析器。配置機(jī)械臂的規(guī)劃群組機(jī)器人操作系統(tǒng)(ROS)10.2.2如何使用MoveIt!配置助手配置機(jī)械臂點(diǎn)擊“AddGroup”,按照?qǐng)D所示內(nèi)容進(jìn)行配置,其中:GroupName:規(guī)劃組的名稱。KinematicSolver:配置針對(duì)運(yùn)動(dòng)規(guī)劃的運(yùn)動(dòng)學(xué)求解器,選擇的是kdl的運(yùn)動(dòng)規(guī)劃器插件。Kin.SearchResolution:關(guān)節(jié)空間的采樣密度。Kin.SearchTimeout(sec):超時(shí)時(shí)間。創(chuàng)建機(jī)械臂arm組機(jī)器人操作系統(tǒng)(ROS)10.2.2如何使用MoveIt!配置助手配置機(jī)械臂點(diǎn)擊“AddKin.Chain”,設(shè)置運(yùn)動(dòng)學(xué)計(jì)算中需包含的link,如圖所示。具體設(shè)置如下:BaseLink:base_linkTipLink:grasping_frame添加運(yùn)動(dòng)學(xué)工具鏈機(jī)器人操作系統(tǒng)(ROS)10.2.2如何使用MoveIt!配置助手配置機(jī)械臂點(diǎn)擊“AddGroup”,為機(jī)械臂夾爪創(chuàng)建如圖所示的的gripper組。
創(chuàng)建機(jī)械臂夾爪的gripper組機(jī)器人操作系統(tǒng)(ROS)10.2.2如何使用MoveIt!配置助手配置機(jī)械臂將“finger_joint1”和“finger_joint2”加入到右側(cè)的列表中,如圖所示。選中“gripper”目錄下的“Joints”,點(diǎn)擊“EditSelected”,如圖所示。進(jìn)入gripper組中的joint進(jìn)行配置設(shè)置gripper組中的joint機(jī)器人操作系統(tǒng)(ROS)10.2.2如何使用MoveIt!配置助手配置機(jī)械臂配置完成后,主配置界面如圖所示。點(diǎn)擊“RobotPoses”,定義機(jī)械臂的位姿。點(diǎn)擊“AddPose”,首先設(shè)置機(jī)械臂的初始位姿,如圖所示。主配置界面設(shè)置機(jī)械臂位姿機(jī)器人操作系統(tǒng)(ROS)10.2.2如何使用MoveIt!配置助手配置機(jī)械臂位姿設(shè)置完成后會(huì)出現(xiàn)如圖所示的界面。通過(guò)更改相關(guān)的joint參數(shù),設(shè)置機(jī)械臂的第二個(gè)位姿,如圖所示。設(shè)置機(jī)械臂第二個(gè)位姿機(jī)械臂位姿配置完成機(jī)器人操作系統(tǒng)(ROS)10.2.2如何使用MoveIt!配置助手配置機(jī)械臂點(diǎn)擊“EndEffectors”,配置機(jī)械臂的夾爪,如圖所示。機(jī)械臂夾爪配置
點(diǎn)擊“PassiveJoints”,如圖所示,這里是配置不能驅(qū)動(dòng)的關(guān)節(jié),這些關(guān)節(jié)不需要MoveIt!對(duì)其進(jìn)行規(guī)劃和控制。由于本實(shí)驗(yàn)沒(méi)有類似關(guān)節(jié),所以無(wú)需配置。PassiveJoints配置機(jī)器人操作系統(tǒng)(ROS)10.2.2如何使用MoveIt!配置助手配置機(jī)械臂點(diǎn)擊“AuthorInformation”,設(shè)置作者信息。點(diǎn)擊“ConfigurationFiles”,生成配置文件。選擇一個(gè)保存路徑,配置助手將所有配置的文件打包成一個(gè)功能包(自行命名)進(jìn)行保存,保存成功后點(diǎn)擊“ExitSetupAssistant”即可退出配置助手,如圖10-36所示。生成配置文件機(jī)器人操作系統(tǒng)(ROS)10.2.3啟動(dòng)MoveIt!
使用MoveIt!配置助手配置完成后,會(huì)在相應(yīng)的路徑下生成名為“robot_arm_config”的功能包,包含了大部分控制機(jī)械臂所需的啟動(dòng)和配置文件。運(yùn)行如下命令,測(cè)試配置是否成功,如圖所示:
$roslaunchrobot_arm_configdemo.launch運(yùn)行demo.launch通過(guò)運(yùn)動(dòng)規(guī)劃面板可以控制機(jī)械臂完成拖動(dòng)規(guī)劃、隨機(jī)目標(biāo)規(guī)劃等功能。機(jī)器人操作系統(tǒng)(ROS)10.2.3啟動(dòng)MoveIt!
拖動(dòng)機(jī)械臂的前端改變機(jī)械臂的姿態(tài),點(diǎn)擊“Planning”下的“Plan&Execute”,Moveit!開(kāi)始規(guī)劃路徑,控制機(jī)械臂向目標(biāo)位置移動(dòng),如圖所示。拖動(dòng)規(guī)劃?rùn)C(jī)器人操作系統(tǒng)(ROS)10.2.3啟動(dòng)MoveIt!
點(diǎn)擊“Query”下的“GoalState”的下拉選項(xiàng),選擇“randomvalid
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 儲(chǔ)蓄存款和商業(yè)銀行課件
- 《中海國(guó)際社區(qū)Y》課件
- 網(wǎng)絡(luò)布線施工規(guī)范-洞察分析
- 司法考試行業(yè)數(shù)字化轉(zhuǎn)型研究-洞察分析
- 數(shù)字營(yíng)銷在醫(yī)藥行業(yè)的應(yīng)用-洞察分析
- 網(wǎng)絡(luò)調(diào)度實(shí)時(shí)性優(yōu)化-洞察分析
- 糖尿病視網(wǎng)膜病變?cè)缙诓Aw改變研究-洞察分析
- 云計(jì)算平臺(tái)安全性對(duì)比-第1篇-洞察分析
- 醫(yī)療干部評(píng)職稱的述職報(bào)告范文(9篇)
- 《市政道路施工技術(shù)》課件
- 心靈的幻象 課件-2023-2024學(xué)年高中美術(shù)湘美版(2019)美術(shù)鑒賞
- 藏式餐飲創(chuàng)業(yè)計(jì)劃書
- 建筑安裝工程有限公司關(guān)于加大市場(chǎng)開(kāi)拓力度的激勵(lì)辦法
- 題庫(kù)(大氣科學(xué)基礎(chǔ)(一)-題庫(kù))
- 智能制造設(shè)備與工廠自動(dòng)化項(xiàng)目驗(yàn)收方案
- 箱變調(diào)試方案
- 部編版小學(xué)語(yǔ)文五年級(jí)下冊(cè)習(xí)作5《形形色色的人》教學(xué)反思共三篇
- 冷庫(kù)冷藏庫(kù)施工組織及售后服務(wù)投標(biāo)方案
- 統(tǒng)編版語(yǔ)文一年級(jí)上冊(cè) j q x y 和 ü 的專項(xiàng)練習(xí)(無(wú)答案)
- 城市軌道交通工程質(zhì)量安全控制要點(diǎn)
- 護(hù)士n2晉升n3層級(jí)申請(qǐng)范文
評(píng)論
0/150
提交評(píng)論