首页>参考读物>电子电工>电子工程

Arduino开发实战指南:机器人卷
作者 : 黄文恺 伍冯洁 陈虹 著
出版日期 : 2014-06-16
ISBN : 978-7-111-46798-4
定价 : 69.00元
扩展资源下载
扩展信息
语种 : 简体中文
页数 : 317
开本 : 16
原书名 :
原出版社:
属性分类: 店面
包含CD :
绝版 : 未绝版
图书简介

本书分为四个部分。第一部分主要讲解使用Arduino必备的基础知识。第二部分主要对机器人制作中使用的电机控制技术进行了讲解。第三部分主要介绍各种传感器。第四部分则介绍各种无线通信方式。第五部分综合前面四部分知识,讲解如何使用这些技术进行机器人制作。

图书特色

本土作者多年科研和教学经验的总结,案例丰富,操作性强。
将Arduino和3D打印机结合进行机器人开发的扛鼎之作。
最全的传感器模块宝典,机器人制作秘笈以及机器人比赛参考指南。

Arduino开发实战指南
机器人卷
黄文恺 伍冯洁 陈虹 编著

本书将Arduino学习与机器人的开发相结合,注重实例,每一章都附有示例程序,方便读者在实践的基础上巩固每一章的知识。本书虽然跨度广,涉及学科众多,但由于浅显易懂,入门简单,方便光机电算一体化相关专业的学生掌握机器人知识。本书也可作为所有机器人爱好者进行Aduino与机器人结合项目开发的参考手册。

本书最后两章提供了两套采用3D打印制造的机器人详细制作方法和竞赛规则,方便读者开展和组织机器人竞赛活动。本书提供了3D打印的STL文件,读者可以下载打印出来组建自己的机器人。

前:
机器人是一个典型的光机电算一体化系统,它融合了光学、机械、电子、传感器、计算机软硬件和人工智能等众多先进技术,较高的技术门槛阻挡了众多的机器人爱好者。Arduino的出现打破了这一门槛,它模块化和软硬件相结合的设计思想大大简化了机器人的开发,再结合3D打印机,让读者能够像搭积木一样搭建极具个性化的机器人。参考本书,使用一些基本的设备,读者就能够搭建出自己想要的机器人。
作者简介
黄文恺 毕业于广东工业大学,信号与信息处理方向,现供职于广州大学从事教学与科研工作,研究方向包括电子信息处理、图像处理、智能服务机器人;已申请专利17项,其中12项已获得授权;发表相关论文10篇。他在广州大学建立的机器人实验室拥有由7名教师和120名学生组成的研发队伍,在机器人和飞控方面有深入的研究。

图书前言

