猜你喜欢
移动机器人原理与应用(基于ROS操作系统)

移动机器人原理与应用(基于ROS操作系统)

书籍作者:何顶新 ISBN:9787302641278
书籍语言:简体中文 连载状态:全集
电子书格式:pdf,txt,epub,mobi,azw3 下载次数:1852
创建日期:2024-04-28 发布日期:2024-04-28
运行环境:PC/Windows/Linux/Mac/IOS/iPhone/iPad/Kindle/Android/安卓/平板
内容简介

移动机器人是智能机器人的重要形态之一,在各行各业都有广泛的应用前景。机器人操作系统(ROS)是无人驾驶领域所涉及的关键技术平台。本书内容将围绕移动机器人展开,首先讲解ROS的基本原理和开发方法,然后介绍智能移动机器人的控制原理与传感器应用,接下来通过丰富的案例讲解机器人视觉处理、建图导航、语音交互等核心应用的开发方法,最后通过自动驾驶场景下的综合实践提高移动机器人的开发者综合应用的开发能力,做到融会贯通。

作者简介

何顶新华中科技大学人工智能与自动化学院教授、实验中心主任、博士生导师,华中科技大学教学名师,长期从事机器人控制的科研与教学工作。

编辑推荐

本书配套完整的应用代码,同时提供了详细的视频课程讲解,强调通过动手操作培养学生开发智能移动机器人应用的实践能力。

前言

前言

机器人的发展横跨七八十年,经历了三个重要时期。


1. 电气时代: 2000年之前


这个时代的机器人主要应用于工业生产,称为工业机器人,由示教器操控,帮助工厂释放劳动力。此时的机器人并没有太多智能可言,完全按照人类的命令执行动作。人们更加关注机器人在电气层面的驱动器、伺服电动机、减速机、控制器等设备,这是机器人的电气时代。


2. 数字时代: 2000—2015年


计算机和视觉技术的应用逐渐增多,机器人的类型不断丰富,出现了AGV、视觉检测等应用。此时的机器人传感器更加丰富,但是依然缺少自主思考的能力,智能化有限,只能感知局部环境,这是机器人的数字时代,也是机器人大时代的前夜。


3. 智能时代: 2015年之后


随着人工智能技术的快速发展,机器人成为了人工智能化时代的最佳载体。家庭服务机器人、送餐机器人、四足仿生机器狗等机器人智能化应用呈井喷状爆发,移动机器人时代正式拉开序幕。


移动机器人应用越来越多,伴随机器人硬件的快速发展,软件系统也不断升级,其中最为广泛使用的就是机器人操作系统(ROS),ROS的便利性也加速移动机器人公司的迅速成长,会有更多的移动机器人出现在我们的生活当中。


为帮助大家快速学习、掌握移动机器人的相关技术,本书的编者结合多年移动机器人开发的经验,总结撰写本书。本书内容围绕移动机器人展开,共分为四篇。


第一篇: 认识移动机器人,包含第1、2章,介绍移动机器人和机器人操作系统的发展现状,以及移动机器人的组成和操作方法。


第二篇: 移动机器人原理,包含第3~6章,介绍机器人操作系统的核心概念和常用工具,以及移动机器人的基础编程和运动学原理。


第三篇: 移动机器人应用,包含第7~10章,介绍移动机器人的视觉处理、SLAM地图构建、自主导航、语音交互四个核心方向的应用方法。


第四篇: 移动机器人自动驾驶应用,包含第11~13章,这是本书的综合应用,模拟实现自动驾驶场景下的多项功能,融会贯通之前章节所学习到的知识和技能。


在本书的编著过程中,离不开很多朋友的帮助。首先感谢清华大学出版社的支持,杨迪娜编辑为本书的编排、出版付出了大量心血; 其次要感谢华中科技大学人工智能与自动化学院,本书中的大量设备和实验都是在学院的支持下完成的,编者团队也都来自于该学院; 最后还要感谢ROS机器人社区——古月居,这里汇聚了上百万机器人开发者和他们提供的优质技术内容,为本书的编著提供了大量素材。


本书配套完整的应用代码,既可以作为科技工具图书,供各位读者学习实践,又可以作为高校机器人相关专业的教材,培养学生提高开发移动机器人应用的综合能力。


为了便于读者理解,古月居专门针对本书录制了详细的视频课程,视频和代码资源扫描封底二维码获取。



机器人系统错综复杂,书中难免有不足和错误之处,欢迎各位读者朋友批评指正。



编者团队







目录

目录


第一篇认识移动机器人


第1章移动机器人导论


1.1移动机器人发展现状


1.2机器人操作系统发展与现状


1.2.1ROS的历史起源


1.2.2ROS的发展与现状


1.3本章小结


第2章移动机器人认知


2.1移动机器人的组成


2.1.1移动机器人的四大组成部分


2.1.2多模态移动机器人LIMO


2.1.3LIMO机器人软件架构


2.2移动机器人LIMO操作方法


2.2.1系统启动


2.2.2多模态运动


2.3本章小结


第二篇移动机器人原理


第3章机器人操作系统核心概念


3.1ROS的组成与安装


3.1.1ROS的组成


3.1.2ROS的版本迭代


3.1.3ROS的安装方法


3.2ROS的核心概念


3.2.1节点和节点管理器


3.2.2话题和消息


3.2.3服务


3.2.4参数


3.3移动机器人运行架构分析


