ROS2入门与实践--1(ROS2的安装与环境测试)

1 虚拟机与Ubuntu操作系统的安装

1.1 VMware虚拟机的安装

对于VMware虚拟机的安装教程请看这篇文章:VMware虚拟机安装

1.2 Ubuntu操作系统的安装

对于20.04版本的Ubuntu操作系统安装教程请看这篇文章:Ubuntu-20.04系统安装
对于22.04版本的Ubuntu操作系统安装教程请看这篇文章:Ubuntu-22.04系统安装

2 ROS2安装配置与测试

2.1 ROS2的安装

1.在ROS2官方的文档中,安装ROS2之前需要首先检查操作系统语言环境
官方解释: 确保你有一个支持UTF - 8的语言环境。如果你处在一个极小的环境(例如一个Docker容器)中,那么这个语言环境可能和POSIX一样是极小的。我们通过以下设定进行检验。然而,如果你使用不同的UTF - 8支持的语言环境,应该是很好的。
我们可以Ctrl+Alt+T调出终端,输入locale检查是否支持 UTF-8,若不支持,则需要继续执行下边的指令进行设置

locale  # check for UTF-8 == # 检查是否支持 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 == 验证设置是否正确

在我们安装的Ubuntu操作系统中,是支持UTF - 8的语言环境的,和官方文档不同之处在于,我们安装Ubuntu操作系统之前,选择的是中文(简体)安装,所以语言环境有所不同,这并影响ROS2的安装
检查是否支持 UTF-8
2.Ubuntu universe存储库设置与启动
在设置ROS2软件源之前,我们需要首先启动Ubuntu universe存储库,启动Ubuntu universe存储库我们可以通过Ubuntu系统的设置进行操作,也可以打开终端通过命令行进行操作。

  • 系统设置操作
    找到桌面左下角的显示应用程序按钮,显示界面如下,找到软件和更新程序,打开
    找到软件和更新
    软件和更新界面如下,勾线社区维护的自由和开源软件(universe),就保证了Ubuntu universe存储库的启动。
    设置universe
  • 终端命令行操作
    根据官方文档,我们可以在命令行输入下面的指令来进行Ubuntu universe存储库的启动
sudo apt install software-properties-common
sudo add-apt-repository universe

若启动成功,可以通过下面的指令进行检验

apt-cache policy | grep universe

显示结果界面如下:
显示结果界面
3.设置ROS软件源
通过下面的命令,首先将ROS 2 apt存储库更新添加到系统,然后通过apt授权ROS 2的GPG密钥:

sudo apt update && sudo apt install curl
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg

接下来进行实操演示:
在命令行输入第一行指令,输入密码
输入指令
ROS 2 apt存储库更新添加完成界面
在更新添加完成
接下来输入第二行指令,进行ROS2 GPG密钥的添加,这个时候出现了异常报错,显示拒绝连接
异常报错
解决: 这个是因为github的一些域名的DNS解析被污染,导致DNS解析过程无法通过域名取得正确的IP地址。
这里用一个常见的解决办法:
打开https://www.ipaddress.com/输入访问不了的域名raw.githubusercontent.com,查询他的真实IP地址

1
搜索后到如下界面,我们看到查询到多个IP地址

185.199.108.133
185.199.109.133
185.199.110.133
185.199.111.133

在这里插入图片描述
接下来我们修改/etc/hosts文件,终端下通过以下命令打开hosts文件

sudo gedit /etc/hosts

实操如下
打开host文件
添加我们复制的IP和域名映射到hosts文件,保存退出即可
添加IP和域名映射
接下来我们重新运行指令

sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg

执行完成,没有异常警告,ROS2 的GPG密钥添加成功
ROS2 的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

存储库添加到源列表
4.安装ROS2
设置完存储库后,首先通过下面的指令更新apt存储库缓存

sudo apt update

更新apt存储库缓存完成界面如下:
更新apt存储库缓存
由于ROS 2建立在频繁更新的Ubuntu系统上。所以官方建议在安装新的软件包之前确保您的系统是最新的。我们可以通过下面的指令更新升级已安装的软件

sudo apt upgrade

更新升级已安装的软件完成界面如下:
在这里插入图片描述
注意:由于Ubuntu 22.04的早期更新,在安装ROS2之前更新systemd和udev相关的包非常重要。在不升级的情况下安装ROS2对新安装系统的依赖可以触发关键系统包的移除。
ROS安装版本及安装指令

  • ROS2桌面版安装(官方推荐),包括:ROS、Rviz、官方demo、教程
