为你推荐
译者序
前言
作者简介
第1章 ROS入门
1.1 技术要求
1.2 ROS概述
1.2.1 ROS发行版
1.2.2 支持的操作系统
1.2.3 支持的机器人及传感器
1.2.4 为什么选择ROS
1.3 ROS基础
1.3.1 文件系统层级
1.3.2 计算图层级
1.3.3 ROS社区层级
1.3.4 ROS中的通信
1.4 ROS客户端库
1.5 ROS工具
1.5.1 ROS的可视化工具RViz
1.5.2 rqt_plot
1.5.3 rqt_graph
1.6 ROS模拟器
1.7 在Ubuntu 18.04 LTS上安装ROS Melodic
1.8 在VirtualBox上设置ROS
1.9 Docker简介
1.9.1 为什么选择Docker
1.9.2 安装Docker
1.10 设置ROS工作空间
1.11 ROS在工业界和学术界的机遇
1.12 本章小结
第2章 ROS-2及其特性简介
2.1 技术要求
2.2 ROS-2概述
2.2.1 ROS-2发行版
2.2.2 支持的操作系统
2.2.3 支持的机器人及传感器
2.2.4 为什么选择ROS-2
2.3 ROS-2基础
2.3.1 什么是DDS
2.3.2 DDS的实现
2.3.3 计算图
2.3.4 ROS-2社区层级
2.3.5 ROS-2中的通信
2.3.6 ROS-2的变化
2.4 ROS-2客户端库
2.5 ROS-2工具
2.5.1 RViz2
2.5.2 Rqt
2.6 安装ROS-2
2.6.1 开始安装
2.6.2 获取ROS-2源码
2.6.3 ROS-1、ROS-2以及共存环境设置
2.6.4 运行测试节点
2.7 设置ROS-2工作空间
2.8 编写ROS-2节点
2.8.1 ROS-1代码示例
2.8.2 ROS-2代码示例
2.8.3 ROS-1发布者节点与ROS-2发布者节点的区别
2.9 ROS-1和ROS-2的通信
2.10 本章小结
第3章 构建工业级移动机械臂
3.1 技术要求
3.2 常见的移动机械臂
3.3 移动机械臂应用场景
3.4 移动机械臂构建入门
3.4.1 单位及坐标系
3.4.2 Gazebo及ROS机器人模型格式设定
3.5 机器人底座构建
3.5.1 机器人底座需求
3.5.2 软件参数
3.5.3 机器人底座建模
3.5.4 机器人底座模拟
3.5.5 机器人底座测试
3.6 机械臂构建
3.6.1 机械臂需求
3.6.2 软件参数
3.6.3 机械臂建模
3.6.4 机械臂模拟
3.6.5 机械臂测试
3.7 系统集成
3.7.1 移动机械臂建模
3.7.2 移动机械臂模拟与测试
3.8 本章小结
第4章 基于状态机的复杂机器人任务处理
4.1 技术要求
4.2 ROS动作机制简介
4.2.1 服务器–客户端结构概述
4.2.2 actionlib示例:机械臂客户端
4.2.3 基于actionlib的服务器–客户端示例:电池模拟器
4.3 服务员机器人应用示例
4.4 状态机简介
4.5 SMACH简介
4.6 SMACH入门
4.6.1 SMACH-ROS的安装与使用
4.6.2 简单示例
4.6.3 餐厅机器人应用示例
4.7 本章小结
第5章 构建工业级应用程序
5.1 技术要求
5.2 应用案例:机器人送货上门
5.3 机器人底座智能化
5.3.1 添加激光扫描传感器
5.3.2 配置导航栈
5.3.3 环境地图构建
5.3.4 机器人底座定位
5.4 机械臂智能化
5.4.1 Moveit简介
5.4.2 安装与配置Moveit
5.4.3 通过Moveit控制机械臂
5.5 应用程序模拟
5.5.1 环境地图构建与保存
5.5.2 选择目标点
5.5.3 添加目标点
5.5.4 状态机构建
5.6 机器人改进
5.7 本章小结
第6章 多机器人协同
6.1 技术要求
6.2 集群机器人基本概念
6.3 集群机器人分类
6.4 ROS中的多机器人通信
6.4.1 单个roscore和公共网络
6.4.2 群组/名称空间的使用
6.4.3 基于群组/名称空间的多机器人系统构建示例
6.5 多master概念简介
6.5.1 multimaster_fkie功能包简介
6.5.2 安装multimaster_fkie功能包
6.5.3 设置multimaster_fkie功能包
6.6 多机器人应用示例
6.7 本章小结
第7章 嵌入式平台上的ROS应用及其控制
7.1 技术要求
7.2 嵌入式板基础知识
7.2.1 重要概念介绍
7.2.2 机器人领域微控制器和微处理器的区别
7.2.3 板卡选型步骤
7.3 微控制器板简介
7.3.1 Arduino Mega
7.3.2 STM32
7.3.3 ESP8266
7.3.4 ROS支持的嵌入式板
7.3.5 对比表格
7.4 单板计算机简介
7.4.1 CPU板
7.4.2 GPU板
7.5 Debian与Ubuntu
7.6 在Tinkerboard S平台上设置操作系统
7.6.1 基础需求
7.6.2 安装Tinkerboard Debian操作系统
7.6.3 安装Armbian和ROS
7.6.4 使用可用的ROS镜像安装
7.7 在BeagleBone Black平台上设置ROS
7.7.1 基础需求
7.7.2 安装Debian操作系统
7.7.3 安装Ubuntu和ROS
7.8 在Raspberry Pi 3/4平台上设置ROS
7.8.1 基础需求
7.8.2 安装Raspbian和ROS
7.8.3 安装Ubuntu和ROS
7.9 在Jetson Nano平台上设置ROS
7.10 通过ROS控制GPIO
7.10.1 Tinkerboard S
7.10.2 BeagleBone Black
7.10.3 Raspberry Pi 3/4
7.10.4 Jetson Nano
7.11 嵌入式板基准测试
7.12 Alexa入门及连接ROS
7.12.1 Alexa技能构建前提条件
7.12.2 创建Alexa技能
7.13 本章小结
第8章 强化学习与机器人学
8.1 技术要求
8.2 机器学习概述
8.2.1 监督学习
8.2.2 无监督学习
8.2.3 强化学习
8.3 理解强化学习
8.3.1 探索与开发
8.3.2 强化学习公式
8.3.3 强化学习平台
8.3.4 机器人领域的强化学习应用
8.4 马尔可夫决策过程与贝尔曼方程
8.5 强化学习算法
8.5.1 出租车问题应用示例
8.5.2 TD预测
8.5.3 TD控制
8.6 ROS中的强化学习功能包
8.6.1 gym-gazebo
8.6.2 gym-gazebo2
8.7 本章小结
第9章 ROS下基于TensorFlow的深度学习
9.1 技术要求
9.2 深度学习及其应用简介
9.3 机器人领域的深度学习
9.4 深度学习库
9.5 TensorFlow入门
9.5.1 在Ubuntu 18.04 LTS上安装TensorFlow
9.5.2 TensorFlow概念
9.5.3 在TensorFlow下编写第一行代码
9.6 ROS下基于TensorFlow的图像识别
9.6.1 基础需求
9.6.2 ROS图像识别节点
9.7 scikit-learn简介
9.8 SVM及其在机器人领域的应用简介
9.9 本章小结
第10章 ROS下的自动驾驶汽车构建
10.1 技术要求
10.2 自动驾驶汽车入门
10.3 典型自动驾驶汽车基本组件
10.3.1 GPS、IMU和车轮编码器
10.3.2 摄像头
10.3.3 超声波传感器
10.3.4 LIDAR与RADAR
10.3.5 自动驾驶汽车的软件模块体系结构
10.4 ROS下的自动驾驶汽车模拟与交互
10.4.1 Velodyne LIDAR模拟
10.4.2 ROS下的Velodyne传感器接口
10.4.3 激光扫描仪模拟
10.4.4 模拟代码扩展
10.4.5 ROS下的激光扫描仪接口
10.4.6 Gazebo下的立体与单目摄像头模拟
10.4.7 ROS下的摄像头接口
10.4.8 Gazebo下的GPS模拟
10.4.9 ROS下的GPS接口
10.4.10 Gazebo下的IMU模拟
10.4.11 ROS下的IMU接口
10.4.12 Gazebo下的超声波传感器模拟
10.4.13 低成本LIDAR传感器
10.5 Gazebo下带传感器的自动驾驶汽车模拟
10.6 ROS下的DBW汽车接口
10.6.1 功能包安装
10.6.2 自动驾驶汽车及传感器数据可视化
10.6.3 基于ROS与DBW通信
10.7 Udacity开源自动驾驶汽车项目简介
10.7.1 Udacity的开源自动驾驶汽车模拟器
10.7.2 MATLAB ADAS工具箱
10.8 本章小结
第11章 基于VR头盔和Leap Motion的机器人遥操作
11.1 技术要求
11.2 VR头盔和Leap Motion传感器入门
11.3 项目设计和实施
11.4 在Ubuntu 14.04.5上安装Leap Motion SDK
11.4.1 可视化Leap Motion控制器数据
11.4.2 使用Leap Motion可视化工具
11.4.3 安装用于Leap Motion控制器的ROS驱动程序
11.5 RViz中Leap Motion数据的可视化
11.6 使用Leap Motion控制器创建遥操作节点
11.7 构建ROS-VR Android应用程序
11.8 ROS-VR应用程序的使用及与Gazebo的交互
11.9 VR下的TurtleBot模拟
11.9.1 安装TurtleBot模拟器
11.9.2 在VR中控制TurtleBot
11.10 ROS-VR应用程序故障排除
11.11 ROS-VR应用与Leap Motion遥操作功能集成
11.12 本章小结
第12章 基于ROS、Open CV和Dynamixel伺服系统的人脸识别与跟踪
12.1 技术要求
12.2 项目概述
12.3 硬件和软件基础需求
12.4 使用RoboPlus配置Dynamixel伺服系统
12.5 Dynamixel与ROS连接
12.6 创建人脸跟踪器ROS功能包
12.7 使用人脸跟踪ROS功能包
12.7.1 理解人脸跟踪器代码
12.7.2 理解CMakeLists.txt
12.7.3 track.yaml文件
12.7.4 启动文件
12.7.5 运行人脸跟踪器节点
12.7.6 face_tracker_control功能包
12.7.7 平移控制器配置文件
12.7.8 伺服系统参数配置文件
12.7.9 人脸跟踪控制器节点
12.7.10 创建CMakeLists.txt
12.7.11 测试人脸跟踪器控制功能包
12.7.12 节点集成
12.7.13 固定支架并设置电路
12.7.14 最终运行
12.8 本章小结
买过这本书的人还买过
读了这本书的人还在读
同类图书排行榜