• ROS 2机器人开发:从入门到实践
21年品牌 40万+商家 超1.5亿件商品

ROS 2机器人开发:从入门到实践

全新正版 极速发货

65.25 6.6折 99 全新

库存29件

广东广州
认证卖家担保交易快速发货售后保障

作者桑欣

出版社机械工业出版社

ISBN9787111758068

出版时间2024-07

装帧平装

开本16开

定价99元

货号1203343143

上书时间2024-09-05

徐小智的书店

已实名 已认证 进店 收藏店铺

   商品详情   

品相描述:全新
商品描述
目录
目  录    Contents
推荐序一
推荐序二
前言
第1章  启程——让你的第一个
机器人动起来  1
1.1  ROS部落的自我介绍  1
1.1.1  机器人与ROS  2
1.1.2  ROS 2系统架构  3
1.1.3  ROS 2的已发布版本  4
1.1.4  ROS 2机器人开发特色  4
1.2  开发环境搭建  5
1.2.1  准备所需软件  6
1.2.2  安装虚拟机VirtualBox  6
1.2.3  在虚拟机中安装
Ubuntu 22.04  7
1.2.4  安装ROS 2  11
1.3  运行你的第一个机器人  14
1.3.1  启动海龟模拟器  14
1.3.2  使用键盘控制海龟  15
1.3.3  海龟例子的简单分析  16
1.4  ROS 2基础之Linux  17
1.4.1  Linux终端基础操作  17
1.4.2  在Linux中安装软件  20
1.4.3  在Linux中编写Python
程序  23
1.4.4  在Linux中编写C++程序  26
1.4.5  Linux基础之环境变量  28
1.5  小结与点评  29
第2章  ROS 2基础入门——
从第一个节点开始  30
2.1  编写你的第一个节点  30
2.1.1  Python示例  30
2.1.2  C++示例  33
2.2  使用功能包组织Python节点  37
2.2.1  在功能包中编写Python
节点  37
2.2.2  功能包结构分析  40
2.3  使用功能包组织C++节点  41
2.3.1  在功能包中编写C++节点  41
2.3.2  功能包结构分析  44
2.4  多功能包的很好实践Workspace  44
2.5  ROS 2基础之编程  46
2.5.1  面向对象编程  46
2.5.2  用得到的C++新特性  53
2.5.3  多线程与回调函数  58
2.6  小结与点评  62
第3章  订阅和发布—话题通信
探索  63
3.1  话题通信介绍  63
3.2  Python话题订阅与发布  66
3.2.1  通过话题发布小说  66
3.2.2  订阅小说并合成语音  69
3.3  C++话题订阅与发布  71
3.3.1  发布速度控制海龟画圆  71
3.3.2  订阅Pose实现闭环控制  74
3.4  话题通信很好实践  77
3.4.1  完成工程架构设计  77
3.4.2  自定义通信接口  78
3.4.3  系统信息获取与发布  81
3.4.4  在功能包中使用Qt  83
3.4.5  订阅数据并用Qt显示  84
3.5  ROS 2基础之Git入门  87
3.5.1  新建代码仓库  87
3.5.2  学会提交代码  88
3.5.3  学会使用Git忽略文件  90
3.6  小结与点评  90
第4章  服务和参数——深入
ROS 2通信  92
4.1  服务与参数通信介绍  92
4.1.1  服务通信介绍  92
4.1.2  基于服务的参数通信  95
4.2  用Python服务通信实现人脸检测  97
4.2.1  自定义服务接口  98
4.2.2  人脸检测  100
4.2.3  人脸检测服务实现  102
4.2.4  人脸检测客户端的实现  104
4.3  用C++服务通信做一个巡逻
海龟  106
4.3.1  自定义服务接口  107
4.3.2  服务端代码实现  107
4.3.3  客户端代码实现  109
4.4  在Python节点中使用参数  111
4.4.1  参数声明与设置  112
4.4.2  订阅参数更新  113
4.4.3  修改其他节点的参数  114
4.5  在C++节点中使用参数  116
4.5.1  参数声明与设置  117
4.5.2  接收参数事件  117
4.5.3  修改其他节点的参数  119
4.6  使用launch启动脚本  121
4.6.1  使用launch启动多个节点  121
4.6.2  使用launch传递参数  123
4.6.3  launch使用进阶  124
4.7  小结与点评  126
第5章  ROS 2常用开发工具  127
5.1  坐标变换工具介绍  127
5.1.1  通过命令行使用TF  128
5.1.2  对TF 原理的简单探究  131
5.2  Python中的手眼坐标变换  133
5.2.1  通过Python发布静态TF  133
5.2.2  通过Python发布动态TF  136
5.2.3  通过Python查询TF关系  137
5.3  C++中的地图坐标系变换  139
5.3.1  通过C++发布静态TF  139
5.3.2  通过C++发布动态TF  141
5.3.3  通过C++查询TF关系  143
5.4  常用可视化工具rqt与RViz  145
5.4.1  GUI框架rqt  145
5.4.2  数据可视化工具RViz  147
5.5  数据记录工具ros2 bag  149
5.6  ROS 2基础之Git进阶  153
5.6.1  查看修改内容  153
5.6.2  学会撤销代码  154
5.6.3  进阶掌握Git分支  156
5.7  小结与点评  158
第6章  建模与仿真——创建
自己的机器人  160
6.1  机器人建模与仿真概述  160
6.1.1  移动机器人的结构介绍  160
6.1.2  常用机器人仿真平台  161
6.2  使用URDF创建机器人  162
6.2.1  帮机器人创建一个身体  162
6.2.2  在RViz中显示机器人  165
6.2.3  使用Xacro简化URDF  170
6.2.4  创建机器人及传感器部件  173
6.2.5  完善机器人执行器部件  177
6.2.6  贴合地面,添加虚拟部件  179
6.3  添加物理属性让机器人更真实  180
6.3.1  为机器人部件添加碰撞
属性  180
6.3.2  为机器人部件添加质量
与惯性  181
6.4  在Gazebo中完成机器人仿真  183
6.4.1  安装与使用Gazebo构建
世界  184
6.4.2  在Gazebo中加载机器人
模型  189
6.4.3  使用Gazebo标签扩展
URDF  191
6.4.4  使用两轮差速插件控制
机器人  193
6.4.5  激光雷达传感器仿真  197
6.4.6  惯性测量传感器仿真  200
6.4.7  深度相机传感器仿真  203
6.5  使用ros2_control驱动机器人  205
6.5.1  ros2_control介绍与安装  205
6.5.2  使用Gazebo接入
ros2_control  209
6.5.3  使用关节状态发布控制器  213
6.5.4  使用力控制器控制轮子  216
6.5.5  使用两轮差速控制器控制
机器人  218
6.6  小结与点评  221
第7章  自主导航——让机器人
自己动起来  222
7.1  机器人导航介绍  222
7.1.1  同步定位与地图构建  222
7.1.2  机器人导航  224
7.2  使用slam_toolbox完成建图  225
7.2.1  构建第一张导航地图  225
7.2.2  将地图保存为文件  227
7.3  机器人导航框架Navigation 2  229
7.3.1  Navigation 2介绍与安装  229
7.3.2  配置Navigation 2参数  231
7.3.3  编写launch并启动导航  232
7.3.4  进行单点与路点导航  234
7.3.5  导航过程中进行动态避障  236
7.3.6  优化导航速度和膨胀半径  237
7.3.7  优化机器人到点精度  239
7.4  导航应用开发指南  240
7.4.1  使用话题初始化机器人
位姿  240
7.4.2  使用TF获取机器人实时
位置  243
7.4.3  调用接口进行单点导航  244
7.4.4  使用接口完成路点导航  250
7.5  导航很好实践之做一个自动巡检
机器人  253
7.5.1  完成机器人系统架构设计  253
7.5.2  编写巡检控制节点  253
7.5.3  添加语音播报功能  258
7.5.4  订阅图像并记录  261
7.6  ROS 2基础之Git仓库托管  262
7.6.1  添加自描述文件  262
7.6.2  将代码托管在Gitee  265
7.6.3  将代码托管在GitHub  266
7.7  小结与点评  270
第8章  使用自己的规划器和
控制器导航  271
8.1  掌握ROS 2插件机制  271
8.1.1  pluginlib介绍与安装  271
8.1.2  定义插件抽象类  272
8.1.3  编写并生成第一个插件  272
8.1.4  编写插件测试程序  275
8.2  自定义导航规划器  276
8.2.1  自定义规划器介绍  276
8.2.2  搭建规划器插件框架  279
8.2.3  实现自定义规划算法  283
8.2.4  配置导航参数并测试  284
8.3  自定义导航控制器  286
8.3.1  自定义控制器介绍  286
8.3.2  搭建控制器插件框架  287
8.3.3  实现自定义控制算法  292
8.3.4  配置导航参数并测试  294
8.4  小结与点评  295
第9章  搭建一个实体移动
机器人  296
9.1  移动机器人系统设计  296
9.1.1  机器人传感器  296
9.1.2  机器人执行器  297
9.1.3  机器人决策系统  298
9.2  单片机开发基础  298
9.2.1  开发平台介绍与安装  298
9.2.2  第一个HelloWorld工程  301
9.2.3  使用代码点亮LED灯  303
9.2.4  使用超声波测量距离  304
9.2.5  使用开源库驱动IMU  305
9.3  机器人控制系统的实现  306
9.3.1  使用开源库驱动多路
电动机  307
9.3.2  电动机速度测量与转换  308
9.3.3  使用PID控制轮子转速  311
9.3.4  运动学正逆解的实现  315
9.3.5  机器人里程计计算  320
9.4  使用micro-ROS接入ROS 2  322
9.4.1  第一个节点  323
9.4.2  订阅话题控制机器人  327
9.4.3  发布机器人里程计话题  329
9.5  移动机器人建图与导航实现  333
9.5.1  驱动并显示雷达点云  334
9.5.2  移动机器人的坐标系框架
介绍  337
9.5.3  准备机器人URDF  338
9.5.4  发布里程计TF  341
9.5.5  完成机器人建图并保存
地图  343
9.5.6  完成机器人导航  347
9.6  小结与点评  348
第10章  ROS 2使用进阶  349
10.1  消息服务质量之QoS  349
10.1.1  QoS策略介绍  349
10.1.2  QoS的兼容性  352
10.1.3  Python QoS兼容性测试  353
10.1.4  C++ QoS兼容性测试  354
10.2  执行器与回调组  356
10.2.1  执行器与回调组介绍  356
10.2.2  在Python中使用回
调组  358
10.2.3  在C++中使用回调组  361
10.3  生命周期节点  364
10.3.1  生命周期节点介绍  364
10.3.2  在Python中编写生命
周期节点  367
10.3.3  在C++中编写生命周期
节点  369
10.4  同一进程组织多个节点  371
10.4.1  使用执行器组织多个
节点  371
10.4.2  使用组件运行组合
节点  375
10.4.3  编写自己的组件  378
10.5  使用消息过滤器同步数据  380
10.5.1  消息过滤器介绍  380
10.5.2  在Python中同步传感器
数据  380
10.5.3  在C++中同步传感器
数据  381
10.6  DDS中间件进阶  384
10.6.1  使用不同的DDS进行
通信 &n

—  没有更多了  —

以下为对购买帮助不大的评价

此功能需要访问孔网APP才能使用
暂时不用
打开孔网APP