第1篇 搭建块 3
第1章 为什么要进行模拟 3
1.1 RobotBASIC 3
1.2 飞行模拟器 3
1.3 RobotBASIC模拟器及其他模拟器 4
1.4 研究机器人的行为 4
1.5 通过模拟对硬件进行选择 5
1.6 机器人不仅仅是硬件 5
1.7 RobotBASIC教你编程 5
1.8 小结 6
第2章 RobotBASIC简介 7
2.1 运行RobotBASIC 7
2.2 RobotBASIC IDE 7
2.3 程序的创建、运行和保存 9
2.4 机器人模拟器 10
2.5 小结 13
2.6 练习 13
第3章 RobotBASIC传感器 14
3.1 一些编程结构 14
3.2 用缓冲器进行避障 16
3.3 用于探测物体的其他传感器 19
3.4 其他装置 21
3.5 小结 22
3.6 练习 22
第4章 远程控制算法 23
4.1 一些程序结构 23
4.2 简单远程控制 27
4.3 复杂远程控制 29
4.4 远程控制的测试工作台 33
4.5 小结 35
4.6 练习 35
第5章 随机漫游 36
5.1 什么是随机漫游 36
5.2 部分程序结构 37
5.3 向漫游环境中添加物体 38
5.4 更加智能的漫游 41
5.5 更好地实现避障 43
5.6 小结 44
5.7 练习 45
第6章 调试 46
6.1 编程之前 46
6.2 提前制订计划 47
6.3 调试原理 47
6.4 用RobotBASIC进行测试 48
6.5 小结 50
6.6 练习 50
第2篇 开发常用的行为工具箱 53
第7章 跟踪一条线 53
7.1 基本程序 53
7.2 一种初始化算法 54
7.3 急转弯产生的问题 56
7.4 通过直线跟踪进行随机漫游(轨迹跟踪) 59
7.5 小结 62
7.6 练习 62
第8章 跟踪墙壁 64
8.1 构建一面墙 64
8.2 基本算法 64
8.3 在尖角处靠近墙壁 68
8.4 另一种方法 70
8.5 小结 73
8.6 练习 73
第9章 避开陡崖和在限定区域活动 75
9.1 性能优越的机器人 75
9.2 悬崖提示牌 79
9.3 GPS限制 81
9.4 小结 87
9.5 练习 87
第10章 矢量绘制机器人 89
10.1 绘图 89
10.2 ABC机器人 94
10.3 小结 99
10.4 练习 99
第3篇 复杂的复合行为 103
第11章 除草和清扫机器人 103
11.1 清扫机器人 103
11.2 除草机器人 108
11.3 进一步的思考 114
11.4 小结 116
11.5 练习 116
第12章 目标定位 117
12.1 利用信标 117
12.2 利用信标和摄像头 121
12.3 利用GPS和指南针 122
12.4 小结 123
12.5 练习 124
第13章 电池充电 125
13.1 机器人的电池 125
13.2 真实世界中的充电 126
13.3 仿真 128
13.4 小结 132
13.5 练习 132
第14章 走出迷宫 133
14.1 随机解决 133
14.2 一种直接的随机解决办法 139
14.3 最优化的随机解决方法 140
14.4 借助于地图的解决方法 147
14.5 最后的思考 152
14.6 小结 153
14.7 练习 153
第15章 成功应对家庭和办公室环境 155
15.1 设计过程 155
15.2 办公室送信机器人 155
15.3 实际检查 170
15.4 进一步的思考 175
15.5 小结 177
15.6 练习 177
第4篇 拓展与提高 181
第16章 真实的智能:自适应行为 181
16.1 自适应行为 181
16.2 如何定义智能 183
16.3 联想自适应 184
16.4 算法的应用 185
16.5 小结 195
16.6 练习 195
第17章 实际中的相关模拟 197
17.1 历史回顾 197
17.2 组建一台机器人 199
17.3 真实机器人的控制 207
17.4 资源 220
17.5 小结 220
第18章 基于RobotBASIC的竞赛 222
18.1 基于RobotBASIC的竞赛 222
18.2 竞赛的类型 222
18.3 给竞赛计分 223
18.4 组建竞赛环境 224
18.5 小结 224
18.6 建议 224
第19章 RobotBASIC在课堂教学中的应用 226
19.1 RobotBASIC的学习过程 226
19.2 RobotBASIC作为一种促进因素 227
19.3 教学过程中的RobotBASIC 227
19.4 RobotBASIC在各个水平等级教育中的应用 227
19.5 小结 228
19.6 教学任务的建议 229
第5篇 附录 233
第20章 RobotBASIC的IDE 233
20.1 编辑界面 233
20.2 终端界面 234
20.3 帮助界面 235
20.4 调试界面 235
第21章 RobotBASIC语言 237
21.1 语句 237
21.2 注释 237
21.3 赋值语句 238
21.4 指令语句 238
21.5 标签 239
21.6 流控制结构 239
21.7 表达式 240
第22章 指令、函数及其他的细节 249
22.1 标签 249
22.2 赋值语句 250
22.3 表达式 251
22.4 字符串 251
22.5 变量 252
22.6 流控制语句 252
22.7 指令语句 258
22.8 函数 271
22.9 机器人模拟器指令和函数 279
22.10 指令和函数(按字母顺序) 285
第23章 端口和串行输入输出 289
23.1 概况 289
23.2 串行I/O口指令 289
23.3 并行口I/O的指令 290
23.4 并行I/O口协议 291
23.5 通用I/O口指令 291
23.6 机器人模拟器串行I/O协议 291
译者跋 294