热搜关键词: 信号与系统无刷电机ADSTCP/IP

pdf

ROS机器人开发实践 by 胡春旭

  • 1星
  • 日期: 2022-01-09
  • 大小: 73.04MB
  • 所需积分:1分
  • 下载次数:0
  • favicon收藏
  • rep举报
  • free评论
标签: 机器人

机器人

本书共有14章,可以分为五个部分。

第一部分是ROS基础(第1~4章),帮助了解ROS框架,并且熟悉ROS中的关键概念以及实现方法。这部分的内容适合初学者,也适合作为有一定经验或者资深开发者的参考手册。

第二部分介绍如何搭建真实或仿真的机器人平台(第5~6章),帮助了解机器人系统的概念和组成,学习如何使用ROS实现机器人仿真,为后续的机器人实践做好准备。这部分的内容适合希望自己动手设计、开发一个完整机器人平台的读者。

第三部分介绍ROS中常用功能包的使用方法(第7~10章),涉及机器视觉、机器语音、机械臂控制、SLAM和导航等多个机器人研究领域。这部分的内容适合学习ROS基础后希望实践的开发者,以及从事相关领域的机器人开发者。

第四部分是ROS的进阶内容(第11~13章),介绍了ROS的进阶功能、ROS与机器学习的结合、搭载ROS的机器人平台。这部分的内容适合已经对ROS基础和应用有一定了解的读者。

第五部分介绍了新一代ROS——ROS  2(第14章),涉及ROS  2的架构、原理和使用方法。这部分的内容适合对ROS有一定了解,希望了解ROS  2、想要跟上ROS进化步伐的开发者。

推荐序一

推荐序二

推荐序三

前言

第1章 初识ROS  1

1.1 ROS是什么  1

1.1.1 ROS的起源  1

1.1.2 ROS的设计目标  2

1.1.3 ROS的特点  3

1.2 如何安装ROS  4

1.2.1 操作系统与ROS版本的选择  4

1.2.2 配置系统软件源  6

1.2.3 添加ROS软件源  6

1.2.4 添加密钥  7

1.2.5 安装ROS  7

1.2.6 初始化rosdep  8

1.2.7 设置环境变量  8

1.2.8 完成安装  9

1.3 本书源码下载  9

1.4 本章小结  10

第2章 ROS架构  11

2.1 ROS架构设计  11

2.2 计算图  12

2.2.1 节点  12

2.2.2 消息  13

2.2.3 话题  13

2.2.4 服务  13

2.2.5 节点管理器  14

2.3 文件系统  14

2.3.1 功能包  14

2.3.2 元功能包  16

2.4 开源社区  17

2.5 ROS的通信机制  17

2.5.1 话题通信机制  18

2.5.2 服务通信机制  19

2.5.3 参数管理机制  20

2.6 话题与服务的区别  20

2.7 本章小结  21

第3章 ROS基础  22

3.1 第一个ROS例程——小乌龟仿真  23

3.1.1 turtlesim功能包  23

3.1.2 控制乌龟运动  24

3.2 创建工作空间和功能包  25

3.2.1 什么是工作空间  25

3.2.2 创建工作空间  26

3.2.3 创建功能包  27

3.3 工作空间的覆盖  28

3.3.1 ROS中工作空间的覆盖  28

3.3.2 工作空间覆盖示例  28

3.4 搭建Eclipse开发环境  30

3.4.1 安装Eclipse  30

3.4.2 创建Eclipse工程文件  30

3.4.3 将工程导入Eclipse  31

3.4.4 设置头文件路径  31

3.4.5 运行/调试程序  32

3.5 RoboWare简介  35

3.5.1 RoboWare的特点  35

3.5.2 RoboWare的安装与使用  36

3.6 话题中的Publisher与Subscriber  37

3.6.1 乌龟例程中的Publisher与Subscriber  37

3.6.2 如何创建Publisher  37

3.6.3 如何创建Subscriber  40

3.6.4 编译功能包  41

3.6.5 运行Publisher与Subscriber  42

3.6.6 自定义话题消息  44

3.7 服务中的Server和Client  46

3.7.1 乌龟例程中的服务  46

3.7.2 如何自定义服务数据  47

3.7.3 如何创建Server  48

3.7.4 如何创建Client  49

3.7.5 编译功能包  51

3.7.6 运行Server和Client  51

3.8 ROS中的命名空间  52

3.8.1 有效的命名  52

3.8.2 命名解析  53

3.8.3 命名重映射  54

3.9 分布式多机通信  54

3.9.1 设置IP地址  55

3.9.2 设置ROS_MASTER_URI  56

3.9.3 多机通信测试  56

3.10 本章小结  57

第4章 ROS中的常用组件  58

4.1 launch启动文件  58

4.1.1 基本元素  58

4.1.2 参数设置  60

4.1.3 重映射机制  61

4.1.4 嵌套复用  61

4.2 TF坐标变换  62

4.2.1 TF功能包  62

4.2.2 TF工具  63

4.2.3 乌龟例程中的TF  65

4.2.4 创建TF广播器  67

4.2.5 创建TF监听器  68

4.2.6 实现乌龟跟随运动  70

4.3 Qt工具箱  70

4.3.1 日志输出工具(rqt_console)  71

4.3.2 计算图可视化工具(rqt_graph)  71

4.3.3 数据绘图工具(rqt_plot)  72

4.3.4 参数动态配置工具(rqt_reconfigure)  73

4.4 rviz三维可视化平台  73

4.4.1 安装并运行rviz  74

4.4.2 数据可视化  75

4.4.3 插件扩展机制  76

4.5 Gazebo仿真环境  78

4.5.1 Gazebo的特点  78

