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安装方法/

相关推荐
再遇当年2 天前
因为研究平台arm,RK3588交叉编译误把我笔记本X86平台的/x86_64-linux-gnu文件删除,导致联想拯救者笔记本中的ubuntu系统损坏
linux·arm开发·ros·gnu·交叉编译·x86
漫漫求4 天前
ros2常用命令
ros2
nandycooh7 天前
Ubuntu22.04.5安装ROS2教程(使用鱼香ROS工具)
ubuntu·ros
奔跑的花短裤7 天前
ROS2安装
ros·ros2·ros1
敬往事一杯酒哈7 天前
1.3 Ros2快速体验
python·ros2
sunshine~~~8 天前
ROS 2 Jazzy + Python 3.12 + Web 前端案例
开发语言·前端·python·anaconda·ros2
G果8 天前
Modbus CRC16 算法(举例)
can·modbus·ros2·crc16
boss-dog8 天前
UR robot ROS2 Driver 快速入门使用
机械臂·ros2·urdf·moveit2·ur
boss-dog9 天前
Moveit2使用说明(C++)
c++·ros2·moveit2
小帽哥aicv9 天前
ubuntu22 安装ros2-humble, Navigation2, RTABMap
linux·ros2