Ubuntu20.04安装ROS2 Foxy
相比ROS1,ROS2更加稳定,而且更适合直接布署。因此我们有必要在ROS1的基础上继续学习ROS2,安装完ROS1之后,可以同时安装ROS2进行学习。
一、按照官网教程安装
官网链接:https://docs.ros.org/en/foxy/Installation.html
- 确保系统支持UTF-8
locale # 检查系统语言环境
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
- 设置软件源
sudo apt update
sudo apt install curl # 安装curl
# 添加ROS2 GPG密钥
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 $(. /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null
- 安装ROS2
sudo apt update # 更新apt软件源
sudo apt install ros-foxy-desktop # 安装ROS2
sudo apt install python3-colcon-common-extensions
- 环境配置
source /opt/ros/foxy/setup.bash
- 安装自动补全工具和开发工具
sudo apt update
sudo apt install python3-argcomplete
sudo apt update
sudo apt install ros-foxy-rmw-connext-cpp
sudo apt install ros-dev-tools
- 安装ROS1转换bridge
sudo apt install ros-foxy-ros1-bridge
- 测试
(1) 发布和订阅
# 终端1
source /opt/ros/foxy/setup.bash
ros2 run demo_nodes_cpp talker
# 终端2
source /opt/ros/foxy/setup.bash
ros2 run demo_nodes_py listener
(2) 小海龟仿真器
ros2 run turtlesim turtlesim_node # 启动小海龟仿真器
ros2 run turtlesim turtle_teleop_key # 键盘控制
- ROS1和ROS2混合配置
sudo gedit ~/.bashrc
# 添加以下内容
# source /opt/ros/noetic/setup.bash
echo "ros noetic(1) or ros2 foxy(2)?"
read edition
if [ "$edition" -eq "1"];then
source /opt/ros/noetic/setup.bash
else
source /opt/ros/foxy/setup.bash
fi
二、卸载
sudo apt remove ~nros-foxy-* && sudo apt autoremove
# 删除源
sudo rm /etc/apt/sources.list.d/ros2.list
sudo apt update
sudo apt autoremove