图书目录

序言......................................................................................

. 

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