您现在的位置:首页> 中文图书> ROS机器人编程零基础入门与实践

ROS机器人编程零基础入门与实践
纸质版

ROS机器人编程零基础入门与实践

作者: 刘伏志 朱有鹏

出版社: 北京 机械工业出版社
出版时间: 2023
获取纸质图书

图书介绍

  • 作者:

    刘伏志 朱有鹏

  • 出版社:

    北京 机械工业出版社

  • 语言:

    中文

  • 页数:

    -

  • ISBN:

    9787111716914

内容简介

本书是针对ROS(机器人操作系统)初学者的入门教程,内容聚焦于ROS的使用和开发。以Ubuntu操作系统安装和使用为起点,依次介绍了ROS安装、实体/仿真机器人搭建、机器视觉、SLAM建图、导航、多机器人系统等知识,最终引导读者独立完成机器人应用开发的任务。本书中的实验环境和代码基于ROS的Noetic版本。 本书为读者提供了全部案例源代码和学习资料,读者可以直接扫描二维码下载。 本书适合ROS用户及其编程开发人员使用,也可以作为高等学校或培训学校相关专业的参考教材。 展开▼

图书目录

前言
二维码清单
第1章学习ROS推荐的Linux知识1
1.1Linux操作系统介绍1
1.1.1Linux的诞生1
1.1.2Linux、UNIX、系统、内核和发行版2
1.2Ubuntu环境搭建3
1.2.1VMWare的安装使用3
1.2.2安装Ubuntu系统5
1.3Ubuntu桌面使用10
1.3.1Ubuntu的桌面布局10
1.3.2安装VMware Tools工具11
1.4shell和常用命令12
1.4.1shell、终端和命令12
1.4.2常用shell命令14
1.5Ubuntu安装和卸载软件17
1.5.1使用国内软件源提升下载速度17
1.5.2通过apt管理软件19
1.5.3通过应用商店安装卸载软件19
1.6vim编辑器使用21
1.7Linux文件系统22
1.7.1Linux文件系统结构22
1.7.2目录内容存放规则24
1.8root用户和权限管理24
1.8.1Linux中的权限概念25
1.8.2文件/目录权限查看和修改25
1.8.3启用root用户26
1.9嵌入式单板计算机和Linux27
第2章认识ROS30
2.1ROS是什么30
2.1.1ROS从何而来30
2.1.2为什么要使用ROS31
2.2如何安装ROS32
2.3ROS通信结构37
2.3.1节点和主节点38
2.3.2话题(Topic)39
2.3.3服务(Service)40
2.3.4动作(Action)41
2.3.5参数服务器42
2.4ROS常用shell命令43
2.5ROS常用图形工具50
2.5.1rqt工具箱51
2.5.2rviz52
2.6ROS坐标系和tf变换53
2.6.1ROS中的坐标定义53
2.6.2ROS中的tf变换54
2.7ROS工作空间56
2.7.1ROS工作空间是什么57
2.7.2创建并使用一个工作空间58
第3章ROS编程基础60
3.1ROS开发环境搭建60
3.1.1Ubuntu下安装VSCode60
3.1.2VSCode常用插件安装61
3.2新建一个ROS功能包62
3.3编写一对发布订阅节点(C++)64
3.3.1编写发布节点(C++)64
3.3.2编写订阅节点(C++)66
3.4编写一对发布订阅节点(Python)67
3.4.1编写发布节点(Python)67
3.4.2编写订阅节点(Python)68
3.5编写launch文件用于启动节点70
3.5.1通过launch文件启动C++编译的节点70
3.5.2通过launch文件启动Python节点71
3.5.3在launch文件中调用launch文件72
3.6创建新消息类型并编写节点发布消息73
3.6.1编写自定义消息74
3.6.2验证消息正常产生75
3.6.3编写节点发布自定义消息类型(C++)76
3.6.4编写节点订阅自定义消息类型(Python)76
3.7创建一个服务类型并编写服务端/客户端节点77
3.7.1定义并编写一个自定义服务77
3.7.2通过rossrv验证服务产生78
3.7.3编写自定义服务的服务端(C++)79
3.7.4编写自定义服务的服务端(Python)80
3.7.5编写自定义服务的客户端(C++)80
3.7.6编写自定义服务的客户端(Python)81
3.8tf变换编程入门82
3.8.1通过static_transform_publisher发布静态坐标变换82
3.8.2编写节点实现动态tf变换(Python)84
3.8.3编写节点实现动态tf变换(C++)85
第4章ROS机器人平台搭建87
4.1机器人系统的典型构成87
4.2几种常见的机器人底盘运动学模型88
4.2.1差速转向结构89
4.2.2阿克曼转向结构90
4.2.3全向运动结构92
4.3驱动和电池系统95
4.3.1驱动系统——电动机95
4.3.2电池系统97
4.4控制系统——底盘控制器98
4.5控制系统——车载计算机100
4.5.1车载计算机需要实现的功能100
4.5.2车载计算机的选择100
4.5.3将车载计算机和底盘控制器连接起来102
4.6机器人上常用的传感器105
4.6.1获取机器人运动状态——编码器和IMU105
4.6.2让机器人看见世界——摄像头107
4.6.3让机器人感知世界的“深浅”——立体相机108
4.6.4让机器人具备全向感知能力——激光雷达109
4.7远程连接车载计算机111
4.7.1路由模式和WiFi模式111
4.7.2SSH远程登录112
4.7.3使用远程桌面连接机器人113
4.8底盘启动和控制115
4.8.1启动底盘驱动节点115
4.8.2控制机器人运动116
4.8.3向launch文件中传入变量118
4.9机器人底盘ROS节点源码解析119
4.9.1base_control功能包文件结构120
4.9.2base_control.launch文件解读120
4.9.3base_control.py源码解读122
……
展开▼

相关图书

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号