4.5.2 安装并运行Gazebo  78

4.5.3 构建仿真环境  81

4.6 rosbag数据记录与回放  82

4.6.1 记录数据  82

4.6.2 回放数据  83

4.7 本章小结  84

第5章 机器人平台搭建  85

5.1 机器人的定义  85

5.2 机器人的组成  86

5.2.1 执行机构  87

5.2.2 驱动系统  87

5.2.3 传感系统  87

5.2.4 控制系统  87

5.3 机器人系统搭建  88

5.3.1 MRobot  88

5.3.2 执行机构的实现  88

5.3.3 驱动系统的实现  89

5.3.4 内部传感系统的实现  90

5.4 基于Raspberry  Pi的控制系统实现  90

5.4.1 硬件平台Raspberry  Pi  91

5.4.2 安装Ubuntu  16.04  91

5.4.3 安装ROS  93

5.4.4 控制系统与MRobot通信  94

5.4.5 PC端控制MRobot  97

5.5 为机器人装配摄像头  99

5.5.1 usb_cam功能包  99

5.5.2 PC端驱动摄像头  100

5.5.3 Raspberry  Pi驱动摄像头  102

5.6 为机器人装配Kinect  104

5.6.1 freenect_camera功能包  104

5.6.2 PC端驱动Kinect  106

5.6.3 Raspberry  Pi驱动Kinect  109

5.6.4 Kinect电源改造  109

5.7 为机器人装配激光雷达  110

5.7.1 rplidar功能包  110

5.7.2 PC端驱动rplidar  111

5.7.3 Raspberry  Pi驱动rplidar  113

5.8 本章小结  113

第6章 机器人建模与仿真  114

6.1 统一机器人描述格式——URDF  114

6.1.1 标签  114

6.1.2 标签  115

6.1.3 标签  116

6.1.4 标签  116

6.2 创建机器人URDF模型  116

6.2.1 创建机器人描述功能包  116

6.2.2 创建URDF模型  117

6.2.3 URDF模型解析  120

6.2.4 在rviz中显示模型  122

6.3 改进URDF模型  124

6.3.1 添加物理和碰撞属性  124

6.3.2 使用xacro优化URDF  125

6.3.

推荐帖子 最新更新时间:2022-01-09 21:07

资料分享—带PD快充、Type-C视频、触摸、ADC、PWM的国产USB主从单片...
replyreload += ',' + 2810963; 本帖最后由 沁恒USB单片机 于 2018-10-29 17:22 编辑          给大家分享一颗国产8位USB单片机资料。         1T增强型51内核,48Mhz主频;                                 2K RAM,64K FLASH;        16通道12位ADC,16路触
沁恒USB单片机 单片机
【工程源码】基于FPGA的十通道逻辑分析仪-74页精华项目教程
本文由FPGA爱好者小梅哥编写,未经作者许可,本文仅允许网络论坛复制转载,且转载时请标明原作者。    10路逻辑分析仪实例基于芯航线FPGA学习套件进行开发,实例使用到了芯航线FPGA学习套件的FPGA主板、4.3寸TFT屏、矩阵键盘、红外遥控外设。设计使用FPGA采集10路数字波形数据,并存储在FPGA片上缓存RAM中,然后使用4.3寸TFT触摸液晶显示组件进行波形显示。整个逻辑分
小梅哥 Altera SoC
选择VHDL还是verilog HDL?(转载)
选择VHDL还是verilog HDL?选择VHDL还是verilog HDL?   在你选择之前有必要先简单介绍一下它们的总称:硬件描述语言HDL(Hardware Describe Language) HDL概述 随着EDA技术的发展,使用硬件语言设计PLD/FPGA成为一种趋势。目前最主要的硬件描述语言是VHDL和Verilog HDL。 VHDL发展的较早,语法严格,而Veril
Lemontree FPGA/CPLD
单色液晶屏的功耗问题
经常有客户会问我们液晶屏功耗的问题,但是很多时候客户到处问得到的答案却相差很多,罗姆液晶作为一个专业的生产厂家,正好借此机会回答下这个问题。 单色液晶屏的功耗通常和4个要素有关(不考虑外部的元器件): 液晶屏尺寸  液晶屏类型  芯片类型  背光LED灯数 液晶屏尺寸 因为液晶屏内部其实也都是一根根线路组成,而液晶屏尺寸越大,除了内容会越多,关键是走线的距离也就
罗姆液晶技术站 综合技术交流
DSP/BIOS HWI设置为Dispatch的作用
  DSP/BIOS中的线程和电脑中的线程有很大区别。关于DSP/BIOS的详细介绍请参考TMS320 DSP/BIOS User's Guide。下面简单地介绍一下DSP/BIOS的线程。        为了让DSP能够同时处理多个任务,DSP/BIOS提供了如下几种类型的线程。        HWI(硬件中断),SWI(软件中断),TSK(任务),IDL(空闲线程)。        HW
Jacktang DSP 与 ARM 处理器
Beaglebone black误删emmc分区后,如何从sd卡启动
        本人嵌入式小白,买了一块beaglebone black学习,准备做一张sd启动卡,全程使用TI SDK软件下create-sdcard.sh制作,但是按照操作按下boot键后再接电源无反应,然后在网上查找解决方案,看到有说删掉emmc分区后重试,结果就悲剧了,从emmc也无法启动了,我不太能理解从sd卡启动的概念,不知道为什么启动不了,直接用SDK做的sd卡应该没问题吧,是不是我
flashtt ARM技术

评论

登录/注册

意见反馈

求资源

回顶部

活动回顾

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版 版权声明

北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2022 EEWORLD.com.cn, Inc. All rights reserved
×