ros教程:ros安装


前言

关于ROS(Robot OS 机器人操作系统),估计看这个教程的人已经大概知道是啥了,我在这就不废话了。

首先对于ROS的安装,在它的官方网站: http://wiki.ros.org/ROS/Installation 中有详细说明。但是。。。上面的教程都是英文的,如果感觉略有压力(本人就是)。

所以本人痛定思痛,经过一番呕心沥血与含辛茹苦的调研后(其实就是看了几篇相关博客),这里,我就来总结一下我当时学习的历程,也为其他新手作为一个参考。


提示:以下是本篇文章正文内容,下面案例可供参考

一、版本选择

ROS 虽说也叫操作系统,但它是寄生在 LINUX 操作系统之下的,所以要求大兄弟你的电脑里至少要先有一个 LINUX 操作系统。

ROS的安装当然是我们开始动手的第一步了,这里我们使用的操作系统是ubuntu16.04,因为ROS在ubuntu上的支持是最好的。

操作系统:Ubuntu16.04

ROS版本:ROS Kinetic Kame

二、开始安装

2.1 软件中心配置

源这个概念可能对初学者比较陌生。大家都用过手机的应用市场吧,我们可以从应用市场下载APP在我们的手机上面便捷的使用,在Ubuntu系统下,我们也是有一个“应用市场”——apt。在我们需要下载程序的时候,sudo apt-get install 软件名即可进行安装。源,软件源,也就是这个软件仓库的数据,我们可以通过sudoapt-getupgrade更新我们的一个“应用市场”中已经安装好的所有软件;源列表呢,就是你这个“应用市场”里面都有哪些软件,是软件名称的一个列表。(PS:以上表述可能并不完全正确,但是对于初学者入门是足够的。有兴趣的朋友可自行查阅相关资料。)

我们点击Ubuntu左下角的9个点,这个是类似于Windows键的一个功能,找到 softwave & update选项,打开。

打开后按照下图进行配置(确保你的"restricted", "universe," 和 "multiverse."前是打上勾的):



配置完成后就可以关闭该窗口了。

2.2 添加源

打开一个控制台(快捷键:Ctrl + Alt + T), 输入如下指令::

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

我们的Linux在安装软件的时候,需要通过源列表去寻找对应的一个软件,Ubuntu默认的软件列表是没有ROS的,我们需要把packags.ros.org这样的一个网站给配置到我们的软件仓库列表内才能下载ROS,不然显示的是没有这个软件(因为你的软件列表,也就是源列表没有)。

设置秘钥:。

$ sudo apt-key adv --keyserver hkp://ha.pool.sks-keyservers.net:80 --recv-key 0xB01FA116

配置公网密钥,这一步是确保我们的系统认为这个路径是安全的,下载文件是没有问题的。不然下载的东西会立刻被清除掉。


2.3 安装

我们在加入了新的源之后,需要对源列表进行一次更新,在终端输入sudo apt-get update即可进行更新。

$ sudo apt-get update

然后我们就可以安装 ROS 啦,但是问题又出现了,ROS kinetic 也有很多版本,这里选择是是安装桌面完整版。

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

OK,指令敲完,就可以整把游戏消遣消遣了,坐等ROS安装完成。





OK~,现在就当大家安装完了,而且一切顺利,没有BUG出现...

安装完成后,可以用下面的命令来查看可使用的包:

$ apt-cache search ros-kinetic

别急,到现在虽然基本是安装完了,但是,还不能用ROS哦。

## 2.4 配置ROS环境到系统
首先呢,需要先初始化 rosdep,rosdep 让你能够轻松地安装被想要编译的 源代码,或被某些 ROS 核心组件需要的系统依赖。 在终端依次输入下面指令。

$ sudo rosdep init
$ rosdep update

在这个位置一定保持网络良好,不然一定会失败。

然后初始化环境变量:

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

关于ROS的启动,我们需要在启动终端窗口的时候,生效一下我们的ROS功能内径, 但是每次打开一个窗口手动生效依次很麻烦,所有我们将需要生效的内容放在~/.bashrc文 件内,这样在每次启动终端的时候就可以自动生效了。记得执行source ~/.bashrc更新一下 当前的环境变量哈。

三、验证ROS

在ROS环境安装好了以后,相信你一定迫不及待的要体验一下ROS系统了吧!不过不要着急,机器人系统的设计是需要大量的时间和精力的,在这里我们先使用一个ROS的欢迎程序来向大家展示我们的ROS系统。

ROS系统的启动需要一个ROS Master,即节点管理器,我们可以在终端输入roscore指令来启动ROS Master。

$ roscore





然后我们来启动一个小海龟的例程。新打开一个终端,输入

$ rosrun turtlesim turtlesim_node

即可出现一个小海龟的画面。

我们再打开一个终端,输入

$ rosrun turtlesim turtle_teleop_key

来启动键盘控制,通 过↑、↓、←、→来控制小乌龟的移动。

我们可以看到,在小海龟的gui头“撞墙”的时候,我们的turtlesim_node节点(咳咳,概念型的请继续关注接下来的内容)会有提示数据的输出。

注意,要想键盘控制小海龟移动,首先键盘的焦点必须在rosrun turtlesim turtle_teleop_key的终端页面内

我们可以再开启一个终端,查看一下节点关系和话题列表。

$ rqt_graph

可以看到,是teleop_turtle发送了一个cmd_vel的数据给了turtlesim。

