本文介紹基于Ubuntu22.04安裝ROS2機(jī)器人系統(tǒng)教程,并附帶詳細(xì)測(cè)試方法,基于觸覺(jué)智能RK3576核心板方案,使用配套開(kāi)發(fā)板Purple Pi OH2演示。
ROS、ROS2簡(jiǎn)介
ROS(Robot Operating System)和ROS2并非傳統(tǒng)意義上的操作系統(tǒng)內(nèi)核,而是面向機(jī)器人開(kāi)發(fā)的開(kāi)源軟件框架,提供節(jié)點(diǎn)通信、硬件抽象、算法庫(kù)、仿真調(diào)試等核心能力,降低機(jī)器人開(kāi)發(fā)復(fù)雜度。而ROS2是為解決ROS的工業(yè)級(jí)痛點(diǎn)而重構(gòu)的新一代框架,支持 Linux、Windows、macOS及嵌入式RTOS。
- 應(yīng)用場(chǎng)景
ROS2典型的應(yīng)用場(chǎng)景工業(yè)級(jí)機(jī)器人( 協(xié)作機(jī)器人、AGV無(wú)人車、工業(yè)機(jī)械臂的實(shí)時(shí)控制與調(diào)度 等)、車載與自動(dòng)駕駛(路徑規(guī)劃、車輛協(xié)同)、嵌入式邊緣機(jī)器人( 巡檢機(jī)器人、無(wú)人機(jī) 、水下機(jī)器人 )等。
- ROS& ROS2對(duì)比

ROS2安裝
- 環(huán)境準(zhǔn)備
燒錄觸覺(jué)智能RK3576核心板/開(kāi)發(fā)板網(wǎng)盤(pán)資料的Ubuntu22.04系統(tǒng)固件:

觸覺(jué)智能提供軟硬件配套豐富資料,網(wǎng)盤(pán)可聯(lián)系客服134-2385-6106獲取。

完成燒錄后,設(shè)置 locale本地語(yǔ)言支持 UTF-8,命令如下:
sudo apt update && sudo apt install locales sudo locale-gen en_US en_US.UTF-8 sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 export LANG=en_US.UTF-8
啟用Universe源:
sudo apt install software-properties-common sudo add-apt-repository universe

添加 ROS2 GPG key
sudo apt update && sudo apt install curl gnupg2 -y sudo curl -sSL https://gitee.com/tyx6/rosdistro/raw/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg
為軟件源添加 ROS2 repository,這里選擇清華源:
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] https://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu $(. /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null
- 安裝ROS2
Purple Pi OH2開(kāi)發(fā)板上使用Ubuntu22.04是帶桌面的系統(tǒng),這里安裝ROS2也推薦Desktop 版包含: ROS, RViz, demos, tutorials。
sudo apt update && sudo apt upgrade
sudo apt install ros-humble-desktop
完成安裝后,接下來(lái)開(kāi)始測(cè)試。
ROS2功能測(cè)試
- Turtlesim測(cè)試
配置環(huán)境變量:
echo "source /opt/ros/humble/setup.bash" >> ~/.bashrc source ~/.bashrc
打開(kāi)四個(gè)終端,分別輸入:
# 終端1 啟動(dòng)”小烏龜” ros2 run turtlesim turtlesim_node # 終端2 開(kāi)啟鍵盤(pán)控制 ros2 run turtlesim turtle_teleop_key # 終端3 開(kāi)啟查看活躍話題 ros2 topic list # 終端4 查看烏龜實(shí)時(shí)位置 ros2 topic echo /turtle1/pose
通信測(cè)試
話題發(fā)布/訂閱測(cè)試跨終端交互,C++ demo測(cè)試:
# 話題訂閱 ros2 run demo_nodes_cpp listener # 話題發(fā)布 ros2 run demo_nodes_cpp talker

點(diǎn)擊添加圖片描述(最多60個(gè)字)
話題發(fā)布/訂閱測(cè)試跨終端交互,Python demo測(cè)試:
# 話題訂閱 ros2 run demo_nodes_py listener # 話題發(fā)布 ros2 run demo_nodes_py talker

