Ubuntu 20.04 安装ROS Noetic教程

2024-03-21 17:59

本文主要是介绍Ubuntu 20.04 安装ROS Noetic教程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

背景知识

不同版本Ubuntu支持不同版本ROS,版本不匹配,安装和后续使用可能会出现问题。

UbuntuROS 1.0ROS 2.0
16.04 LTSKinetic LTSArdent
18.04 LTSMelodic LTSDashing LTS
20.04 LTSNoetic LTSFoxy LTS

Ubuntu 20.04 支持的ROS1版本为Noetic LTS,ROS2版本为Foxy 。


查看Ubuntu系统版本的命令:

~$ lsb_release -a
No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 20.04.5 LTS
Release:	20.04
Codename:	focal

Ubuntu 20.04 安装 ROS1 Noetic

步骤1)确保Ubuntu软件仓库(repositories)允许使用"restricted"、“universe”、“multiverse” 存储库(一般默认允许使用)

  
在这里插入图片描述

由上至下是(√代表允许):

  1. main库 - 规范支持的免费和开源软件。
  2. universe库 - 社区维护的自由和开源软件。
  3. restricted库 - 设备的专有驱动程序。
  4. multiverse库 - 受版权或法律问题限制的软件。
      
    在这里插入图片描述

点击【Revert】,输入登录密码,再点击【Close】,弹出窗口中点击【Reload】。
  在这里插入图片描述

步骤2)设置sources.list

打开一个终端,设置电脑以安装来自packages.ros.org的软件。

~$ sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'

sudo sh 以超级用户身份运行"sh"(sh是一个命令语言解释器)。

步骤3)设置密钥
~$ sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
步骤4)开始安装

先更新软件源, 检查是否有软件更新,确保当前软件包索引为最新的。

~$ sudo apt update  //列出所有可更新的软件清单命令
[sudo] password for stranger: 
Hit:1 http://security.ubuntu.com/ubuntu focal-security InRelease
Hit:2 http://us.archive.ubuntu.com/ubuntu focal InRelease
Hit:3 http://us.archive.ubuntu.com/ubuntu focal-updates InRelease
Hit:4 http://us.archive.ubuntu.com/ubuntu focal-backports InRelease
Reading package lists... Done
Building dependency tree       
Reading state information... Done
213 packages can be upgraded. Run 'apt list --upgradable' to see them.
//查询到有213 个包可更新~$ sudo apt-get dist-upgrade  //升级安装包
~$ sudo apt update //再次检测是否全部升级

再安装推荐的完整桌面版(Desktop-Full)。

~$ sudo apt install ros-noetic-desktop-full

安装过程中,询问是否安装,则输入y回车。

步骤5)设置环境,向当前用户添加ROS的环境变量
~$ echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc  
~$ source ~/.bashrc

第一条指令: 将变量添加到~/.bashrc 文件中。
source指令: 刷新当前shell环境。

检测是否正确配置环境:
看ROS_ROOT 和 ROS_PACKAGE_PATH是否被正确配置

~$ printenv | grep ROS
ROS_VERSION=1
ROS_PYTHON_VERSION=3
ROS_PACKAGE_PATH=/home/yu/catkin_ws/src:/home/yu/new/work_space/src:/home/yu/robot/catkin_ws/src:/opt/ros/noetic/share
ROSLISP_PACKAGE_DIRECTORIES=/home/yu/catkin_ws/devel/share/common-lisp:/home/yu/new/work_space/devel/share/common-lisp:/home/yu/robot/catkin_ws/devel/share/common-lisp
ROS_ETC_DIR=/opt/ros/noetic/etc/ros
ROS_MASTER_URI=http://localhost:11311
ROS_ROOT=/opt/ros/noetic/share/ros
ROS_DISTRO=noetic
步骤6)检测是否安装成功
~$ roscore
... logging to /home/yu/.ros/log/57296db8-cc43-11ed-85ca-e18b1a544a98/roslaunch-ubuntu-9881.log
Checking log directory for disk usage. This may take a while.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.started roslaunch server http://ubuntu:39497/
ros_comm version 1.15.15SUMMARY
========PARAMETERS* /rosdistro: noetic* /rosversion: 1.15.15NODESauto-starting new master
process[master]: started with pid [9889]
ROS_MASTER_URI=http://ubuntu:11311/setting /run_id to 57296db8-cc43-11ed-85ca-e18b1a544a98
process[rosout-1]: started with pid [9899]
started core service [/rosout]

PARAMETERS 处,说明了当前的ros版本。


安装遇到的问题:

问题1:更新软件sudo apt update时报错:

~$ sudo apt update
Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?