sudo apt install ros-humble-desktop
  • ROS2基础版安装(裸机),包括:通信库、消息包、命令行工具等,但没有GUI工具。
sudo apt install ros-humble-ros-base

这里我们安装桌面版ROS2
首先输入安装指令sudo apt install ros-humble-desktop
输入安装指令
安装完成界面如下:
安装完成
5.环境配置
官方文档给出了环境配置的方法,在终端下执行ROS2程序之前,要调用下面的命令进行环境配置,才可正确执行程序

# Replace ".bash" with your shell if you're not using bash
# Possible values are: setup.bash, setup.sh, setup.zsh
source /opt/ros/humble/setup.bash

由于每次打开新的终端,都需要进行环境的配置,这降低了开发和测试的效率,为了避免每次打开新的终端都进行环境配置这个问题,我们可以将配置环境指令通过下面的指令写入 ”~/.bashrc“ 文件,那么每次新启动终端时,就不需要在手动配置环境:

echo "source /opt/ros/humble/setup.bash" >> ~/.bashrc	# 将配置环境指令通过下面的指令写入 ”~/.bashrc“ 文件
sudo gedit ~/.bashrc	# 查看”~/.bashrc“ 文件

写入 ”~/.bashrc“ 文件
至此,ROS2的安装与环境配置,接下来我们进行ROS2的环境测试。

2.2 ROS2的环境测试

在我们安装的ROS2桌面完整版中,内置了一些案例,我们可以运行这些案例来测试ROS2的安装与配置是否正常。在这里,我们选用ROS2经典的小乌龟案例来进行演示,实操如下:
使用快捷键Ctrll+Alt+T分别打开两个终端,并分别输入下面两个命令

ros2 run turtlesim turtlesim_node		# 启动乌龟GUI节点界面,乌龟可以在界面中运动
ros2 run turtlesim turtle_teleop_key	# 启动键盘控制节点,可以通过键盘控制乌龟运动

控制乌龟运动
温馨提示:将鼠标的光标放在键盘控制节点所在终端,才能通过方向键控制乌龟进行简单的运动

3 ROS2的卸载

如果想从计算机上卸载ROS2,我们可以通过下面的命令实现

sudo apt remove ~nros-humble-* && sudo apt autoremove

如果想删除ROS2的存储库,还可以执行下面的命令

sudo rm /etc/apt/sources.list.d/ros2.list
sudo apt update
sudo apt autoremove
# Consider upgrading for packages previously shadowed.
sudo apt upgrade

至此,ROS2入门与实践–1(ROS2的安装与环境测试)的内容全部更新完,接下来我将继续更新ROS2入门与实践的学习内容,希望大家支持,本人是自学ROS的研究生小白,官方的文档以及按照自己的实际操作来写的教程,其中部分内容借鉴了赵虚左老师的方法。希望大家一起学习,谢谢大家!!!

