ROS学习(开篇)Ubuntu16.04安装ROS Kinetic详细教程

2023-05-16

文章目录

  • 前言
  • 一、添加ROS软件源(sources.list)
  • 二、添加密钥
  • 三、更新apt功能包列表
  • 四、安装ROS
  • 五、初始化 rosdep
  • 六、将ROS环境变量添加到.bashrc文件中
  • 七、安装rosinstall等工具
  • 八、检查ROS是否安装成功
  • 九、卸载ROS
  • 十、总结


前言

之前关于ROS学习的博客,都是在win10虚拟机环境下运行的ubuntu18.04系统,对应的ros版本为melodic。由于电脑性能不好,运行导航仿真感觉卡顿,所以我把家里的台式机搞成了ubuntu16.04和win10双系统。ubuntu16.04系统的安装网上很多资料,本篇只是记录下ros的安装步骤,仅供参考。

一、添加ROS软件源(sources.list)

sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.ustc.edu.cn/ros/ubuntu/ $DISTRIB_CODENAME main" > /etc/apt/sources.list.d/ros-latest.list'

二、添加密钥

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

三、更新apt功能包列表

sudo apt-get update

四、安装ROS

sudo apt-get install ros-kinetic-desktop-full

五、初始化 rosdep

执行如下命令:

sudo rosdep init

若出现错误,如图:
在这里插入图片描述
针对此错误,我尝试过修改/etc/hosts文件,也常试过修改网络为手机热点,但是问题依然存在。

最终解决方法如下:
(1)修改/usr/lib/python2.7/dist-packages/rosdep2/sources_list.py文件
(2)修改/usr/lib/python2.7/dist-packages/rosdistro/_init.py文件
(3)修改如下文件

/usr/lib/python2.7/dist-packages/rosdep2/gbpdistro_support.py 36行
/usr/lib/python2.7/dist-packages/rosdep2/sources_list.py 72行
/usr/lib/python2.7/dist-packages/rosdep2/rep3.py 39行 
/usr/lib/python2.7/dist-packages/rosdistro/manifest_provider/github.py 68行 119行

具体修改方法,参考评论(修改点1、2、3),写在这里,不能发布,哈哈,绝了。。。

修改完成后,再次执行如下命令:

sudo rosdep init

初始化成功,如图:
在这里插入图片描述
初始化成功后,执行如下命令:

rosdep update

若出现超时错误,如图:
在这里插入图片描述
解决方法,如下:
(1)打开/usr/lib/python2.7/dist-packages/rosdep2/gbpdistro_support.py 文件

第204行添加如下代码,参考评论(修改点4)

(2)打开/usr/lib/python2.7/dist-packages/rosdistro/__init__.py

在对应处,按照上述方法进行修改,参考评论(修改点5)

最后再次执行如下命令:

rosdep update

最后发现,问题解决了,如图:
在这里插入图片描述

六、将ROS环境变量添加到.bashrc文件中

此举是为了每次打开新的终端时可以自动配置好 ros 相关环境。

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

七、安装rosinstall等工具

sudo apt-get install python-rosinstall python-rosinstall-generator python-wstool build-essential

八、检查ROS是否安装成功

如果安装成功,可以看到ros版本及路径等信息,命令如下:

export | grep ROS

在这里插入图片描述

我们也可以启动小乌龟来检查ROS是否安装成功,打开三个终端,分别输入如下命令:

roscore
rosrun turtlesim turtlesim_node 
rosrun turtlesim turtle_teleop_key 

效果如下:
在这里插入图片描述

九、卸载ROS

sudo apt-get purge ros-*
sudo rm -rf /etc/ros

十、总结

本篇文章只解决我遇到的错误,若不能解决你的错误,请自行百度,哈哈,网上的资料还是很多的。最后,如果顺便解决了你的问题,请大佬们给小弟点个赞,谢谢啦,只为刷刷排名,哈哈。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ROS学习(开篇)Ubuntu16.04安装ROS Kinetic详细教程 的相关文章

