当前位置:   article > 正文

ROS2学习(一 、ROS2安装)

ros2安装

ROS2官方安装
https://docs.ros.org/en/galactic/Installation/Ubuntu-Install-Debians.html

本来想找一下和ros1一样的安装指导文档,可以根据自己的系统选择。不过没有找到一个直接的说明教程。
不过在ROS2的各个版本安装说明里面有写支持哪些版本的系统。
比如我使用的是ubuntu20.04 安装的就是foxy版本的ROS2。这个也是目前使用最多的版本。
在这里插入图片描述
其他的一些版本我大概看了一下,目前ROS2支持的最低的ubuntu版本就是20.04.所以如果使用的是比较低的系统版本,建议升级一下系统。我自己没有试过在低版本的上面安装,所以也不确定是否会有其他问题。

安装步骤

网上还有官方教程都有介绍的通过源码安装的方式。个人不太建议,因为安装过程需要科学上网,而且过程比较长,中间很容易出问题。还是通过安装包比较容易。对于初学者比较友好。

1.设置编码格式

ubuntu系统默认的可能不支持UTF-8编码,所以需要确认自己系统,保证支持UTF-8编码

locale  # check for 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

locale  # verify settings
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

设置成功后悔显示向下面这样
在这里插入图片描述

2. 设置源

sudo apt install software-properties-common
sudo add-apt-repository universe
  • 1
  • 2

3. 添加 ROS 2 GPG key

sudo apt update && sudo apt install curl -y
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg
  • 1
  • 2
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
  • 1
sudo apt update
  • 1
sudo apt upgrade
  • 1

4. ROS2安装

可以选择安装桌面版本或者base版本,对于初学者还是建议安装桌面版本,会包括各种sample和rviz等工作。下面的安装命令里有一个python3-argcomplete这个是python的自动补全包,其实就是为了方便在命令行操作的时候双击tab键能够自动补全。

桌面版本安装
sudo apt install ros-foxy-desktop python3-argcomplete
  • 1
Base版本安装
sudo apt install ros-foxy-ros-base python3-argcomplete
  • 1

5. 设置环境变量

echo "source /opt/ros/foxy/setup.bash" >> ~/.bashrc
  • 1

6. 测试sample

如果安装的是桌面版本,可以直接运行sample,看一下效果
新打开一个终端

ros2 run demo_nodes_cpp talker
  • 1

再打开一个终端

ros2 run demo_nodes_py listener
  • 1
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/732031
推荐阅读
相关标签
  

闽ICP备14008679号