3.3.1小海龟仿真


3.3.2移动机器人运动控制


3.4本章小结


第4章ROS常用工具


4.1ROS命令行使用方法


4.1.1rosnode


4.1.2rostopic


4.1.3rosservice


4.1.4LIMO机器人命令行调试


4.2launch启动文件


4.2.1基本元素


4.2.2参数设置


4.2.3重映射机制


4.2.4嵌套复用


4.2.5LIMO机器人的launch文件


4.3可视化工具


4.3.1Rviz


4.3.2rqt


4.3.3Gazebo


4.4本章小结


第5章移动机器人基础编程


5.1移动机器人开发流程


5.1.1工作空间的创建和编译


5.1.2创建功能包


5.2移动机器人运动控制编程


5.2.1编程思路


5.2.2代码解析


5.2.3功能运行


5.3机器人状态订阅编程


5.3.1编程思路


5.3.2代码解析


5.3.3功能运行


5.4移动机器人分布式通信


5.4.1分布式通信网络配置


5.4.2移动机器人分布式控制


5.5本章小结


第6章移动机器人运动学


6.1差速运动控制


6.1.1四轮差速运动


6.1.2履带差速运动


6.2阿克曼运动控制


6.3全向运动控制


6.4本章小结


第三篇移动机器人应用


第7章机器人视觉处理


7.1机器视觉原理


7.2机器视觉常用软件


7.2.1OpenCV


7.2.2TensorFlow


7.2.3PyTorch


7.2.4yolo


7.3机器视觉常用传感器


7.3.1相机驱动


7.3.2图像数据解析


7.4物体识别与跟踪


7.4.1实现原理


7.4.2依赖安装


7.4.3阈值测试


7.4.4视觉识别


7.4.5机器人跟踪


7.4.6功能运行


7.5二维码识别与跟踪


7.5.1二维码识别功能包ALVAR


7.5.2二维码识别


7.5.3机器人跟踪


7.5.4功能运行


7.6本章小结


第8章移动机器人SLAM地图构建


8.1SLAM地图构建应用


8.2SLAM地图构建原理


8.2.1SLAM基本原理


8.2.2SLAM常用传感器


8.2.3ROS接口消息定义


8.3Gmapping地图构建


8.3.1原理简介


8.3.2接口定义


8.3.3配置方法


8.3.4功能运行


8.4Cartographer地图构建


8.4.1Cartographer原理简介


8.4.2配置方法


8.4.3功能运行


8.5RTAB地图构建


8.5.1原理简介


8.5.2功能运行


8.6本章小结


第9章机器人自主导航


9.1机器人自主导航原理


9.1.1原理简介


9.1.2ROS自主导航框架


9.1.3move_base功能包


9.1.4AMCL功能包


9.1.5机器人定位方法对比


9.2移动机器人差速运动导航


9.2.1功能运行


9.2.2启动文件


9.2.3参数配置


9.3移动机器人全向运动导航


9.3.1功能运行



9.3.2启动文件


9.3.3参数配置


9.4移动机器人阿克曼运动导航


9.4.1功能运行


9.4.2启动文件


9.4.3参数配置


9.5本章小结


第10章机器人语音交互


10.1机器人语音交互原理


10.1.1语音交互发展阶段


10.1.2语音识别


10.1.3自然语言理解


10.1.4语音合成


10.2科大讯飞语音识别库


10.2.1语音识别SDK


10.2.2中文语音识别例程


10.2.3中文语音合成例程


10.3中文语音识别


10.3.1实现思路


10.3.2功能运行


10.4中文语音输出


10.4.1实现思路


10.4.2功能运行


10.5中文语音识别与输出


10.5.1实现思路


10.5.2功能运行


10.6中文语音交互


10.6.1实现思路


10.6.2功能运行


10.7机器人语音控制


10.7.1实现思路


10.7.2功能运行


10.8本章小结


第四篇移动机器人自动驾驶应用


第11章自动驾驶中的路径规划


11.1路线巡检


11.1.1应用场景


11.1.2算法介绍


11.1.3功能运行


11.1.4代码解析


11.2视觉巡线


11.2.1应用场景


11.2.2算法介绍


11.2.3功能运行


11.2.4代码解析


11.3倒车入库


11.3.1应用场景


11.3.2算法介绍


11.3.3功能运行


11.3.4代码解析


11.4本章小结


第12章自动驾驶中的视觉感知


12.1红绿灯识别


12.1.1算法介绍


12.1.2功能运行


12.1.3代码解析


12.2机器学习环境搭建


12.2.1机器学习完整流程


12.2.2PyTorch安装


12.2.3yolov5安装


12.3行人检测


12.3.1算法介绍


12.3.2数据采集


12.3.3数据标注


12.3.4数据集切分


12.3.5模型训练


12.3.6模型测试


12.4本章小结


第13章自动驾驶综合场景应用


13.1自动驾驶数据采集与训练


13.1.1算法介绍


13.1.2数据采集


13.1.3数据标注


13.1.4数据集切分


13.1.5模型训练


13.1.6模型测试


13.2红绿灯检测与机器人控制


13.2.1算法介绍


13.2.2功能运行


13.2.3代码解析


13.3行人检测与机器人控制


13.3.1算法介绍


13.3.2功能运行


13.3.3代码解析


13.4自动驾驶综合应用


13.4.1算法介绍


13.4.2功能运行


13.4.3代码解析


13.5本章小结



产品特色