随机推荐

  • 车辆姿态角(Euler角)Pitch、Yaw、Roll 的设定

    首先申明 xff1a 此坐标系是针对车辆而设定的 xff0c 对于无人机来说是不同的 pitch xff1a 俯仰角 xff0c pitchAngleC2W orientation radian Y yaw xff1a 航向角 xff0c
  • Docker(四)----Docker-Compose 详解

    1 什么是Docker Compose Compose项目来源于之前的fig项目 xff0c 使用python语言编写 与docker swarm配合度很高 Compose 是 Docker 容器进行编排的工具 xff0c 定义和运行多容器
  • 转贴:ERP实施过程中的40个问题

    笔者在多年的实践中 xff0c 结合自身经验和多年的理论积累 xff0c 总结出有关ERP 实施的最关键的39 个问题 xff0c 以问答的形式 xff0c 让您在最短的时间内对ERP 实施有一个全面而客观的认识 xff0c 以免陷入日新月
  • VS Code 常用设置集合

    常用设置 xff08 setting json xff09 34 editor parameterHints enabled 34 true 开启参数预览窗口 设置字体颜色 34 editor semanticTokenColorCusto
  • Arduino--LCD1602(IIC)

    xff08 1 xff09 简介 前篇文章介绍了LCD1602的四位数据线控制方法 xff1a https blog csdn net u011816009 article details 106573622 但是该方法还是需要较多的IO口
  • Px4 ULog文件详解

    Px4 ULog文件详解 简介数据类型文件组织文件头定义段消息标记位消息格式定义消息信息消息复合信息消息参数消息 数据段订阅消息取消订阅消息日志数据消息字符串消息同步消息丢失 附录 简介 ULog 是用于记录数据的文件格式 xff0c 该格
  • 开发日记(一)

    这是自己编程第二天 xff0c 自己解决了好几个问题 xff0c 觉得很有成就感 xff0c 决定写下以后开发中遇到的问题 1 在多个Activity中传递数据 xff0c 之前只学过绑定基本的putExtra xff0c 今天上网一搜 x
  • 源程序生成控制流图和du-path

    最近上 源代码分析技术 这个课 xff0c 老师让写一个程序 xff0c 由一段c代码 xff0c 生成生成控制流图和du path xff0c 控制流图不用解释了 xff0c 说一下du path xff0c 这个术语是针对变量来说的 x
  • pandas使用笔记

    DataFrame使用笔记 dates 61 pd date range span class hljs string 39 20160728 39 span periods 61 span class hljs number 6 span
  • keras

    大神笔记 xff0c 转载自http blog csdn net u012162613 article details 45397033 Keras简介 Keras是基于Theano的一个深度学习框架 xff0c 它的设计参考了Torch
  • gensim similarity计算文档相似度

    向量空间模型计算文档集合相似性 0 将原始输入的词转换为ID xff0c 词的id表示法简单易用 xff0c 但是无法预测未登记词 xff0c 难以挖掘词关系 xff1b 词汇鸿沟 1 任意两个词之间是独立的 xff0c 无法通过词的ID来
  • doc2vec计算文档相似度

    doc2vec是基于word2vec的 xff0c word2vec对于计算两个词语的相似度效率比较好 xff0c 修改了word2vec中的cbow和skip gram模型 xff0c paragraph vector直接得到doc向量
  • 多维中维度的理解

    项目有段时间了 xff0c 今天需要做一个需求查询调研 必须要照顾楼下业务人员理解的方式吧多维度表述清楚 还真不好讲 xff1a 原以为维度就是一个基准点 xff0c 一个看事情的角度 xff0c 静下来想 xff0c 要描述出来好像还真不
  • Spring注解

    注解介绍 注解有两个作用 xff1a 标注和注入 标注 xff1a 类路径下自动扫描 xff0c 减少在xml中配置bean 例如 64 Component 64 Service注入 xff1a 自动装配 xff0c 需要类的地方直接加注解
  • akka基础

    基本概念消息传递API 通用API消息传递方式 Future机制Actor生命周期处理状态和错误 监督kill actor生命周期监控和DeathWatch安全重启状态 纵向扩展 Router调度方式使用策略 横向扩展 订阅集群事件启动 退
  • ROS学习(9)自定义移动机器人模型Gazebo仿真

    文章目录 前言一 gazebo启动二 创建编译功能包三 更新xacro文件1 更新robot base xacro2 更新robot camera xacro3 更新robot lidar xacro4 更新robot xacro 四 更新
  • ROS学习(11)使用ROS创建地图

    文章目录 前言一 创建编译功能包二 更新启动文件三 启动模型四 保存地图五 加载地图六 总结 前言 创建地图是一件比较复杂的工作 xff0c ROS利用map server地图服务器 xff0c 借助激光雷达和机器人的里程信息来完成这项工作
  • ROS学习(12)使用ROS创建自定义地图

    文章目录 前言一 新建环境二 创建编译功能包三 新建 world文件四 新建world启动文件五 更新启动文件六 建图 前言 上一篇使用的是柳树车库环境 xff0c 实现完整建图工作比较复杂 xff0c 所以准备新建一个简单点的环境 xff
  • ROS学习(13)自定义机器人的ROS导航

    文章目录 前言一 创建编译功能包二 代价地图配置三 基本局部规划器配置四 创建导航包的启动文件五 运行启动文件六 为导航功能包集设置rviz七 导航仿真 前言 上一篇针对我家户型 xff0c 完成了自定义环境的建图工作 本篇主要完成对导航功
  • ROS学习(开篇)Ubuntu16.04安装ROS Kinetic详细教程

    文章目录 前言一 添加ROS软件源 xff08 sources list xff09 二 添加密钥三 更新apt功能包列表四 安装ROS五 初始化 rosdep六 将ROS环境变量添加到 bashrc文件中七 安装rosinstall等工具