解决办法
方法1:按照提示的解决办法

~$  sudo apt-get update
~$  sudo apt-get install --fix-missing

方法2:先修改镜像源(下载软件的中转站)

~$  vim /etc/apt/sources.list

再更新:

~$  apt-get update 

问题2: 运行roscore,提示

~$ roscore
Command roscore" not found ,but can be intalled with:sudo apt install python3-roslaunch

解决办法
检查文件~/.bashrc中是否有source /opt/ros/noetic/setup.bash

~$ cat  ~/.bashrc
................... /usr/share/bash-completion/bash_completionelif [ -f /etc/bash_completion ]; then. /etc/bash_completionfi
fi

如果没有,重新设置环境。

~$ echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc  
~$ source ~/.bashrc

这篇关于Ubuntu 20.04 安装ROS Noetic教程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/833453

相关文章

RabbitMQ 延时队列插件安装与使用示例详解(基于 Delayed Message Plugin)

《RabbitMQ延时队列插件安装与使用示例详解(基于DelayedMessagePlugin)》本文详解RabbitMQ通过安装rabbitmq_delayed_message_exchan... 目录 一、什么是 RabbitMQ 延时队列? 二、安装前准备✅ RabbitMQ 环境要求 三、安装延时队

Ubuntu如何升级Python版本

《Ubuntu如何升级Python版本》Ubuntu22.04Docker中,安装Python3.11后,使用update-alternatives设置为默认版本,最后用python3-V验证... 目China编程录问题描述前提环境解决方法总结问题描述Ubuntu22.04系统自带python3.10,想升级

基于C#实现PDF转图片的详细教程

《基于C#实现PDF转图片的详细教程》在数字化办公场景中,PDF文件的可视化处理需求日益增长,本文将围绕Spire.PDFfor.NET这一工具,详解如何通过C#将PDF转换为JPG、PNG等主流图片... 目录引言一、组件部署二、快速入门:PDF 转图片的核心 C# 代码三、分辨率设置 - 清晰度的决定因

linux系统上安装JDK8全过程

《linux系统上安装JDK8全过程》文章介绍安装JDK的必要性及Linux下JDK8的安装步骤,包括卸载旧版本、下载解压、配置环境变量等,强调开发需JDK,运行可选JRE,现JDK已集成JRE... 目录为什么要安装jdk?1.查看linux系统是否有自带的jdk:2.下载jdk压缩包2.解压3.配置环境

Java Scanner类解析与实战教程

《JavaScanner类解析与实战教程》JavaScanner类(java.util包)是文本输入解析工具,支持基本类型和字符串读取,基于Readable接口与正则分隔符实现,适用于控制台、文件输... 目录一、核心设计与工作原理1.底层依赖2.解析机制A.核心逻辑基于分隔符(delimiter)和模式匹

spring AMQP代码生成rabbitmq的exchange and queue教程

《springAMQP代码生成rabbitmq的exchangeandqueue教程》使用SpringAMQP代码直接创建RabbitMQexchange和queue,并确保绑定关系自动成立,简... 目录spring AMQP代码生成rabbitmq的exchange and 编程queue执行结果总结s

Python库 Django 的简介、安装、用法入门教程

《Python库Django的简介、安装、用法入门教程》Django是Python最流行的Web框架之一,它帮助开发者快速、高效地构建功能强大的Web应用程序,接下来我们将从简介、安装到用法详解,... 目录一、Django 简介 二、Django 的安装教程 1. 创建虚拟环境2. 安装Django三、创

linux安装、更新、卸载anaconda实践

《linux安装、更新、卸载anaconda实践》Anaconda是基于conda的科学计算环境,集成1400+包及依赖,安装需下载脚本、接受协议、设置路径、配置环境变量,更新与卸载通过conda命令... 目录随意找一个目录下载安装脚本检查许可证协议,ENTER就可以安装完毕之后激活anaconda安装更

Jenkins的安装与简单配置过程

《Jenkins的安装与简单配置过程》本文简述Jenkins在CentOS7.3上安装流程,包括Java环境配置、RPM包安装、修改JENKINS_HOME路径及权限、启动服务、插件安装与系统管理设置... 目录www.chinasem.cnJenkins安装访问并配置JenkinsJenkins配置邮件通知

python使用Akshare与Streamlit实现股票估值分析教程(图文代码)

《python使用Akshare与Streamlit实现股票估值分析教程(图文代码)》入职测试中的一道题,要求:从Akshare下载某一个股票近十年的财务报表包括,资产负债表,利润表,现金流量表,保存... 目录一、前言二、核心知识点梳理1、Akshare数据获取2、Pandas数据处理3、Matplotl