ROS机器人程序设计(原书第2版)补充资料 (壹) 第一章 ROS系统入门
ROS机器人程序设计(原书第2版)补充资料 (壹) 第一章 ROS系统入门
书中,大部分出现hydro的地方,直接替换为indigo或jade或kinetic,即可在对应版本中使用。
第一章主要包括ROS简介和安装等,这里补充一些知识点,扩充书本内容。
第1页:
ubuntu系统的安装,推荐镜像地址:http://cdimage.ubuntu.com/
依据需要可以下载最适合自己版本并搭配对应的ROS。这里推荐LTS,长期支持版本。
更多内容查看Ubuntu官网及相关论坛:https://www.ubuntu.com/
第2页:
ROS支持非常多的机器人,可以参考:http://wiki.ros.org/Robots
第3页:
版本对应,推荐如下:
Ubuntu 12.04 LTS 和 ROS hydro
Ubuntu 14.04 LTS 和 ROS indigo
Ubuntu 16.04 LTS 和 ROS kinetic
第4页:
Ubuntu软件源配置:
中国大陆用户推荐使用国内的源,这样安装和更新,速度都能保证。
具体请参考:http://wiki.ros.org/ROS/Installation/UbuntuMirrors
选择(China)!
具体命令如下:
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'
第5页:
主要密钥的设置:
请到官网查看,例如Kinetic版:http://wiki.ros.org/kinetic/Installation/Ubuntu
其他版本只需将Kinetic,换成对于版本即可,如indigo:http://wiki.ros.org/indigo/Installation/Ubuntu
这是通用方法,安装功能包也是类似。
第6页:
不同版本ROS功能包安装:
hydro:sudo apt-get install ros-hydro-PACKAGE
例如:gmapping包:sudo apt-get install ros-hydro-slam-gmapping
indigo:sudo apt-get install ros-indigo-PACKAGE
例如:gmapping包:sudo apt-get install ros-indigo-slam-gmapping
kinetic:sudo apt-get install ros-kinetic-PACKAGE
例如:gmapping包:sudo apt-get install ros-kinetic-slam-gmapping
第7页:
环境配置:重点.bashrc和setup.bash。
这个一定要熟练掌握,非常重要!
第8-10页:
在虚拟机安装和使用Ubuntu和ROS,VMware和Virtual Box都可以正常使用大部分功能。
第11-15页:
在嵌入式平台上编译和使用ROS,依据平台不同各有区别:
以indigo为例,补充参考:http://wiki.ros.org/indigo/Installation/UbuntuARM
总结:
最重要的就是依据软硬件配置选择合适版本进行安装,以indigo为例,如下:
选择平台:
其他版本:

This is a virtual machine with Ubuntu 14.04.1 LTS and ROS Indigo Igloo pre-installed. It is packaged in an .ova file that you can run on VirtualBox or other virtualization engines.
source-based package manager for *NIX and BSD

This is simple script file to install the ROS indigo on desktop PC (ubuntu 13.10 and 14.04 LTS)

