ROS学习笔记01、安装Ubuntu18.04以及ROS环境

家电维修 2023-07-16 19:17www.caominkang.com家电维修技术

文章目录
  • 前言
  • 前提条件
  • 一、ROS版本介绍
  • 二、VirtualBox安装Ubuntu18.04.6
  • 三、安装ROS环境
    • 3.1、设置镜像源
    • 3.2、设置ROS的下载源
    • 3.3、安装ROS
    • 3.4、设置环境变量
    • 3.5、下载ros的其他功能组件
    • 3.6、初始化rosdep以及使用rosdep命令来下载安装外部软件包
      • 终极解决方案
  • 参考资料
前言

马上开学,发现学校很多实验室都是人工智能这块,大部分都是和机器人相关,然后软件这块就是和cv、ros相关,就打算开始学习一下。

本章节是虚拟机安装Ubuntu18.04以及安装ROS的环境。

所有博客文件目录索引博客目录索引(持续更新)

前提条件

硬件要求

  • Intel i5及以上(i7最佳)
  • 8GB内存以上
  • 60GB硬盘存储以上。

操作系统Ubuntu18.04版本操作系统

ROS版本ROS Melodic

开发工具Clion

一、ROS版本介绍

针对于ROS安装的环境官方-ROS安装选择

二、VirtualBox安装Ubuntu18.04.6

安装virtualbox教程虚拟机安装及使用Linux,看这一篇就够了!

Ubuntu18.04.6链接https://pan.baidu./s/1E60edg4BYt_vnRa4AeKxZ
提取码dr40

1、新建

2、设置内存大小为8GB

3、选择【创建虚拟硬盘】,默认【VDI】=>【动态分配】,分配空间90GB

此时空间创建完成,接着来选择虚拟盘,来进行系统启动安装。

点击注册-选择ubuntu18.04版本,点击选择即可

回到初始虚拟机界面,右击-正常启动,来进行安装阶段基本都是默认操作,只有在选择地区指定【shanghai】即可,中间详细选择过程直接可见在VirtualBox上安装Ubuntu18.04虚拟机。

安装Ubuntu18可能你需要进行一些配置,如主机与虚拟机的双向复制、xshell连接ubuntu、分辨率调整等,可见我整理好的一篇博客,直接看里面的版本18对应问题及解决方案即可Ubuntu系统环境一系列问题解决方案


三、安装ROS环境

Ubuntu18.04对应的ros版本为ROS Melodic

3.1、设置镜像源

选择连接最快的服务器

这是我经过自动测试来进行选择的


3.2、设置ROS的下载源

①添加中科大源

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

②设置公钥

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

③更新可用软件列表

sudo apt update
3.3、安装ROS
sudo apt install ros-melodic-desk-full
  • 若是出现not found之类,那么回到2中执行更新软件列表命令【我就是没有做那步操作】。
  • 命令说明这个命令将安装完整的ROS软件,包括ROS,rqt,rviz,机器人通用库,2D / 3D模拟器,导航和2D / 3D感知等等的全套基础组件。

安装完成后,我去看了下大小,整个软件包大概有11G。

3.4、设置环境变量

执行如下命令

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

第二条是刷新该文件,刷新完之后bash终端以后可以识别roscore,rosrun等命令。

如何判断生效?可以执行一下roscore命令。

roscore
3.5、下载ros的其他功能组件
sudo apt install python-rosdep python-rosinstall python-rosinstall-generator python-stool build-essential

说明这些组件可以构建和管理开发者自己的ROS工作空间,强烈建议安装。

3.6、初始化rosdep以及使用rosdep命令来下载安装外部软件包

本应该执行这两条指令一条是初始化,另一条是进行更新

sudo rosdep init
rosdep update

执行不了的原因与命令本质介绍

第一条命令本质下载了一个20-default.list文件到 /etc/ros/rosdep/sources.list.d文件夹下,内容如下

# os-specific listings first
yaml https://ra.githubusercontent./ros/rosdistro/master/rosdep/osx-homebre.yaml osx

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

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

问题对应目标的网址由于外网或者其他原因是访问不了,自然就会执行失败,该文件也不会成功下载下来。

第二条命令本质根据20-default.list文件中的网址链接("ra.githubusercontent.")去下载相应的文件

注意看上面文件的内容同样是国外的,我自己访问了下还是404,是有问题的,自然第二条命令都执行不了。

  • 上面实际上指向的都是一个仓库的rosdep文件夹下的几个文件,其实我们可以将其克隆到自己的gitee仓库中,然后改下url地址即可,不过还是很麻烦,有人已经给我们提供了一个解决方案,可见终极解决方案。
    • 五个文件的github地址 ros仓库,rosdep文件夹。
终极解决方案

该方案并不是常规的方案,有一个python大佬写了一个包并提交了上去,我们去使用pip安装那个包,然后执行对应包命令,就可以去实现上面两条原本命令的效果。

ubuntun18本身没有带pip,所以我们需要自己安装一个pipROS Melodic的默认环境是python2,所以我们这里安装python2的pip工具

# 安装python2
sudo apt install python-pip

# 检测
pip --version

初始化

sudo rosdepc init

更新

rosdepc update

出现以下内容表示更新成功

参考资料

[1]. ROS学习(1)ROS介绍与安装

[2]. Ubuntu18.04安装Ros(最新最详细亲测)

[3]. ubuntu18安装python pip_关于Ubuntu18.04 如何安装pip

[4]. 如何在Ubuntu 18.04上安装Pip

我是长路,感谢你的耐心阅读。如有问题请指出,我会积极采纳!
欢迎关注我的公众号【长路Java】,分享Java学习文章及相关资料
Q群851968786 我们可以一起探讨学习
注明转载可,需要附带上文章链接

Copyright © 2016-2025 www.jianfeikang.com 建飞家电维修 版权所有 Power by