参考资料:
https://docs.ros.org/en/humble/Installation.html

  • 13
    点赞
  • 60
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
### 回答1: 安装ROS1和ROS2在Ubuntu20.04上的步骤如下: 1. 首先要安装ROS1。可以参考ROS官网上的安装教程,选择适合自己的安装方式进行安装。常见的安装方式有通过apt-get命令、二进制文件和源码三种方式。 2. 安装ROS1后,在系统中运行以下命令,安装ROS2的依赖项: sudo apt update sudo apt install curl gnupg2 lsb-release curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add - sudo sh -c 'echo "deb http://packages.ros.org/ros2/ubuntu `lsb_release -cs` main" > /etc/apt/sources.list.d/ros2.list' sudo apt update 3. 安装ROS2: sudo apt install ros-foxy-desktop 4. 安装完成后,运行以下命令激活ROS2环境: source /opt/ros/foxy/setup.bash 5. 运行以下命令测试ROS2是否安装成功: ros2 run demo_nodes_cpp talker 如果出现“hello world”的输出,说明ROS2已经成功安装。 通过以上步骤,便可以在Ubuntu20.04系统上安装ROS1和ROS2了。 ### 回答2: Ubuntu20.04是一种现代的Linux操作系统,其广泛应用于ROS(机器人操作系统)的开发和部署。ROS是一个用于机器人开发的框架,可以为机器人提供感知、控制、通讯等核心功能,ROS分为ROS1和ROS2两个版本。 安装ROS1: 首先,确认Ubuntu20.04安装好后的ubuntu是否能够访问Ubuntu软件仓库,并进行更新,然后给自己的系统配置一个ROS环境。 1、设置自己的电脑使其能够访问ROS软件仓库: $ sudo sh -c ‘echo “deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main” > /etc/apt/sources.list.d/ros-latest.list‘ 2、添加ROS软件仓库密钥; 在安装ROS软件之前,需要先添加ROS的GPG密钥文件; $ curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add – 3、为了避免ROS与其他软件包发生冲突,建议先执行升级: $ sudo apt-get update $ sudo apt-get upgrade 4、安装ROS: 这个步骤也很简单,只需 $ sudo apt-get install ros-melodic-desktop-full 这个命令将会安装ROS所需要的一系列软件包。 5、初始化ROS: $ sudo rosdep init $ rosdep update 6、环境变量: $ echo “source /opt/ros/melodic/setup.bash” >> ~/.bashrc $ source ~/.bashrc 安装ROS2: ROS2是ROS的最新版,大大的增加了ROS的实时性和可扩展性。ROS2和ROS1同时存在,所以安装ROS2不会影响ROS1的使用。以下是ROS2的安装过程: 1、先添加 ROS 2 apt 仓库的公钥: $ sudo apt install curl gnupg2 lsb-release $ curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add – 2、添加 ROS 2 apt 仓库: $ sudo sh -c ‘echo “deb [arch=amd64,arm64] http://packages.ros.org/ros2/ubuntu $(lsb_release -cs) main” > /etc/apt/sources.list.d/ros2-latest.list‘ 3、sudo apt-get update 4、安装ROS2: $ sudo apt install ros-foxy-desktop 5、为ROS2设置开发环境: $ source /opt/ros/foxy/setup.bash 至此,ROS2已被成功安装并配置好了!可以使用以下命令测试: $ ros2 run demo_nodes_cpp talker $ ros2 run demo_nodes_cpp listener 以上就是Ubuntu20.04安装ROS1和ROS2的方法,在使用的过程中,遇到问题可根据官方文档进行查找确定。 ### 回答3: 在安装ROS 1和ROS 2之前,需要确保已经安装Ubuntu操作系统和创建了一个普通用户账户。此外,还需要确保在Ubuntu系统中已经安装了必要的依赖项和工具。下面是在Ubuntu 20.04上安装ROS 1和ROS 2的步骤: 安装ROS 1 1. 添加ROS 1软件库:首先使用以下命令添加ROS 1软件库 ``` sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list' ``` 2. 添加ROS 1公钥:使用以下命令添加ROS 1公钥 ``` sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654 ``` 3. 更新软件库:运行以下命令以更新软件库 ``` sudo apt-get update ``` 4. 安装ROS 1:运行以下命令以安装ROS 1完整版 ``` sudo apt-get install ros-noetic-desktop-full ``` 5. 初始化ROS 1依赖项:使用以下命令初始化ROS 1依赖项 ``` sudo rosdep init rosdep update ``` 6. 设置环境变量:使用以下命令设置ROS 1环境变量 ``` echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc source ~/.bashrc ``` 安装ROS 2 1. 添加ROS 2软件库:首先使用以下命令添加ROS 2软件库 ``` sudo apt update && sudo apt install curl gnupg2 lsb-release curl -Ls https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add - sudo sh -c 'echo "deb https://packages.ros.org/ros2/ubuntu $(lsb_release -cs) main" > /etc/apt/sources.list.d/ros2-latest.list' ``` 2. 更新软件库:运行以下命令以更新软件库 ``` sudo apt-get update ``` 3. 安装ROS 2:ROS 2有几个版本可供选择,包括桌面完整版、桌面最小版和基础版本。 下面是安装桌面完整版ROS 2的命令。 ``` sudo apt-get install ros-foxy-desktop ``` 4. 初始化ROS 2依赖项:使用以下命令初始化ROS 2依赖项 ``` sudo rosdep init rosdep update ``` 5. 设置环境变量:使用以下命令设置ROS 2环境变量 ``` source /opt/ros/foxy/setup.bash echo "source /opt/ros/foxy/setup.bash" >> ~/.bashrc ``` 最后,可以使用以下命令测试ROS 1和ROS 2: ``` roscore ``` 这命令将启动ROS的主节点。然后,可以使用命令行工具或GUI工具来使用ROS 1和ROS 2。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

羊羊羊ox

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值