单片机中各种复杂的寄存器曾让众多的学习者望而生畏——要完成某项功能需要耗费大量的时间去熟悉单片机的底层。Arduino的诞生,改变了这一局面。Arduino将各种寄存器封装起来,并提供了易用的接口,极其简洁的界面,C语言编程方式,强大的第三方函数库支持,这些功能赋予其强大的生命力。目前市面上开始出现不少Arduino的学习教程,包括Android+Arduino的教程,但是和机器人应用开发相结合的书籍尚不多见。
机器人是一个典型的光机电算一体化系统,它融合了光学、机械、电子、传感器、计算机软硬件和人工智能等众多先进技术,是目前世界各国高校进行创新思维训练、创新技能训练、工程实践训练最理想的平台,吸引了无数爱好者参与其中。但由于机器人涉及的技术面比较广,门槛较高,往往让人觉得徒有热情,而不知从何下手。Arduino与机器人的结合改变了这一状况,使人们从海量的机器人相关基础知识中解放出来,能快速地实现设计者想要的功能,加速了机器人的研发。目前Arduino已经广泛应用于机器人、3D打印机、无人机等热门的科技项目。从笔者多年的机器人开发经验得出这样一条结论:学好Arduino对掌握机器人技术有较大的帮助。
很多基于Arduino的传感器、机电控制模块、通信模块等已经在市场上大量涌现,但是目前还没有一本教材能系统地把机器人的各个部分与Arduino结合起来,并详细介绍Arduino在机器人设计上的应用,而且机器人更强调的是一种系统工程的设计理念,单个专业的技术层面较为狭窄,不利于机器人的研究和开发。笔者通过不断学习,查阅Arduino的相关资料,并将从事机器人设计与制作六年的工程经验带入到本书中。本书将机器人涉及的光机电算一体化知识进行了融合,让读者能更全面地了解机器人的相关知识,引发读者从多学科交叉的角度去思考与钻研,最终完成机器人的设计和制作。
本书主要内容及面向的读者
机器人的制作非常强调动手能力,本书以实际机器人的制作应用为基础,将制作机器人所需要的必备知识进行一一叙述。首先介绍Arduino的基础知识,接着介绍机器人的运动控制部分,然后介绍机器人的感知部件——传感器,再介绍无线控制的方法,并辅以实例来介绍机器人的制作,最后提供了两套机器人竞赛的平台,其中包含了机器人设计制作和比赛的完整规则。
由于机器人属于跨学科的领域,必须掌握多个学科的知识。本书虽涉及多个学科,但尽量以浅显易懂的语言描述相关知识,没有涉及太深的内容,阅读本书建议有一定的电子知识基础和C语言基础。
根据读者情况的不同,本书的阅读方式也不同。
如果读者完全没有接触过单片机和软件开发,笔者建议从头阅读本书,并借助相关的Arduino书籍来辅助理解,因为本书并不完全是Arduino的基础入门教程。如果读者已经有一定Arduino开发经验,可以直接跳过第一篇,而从第二篇开始学习,掌握各种电机的控制方法。由于传感器种类繁多,本书只挑选了一些机器人常用的传感器来介绍(第三篇),建议读者购买各种传感器套装来配合本书的学习,将传感器接在Arduino板上,亲身体验一下各种传感器的特点和使用方法。第四篇介绍了五种常用的无线通信模块,每种模块各有优劣,读者可以根据项目开发的需要选择所需模块。第五篇介绍了几种机器人的制作,读者可以通过边学边做,逐步掌握机器人的相关知识。第六篇是机器人竞赛篇,里面有两套机器人比赛的完整赛制及所用机器人的制作方法。主要机器人零件均使用3D打印机打印制作。读者可通过访问http://www.hzbook.com查找本书的相关链接,下载书中所有机器人实例的3D打印零件库源文件、程序源代码、地图及部分数据文档。读者可将机器人打印出来进行对抗赛,机械设计相关专业的学生可在本篇学习到机器人机械设计方法,并对零件进行改进。本篇提供的机器人竞赛规则,适合大专或本科院校组织和开展机器人比赛。
致谢
首先要感谢本书的策划编辑张国强先生,感谢他对本书的关心和帮助,提出了很多宝贵的写作建议,并对书稿进行了仔细审阅。
其次要感谢“广州市教育局青少年科技教育计划”对本书的撰写、器材的购买提供的资助。
还要感谢笔者的学生黄冠彬、叶景祥、唐华杰、王朋、李昇圳、王召、黄煜楠、纪孟廷、覃镇波和崔杰城,感谢他们将节假日贡献出来,完成了第15章和第16章的资料整理和程序调试工作。
最后要感谢读者朋友们。感谢您肯花费时间和精力阅读本书。由于时间有限,书中难免存在疏漏与错误,敬请批评指正。希望有更多志同道合的人能加入到机器人的制作中来!

上架指导

嵌入式

封底文字

本书将Arduino学习与机器人的开发相结合,注重实例,每一章都附有示例程序,方便读者在实践的基础上巩固每一章的知识。本书虽然跨度广,涉及学科众多,但由于浅显易懂,入门简单,方便光机电算一体化相关专业的学生掌握机器人知识。本书也可作为所有机器人爱好者进行Aduino与机器人结合项目开发的参考手册。

本书最后两章提供了两套采用3D打印制造的全新机器人的详细制作方法和竞赛规则,方便读者开展和组织机器人竞赛活动。本书提供了3D打印的STL文件,读者可以下载打印出来组建自己的机器人。

