一、引言
這篇文章主要內容是關于如何在 Ros2 環境中構建在 Mac 上模擬 Mycobot 280 M5 的環境。
我寫這篇文章是因為相關可參考的文章不多,希望這篇文章可以給你一些幫助。
由于我是 ROS 新手,關于文章內容如果您有任何指教或補充,歡迎在下方留言和我們溝通。
二、準備工作與技術介紹
1、硬件組件
Elephant Robotics myCobot-6 DOF collaborative robot
myCobot 280系列機械臂是專門為研究、教育、技術應用和商業展覽而開發的6-DOF協作機器人。
2、環境配置
M3 MacBook Air
16GB RAM
三、項目運行
1、搭建ROS2環境
在Docker上搭建ROS2(Humble)環境
可以參考此鏈接搭建安裝了ROS2的Ubuntu圖形用戶界面環境 https://memoteki.net/archives/2955#index_id3
然后創建一個Docker容器
在設置Dock容器的共享內存時最好進行一些修改——通常共享內存默認是64MB,容量不大,所以建議至少應設置為2GB。
docker run -p 6080:80 --security-opt seccomp=unconfined --shm-size=2G tiryoh/ros2-desktop-vnc:humble-amd64
成功啟動后,訪問http://127.0.0.1:6080/ 。此時 Ubuntu 應該已啟動。
2、構建 MoveIt2 環境
這一步是通過官方教程來完成的。
教程鏈接為:https://moveit.picknik.ai/main/doc/tutorials/getting_started/getting_started.html
按順序執行以下命令:
在 Ubuntu 終端中操作
source /opt/ros/humble/setup.bash
安裝rosdep(可能已安裝)
sudo apt install python3-rosdep sudo rosdep init rosdep update sudo apt update sudo apt dist-upgrade
安裝colcon mixin擴展
sudo apt install python3-colcon-common-extensions sudo apt install python3-colcon-mixin colcon mixin add default https://raw.githubusercontent.com/colcon/colcon-mixin-repository/master/index.yaml colcon mixin update default
安裝 vsctool
sudo apt install python3-vcstool
創建colcon工作空間
mkdir -p ~/ws_moveit/src
獲取MoveIt源代碼
cd ~/ws_moveit/src git clone -b humble https://github.com/moveit/moveit2_tutorials vcs import --recursive < moveit2_tutorials/moveit2_tutorials.repos
構建colcon工作空間
sudo apt remove ros-humble-moveit* sudo apt update && rosdep install -r --from-paths . --ignore-src --rosdistro humble -y
進行構建可能需要幾十分鐘到一個小時。
關于構建參數:
在Docker環境中,建議指定以下參數,以避免可能出現的內存不足問題。
--executor sequential:逐個進行構建
--parallel - workers 2:指定同時進行構建的數量
如果可以的話,也增加Docker共享內存來加快構建時間。
cd ~/ws_moveit colcon build --mixin release
源代碼
source ~/ws_moveit/install/setup.bash echo ‘source ~/ws_moveit/install/setup.bash’ >> ~/.bashrc
3、關于構建中的錯誤
在構建中可能遇到各種錯誤,這里寫出部分注釋以供參考。
pick_ik錯誤
sudo apt-get remove ros-humble-pick-ik
ament_cmake錯誤
以特權用戶身份運行構建命令
su
4、讓mycobot模擬器與moveit2一起工作
參考以下鏈接來創作
https://www.youtube.com/watch?v=ZOIKEV_BCBE&t=566s
獲取ROS2的mycobot源
在ws_moveit/src下克隆
git clone https://github.com/elephantrobotics/mycobot_ros2.git
5、啟動設置助手
選擇創建新MoviIt
選擇mycobot的URDF并點擊loadFile
mycobot_ros2/mycobot_description/urdf/mhcobot_280_m5/mycobot_280_m5.urdf
機器的型號以及泵頭或攝像頭是否可用可以根據情況而定。
自碰撞設置(Self collision)
默認生成沖突矩陣。
虛擬關節設置(Virtual joints)
添加虛擬接頭,命名后保存它們。
定義規劃組(Planning Groups)
添加 Add Group
選擇求解器的kdl_kinematics_plugin
Kin. parameters file設置為3
添加關節
除g_base以外,均可添加添加鏈接
同上,增加g_base
添加姿態
使用滑塊創建姿態。
也可以之后再添加。
設置ROS2控制器
點擊“自動添加”
設置MoveIt控制器
點擊“自動添加”
添加作者和郵箱
生成并保存
保存在colcon工作空間的src目錄下
構建和安裝
cd ~/ws_moveit colcon build --mixin release . install/setup.bash
啟動
ros2 launch mycobot_move_it demo.launch.py
四、總結
通過以上步驟就可以使程序在模擬器中運行了。但是問題在于,在Mac系統上無法通過Docker使用USB,所以無法運行實際設備。如果你有關于本文的內容或者機械臂使用有任何觀點和疑問,歡迎留言和我們交流溝通。
-
Mac
+關注
關注
0文章
1108瀏覽量
51558 -
容器
+關注
關注
0文章
498瀏覽量
22086 -
ROS
+關注
關注
1文章
279瀏覽量
17039 -
Docker
+關注
關注
0文章
489瀏覽量
11886
原文標題:在Mac上使用 Docker 構建一個 noVNC 環境并成功運行MyCobot案例!
文章出處:【微信號:ElephantRobotics,微信公眾號:大象機器人】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論