思考与练习:
1 在自己的PC和ARM上完成ROS安装和配置。
如果成功,第一章内容就已经完全掌握。
附录:官网重要中文资料http://wiki.ros.org/cn
ROS (Robot Operating System, 机器人操作系统) 提供一系列程序库和工具以帮助软件开发者创建机器人应用软件。它提供了硬件抽象、设备驱动、函数库、可视化工具、消息传递和软件包管理等诸多功能。ROS遵循BSD开源许可协议。
ROS:
-
- 在你的机器上安装ROS。
- 学习ROS的相关概念、客户端函数库以及技术梗概等。
- ROS手把手教程,提供每一步详细操作命令。
- 如何加入ROS社区,比如分享你的代码。
- 遇到问题可以从这里寻求支持和帮助。
软件:
机器人/硬件:
出版物、课程以及活动:
ROS中国:
世界各地wiki镜像站点。
ROS机器人程序设计(原书第2版)补充资料 (壹) 第一章 ROS系统入门的更多相关文章
- ROS机器人程序设计(原书第2版)补充资料 教学大纲
ROS机器人程序设计(原书第2版) 补充资料 教学大纲 针对该书稍后会补充教学大纲.教案.多媒体课件以及练习题等. <ROS机器人程序设计>课程简介 课程编号:XXXXXX 课程名称:RO ...
- ROS机器人程序设计(原书第2版)学习镜像分享及使用说明
ROS机器人程序设计(原书第2版)学习镜像分享及使用说明 系统用于ROS爱好者学习交流,也可用于其他用途,并不局限于ROS. 这款镜像文件是基于一年前的Ubuntu ROS Arduino Gazeb ...
- ROS机器人程序设计(原书第2版)补充资料 (拾) 第十章 使用MoveIt!
ROS机器人程序设计(原书第2版)补充资料 (拾) 第十章 使用MoveIt! 书中,大部分出现hydro的地方,直接替换为indigo或jade或kinetic,即可在对应版本中使用. MoveIt ...
- ROS机器人程序设计(原书第2版)补充资料 (玖) 第九章 导航功能包集进阶 navigation
ROS机器人程序设计(原书第2版)补充资料 (玖) 第九章 导航功能包集进阶 navigation 书中,大部分出现hydro的地方,直接替换为indigo或jade或kinetic,即可在对应版本中 ...
- ROS机器人程序设计(原书第2版)补充资料 (零) 源代码、资料和印刷错误修订等 2017年01月01日更新
ROS机器人程序设计(原书第2版)补充资料 (零) 源代码等 ROS官网 版)部分内容修订 页:第1行,删去$ 页:第6行,float64 y 前面加一个空格 页:中间创建主题:下面程序不用换行,(& ...
- ROS机器人程序设计(原书第2版)补充资料 (捌) 第八章 导航功能包集入门 navigation
ROS机器人程序设计(原书第2版)补充资料 (捌) 第八章 导航功能包集入门 navigation 书中,大部分出现hydro的地方,直接替换为indigo或jade或kinetic,即可在对应版本中 ...
- ROS机器人程序设计(原书第2版)补充资料 (柒) 第七章 3D建模与仿真 urdf Gazebo V-Rep Webots Morse
ROS机器人程序设计(原书第2版)补充资料 (柒) 第七章 3D建模与仿真 urdf Gazebo V-Rep Webots Morse 书中,大部分出现hydro的地方,直接替换为indigo或ja ...
- ROS机器人程序设计(原书第2版)补充资料 (陆) 第六章 点云 PCL
ROS机器人程序设计(原书第2版)补充资料 (陆) 第六章 点云 PCL 书中,大部分出现hydro的地方,直接替换为indigo或jade或kinetic,即可在对应版本中使用. RGBD深度摄像头 ...
- ROS机器人程序设计(原书第2版)补充资料 (伍) 第五章 计算机视觉
ROS机器人程序设计(原书第2版)补充资料 (伍) 第五章 计算机视觉 书中,大部分出现hydro的地方,直接替换为indigo或jade或kinetic,即可在对应版本中使用. 计算机视觉这章分为两 ...
- ROS机器人程序设计(原书第2版)补充资料 (肆) 第四章 在ROS下使用传感器和执行器
ROS机器人程序设计(原书第2版)补充资料 (肆) 第四章 在ROS使用传感器和执行器 书中,大部分出现hydro的地方,直接替换为indigo或jade或kinetic,即可在对应版本中使用. 第四 ...
随机推荐
- HDFS- High Availability
NameNode High Availability Background Hadoop2.0.0之前,NameNode存在单点失败(single point of failure (SPOF) )问 ...
- C++ 前期准备
在线编译网站: http://www.dooccn.com/cpp/ 刷题: https://leetcode.com/ https://leetcode-cn.com/
- [LeetCode] Longest Palindromic Subsequence 最长回文子序列
Given a string s, find the longest palindromic subsequence's length in s. You may assume that the ma ...
- python-文件操作和集合
1.打开文件 如果文件不存在会报错 f = open('information.txt','r+') 2.读取文件 read 读取文件 readline 读取文件的一行内容 readlines 读取文 ...
- 【bzoj4571 scoi2016】美味
题目描述 一家餐厅有 n 道菜,编号 1...n ,大家对第 i 道菜的评价值为 ai(1<=i<=n).有 m 位顾客,第 i 位顾客的期望值为 bi,而他的偏好值为 xi .因此,第 ...
- hdu5634 BestCoder Round #73 (div.1)
Rikka with Phi Accepts: 5 Submissions: 66 Time Limit: 16000/8000 MS (Java/Others) Memory Limit: ...
- 用HTTP状态码实现提交表单后刷新页面不重复提交
正常情况下,表单提交后如果用户刷新页面会重复提交表单,有些情况下我们不希望表单重复提交,利用HTTP协议中的307状态码重定向页面可以实现这个目的.实例如下: 表单页面代码: <form act ...
- Spring学习笔记2——创建Product对象,并在其中注入一个Category对象
第一步:创建Product类.在Product类中有对Category对象的set和get方法 package com.spring.cate; public class Product { priv ...
- C语言中如何调用另一个源文件里的函数
在开发大型项目时,我们常常需要将一份源码分成多个源文件来进行编写,这样可以方便后期的维护.下面就介绍如何从一个源文件里调用另一个源文件的函数. 在源文件A1.c中调用A2.c 中的函数有两种方法: 1 ...
- 我在 B 站学机器学习(Machine Learning)- 吴恩达(Andrew Ng)【中英双语】
我在 B 站学机器学习(Machine Learning)- 吴恩达(Andrew Ng)[中英双语] 视频地址:https://www.bilibili.com/video/av9912938/ t ...