ROS教程(一):ROS安装教程(详细图文)的更多相关文章

  1. windows10上安装mysql详细图文教程

    在windows10上安装mysql详细图文教程   这篇文章主要介绍了在windows10上安装mysql详细图文教程,本文介绍的非常详细,具有参考借鉴价值,感兴趣的朋友一起看看吧 环境:windw ...

  2. MySQL8.0.20下载与安装详细图文教程,mysql安装教程

    MySQL下载与安装(8.0.20版)教程 mysql安装包+mysql学习视频+mysql面试指南视频教程 下载地址: 链接:https://pan.baidu.com/s/1FmLFhGlajBQ ...

  3. 最新hadoop入门教程汇总篇(附详细图文步骤)

    关于hadoop的分享此前一直都是零零散散的想到什么就写什么,整体写的比较乱吧.最近可能还算好的吧,毕竟花了两周的时间详细的写完的了hadoop从规划到环境安装配置等全部内容.写过程不是很难,最烦的可 ...

  4. mysql8.0.20安装教程,mysql下载安装教程8.0.20

    mysql8.0.20下载安装教程  mysql8.0.20安装教程 mysql安装包+mysql学习视频+mysql面试指南视频教程 下载地址: 链接:https://pan.baidu.com/s ...

  5. [VSTS] 从零开始 Team Foundation Server 2010 安装配置详细图文教程

    http://www.cnblogs.com/WilsonWu/archive/2011/11/24/2261674.html 近期公司要配TFS用于新项目的管理,公司也将逐步迁移至VSTS平台,前期 ...

  6. VM虚拟机安装centos详细图文教程

    本教程贴,采用VM虚拟机进行安装, Ps:不懂VM使用的,可以百度一下 第一步,启动虚拟机,并进行新建---虚拟机·· 选择 从镜像安装,吧里有6.3镜像下载的链接的 然后, 下一步 . 选择客户机版 ...

  7. 在Windows上安装虚拟机详细图文教程

    用虚拟机来安装最新的软件,安装最新的系统等等比较保险,可以避免安装不顺利影响自己原来的系统和应用,想尝鲜又担心自己完全更换系统不适应的朋友可以尝试. 虚拟机下载:https://yunpan.cn/c ...

  8. MatlabR2014a 安装破解详细图文教程(附下载链接(内附CVX工具箱))

    MATLAB和Mathematica.Maple并称为三大数学软件.它在数学类科技应用软件中在数值计算方面首屈一指.MATLAB可以进行矩阵运算.绘制函数和数据.实现算法.创建用户界面.连接其他编程语 ...

  9. mysql-5.7.16-winx64解压版安装超详细图文教程

    1.安装: 将下载的mysql-5.7.16-winx64压缩包解压后的整个目录放在自己喜欢的位置,我的放在D盘根目录下 2.配置: 进入mysql-5.7.16-winx64目录,将里面的my-de ...

  10. Linux下db2V10.5命令行安装超详细图文教程(附下载地址)

    下载地址:https://pan.baidu.com/s/1GtF03x1FMF3IsGdSiBJu-g 提取码:8vfj 失效了发邮件:wells974@163.com 一.db2prereqche ...

随机推荐

  1. AddressSanitizer —— ASAN分析内存错误

    简介 AddressSanitizer 是一个性能非常好的C/C++ 内存错误探测工具. 它由编译器的插桩模块和替换了malloc函数的运行时库组成. 这个工具可以探测如下这些类型的错误: 对堆.栈和 ...

  2. 图数据库 Nebula Graph 在 Boss 直聘的应用

    本文首发于 Nebula Graph 官方博客:https://nebula-graph.com.cn/posts/nebula-graph-risk-control-boss-zhipin/ 摘要: ...

  3. 【升级版】如何使用阿里云云解析API实现动态域名解析,搭建私有服务器【含可执行文件和源码】

    原文地址:http://www.yxxrui.cn/article/179.shtml 未经许可请勿转载,如有疑问,请联系作者:yxxrui@163.com 我遇到的问题:公司的网络没有固定的公网IP ...

  4. 简析5G时代的MART流处理

    在当今数字驱动的世界中,实时处理数据流是业务成功的必要条件. 5G网络的引入增加了对数据量和速要求,而这些要求给传统的数据架构带来了压力.对吸收数据流量的需求空前增长,同时还要通过跨多个数据流,做出智 ...

  5. Linux(Centos7)安装、使用 Docker

    一.Linux(CentOS7) 上安装 docker 1.docker 是什么? docker 是一种 虚拟化容器技术,一个开源的应用容器引擎. 基于镜像,可以秒级启动各种容器(运行一次镜像就生成一 ...

  6. Hello Python!用 Python 写一个抓取 CSDN 博客文章的简单爬虫

    网络上一提到 Python,总会有一些不知道是黑还是粉的人大喊着:Python 是世界上最好的语言.最近利用业余时间体验了下 Python 语言,并写了个爬虫爬取我 csdn 上关注的几个大神的博客, ...

  7. java电脑环境变量配置

    ANT_HOME    D:\apache-ant-1.9.11CLASSPATH       %JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib;%JAVA_HOME%\l ...

  8. jsp中将一个jsp引入另一个jsp指定位置

    <jsp:include page="badSurveyUpdate.jsp"/>

  9. [LeetCode]129. Sum Root to Leaf Numbers路径数字求和

    DFS的标准形式 用一个String记录路径,最后判断到叶子时加到结果上. int res = 0; public int sumNumbers(TreeNode root) { if (root== ...

  10. [LeetCode]547. Friend Circles朋友圈数量--不相邻子图问题

    /* 思路就是遍历所有人,对于每一个人,寻找他的好友,找到好友后再找这个好友的好友 ,这样深度优先遍历下去,设置一个flag记录是否已经遍历了这个人. 其实dfs真正有用的是flag这个变量,因为如果 ...