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

本文涉及的产品
资源编排,不限时长
简介: ROS学习笔记01、安装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.com/s/1E60edg4BYt_vnRa4AeKxZw

提取码: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.cn/ros/ubuntu/ `lsb_release -cs` main" > /etc/apt/sources.list.d/ros-latest.list'


②设置公钥:


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



③更新可用软件列表


sudo apt update


3.3、安装ROS


sudo apt install ros-melodic-desktop-full


若是出现not found之类,那么回到2中执行更新软件列表命令【我就是没有做那步操作】。

命令说明:这个命令将安装完整的ROS软件,包括ROS,rqt,rviz,机器人通用库,2D / 3D模拟器,导航和2D / 3D感知等等的全套基础组件。

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



3.4、设置环境变量


执行如下命令:


# 将source命令写入到~/.bashrc文件末尾
echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc
# 执行当前用户名home目录下的.bashrc文件
source ~/.bashrc


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


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


roscore


3.5、下载ros的其他功能组件


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


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


3.6、初始化与更新rosdep包(可跳过)


认识rosdep包

从ROS fuerte开始,rosdep称为是一个独立的工具,可以单独下载和使用,对于克隆了一些仓库源代码,并且想手动编译所有的包或者开发跨平台应用时就需要使用到rosdep。


具体使用场景:开发跨平台应用,源码编译安装功能包场景。参考:rosdep不初始化到底行不行

原本rosdep的初始化与更新命令如下:


sudo rosdep init
rosdep update


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


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


# os-specific listings first
yaml https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/osx-homebrew.yaml osx
# generic
yaml https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/base.yaml
yaml https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/python.yaml
yaml https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/ruby.yaml
gbpdistro 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


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


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


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


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

五个文件的github地址: ros仓库,rosdep文件夹。

终极解决方案

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


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


# 使用pip来尝试安装rosdepc
# 如果显示没有pip可以试试pip3:sudo pip3 install rosdepc
# 如果pip3还没有:sudo apt-get install python3-pip 
sudo pip3 install rosdepc


初始化rosdep:


sudo rosdepc init


更新rosdep:


rosdepc update


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



测试ROS


打开三个命令行窗口来执行ROS自带的一些小程序


命令行一:


# 启动系统自带的节点,实现通信
roscore


命令行二:


# 弹出图像化界面
rosrun turtlesim turtlesim_node


命令行三:


# 读取键盘上下左右移动信息控制乌龟行动
rosrun turtlesim turtle_teleop_key


相关实践学习
使用ROS创建VPC和VSwitch
本场景主要介绍如何利用阿里云资源编排服务,定义资源编排模板,实现自动化创建阿里云专有网络和交换机。
阿里云资源编排ROS使用教程
资源编排(Resource Orchestration)是一种简单易用的云计算资源管理和自动化运维服务。用户通过模板描述多个云计算资源的依赖关系、配置等,并自动完成所有资源的创建和配置,以达到自动化部署、运维等目的。编排模板同时也是一种标准化的资源和应用交付方式,并且可以随时编辑修改,使基础设施即代码(Infrastructure as Code)成为可能。 产品详情:https://www.aliyun.com/product/ros/
相关文章
|
7天前
|
JSON Ubuntu 开发者
ubuntu 22安装lua环境&&编译lua cjson模块
通过上述步骤,可以在 Ubuntu 22.04 系统上成功安装 Lua 环境,并使用 LuaRocks 或手动编译的方式安装 lua-cjson 模块。本文详细介绍了每一步的命令和操作,确保每一步都能顺利完成,适合需要在 Ubuntu 系统上配置 Lua 开发环境的开发者参考和使用。
34 13
|
3天前
|
监控 关系型数据库 MySQL
Ubuntu24.04安装Librenms
此指南介绍了在Linux系统上安装和配置LibreNMS网络监控系统的步骤。主要内容包括:安装所需软件包、创建用户、克隆LibreNMS仓库、设置文件权限、安装PHP依赖、配置时区、设置MariaDB数据库、调整PHP-FPM与Nginx配置、配置SNMP及防火墙、启用命令补全、设置Cron任务和日志配置,最后通过网页完成安装。整个过程确保LibreNMS能稳定运行并提供有效的网络监控功能。
|
14天前
|
Ubuntu Linux Docker
Ubuntu22.04上Docker的安装
通过以上详细的安装步骤和命令,您可以在Ubuntu 22.04系统上顺利安装
189 11
|
2月前
|
Ubuntu 开发工具 git
Ubuntu安装homebrew的完整教程
本文介绍了如何在没有公网的情况下安装 Homebrew。首先访问 Homebrew 官网,然后通过阿里云的镜像克隆安装脚本,并创建普通用户进行安装。接着修改 `install.sh` 文件指向国内镜像,执行安装命令。最后配置环境变量并更换 Homebrew 源为国内镜像,确保安装顺利。
338 50
|
2月前
|
Ubuntu
ubuntu和debian 的安装包dpkg管理命令对安装包进行安装,查询,卸载
Ubuntu dpkg 软件包管理命令概览:安装、卸载、查看和配置软件包。包括解决依赖、强制卸载、列出及过滤已安装包、查看包详情等操作。
65 10
|
2月前
|
Ubuntu API 开发工具
PSOPT在Ubuntu22.04下的安装
通过上述步骤,可以在Ubuntu 22.04下成功安装并配置PSOPT。PSOPT是一个功能强大的工具,适用于解决各种最优控制问题。确保在安装前满足系统要求,并仔细按照步骤操作,可以避免大多数常见问题。通过MATLAB与PSOPT的结合,您可以更高效地处理复杂的控制问题,并获得准确的解决方案。
37 5
|
2月前
|
Ubuntu 网络协议 关系型数据库
超聚变服务器2288H V6使用 iBMC 安装 Ubuntu Server 24.04 LTS及后续系统配置
【11月更文挑战第15天】本文档详细介绍了如何使用iBMC在超聚变服务器2288H V6上安装Ubuntu Server 24.04 LTS,包括连接iBMC管理口、登录iBMC管理界面、配置RAID、安装系统以及后续系统配置等步骤。
162 4
|
2月前
|
消息中间件 Ubuntu Java
Ubuntu系统上安装Apache Kafka
Ubuntu系统上安装Apache Kafka
|
3月前
|
Ubuntu Linux
Ubuntu 16.04下无法安装.deb的解决方法
希望以上策略能有效协助您克服在Ubuntu 16.04中安装.deb文件时遇到的挑战。
72 0
|
3月前
|
Ubuntu 机器人 Linux