ROS2 安装与测试

文章目录

ROS2 安装与测试

ROS2 安装

基于 Ubuntu 22.04 LTS 操作系统。

1. 设置编码

shell 复制代码
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 
echo 'export LANG=en_US.UTF-8' >> ~/.bashrc
source ~/.bashrc

2. 添加源

shell 复制代码
sudo apt update && sudo apt install curl gnupg lsb-release 
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg 
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(source /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null

如遇报错 "Failed to connect to raw.githubusercontent.com",可参考

https://www.guyuehome.com/37844

3. 安装 ROS2

shell 复制代码
sudo apt update
sudo apt upgrade
sudo apt install ros-humble-desktop

4. 设置环境变量

shell 复制代码
echo "source /opt/ros/humble/setup.bash" >> ~/.bashrc 
source ~/.bashrc

ROS2 示例测试

测试底层通信系统 DDS 是否正常。

实例一:命令行实例

启动第一个终端,执行以下命令:

shell 复制代码
ros2 run demo_nodes_cpp talker

启动第二个终端,执行以下命令:

shell 复制代码
ros2 run demo_nodes_py listener

若 "Hello World" 能够在两个终端中正常传输,则说明底层通信系统 DDS 正常。

实例二:小海龟仿真实例

启动第一个终端,执行以下命令:

shell 复制代码
ros2 run turtlesim turtlesim_node

启动第二个终端,执行以下命令:

shell 复制代码
ros2 run turtlesim turtle_teleop_key

第一个终端启动了一个小海龟仿真器,第二个终端可以输入指令(上下左右)来控制小海龟运动。

参考链接

https://book.guyuehome.com/ROS2/1.系统架构/1.3_ROS2安装方法/

相关推荐
轻口味7 小时前
启元无真机二开实战1:54 个接口能做什么、不能做什么——启元 Q1/T1 SDK 能力全景与版本矩阵
线性代数·矩阵·ros2·具身智能·启元机器人
热金鼠3 天前
2.ROS2 核心机制与命令行实操
ros2
程序员-King.6 天前
【ROS1】Noetic 开发工作流程与常用命令
c++·ubuntu·ros
大雨歌8 天前
笛卡尔坐标 → 自然坐标(Frenet) 逐步推导全解 -2
ros2
滴啦嘟啦哒10 天前
【具身笔记】【π0.5 微调与仿真】三、libero数据可视化
笔记·python·ros·vla
free_android11 天前
ROS2 TF 树详解与 rviz Fixed Frame 正确配置
ros·rviz
米糕闯编程12 天前
鱼香ros2(十七)C++小海龟巡逻
开发语言·c++·机器人·ros2·服务·小海龟
风合星语13 天前
2026 机器人工程实例(七):Nav2 到站了,任务却没完成——AMR 载货导航中的托盘滑移与验收闭环
人工智能·机器人·ros2·机器人仿真·nav2·mujoco·amr
米糕闯编程19 天前
鱼香ros2(十二)C++话题订阅与发布
开发语言·c++·ros2·话题
朝朝辞暮i21 天前
C++ 第 36 课:Action——机械臂/VLA 非常重要
开发语言·c++·算法·ros2