序言......................................................................................
. 
III
前言......................................................................................
. V
第
1 
章Roban 
机器人概述.................................................................
1


1.1 
Roban 
机器人简介.................................................................
1


1.1.1 
Roban 
机器人系统...........................................................
. 1


1.1.2 
Roban 
机器人关节运动模型...................................................
. 4


1.1.3 
Roban 
机器人控制框架.......................................................
. 6


1.2 
操作Roban 
机器人...............................................................
. 6


1.2.1 
无线网络设置...............................................................
. 6


1.2.2 
远程登录Roban 
机器人........................................................
8


1.2.3 
使用VS 
Code 
开发...........................................................11
第
2 
章Python 
编程基础................................................................
. 
15


2.1 
Python 
语法.....................................................................
. 
15


2.1.1 
Python 
运行方式.............................................................15


2.1.2 
Python 
程序书写格式.........................................................18


2.1.3 
变量、数据类型、表达式.....................................................19


2.1.4 
条件语句..................................................................
. 
22


2.1.5 
while 
循环语句.............................................................
. 
24


2.1.6 
continue 
与break 
语句.......................................................
. 
26


2.1.7 
列表......................................................................
. 
27


2.1.8 
元组与字典................................................................
. 
30


2.2 
Python 
函数.....................................................................
. 
31


2.2.1 
函数定义..................................................................
. 
32


2.2.2 
函数参数..................................................................
. 
33



VIII 

2.2.3 
Python 
模块................................................................
. 
35


2.3 
Python 
对象与类................................................................
. 
36


2.3.1 
类的定义与使用............................................................
. 
37


2.3.2 
类的继承..................................................................
. 
38


2.4 
文件和异常.....................................................................
. 
39


2.4.1 
文本文件读写..............................................................
. 
40


2.4.2 
二进制文件读写............................................................
. 
42


2.4.3 
异常......................................................................
. 
43
第
3 
章ROS 
使用概述....................................................................45


3.1 
ROS 
简介.......................................................................
. 
45


3.2 
程序包与节点....................................................................46


3.2.1 
程序包与节点介绍.........................................................
. 
46


3.2.2 
节点的编译与运行.........................................................
. 
47


3.3 
话题与服务.....................................................................
. 
49


3.3.1 
ROS 
话题.................................................................
. 
49


3.3.2 
ROS 
消息与消息类型.......................................................
. 
50


3.3.3 
ROS 
服务.................................................................
. 
53


3.4 
launch 
文件与参数..............................................................
. 
56


3.4.1 
launch 
文件介绍.............................................................56


3.4.2 
机器人实践.................................................................59


3.5 
常用调试工具rqt.................................................................61


3.5.1 
rqt_plot 
...................................................................
. 
61


3.5.2 
rqt_img_View 
.............................................................
. 
61


3.5.3 
rqt_graph 
.................................................................
. 
62


3.6 
ROS 
配置实践..................................................................
. 
63


3.6.1 
ROS 
编译环境搭建与测试...................................................
. 
63


3.6.2 
ROS 
话题.................................................................
. 
70


3.6.3 
ROS 
服务.................................................................
. 
78


3.7 
主从机配置.....................................................................
. 
86


3.7.1 
获取IP 
地址和Hostname 
....................................................
. 
86



IX 

3.7.2 
修改对应的hosts 
...........................................................
. 
87


3.7.3 
配置主从关系...............................................................87


3.8 
ROS 
CvBridge 
实践...............................................................88


3.8.1 
将ROS 
图像消息转换为OpenCV 
的图像......................................
. 
88


3.8.2 
将OpenCV 
图像转换为ROS 
图像消息........................................
. 
88


3.8.3 
在计算机上显示Roban 
机器人摄像头数据......................................89
第
4 
章同步定位与地图构建............................................................
. 
90


4.1 
SLAM 
简介.....................................................................
. 
90


4.2 
图像的接收和发布..............................................................
. 
91


4.2.1 
初始化和配置...............................................................91


4.2.2 
主要功能实现...............................................................93


4.3 
定位和图像追踪——ORB-SLAM2...............................................
. 
97


4.3.1 
数据接收和程序初始化.....................................................
. 
97


4.3.2 
点云地图创建/重用.........................................................
. 
99


4.4 
八叉树图层的截取以及平面地图的生成..........................................102


4.4.1 
八叉树图层的截取........................................................
. 
102


4.4.2 
平面地图的生成..........................................................
. 
103


4.5 
路径规划......................................................................
. 
104


4.6 
行走实现......................................................................
. 
107


4.6.1 
路径分析..................................................................107


4.6.2 
行走控制..................................................................110
第
5 
章V-REP 
使用概述...............................................................
. 
113


5.1 
V-REP 
使用简介...............................................................
. 
114


5.1.1 
前言......................................................................114


5.1.2 
安装带有ROS 
的V-REP 
...................................................
. 
116


