Learning ROS for Robotics Programming - Second Edition(《ROS机器人编程学习-第二版》)
Learning ROS for Robotics Programming - Second Edition
《ROS机器人编程学习-第二版》
----Your one-stop guide to the Robot Operating System
——你的一站式的机器人操作系统引导
原著:Enrique Fernández,Luis Sánchez Crespo,Anil Mahtani,Aaron Martinez
作者简介:Enrique Fernández:西班牙计算机工程博士,研究领域包括SLAM、AI等;
ROS版本目前共有十个版本。分别是:第一版本:Box Turtle,第二版本:ROS Turtle,第三版本:Diamondback Launch,第四版本:Electric Emys,第五版本:Fuerte,第六版本:Groovy,第七版本:Hydro,第八版本:Indigo,第九版本:Jade,第十版本:Kinetic。
本书用的是ROS Hydro,是第7版。2008nmj用的是ROS Indigo,比书要高一级。

教程代码及说明下载:https://github.com/AaronMR/Learning_ROS_for_Robotics_Programming_2nd_edition
学习本书你需要什么?
对于你的电脑的硬件需求,任何手提电脑都可以。但是,建议使用一张专用的显卡以运行Gazebo模拟器。而且,拥有大量的外围设备是很好的,从而你能够连接多个传感器和执行器,包括摄像机和Arduino板。你还需要Git(Git核心Debian软件包)为克隆库中有这本书的源代码。相似地,你要对Bash命令行、GNU/Linux工具和一些C/C++编程技巧有基本的认识。
目录:
Preface 前言
Chapter 1: Getting Started with ROS Hydro 第1章:开始ROS Hydro系统
- PC installation(电脑安装)
- Installing ROS Hydro – using repositories(安装ROS Hydro)
- How to install VirtualBox and Ubuntu (如何安装虚拟机和Ubuntu)
- Installing ROS Hydro in BeagleBone Black (BBB) (在BeagleBone Black中安装ROS Hydro)
- Summary(总结)
Chapter 2: ROS Architecture and Concepts 第2章:ROS架构和概念
- Understanding the ROS Filesystem level(理解ROS文件系统级别)
- Understanding the ROS Computation Graph level (理解ROS计算图形级别)
- Understanding the ROS Community level (理解ROS社区级别)
- Tutorials to practice with ROS (使用ROS的实践指导教程)
- Summary(总结)
第1章:开始ROS Hydro系统
安装教程:http://www.cnblogs.com/zxouxuewei/p/5096787.html
-配置Ubuntu属性 "restricted"、"universe" 和 "multiverse"
-设置source.list文件 sudo sh –c ‘echo “deb http://packages.ros.org/ros/ubuntu precise main” > /etc/apt/sources.list.d/ros-latest.list’
-设置key $wget http://packages.ros.org/ros.key -O- | sudo apt-key add –
-安装ROS 先更新一下:$sudo apt-get update 然后:$sudo apt-get install ros-hydro-desktop-full
-安装rosdep $sudo rosdep init $rosdep update
-设置环境 $source /opt/ros/hydro/setup.bash(为了避免每次打开终端都输一遍,将它打到.bashrc文件中:$ echo "source /opt/ros/hydro/setup.bash" >> ~/.bashrc ,该.bashrc文件在/home/USERNAME/.bashrc中)
可以用echo $ROS_DISTRO来查看ROS版本。
最后测试成不成功:在两个shell窗口里分别输入(打开shell窗口是用ctrl+alt+T)如下内容:
$roscore
$rosrun turtlesim turtlesim_node
$rosrun turtlesim turtle_teleop_key
(附:Windows端安装虚拟机和Ubuntu和ROS完整教程:http://www.cnblogs.com/2008nmj/p/7586918.html)
第2章:ROS结构和概念
-ROS文件系统级
包:packages
包元:package manifests
综合包:metapackages
综合包元:metapackage manifests
消息:msg
服务:srv
-ROS计算图形级
节点和节点集:Nodes and nodelets
主题:Topics
服务:Services
消息:Messages
记录袋:Bags
ROS管理器:The ROS master
参数服务器:Parameter Server
-ROS社区级
分配:Distributions版本
ROS维基:ROS Wiki
bug登记系统:bug ticket system
邮箱列表: mailing list
ROS问答: ROS Answers
博客:Blog
-实践
使用ROS文件系统来导航
创建我们自己的工作空间
创建一个ROS包和综合包
编译一个ROS包
使用ROS节点
学习如何与主题交互
学习如何使用服务
使用参数服务器
创建节点
编译节点
创建msg和srv文件
使用新的msg和srv文件
launch文件
第3章:可视化和调试工具
REEM机器人,它可以使用以下命令在模拟中运行:$roslaunch reem_2dnav_gazebo reem_navigation.launch
注意在你安装之前,你需要遵照如下的指示:http://wiki.ros.org/Robots/REEM。
调试ROS节点
记录消息
监视正在进行的东西
设置动态参数
当奇怪的事情发生时
节点诊断可视化
绘制scalar数据
图像可视化:$roslaunch chapter3_tutorials example8.launch $rosrun image_view image_view image:=/camera
3D可视化:$rosrun rviz rviz
保存和重放数据
使用rqt_gui和rqt插件
总结
第4章:使用ROS中的传感器和驱动器
使用joystick(操作杆)或gamepad(手柄)
使用雷达范围查找器——Hokuyo URG-04lx
使用Kinect传感器查看三维物体
使用伺服电机–Dynamixel
使用Arduino添加更多的传感器和致动器
使用Arduino超声波测距传感器
距离传感器如何发送消息
使用低成本IMU-10自由度
使用GPS系统
总结
Learning ROS for Robotics Programming - Second Edition(《ROS机器人编程学习-第二版》)的更多相关文章
- Learning ROS for Robotics Programming Second Edition学习笔记(六) indigo xtion pro live
中文译著已经出版,详情请参考:http://blog.csdn.net/ZhangRelay/article/category/6506865 Learning ROS for Robotics Pr ...
- Learning ROS for Robotics Programming Second Edition学习笔记(五) indigo computer vision
中文译著已经出版,详情请参考:http://blog.csdn.net/ZhangRelay/article/category/6506865 Learning ROS for Robotics Pr ...
- Learning ROS for Robotics Programming Second Edition学习笔记(四) indigo devices
中文译著已经出版,详情请参考:http://blog.csdn.net/ZhangRelay/article/category/6506865 Learning ROS for Robotics Pr ...
- Learning ROS for Robotics Programming Second Edition学习笔记(三) 补充 hector_slam
中文译著已经出版,详情请参考:http://blog.csdn.net/ZhangRelay/article/category/6506865 Learning ROS for Robotics Pr ...
- Learning ROS for Robotics Programming Second Edition学习笔记(三) indigo rplidar rviz slam
中文译著已经出版,详情请参考:http://blog.csdn.net/ZhangRelay/article/category/6506865 Learning ROS for Robotics Pr ...
- Learning ROS for Robotics Programming Second Edition学习笔记(二) indigo tools
中文译著已经出版,详情请参考:http://blog.csdn.net/ZhangRelay/article/category/6506865 Learning ROS for Robotics Pr ...
- Learning ROS for Robotics Programming Second Edition学习笔记(一) indigo v-rep
中文译著已经出版,详情请参考:http://blog.csdn.net/ZhangRelay/article/category/6506865 Learning ROS for Robotics Pr ...
- Learning ROS for Robotics Programming Second Edition学习笔记(十) indigo Gazebo rviz slam navigation
中文译著已经出版,详情请参考:http://blog.csdn.net/ZhangRelay/article/category/6506865 moveit是书的最后一章,由于对机械臂完全不知,看不懂 ...
- Learning ROS for Robotics Programming Second Edition学习笔记(七) indigo PCL xtion pro live
中文译著已经出版,详情请参考:http://blog.csdn.net/ZhangRelay/article/category/6506865 Learning ROS forRobotics Pro ...
- Learning ROS for Robotics Programming Second Edition学习笔记(九) indigo Gazebo rviz slam navigation
中文译著已经出版,详情请参考:http://blog.csdn.net/ZhangRelay/article/category/6506865 书中三维环境gazebo,slam的仿真例子 --$ r ...
随机推荐
- webserive学习记录5-拦截器完成登陆校验
说说cxf中的拦截器,可以分为系统拦截器(如日志拦截器)和自定义拦截器,也可以分为出拦截器和入拦截器,也可以分为服务器拦截器和客户端拦截器. 下面将实现一个可以进行登陆验证的拦截器,其中用户名作为方法 ...
- TPCC-MySQL的安装与使用
Tpcc-mysql 是 percona 基于 tpcc 衍生出来的产品,专用于 mysql 基准测试,其源码放在 bazaar 上( Bazaar 是一个分布式的版本控制系统,采用 GPL 许可协议 ...
- 给定一个十进制数,将其转化为N进制数-----17年滴滴笔试题
题目:给定一个十进制数M,将其转化为N进制数,其中2<=N<=16,其中N为32为整型数; 输入:M N,如7 2 输出转化结果:111 注意点:考虑负数的情况,记得添加负号(其实直接添加 ...
- 首届阿里巴巴在线技术峰会,9位大V演讲整理!
https://yq.aliyun.com/articles/57826 感谢参加阿里巴巴在线技术峰会.7月19日的3场专家分享:Blink.Docker.电商互动:7月20日的云数据库十大经典案 例 ...
- Maven(一)——Maven入门
一.Maven的基本概念 Maven(翻译为"专家","内行")是跨平台的项目管理工具.主要服务于基于Java平台的项目构建,依赖管理和项目信息管理. 1.1. ...
- 123. Best Time to Buy and Sell Stock III (Array; DP)
Say you have an array for which the ith element is the price of a given stock on day i. Design an al ...
- Only POT texture can be compressed to PVRTC format
在图片压缩格式 报这个Warning的时候,意思是该图片必须要采用2的幂次方大小才能使用该格式. POT: Power of Two. 采取方式是在advanced里边,把Non Power of 2 ...
- jQuery对象转换为DOM对象(转)
jQuery对象转换为dom对象 只有jQuery对象才能调用jQuery类库的各种函数,同样有些dom对象的属性和方法在jQuery上也是无法调用的,不过基本上jQuery类库提供的函数包含了所有的 ...
- [leetcode]158. Read N Characters Given Read4 II - Call multiple times 用Read4读取N个字符2 - 调用多次
The API: int read4(char *buf) reads 4 characters at a time from a file. The return value is the actu ...
- Docker常见问题
问题 当我使用docke search mysql时,显示如下错误: [root@iZ25u61v97hZ opt]# docker search redis Segmentation Fault o ...