从入门学习到应用开发的学习曲线(仿《STM32库开发实战指南》封底)

《Arduino电子设计实战指南:零基础篇》

《Arduino开发实战指南:STM32篇》

《AVR单片机实战:Ardunio方法》(new)

《Arduino开发实战指南:AVR篇》

《Arduino高级开发权威指南(原书第2版)》(new)

《Arduino开发实战指南:机器人卷》(new)

《Arduino无线传感器网络实践指南》

《Arduino与LabVIEW开发实战》(new)

作者简介

黄文恺 伍冯洁 陈虹 著:暂无简介

图书目录

前 言
第一篇 Arduino入门篇
第1章 Arduino简介 2
1.1 认识Arduino 2
1.2 Arduino资源 2
1.2.1 Arduino Uno开发板 3
1.2.2 Arduino Mega 2560开发板 3
1.3 安装Arduino Uno驱动 4
1.3.1 常规Arduino Uno驱动程序安装方法 4
1.3.2 Arduino驱动安装过程出现的问题及解决方法 5
1.4 Arduino开发环境 8
第2章 Arduino的基本函数 13
2.1 数字I/O口的操作函数 13
2.1.1 pinMode(pin, mode) 13
2.1.2 digitalWrite(pin, value) 13
2.1.3 digitalRead(pin) 14
2.2 模拟I/O口的操作函数 14
2.2.1 analogReference(type) 14
2.2.2 analogRead(pin) 15
2.2.3 analogWrite(pin,value) 15
2.3 高级I/O 16
2.3.1 PulseIn(pin,state,timeout) 16
2.3.2 shiftOut(dataPin,clockPin, bitOrder,val) 17
2.4 时间函数 17
2.4.1 delay(ms) 17
2.4.2 delayMicroseconds(μs) 18
2.4.3 millis() 18
2.4.4 micros() 19
2.5 中断函数 19
2.5.1 interrupts()和noInterrupts() 19
2.5.2 attachInterrupt(interrput, function,mode) 19
2.5.3 detachInterrupt(interrput) 20
2.6 串口通信函数 21
2.6.1 Serial.begin() 21
2.6.2 Serial.available() 21
2.6.3 Serial.read() 21
2.6.4 Serial.print() 21
2.6.5 Serial.printIn() 21
2.7 数学库 22
2.7.1 min(x,y) 22
2.7.2 max(x,y) 22
2.7.3 abs(x) 22
2.7.4 三角函数 22
2.7.5 random(small,big) 22
第二篇 机电控制篇
第3章 直流电机控制 24
3.1 直流电机简介 24
3.2 直流电机工作原理 25
3.3 直流电机驱动电路原理 26
3.4 PWM速度控制原理 27
3.5 常用电机驱动芯片介绍 28
3.6 编程原理与示例程序 30
第4章 步进电机控制 32
4.1 步进电机简介 32
4.2 步进电机工作原理 33
4.3 步进电机驱动电路原理 34
4.4 常用步进电机驱动芯片简介 35
4.5 编程原理与示例程序 36
第5章 舵机控制 40
5.1 舵机简介 40
5.2 舵机工作原理 40
5.2.1 舵机的结构 40
5.2.2 PPM角度控制 41
5.3 舵机控制函数库 41
5.3.1 attach(pin) 42
5.3.2 write(value) 42
5.3.3 writeMicroseconds() 42
5.3.4 detach(pin) 42
5.3.5 read() 43
5.3.6 readMicroseconds() 43
5.4 编程原理与示例程序 43
第三篇 传感器应用篇
第6章 传感器介绍和编程 46
6.1 激光传感器 46
6.1.1 激光传感器工作原理 46
6.1.2 编程原理与示例程序 47
6.2 光敏传感器 48
6.2.1 光敏传感器工作原理 48
6.2.2 编程原理与示例程序 48
6.3 倾斜传感器 50
6.3.1 倾斜传感器工作原理 50
6.3.2 编程原理与示例程序 50
6.4 水银开关式碰撞传感器 51
6.4.1 水银开关式碰撞传感器工作原理 51
6.4.2 编程原理与示例程序 51
6.5 振动传感器 52
6.5.1 振动传感器工作原理 52
6.5.2 编程原理与示例程序 53
6.6 敲击传感器 53
6.6.1 敲击传感器工作原理 53
6.6.2 编程原理与示例程序 54
6.7 金属触摸传感器 54
6.7.1 金属触摸传感器工作原理 54
6.7.2 编程原理与示例程序 55
6.8 红外线传感器 56
6.8.1 红外线传感器工作原理 56
6.8.2 编程原理与示例程序 57
6.9 火焰传感器 58
6.9.1 火焰传感器工作原理 58
6.9.2 编程原理与示例程序 58
6.10 红外避障传感器 59
6.10.1 红外避障传感器工作原理 59
6.10.2 编程原理与示例程序 60
6.11 寻线传感器 60
6.11.1 寻线传感器工作原理 60
6.11.2 编程原理与示例程序 61
6.12 光遮断传感器 61
6.12.1 光遮断传感器工作原理 61
6.12.2 编程原理与示例程序 62
6.13 霍尔传感器 63
6.13.1 霍尔传感器工作原理 63
6.13.2 编程原理与示例程序 63
6.14 磁环传感器 64
6.14.1 磁环传感器工作原理 64
6.14.2 编程原理与示例程序 64
6.15 旋转编码器 66
6.15.1 旋转编码器工作原理 66
6.15.2 编程原理与示例程序 67
6.16 声音传感器 69
6.16.1 声音传感器工作原理 69
6.16.2 编程原理与示例程序 70
6.17 模拟温度传感器 71
6.17.1 模拟温度传感器工作原理 71
6.17.2 编程原理与示例程序 72
6.18 DHT11数字温湿度传感器 73
6.18.1 DHT11数字温湿度传感器工作原理 73
6.18.2 编程原理与示例程序 73
6.19 DS18B20数字温度传感器 75
6.19.1 DS18B20数字温度传感器工作原理 75
6.19.2 编程原理与示例程序 76
6.20 MQ-2烟雾传感器 77
6.20.1 MQ-2烟雾传感器工作原理 77
6.20.2 编程原理和示例程序 77
6.21 水位传感器 78
6.21.1 水位传感器工作原理 78
6.21.2 编程原理与示例程序 78
6.22 超声波测距传感器 79
6.22.1 超声波测距传感器工作原理 79
6.22.2 编程原理与示例程序 81
6.23 Joystick PS2摇杆 82
6.23.1 Joystick PS2摇杆工作原理 82
6.23.2 编程原理与示例程序 83
6.24 TCS3200D颜色传感器 83
6.24.1 TC S3200D颜色传感器工作原理 83
6.24.2 编程原理与示例程序 84
6.25 气压传感器 87
6.25.1 气压传感器工作原理 87
6.25.2 编程原理与示例程序 89
6.26 MPU6050运动检测传感器 95
6.26.1 MPU6050运动检测传感器工作原理 95
6.26.2 编程原理与示例程序 97
6.27 HMC5883L磁阻传感器 99
6.27.1 HMC5883L磁阻传感器工作原理 99
6.27.2 编程原理与示例程序 100
第四篇 无线控制篇
第7章 ZigBee无线传输模块 104
7.1 ZigBee技术简介 104
7.2 DRF1605H模块的使用 104
7.2.1 模块介绍 104
7.2.2 组网原理 105
7.2.3 数据传输方式 108
7.2.4 配置说明 110
7.3 编程原理与示例程序 112
第8章 蓝牙传输模块 115
8.1 蓝牙技术简介 115
8.2 蓝牙模块的连接过程 115
8.3 BLK-MD-BC04-B蓝牙模块的使用 116
8.3.1 BLK-MD-BC04-B蓝牙模块简介 116
8.3.2 常用AT指令设置 117
8.3.3 软件主从配置 119
8.3.4 硬件主从配置 122
8.4 编程原理与示例程序 123
第9章 WiFi传输模块 127
9.1 WiFi技术简介 127
9.2 WiFi转串口模块的使用 127
9.2.1 模块介绍 127
9.2.2 配置说明 129
9.3 编程原理与示例程序 136
第10章 2.4G无线数传模块 139
10.1 2.4G无线数传模块简介 139
10.2 nRF24L01模块使用 140
10.3 编程原理与程序设计 140
第11章 DigiMesh远距离传输模块 150
11.1 DigiMesh技术简介 150
11.2 XBee PRO 900HP模块使用 150
11.3 编程原理与示例程序 155
第五篇 机器人设计制作篇
第12章 走迷宫的超声波避障车 162
12.1 硬件平台的搭建 162
12.1.1 物料清单 162
12.1.2 组建超声波避障车 162
12.1.3 总装接线表 163
12.2 编程原理 164
12.3 程序设计 164
第13章 蓝牙控制的机器人 169
13.1 硬件平台的搭建 169
13.1.1 物料清单 169
13.1.2 总装接线表 170
13.2 配置说明 170
13.2.1 蓝牙模块配置 170
13.2.2 手机连接测试 170
13.3 编程原理与程序设计 172
13.3.1 Android程序设计 172
13.3.2 智能车程序设计 191
第14章 无人机操纵装置 194
14.1 硬件的选型 194
14.2 硬件安装与电路连接 198
14.2.1 飞行摇杆 198
14.2.2 飞行器 199
14.3 控制协议 200
14.4 编程原理与程序设计 202
14.4.1 飞行摇杆控制程序 202
14.4.2 飞行器Flyduino程序 204
第六篇 机器人竞赛篇
第15章 打保龄球的机器人 208
15.1 设计思想 208
15.2 任务设计 208
15.2.1 任务一:取保龄球瓶 208
15.2.2 任务二:通过机械门 208
15.2.3 任务三:放保龄球瓶 208
15.2.4 任务四:击打保龄球 209
15.2.5 终极任务:夺取奖杯 210
15.3 比赛场地设计 211
15.3.1 场地设置要求 211
15.3.2 地图设计说明 211
15.3.3 道具设计 212
15.4 竞赛规则与评分标准 213
15.4.1 竞赛规则 213
15.4.2 评分标准 213
15.5 物料清单 214
15.6 机械零件设计图 215
15.7 组装说明书 231
15.7.1 零件清单 231
15.7.2 组装流程 235
15.8 电路设计与接线 242
15.8.1 硬件系统框图 242
15.8.2 电路模块设计 242
15.8.3 总装接线表 249
15.9 程序设计 250
15.9.1 程序设计思想 250
15.9.2 算法设计 250
15.9.3 示例代码 251
第16章 神勇消防员(消防机器人) 262
16.1 设计思想 262
16.2 任务设计 262
16.2.1 任务一:搜索火源 262
16.2.2 任务二:灭火 263
16.2.3 任务三:搜救 263
16.2.4 任务四:返回安全区 263
16.3 比赛场地设计 264
16.3.1 场地设置要求 264
16.3.2 地图设计说明 264
16.3.3 道具设计 265
16.4 竞赛规则与评分标准 265
16.4.1 竞赛规则 265
16.4.2 时间限制 265
16.4.3 评分标准 265
16.5 物料清单 266
16.6 机械零件设计 267
16.7 组装说明 279
16.7.1 零件清单 279
16.7.2 机器人组装流程和详解 283
16.8 电路设计 288
16.8.1 硬件系统框图 288
16.8.2 电路模块设计 290
16.8.3 总装接线表 293
16.9 程序设计 294
16.9.1 程序设计思想 294
16.9.2 算法设计 294
16.9.3 示例代码 295

教学资源推荐
作者: (美)Thomas L. Floyd David M. Buchla 著
作者: 吴建平 彭颖 编著
作者: 李林功,吴飞青,王一刚,丁晓
作者: 周元钧 编著
参考读物推荐
作者: [美]迈克尔·萨林(Mikael Sahrling) 著
作者: (美)Michael Parker Suhel Dhanani 著
作者: 刘歧,赵文杰 编著 武爱敏 审校