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,即可在对应版本中使用. 第四 ...
随机推荐
- NodeJS技巧
1. 获取程序执行时间 // 打印程序执行时间 console.time() // some functions console.timeEnd() 2. 将函数异步化 setTimeout(() = ...
- web前端HTML基础
一.HTML介绍 HTML全称是(Hypertext Markup Language, HTML)又称为超级文本标记语言,它主要his一种用于创建网页的标记语言,在本质上是浏览器可以识别的规则,我们按 ...
- 【python进阶】详解元类及其应用1
前言 元类在python中是很重要的一部分,我将分两次去讲解元类及其应用,此篇为详解元类及其应用第一篇,下面开始今天的说明~~~ 1. 类也是对象 在⼤多数编程语⾔中,类就是⼀组⽤来描述如何⽣成⼀个对 ...
- es6-promise源代码重点难点分析
摘要 vue和axios都可以使用es6-promise来实现f1().then(f2).then(f3)这样的连写形式,es6-promise其实现代浏览器已经支持,无需加载外部文件.由于promi ...
- javascript实现双向数据绑定
双向数据绑定已经是面试中经常被问到的点,需要对原理和实现都要有一定了解. 下面是实现双向绑定的两种方法: 属性劫持 脏数据检查 一.属性劫持 主要是通过Object对象的defineProperty方 ...
- Mysql之视图的操作
视图的操作: 1.视图的创建: create view view_name as 查询语句; 2.视图的查看: show tables;// 显示所有的表和视图 show create view vi ...
- [SHOI 2008]Debt 循环的债务
Description 题库链接 A 欠 B \(x_1\) 元, B 欠 C \(x_2\) 元, C 欠 A \(x_3\) 元.现每人手上各有若干张 100,50,20,10,5,1 钞票.问至 ...
- [SCOI2009]围豆豆
Description Input 第一行两个整数N和M,为矩阵的边长. 第二行一个整数D,为豆子的总个数. 第三行包含D个整数V1到VD,分别为每颗豆子的分值. 接着N行有一个N×M的字符矩阵来描述 ...
- [bzoj4893]项链分赃
来自FallDream的博客,未经允许,请勿转载,谢谢. 有一串长度为n(n<=10^5)的项链,上面有红绿蓝三种颜色的珠子,每种颜色的珠子数目都是偶数,现在要你把它切几刀分成若干段,把其中一些 ...
- Linux中LCD设备驱动-framebuffer(帧缓冲)【】
转自:https://blog.csdn.net/linux_devices_driver/article/details/7079442 1.framebuffer 帧缓冲 帧缓冲(fram ...