5.1.3 
V-REP 
的简单使用........................................................
. 
122


5.1.4 
理解RosInterface 
...........................................................128


5.2 
V-REP 
中的Roban 
机器人......................................................
. 
138


5.2.1 
导入Roban 
机器人........................................................
. 
138


5.2.2 
BodyHub 
简介与启动......................................................
. 
140


5.2.3 
关节运动控制............................................................
. 
148



5.2.4 
仿真中的步态运行........................................................
. 
159


5.3 
V-REP 
传感器使用.............................................................
. 
166


5.3.1 
视觉传感器..............................................................
. 
166


5.3.2 
接近传感器..............................................................
. 
177


5.4 
V-REP 
使用实践...............................................................
. 
181


5.4.1 
过坑路段..................................................................182


5.4.2 
雷区路段..................................................................186


5.4.3 
踢球进洞路段............................................................
. 
192
第
6 
章Roban 
机器人运动控制基础....................................................
. 
199


6.1 
关节............................................................................199


6.1.1 
头部关节..................................................................200


6.1.2 
手臂关节..................................................................201


6.1.3 
髋关节....................................................................202


6.1.4 
腿部关节..................................................................202


6.1.5 
伺服电机..................................................................204


6.2 
完整动作执行...................................................................205


6.3 
运动控制......................................................................
. 
207


6.3.1 
舵机参数设置............................................................
. 
208


6.3.2 
关节位置控制............................................................
. 
208


6.3.3 
步态控制..................................................................211


6.4 
运动学正解....................................................................
. 
215


6.4.1 
运行IK 
节点.............................................................
. 
215


6.4.2 
计算四肢末端位置........................................................
. 
215


6.5 
运动学逆解....................................................................
. 
218


6.5.1 
机器人扭腰..............................................................
. 
218


6.5.2 
扭腰中IK 
逆解的处理.....................................................
. 
223


6.5.3 
机器人晃腰..............................................................
. 
227


6.6 
自动避障实践...................................................................230


6.6.1 
3D 
相机的原理...........................................................
. 
230


6.6.2 
设计思路以及步骤........................................................
. 
231


6.6.3 
示例代码..................................................................232



XI 

第
7 
章双足步行基础..................................................................
. 
235


7.1 
机器人运动学...................................................................235


7.1.1 
坐标变换..................................................................236


7.1.2 
人形机器人运动学模型....................................................
. 
239


7.1.3 
正运动学..................................................................239


7.1.4 
逆运动学..................................................................242


7.2 
ZMP 
的含义...................................................................
. 
246


7.2.1 
ZMP 
与地面反力..........................................................
. 
246


7.2.2 
ZMP 
分析................................................................
. 
248


7.2.3 
ZMP 
的测量..............................................................
. 
252


7.2.4 
ZMP 
与机器人运动.........................................................256


7.3 
基于线性倒立摆的双足步态生成...............................................
. 
258


7.3.1 
质心轨迹生成............................................................
. 
258


7.3.2 
足端轨迹生成............................................................
. 
261


7.3.3 
台阶及斜坡地形的步态规划................................................
. 
263


7.4 
机器人静步态实践.............................................................
. 
267


7.4.1 
五次样条插值............................................................
. 
267


7.4.2 
实现机器人双足支撑情况下的重心位置移动...................................268


7.4.3 
实现摆动脚轨迹规划以及摆动脚的运行......................................
. 
270


7.5 
机器人上楼梯实践.............................................................
. 
276


7.5.1 
第一阶段..................................................................276


7.5.2 
第二阶段..................................................................278


7.5.3 
第三阶段..................................................................279


7.5.4 
第四阶段..................................................................281
第
8 
章人机交互........................................................................283


8.1 
音频处理......................................................................
. 
283


8.1.1 
语音识别..................................................................285


8.1.2 
语音合成..................................................................289


8.1.3 
聊天机器人综合应用......................................................
. 
293


8.2 
视频处理......................................................................
. 
297


8.2.1 
视频设备简介............................................................
. 
297



XII 

8.2.2 
图像处理工具............................................................
. 
300


8.2.3 
颜色检测..................................................................309


8.3 
综合应用......................................................................
. 
323


8.3.1 
基本原理..................................................................323


8.3.2 
主要接口..................................................................324


8.3.3 
运行方式..................................................................324


8.4 
颜色识别实践...................................................................324


8.4.1 
HSV 
颜色模型介绍........................................................
. 
324


8.4.2 
识别小球..................................................................325


8.4.3 
追踪小球..................................................................327


8.4.4 
追踪多种颜色小球........................................................
. 
328


8.5 
人脸识别实践...................................................................330


8.6 
数字识别实践...................................................................348


8.6.1 
深度学习之Keras 
.........................................................
. 
348


8.6.2 
使用模型进行数字识别....................................................
. 
355
参考文献................................................................................
. 
358