ubuntu20.04安装noetic版本ros

Ubuntu20.04安装ROS ROS 是一个适用于机器人的开源的元操作系统。它提供了操作系统应有的服务,包括硬件抽象,底层设备控制,常用函数的实现,进程间消息传递,以及包管理。它也提供用于获取、编译、编写、和跨计算机运行代码所需的工具和库函数。在某些方面ROS相当于一种“机器人框架(robot frameworks)”。ROS 运行时的“蓝图”是一种基于ROS通信基础结构的松耦合点对点进程网络。 阅读详情

1. ubuntu设置为中文界面

Ubuntu20.04 英文界面换成中文界面

2.配置Ubuntu软件仓库

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.设置sources.list

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

利用 “sh -c” 命令,它可以让 bash 将一个字串作为完整的命令来执行,这样就可以将 sudo 的影响范围扩展到整条命令,这条命令的意思是把"deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main"双引号中的内容添加到/etc/apt/sources.list.d/ros-latest.list文件中。

4.设置密钥

sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654

5. 安装ros

安装之前先执行sudo apt update更新软件源,我们这里安装桌面完整版本:

sudo apt install ros-noetic-desktop-full

6. 设置环境

你需要在使用ROS的每个bash终端中source这个脚本。

source /opt/ros/noetic/setup.bash

而下面这些命令可以在每次启动新的shell窗口时很方便地为你自动source一下这个脚本

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

7. 测试ROS安装是否成功

在终端输入:
roscore 启动RosMaster
再新建一个终端,输入:
rosrun turtlesim turtlesim_node
再新建一个终端,输入:
rosrun turtlesim turtle_teleop_key

  • 注意:光标必须聚焦在键盘控制窗口(turtle_teleop_key对应的),否则无法控制乌龟运动。
    在这里插入图片描述

8. 安装构建依赖

到这里,我们已经安装了运行核心ROS包所需的组件。要创建和管理自己的ROS工作区,需要分别分发各种工具和需求。例如,rosinstall是一个常用的命令行工具,它使您能够使用一个命令轻松地下载ROS包的许多源树。

要安装此工具和其他用于构建ROS包的依赖项,请运行

sudo apt install python3-rosdep python3-rosinstall python3-rosinstall-generator python3-wstool build-essential

8.1 初始化rosdep

开始使用ROS之前,先初始化rosdep,rosdep能够轻松地安装要编译的源代码的系统依赖关系,rosdep是ROS核心组件运行的基础

rosdep是ros的一个功能包,在安装ros时会自动安装.在使用时需要初始化.ros包有两个不同类型的依赖项:build依赖项和run依赖项。rosdep就是用来检查包的丢失依赖项,并且完成下载和安装。

第一次rosdep init和update执行结果:

```bash
telpo@telpo:~$ sudo rosdep init
Wrote /etc/ros/rosdep/sources.list.d/20-default.list
Recommended: please run

rosdep update

telpo@telpo:~$ rosdep update
reading in sources list data from /etc/ros/rosdep/sources.list.d
ERROR: error loading sources list:
The read operation timed out

如果出现rosdep init失败情况,比如:

elpo@telpo:~$ sudo rosdepc init init

ERROR: Rosdep experienced an error: The read operation timed out
Please go to the rosdep page [1] and file a bug report with the stack trace below.
[1] : http://www.ros.org/wiki/rosdep

rosdep version: 0.22.2

Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/rosdep2/main.py", line 146, in rosdep_main
  ...

出现“timed out”问题主要是在国内sudo rosdep init失败主要是由于网络不通引起的,赵老师的此视频有相关介绍有两种方法可以解决:

8.1.1 采用GitHub在国内的备份网址,内网初始化的方法

sudo apt-get install python3-pip -y
sudo pip3 install rosdepc
sudo rosdepc init
rosdepc update

8.1.2 自己手动处理

如果 /etc/ros/rosdep/sources.list.d目录存在,则只需修改/etc/ros/rosdep/sources.list.d目录下的文
件,如果/etc/ros/rosdep/sources.list.d目录不存在,需要手动创建上面所述的目录:
/etc/ros/rosdep/sources.list.d (当然说的是在etc目录下…),自己制作20-default.list文件。

8.1.2.1 如/etc/ros/rosdep/sources.list.d目录存在
cd /etc/ros/rosdep/sources.list.d
sudo gedit 20-default.list

在每一个https://raw.githubusercontent.com/前面添加https://ghproxy.com/
修改好的

# os-specific listings first
yaml https://ghproxy.com/https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/osx-homebrew.yaml osx

# generic
yaml https://ghproxy.com/https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/base.yaml
yaml https://ghproxy.com/https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/python.yaml
yaml https://ghproxy.com/https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/ruby.yaml
gbpdistro https://ghproxy.com/https://raw.githubusercontent.com/ros/rosdistro/master/releases/fuerte.yaml fuerte

# newer distributions (Groovy, Hydro, ...) must not be listed anymore, they are being fetched from the rosdistro index.yaml instead

改后后执行rosdep update,前面4个网址访问成功,但最后1个还是访问,错误信息如下:

kandi@ubuntu:/etc/ros/rosdep/sources.list.d$ rosdep update
reading in sources list data from /etc/ros/rosdep/sources.list.d
Hit https://ghproxy.com/https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/osx-homebrew.yaml
Hit https://ghproxy.com/https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/base.yaml
Hit https://ghproxy.com/https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/python.yaml
Hit https://ghproxy.com/https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/ruby.yaml
ERROR: unable to process source [https://ghproxy.com/https://raw.githubusercontent.com/ros/rosdistro/master/releases/fuerte.yaml]:
	Failed to download target platform data for gbpdistro:
	<urlopen error [Errno 111] Connection refused>
Query rosdistro index https://raw.githubusercontent.com/ros/rosdistro/master/index-v4.yaml
ERROR: error loading sources list:
	<urlopen error <urlopen error [Errno 111] Connection refused> (https://raw.githubusercontent.com/ros/rosdistro/master/index-v4.yaml)>

提示无法访问https://ghproxy.com/https://raw.githubusercontent.com/ros/rosdistro/master/releases/fuerte.yaml和https://raw.githubusercontent.com/ros/rosdistro/master/index-v4.yaml,此时需要修改index-v4.yaml所在的位置。
需要特别注意:

ros noetic版本基于python3,所以在/usr/lib/python3路径下修改,其他ros版本若基于python2的,需要找到对应的python2 路径进行修改。

修改的方法是在下面这些文件中https://raw.githubusercontent.com前面加上https://ghproxy.com/
(1) 修改

sudo gedit /usr/lib/python3/dist-packages/rosdep2/gbpdistro_support.py

在这里插入图片描述

(2) 修改在__init__.py文件中修改index-v4.yaml的位置

sudo gedit /usr/lib/python3/dist-packages/rosdistro/__init__.py

在这里插入图片描述
继续rosdep update,但还有出错的信息:

把下面几个文件对应的地方也改了

/usr/lib/python3/dist-packages/rosdep2/sources_list.py
 /usr/lib/python3/dist-packages/rosdep2/rep3.py
/usr/lib/python3/dist-packages/rosdistro/manifest_provider/github.py此文件两个地方需要修改

继续rosdep update,还是有问题,比如:

ERROR: unable to process source [https://ghproxy.com/https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/osx-homebrew.yaml]

在多执行几次rosdep update就ok了,信息如下:

kandi@ubuntu:~$ rosdep update
reading in sources list data from /etc/ros/rosdep/sources.list.d
Hit https://ghproxy.com/https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/osx-homebrew.yaml
Hit https://ghproxy.com/https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/base.yaml
Hit https://ghproxy.com/https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/python.yaml
Hit https://ghproxy.com/https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/ruby.yaml
Hit https://ghproxy.com/https://raw.githubusercontent.com/ros/rosdistro/master/releases/fuerte.yaml
Query rosdistro index https://ghproxy.com/https://raw.githubusercontent.com/ros/rosdistro/master/index-v4.yaml
Skip end-of-life distro "ardent"
Skip end-of-life distro "bouncy"
Skip end-of-life distro "crystal"
Skip end-of-life distro "dashing"
Skip end-of-life distro "eloquent"
Add distro "foxy"
Add distro "galactic"
Skip end-of-life distro "groovy"
Skip end-of-life distro "hydro"
Skip end-of-life distro "indigo"
Skip end-of-life distro "jade"
Skip end-of-life distro "kinetic"
Skip end-of-life distro "lunar"
Add distro "melodic"
Add distro "noetic"
Add distro "rolling"
updated cache in /home/kandi/.ros/rosdep/sources.cache
8.1.2.2 /etc/ros/rosdep/sources.list.d目录不存在

手动创建上面所述的目录: /etc/ros/rosdep/sources.list.d ,自己创建20-default.list文件。
在终端输入

cd /etc
sudo mkdir ros
cd ros
sudo mkdir rosdep
cd rosdep
sudo mkdir sources.list.d
cd sources.list.d
Sudo gedit 20-default.list

在gedit 20-default.list上粘贴下面的内容:

#os-specific listings first
yaml https://ghproxy.com/https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/osx-homebrew.yaml osx
#generic
yaml https://ghproxy.com/https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/base.yaml
yaml https://ghproxy.com/https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/python.yaml
yaml https://ghproxy.com/https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/ruby.yaml
gbpdistro https://ghproxy.com/https://raw.githubusercontent.com/ros/rosdistro/master/releases/fuerte.yaml fuerte
#newer distributions (Groovy, Hydro, …) must not be listed anymore, they are being fetched from the rosdistro index.yaml instead
Ubuntu20.04一键安装ROS脚本指南 通过以上步骤,我们成功在 Ubuntu 20.04 上安装了 ROS Noetic。在安装过程中,请务必仔细按照每一步的说明进行操作。如果遇到问题,可以参考 ROS 官方文档或者在相关的技术论坛上寻求帮助。安装完成后,你就可以开始利用 ROS 强大的功能进行机器人项目的开发了,祝你在机器人开发的道路上取得成功! 阅读详情

相关推荐

ubuntu20..04 安装ros noetic版本

使用apt search ros-noetic可以查看noetic版本所有软件,包括已经安装的和还没有被安装的。2.如上图所是,勾选前四个选项,“下载自”位置选择合适的镜像地址,我选的是阿里云的。1.设置你的sources.list,让计算机结束后来自ros官网的软件。ubuntu20..04 安装ros noetic版本。1.进入“软件和更新”,选择"Ubuntu软件"等了 很长时间才安装完成。

qq_33856381的博客 882

在Ubuntu20.04系统中安装ROS

笔者到目前为止,已经在不同版本的Ubuntu系统下反复安装了多次ROS软件包,考虑到每次重新安装ROS都需要在网络中查找大量的参考资料,非常麻烦,所以笔者决定结合自身过往的安装过程,将自身遇到的问题和对应的解决方法记录下来,不仅方便自己日后安装ROS,也能帮助其他尝试安装ROS的人少走一些弯路。

sea_grey_whale的博客 1万+

别再手动编译了!Ubuntu 20.04下用apt一键安装ROS Noetic和MoveIt(附版本验证)

本文详细介绍了在Ubuntu 20.04系统下使用apt一键安装ROS Noetic和MoveIt的完整教程,包括版本验证和常见问题排查。通过对比源码编译和apt安装的优劣,帮助开发者快速搭建机器人开发环境,提升工作效率。

weixin_30872157的博客 530

Ubuntu 20.04 安装 ROS

ROS安装

SEAL0107的博客 1万+

Ubuntu 20.04安装Ros Noetic及Ubuntu 18.04安装ROS Melodic(两版本详细填坑)

Ubuntu18.04安装ROS Melodic(详细填坑) 最近学习ROS Melodic,网上有一些安装教程,但是不够详细,自己动手做了下,随手记下整个安装流程,并详细记录细节和遇到的问题,为后来者节省10来分钟足矣。本文参考《机器人开发实战》,作者无为斋主。 ROS作为目前最受欢迎的机器人操作系统,它的核心代码采用C++编写并经由BSD许可发布。ROS源于2007年斯坦福大学和机器人技术公司...

shao918516的博客 3万+

判断ROS版本号-ubuntu20.04安装ROS_noetic-修改镜像源

判断ROS版本号-ROS安装-修改镜像源 linux版本:ubuntu20.04 ROS版本:noetic判断ROS版本号安装ROS改镜像源 判断ROS版本号 机器人用的是树莓派、stm32、ros。 首先要配置网络,把机器人上的sd卡插到树莓派开发板上,然后配置连接的热点。 接下来,把sd卡插回机器人上的树莓派,开启热点,机器人将自动连接到热点。 使用MobaXterm_Personal软件,创建ssh连接。 首先开启一个终端,里面输入roscore: ┌────────────────────

及时总结 3226

在Ubuntu20.04中安装ROS Noetic版本

本文是在ubuntu20.04系统中安装的ROS noetic,如果想要安装ubuntu20.04系统可以参考另一篇文章:宏碁Acer笔记本安装 Windows10 和 Ubuntu20.04 双系统,下面进入主题。 配置系统软件源 打开“软件和更新”,进入到“Ubuntu软件“页面,允许universe、restricted、multiverse三项,即勾选这三项,如下图所示。安装完ubuntu系统后这三项是默认允许的,但还是检查一下比较好。 2. 添加ROS软件源 打开终端,输入以下指令,添加RO

weixin_45168199的博客 3万+

智能汽车竞赛摄像头处理(4)——摄像头循迹思路讲解

智能汽车竞赛摄像头处理(4)对摄像头循迹思路进行讲解。

weixin_62261692的博客 7056

如何在Ubuntu20.04上安装noetic版本的ROS?

执行下面命令,修改sources_list.py文件中的内容,将https://raw.githubusercontent.com/ros修改为file:///opt/rosdep。执行下面命令,修改rep3.py文件中的内容,将https://raw.githubusercontent.com/ros修改为file:///opt/rosdep。有点焦虑,重新进入那个压缩文件的文件夹,右键,发现,又可以出现在终端打开文件夹了,但是要求,在空白处右键,不是点击文件夹处右键。使用键盘控制小海龟移动。

weixin_43501408的博客 2438

【保姆级教程/代码】GNSS反演大气可降水量(Precipitable Water Vapor, PWV)

GPS精密单点定位(PPP)是一种采用精密卫星星历和卫星钟差进行非差单点定位的方法,在观测过程中采用双频载波相位观测法以确保高精度定位精度。本文利用PPP技术来求解天顶对流层延迟(zenith tropospheric delay,ZTD)。ZTD由湿延迟(ZWD)和干延迟(ZHD)组成,其中占比90%的ZHD与地面测站高程、大气压和测站纬度等参数有良好的相关性,可以通过Saastamoinen模型精确求出;

weixin_43910227的博客 2923

【3天快速入门WPF】1-从最简单的xaml开始

首先我们要知道xaml语法中声明即定义,意思就是“见到元素就相当于创建实例”,MainWindow.xaml的主干是一个元素里包含着一个 元素。这段程序就是在定义一个Window类的实例,这个实例的一个组成部分是一个Grid类的实例。

Zy100Papa的博客 1623

Ubuntu20.04安装ROS Noetic 版本安装记录

Ubuntu20.04安装ROS Neotic 版本安装记录

subtitle_的博客 711

倒立摆的PLC控制(模型分析+ SCL源代码)

首先简单介绍下倒立摆模型,下面这幅图是MATLAB网站上的倒立摆模型,下面我们利用牛顿第二运动定律建立摆杆的运动方程。

RXXW_Dor的博客 3330

树莓派4B安装Ubuntu20.04桌面版与ROS-noetic版本

本文介绍了如何在树莓派上安装Ubuntu20.04z桌面版与ROS-noetic。

2201_75346545的博客 1910

笔试题-2023-大疆-数字IC设计【纯净题目版】

笔试题-2023-大疆-数字IC设计【纯净题目版】

w0shishabi的博客 2511

基于STM32单片机的智能分拣系统

基于STM32单片机的智能分拣系统是一种高效、精准的自动化分拣解决方案,适用于物流、仓储、制造业等领域。该系统利用STM32单片机作为核心控制器,结合传感器技术、电机控制算法和通信模块,实现对物品的自动识别、分类和分拣。通过智能化的设计,该系统能够大幅提高分拣效率,降低人工成本,并减少错误率。基于STM32单片机的智能分拣系统是一种高效、精准、低成本的自动化解决方案,能够广泛应用于物流、制造、环保等领域。

qq_62634009的博客 1940

ubuntu20.04安装ros noetic版本记录

ros noetic安装详细过程记录

gz9456的博客 1193

基于YOLOv8的端面小目标计数解决方案: 多头检测器+小缺陷到大缺陷一网打尽的GiraffeDet+Wasserstein Distance Loss | 助力工业小目标缺陷检测

端面小目标计数部署解决方案 | 亲测在工业小目标缺陷涨点明显,原始mAP@0.5 0.936提升至0.955

①答疑群聊服务;②YOLO大模型知识问答系统;③计算机视觉论文生成智能体; 1954

树莓派ubuntu 20.04.15安装ROS1 noetic版本+mavRos+PX4安装

安装ROS版本命令,输入命令根据提示选择即可,如选择版本的时候,选择noetic版本,

u013096791的博客 466

用urdf给自己的ROS小车编写模型

3.3 使用urdf编写自己的ROS小车模型 3.3.1 常见的ROS小车结构有哪些? 下面就是常见的ROS小车,相信在大家的脑海里已经有了自己小车的样子,下面我和大家一起使用urdf对ros小车建模。 这里只对urdf进行简单介绍,然后就带大家使用urdf最基础的标签,建立机器人的urdf机器人模型。关于更多细节,请参看官网:http://wiki.ros.org/urdf/Tutorials 3.3.2 什么是urdf?建模的原因? 什么是urdf? URDF(Unified Robot Descri

「小白学移动机器人」一个专注分享移动机器人相关知识的公众号! 1万+

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

ROS-Noetic版本的安装(Ubuntu20.04环境)

关于ROS的安装已经有很多好的博文供以参考,本文主要收集总结了一些在安装过程中容易出现的问题和报错情况,并提供一些博主的解决方法予以参考

m0_65132134的博客 6089

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

ROS入门-4.安装ROS系统(ubuntu20.04版本安装ros的noetic版本)

参考安装步骤http://wiki.ros.org/melodic/Installation/Unbutu 提前确认 安装

qq_46238275的博客 4356

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

Ubuntu20.04卸载ros2 foxy版本安装ros1 noetic版本

接下来如果你直接使用鱼香ros的一键安装命令,会出错。

knighthood2001 3053

Ubuntu20.04安装ROS1 Noetic Ninjemys版本

Ubuntu20.04安装ROS1 Noetic Ninjemys

Vittore_Li的博客 917
上一篇: SLAM进阶学习
下一篇: ROS坐标系
loongembedded
loongembedded 领域专家: 嵌入式与硬件开发技术领域 领域专家: 嵌入式与硬件开发技术领域
博客等级 码龄16年 2467粉丝 464原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

打赏作者

loongembedded

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

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

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

打赏作者

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

抵扣说明:

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

余额充值