性能表現(xiàn)
輸入以下命令:
# 開(kāi)啟性能模式 sudo -i echo performance > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor echo performance > /sys/devices/system/cpu/cpu4/cpufreq/scaling_governor # 測(cè)試 # 終端1 啟動(dòng)”小烏龜” ros2 run turtlesim turtlesim_node # 終端2 開(kāi)啟鍵盤(pán)控制 ros2 run turtlesim turtle_teleop_key # 終端3 測(cè)試頻率 ros2 topic hz /turtle1/pose
小烏龜節(jié)點(diǎn)默認(rèn)以約 60Hz 發(fā)布/turtle1/pose話題,實(shí)測(cè)平均頻率約 62.5Hz接近60Hz ,無(wú)警告。

RVIZ2三維可視化測(cè)試
啟動(dòng)圖形界面:
ros2 run rviz2 rviz2
成功啟動(dòng)RVIZ2,界面加載完整(如圖),支持3D可視化交互。

- 預(yù)覽雷達(dá)點(diǎn)云數(shù)據(jù)
硬件連接:雷達(dá)設(shè)備通過(guò)USB數(shù)據(jù)線接到Pruple Pi OH2開(kāi)發(fā)板的USB接口。

進(jìn)入系統(tǒng)查看確認(rèn)識(shí)別到雷達(dá)設(shè)備:

從github獲取測(cè)試demo:
git clone https://gitee.com/ldrobotSensorTeam/ldlidar_sl_ros2.git cd ldlidar_sl_ros2
修改launch/ld14.launch.py文件指定雷達(dá)設(shè)備節(jié)點(diǎn)/dev/ttyACM0

編譯測(cè)試demo:
root@industio:/ldlidar_sl_ros2# source /opt/ros/humble/setup.bash root@industio:/ldlidar_sl_ros2# colcon build
測(cè)試命令:
root@industio:/ldlidar_sl_ros2# source ./install/setup.sh root@industio:/ldlidar_sl_ros2# export DISPLAY=:0 root@industio:/ldlidar_sl_ros2# ros2 launch ldlidar_sl_ros2 viewer_ld14.launch.py
運(yùn)行命令后可以看到雷達(dá)掃描結(jié)果的3D視圖:
-
機(jī)器人
+關(guān)注
關(guān)注
213文章
31381瀏覽量
223515 -
Ubuntu
+關(guān)注
關(guān)注
5文章
615瀏覽量
33633 -
ROS
+關(guān)注
關(guān)注
1文章
296瀏覽量
18854 -
rk3576
+關(guān)注
關(guān)注
1文章
291瀏覽量
1664
發(fā)布評(píng)論請(qǐng)先 登錄
當(dāng)國(guó)產(chǎn)芯遇上機(jī)器人:RK3576的ROS2奇幻之旅
RK3576 + ROS2 SLAM建圖與導(dǎo)航實(shí)戰(zhàn)
RK3576 + ROS2 進(jìn)階:NPU加速M(fèi)ixFormerV2目標(biāo)跟隨與機(jī)械臂抓取實(shí)戰(zhàn)
系統(tǒng)鏡像Ubuntu_ROS2中ROS2是什么意思,帶有ROS2開(kāi)發(fā)環(huán)境嗎?
ROS讓機(jī)器人開(kāi)發(fā)更便捷,基于RK3568J+Debian系統(tǒng)發(fā)布!
米爾瑞芯微RK3576實(shí)測(cè)輕松搞定三屏八攝像頭
巡檢機(jī)器人落地攻略:RK3576驅(qū)動(dòng)12路低延遲視覺(jué)
RK3576機(jī)器人核心:三屏異顯+八路攝像頭,重塑機(jī)器人交互與感知
米爾RK3576成功上車!ROS2 Humble生態(tài)系統(tǒng)體驗(yàn)
ROS2 SLAM建圖與導(dǎo)航實(shí)戰(zhàn)--基于米爾RK3576開(kāi)發(fā)板
機(jī)器人主控核心板米爾RK3576 + ROS2,NPU加速實(shí)現(xiàn)目標(biāo)跟隨與機(jī)械臂抓取
ROS讓機(jī)器人開(kāi)發(fā)更便捷,基于RK3568J+Debian系統(tǒng)發(fā)布!
硬核上車!RK3576基于Ubuntu部署ROS機(jī)器人系統(tǒng)詳細(xì)攻略(上)
硬核上車!RK3576基于Ubuntu部署ROS機(jī)器人系統(tǒng)詳細(xì)攻略(下)
系統(tǒng)適配 | RK3588 Ubuntu22.04正式發(fā)布
開(kāi)發(fā)必看,RK3576基于Ubuntu22.04安裝 測(cè)試ROS2機(jī)器人系統(tǒng)
評(píng)論