ROS与ROS2开发指南
¥
49.74
5.7折
¥
88
全新
库存5件
作者张锐
出版社电子工业出版社
出版时间2023-07
版次1
装帧其他
货号R4库 12-26
上书时间2024-12-27
商品详情
- 品相描述:全新
图书标准信息
-
作者
张锐
-
出版社
电子工业出版社
-
出版时间
2023-07
-
版次
1
-
ISBN
9787121458125
-
定价
88.00元
-
装帧
其他
-
开本
16开
-
页数
308页
-
字数
415千字
- 【内容简介】
-
本书是学习ROS的实用化书籍。从对机器人的介绍开始,由浅入深依次讲解ROS依赖的Linux系统、常用的高级编程语言Python、ROS环境和机器人编程开发实训等内容。在学习ROS开发过程中,本书在实战篇加入了SLAM建图、视觉跟随和物联网控制等前沿知识的介绍,使读者在学习编程技能的同时,能够更加深入地理解最新的机器人控制理论。为了发挥ROS与ROS2各自的优势,本书提出了ROS与ROS2混合编程方法,并给出了翔实的实践案例。 本书可供从事无人驾驶和移动机器人研究的科研工作者、高校教师及相关专业学生使用。
- 【作者简介】
-
张锐,北京钢铁侠科技有限公司创始人。荣获北京市优秀毕业生、北京市优秀人才(青年骨干)、中关村雏鹰人才、北京市青年人才托举工程、中关村高聚工程领军人才、青岛市拔尖人才,承担过北京市科技重大专项等多项省部级项目。
- 【目录】
-
目 录
预 备 篇
第1章 绪论1
1.1 机器人的概念及特点1
1.1.1 机器人的由来1
1.1.2 机器人的定义2
1.1.3 机器人的主要特点3
1.2 机器人的组成与分类3
1.2.1 机器人的组成3
1.2.2 机器人的分类4
1.3 智能机器人10
1.3.1 智能机器人的定义10
1.3.2 脑科学与智能机器人11
1.3.3 人工智能在机器人中的应用11
第2章 Linux基础14
2.1 Linux简介14
2.1.1 Linux的发行版14
2.1.2 Linux应用领域15
2.2 Linux系统目录结构15
2.3 Linux用户及用户组管理18
2.4 Linux文件属性管理20
2.4.1 查看文件属性20
2.4.2 文件属性修改21
2.4.3 文件权限修改22
2.5 Linux目录管理24
2.5.1 常用命令24
2.5.2 文件内容查看指令27
2.5.3 重定向与追加28
2.6 Linux包操作29
第3章 Python基础31
3.1 Python简介31
3.1.1 Python发行版31
3.1.2 Python特点32
3.2 Python基础介绍32
3.2.1 基础导引32
3.2.2 变量33
3.2.3 数据类型34
3.2.4 条件语句35
3.2.5 循环语句36
3.2.6 切片操作37
3.3 数据常用操作方法38
3.3.1 字符串常见操作38
3.3.2 列表常见操作43
3.3.3 字典常见操作46
3.3.4 集合常见操作51
3.3.5 元组常见操作52
3.3.6 逻辑运算54
3.4 函数54
3.4.1 函数简介54
3.4.2 参数(argument-list)55
3.4.3 局部变量与全局变量57
3.4.4 返回值58
3.4.5 递归函数59
3.4.6 匿名函数59
3.4.7 列表推导式59
3.4.8 字典推导式60
3.4.9 常用内置函数61
3.5 面向对象64
3.5.1 面向过程与面向对象64
3.5.2 类与实例65
3.5.3 类属性与实例属性65
3.5.4 类方法与静态方法68
3.5.5 魔法方法69
3.5.6 面向对象的三大特性71
3.6 常用术语介绍74
基 础 篇
第4章 ROS概述76
4.1 初识ROS76
4.2 PC安装ROS79
4.3 Raspberry 系统下安装ROS的脚本83
第5章 ROS基础84
5.1 文件系统级84
5.2 计算图级86
5.3 开源社区级87
5.4 文件系统工具87
5.4.1 使用rospack87
5.4.2 使用roscd88
5.4.3 使用rosls89
5.4.4 使用rosed89
5.4.5 使用roscp89
5.5 创建工作空间89
5.5.1 创建工作空间简介90
5.5.2 工作空间目录解析90
5.6 功能包的创建与编译91
5.6.1 catkin功能包的组成91
5.6.2 创建功能包92
5.6.3 功能包依赖关系92
5.6.4 功能包命名规范93
5.6.5 删除功能包94
5.6.6 编译功能包94
5.7 ROS节点96
5.7.1 启动ROS97
5.7.2 使用rosnode97
5.8 ROS主题与节点交互98
5.8.1 控制turtle移动98
5.8.2 查看节点信息99
5.8.3 查看主题信息100
5.8.4 使用 rqt_graph102
5.9 ROS服务和参数103
5.10 创建ROS消息和ROS服务106
5.10.1 消息(msg)和服务(srv)介绍107
5.10.2 使用 msg107
5.10.3 使用 srv109
5.11 编写发布器与订阅器110
5.11.1 定义msg消息110
5.11.2 编写发布器112
5.11.3 编写订阅器114
5.11.4 启动rqt查看节点信息115
5.12 编写服务端和客户端116
5.12.1 定义srv服务116
5.12.2 编写服务端118
5.12.3 编写客户端120
5.13 编写launch文件122
5.13.1 roslaunch使用方法122
5.13.2 编写launch文件介绍125
实 战 篇
第6章 ARTROBOT机器人移动平台搭建127
6.1 三轴全向移动机器人介绍127
6.1.1 全向轮结构127
6.1.2 底盘结构设计127
6.1.3 直流电机的选择129
6.1.4 电机驱动板129
6.1.5 ROS的主控板130
6.2 运动学建模和分析130
6.2.1 机器人坐标系系统分析130
6.2.2 运动学模型分析132
6.2.3 逆运动学模型方程推导133
6.2.4 正运动学模型方程推导135
6.2.5 航迹推算136
6.3 ros_arduino_bridge功能包集136
6.3.1 ros_arduino_bridge功能包集简介137
6.3.2 安装ros_arduino_bridge功能包集139
6.3.3 安装python-serial功能包139
6.3.4 串口的操作权限139
6.4 下位机Arduino代码详解140
6.4.1 ros_arduino_bridge功能简介140
6.4.2 创建ros_arduino_bridge项目141
6.4.3 mobileBaseArduinoCode.ino141
6.4.4 commands.h147
6.4.5 encoder_driver.h147
6.4.6 encoder_driver.ino148
6.4.7 motor_driver.h151
6.4.8 motor_driver.ino151
6.4.9 omniWheel_controller.h154
6.4.10 sensors.h157
6.5 上位机ros_arduino_python代码158
6.5.1 ros_arduino_python功能简介158
6.5.2 arduino.launch159
6.5.3 my_arduino_params.yaml159
6.5.4 arduino_node.py160
6.5.5 base_controller.py161
第7章 机器人传感器配置与使用167
7.1 惯性测量单元校准和调试167
7.1.1 惯性测量单元相关介绍167
7.1.2 IMU功能包简介167
7.1.3 在ROS环境下复制并编译IMU源码168
7.1.4 IMU初始标定168
7.1.5 启动IMU测试168
7.1.6 单独运行IMU169
7.2 雷达调试170
7.2.1 雷达选型170
7.2.2 下载编译ROS下驱动源码171
7.2.3 生成挂载点172
7.2.4 启动雷达测试174
7.2.5 读取雷达数据174
7.3 udev串口配置177
7.3.1 udev简介177
7.3.2 udev规则177
7.3.3 udev内容179
7.3.4 udev生效183
7.4 ROS中TF变换184
7.4.1 TF功能包185
7.4.2 TF广播与监听187
7.4.3 TF常用工具193
第8章 SLAM及导航198
8.1 SLAM简介198
8.2 常见激光SLAM算法简介199
8.3 应用gmapping构建机器人约束条件200
8.4 slam_gmapping功能包201
8.5 应用gmapping构建二维地图201
8.6 SLAM构建地图过程分析205
8.6.1 地图分析205
8.6.2 SLAM执行过程206
8.6.3 gmapping参数设定207
8.7 ROS机器人导航简介209
8.8 机器人路径规划算法简介212
8.9 应用导航功能包实现自主路径规划214
8.9.1 路径规划执行过程214
8.9.2 导航功能包参数设定215
第9章 机器人功能扩展实例218
9.1 机器人视觉跟随功能218
9.1.1 ROS下摄像头的标定218
9.1.2 ROS跟随功能实现226
9.1.3 launch启动及效果演示236
9.2 机器人+物联网功能239
9.2.1 物联网模块介绍240
9.2.2 物联网模块硬件接线240
9.2.3 物联网模块协议244
9.2.4 机器人+物联网功能实现244
9.2.5 launch启动及效果演示246
第10章 ROS2简介249
10.1 从ROS1到ROS2249
10.1.1 ROS1的局限性250
10.1.2 ROS2对ROS1的改进250
10.2 ROS2系统架构251
10.3 ROS2安装252
10.3.1 ROS2在Ubuntu上安装252
10.3.2 Ubuntu ROS2测试253
10.4 ROS2通信253
10.4.1 节点254
10.4.2 主题254
10.4.3 服务256
10.4.4 参数259
10.4.5 基本操作261
10.5 ROS2编程262
10.5.1 工作空间262
10.5.2 ROS2功能包263
10.5.3 发布者和订阅者264
10.5.4 编写简单的服务和客户端节点270
10.5.5 创建ROS2消息和服务类型275
10.6 ROS1和ROS2之间的桥接通信283
10.6.1 ros1_bridge功能包283
10.6.2 ros1_bridge之主题通信283
10.6.3 ros1_bridge之服务通信285
第11章 交叉编译器286
11.1 GNU toolchain介绍286
11.1.1 gcc和g++286
11.1.2 as、ld和ar287
11.2 从源码制作gcc编译器288
11.3 交叉编译器的制作289
点击展开
点击收起
— 没有更多了 —
以下为对购买帮助不大的评价