内容简介
     《自律型机器人制作入门:基于Arduino》基于开源硬件思想,完全公开各个结构件的外观尺寸,控制板基于开源硬件领域内广泛使用的Arduino,采用在Arduino之上又封装了一层硬件接口的Dreamer,使得硬件模块的连接更加方便、简单。《自律型机器人制作入门:基于Arduino》是关于Drearner控制板的一本书,内容循序渐进,图文并茂。从基础的控制电机和舵机开始,详细介绍了简单自律机器人的制作方法,包括轮型机器人和关节型机器人两种类型。读者可以购买相应的套件组装,也可以自己动手制作。
  《自律型机器人制作入门:基于Arduino》适合所有想自己制作一个机器人的朋友,无论你在电子硬件方面是什么水平,只要动手跟着书中的内容一步一步进行,都能够完成一个简单的自律型机器人。随书光盘中包含了所有的程序代码。     
内页插图
          目录
   第1章 了解机器人
1.1 什么是机器人
1.1.1 机器人名字的由来
1.1.2 广义机器人的定义
1.2 机器人的种类
1.2.1 操作型机器人
1.2.2 程控型机器人
1.2.3 示教再现型机器人
1.2.4 感觉控制型机器人
1.2.5 学习控制型机器人
1.2.6 智能机器人
1.3 自律型移动机器人
1.3.1 感知
1.3.2 动作与结构
1.3.3 智能
1.4 小结
第2章 机器人的运动
2.1 机器人运动的环境
2.1.1 机器人所处的环境
2.1.2 开环控制与闭环控制
2.2 机器人运动的方式
2.2.1 机器人的尺寸和重量
2.2.2 车轮和履带
2.2.3 关节型机器人
2.3 直流电机
2.3.1 直流电机的工作原理
2.3.2 直流电机的控制方式
2.3.3 直流电机的选择
2.3.4 电机输出轴
2.3.5 联轴器的使用
2.3.6 直流电机的安装
2.4 舵机
2.4.1 舵机的工作原理
2.4.2 舵机的控制方式
2.4.3 舵机的选择与安装
2.4.4 舵机的改装
2.5 小结
第3章 控制板的使用
3.1 开源硬件控制板
3.1.1 什么是开源硬件
3.1.2 Arduino是什么
3.1.3 控制板Dreamer
3.1.4 Dreamer的外形尺寸
3.1.5 Dreamer的原理图
3.1.6 Dreamer的硬件接口
3.2 Dreamer的开发环境
3.2.1 新硬件的添加
3.2.2 开发环境的设置
3.2.3 开发环境的应用
3.3 程序的3种基本结构
3.4 C语言的标识符与关键字
3.5 控制语句
3.5.1 if语句
3.5.2 switch语句
3.5.3 while语句
3.5.4 do-while语句
3.5.5 for语句
3.5.6 break语句
3.5.7 continue语句
3.5.8 go to语句
3.6 对象和类
3.6.1 类的定义
3.6.2 对象的创建及成员函数的调用
3.6.3 对象的初始化和构造函数
……
第4章 感知周围的环境
第5章 轮型机器人底盘结构
第6章 轮型机器人的行为
第7章 多足机器人结构
第8章 六足爬虫的行为
第9章 复合型轮型机器人
附录A 结构图纸一览表
附录B Gadgeteer规范中接口的定义
附录C 运算符操作顺序
附录D 一些其他Gadgeteer模块
参考文献      
精彩书摘
     随着机器人研究的迅速发展,研究人员希望找到一种运动形式能够适应各种复杂的环境,于是许多的机器人研究转向了生物学,研究对象是动物在自然界生存状态下的行为特征。生物学家大部分研究工作是在野外自然环境中进行的,因为对于生物学家来说,一个生物本身与其所处的自然环境是密不可分的。机器人同样是在一个特定的环境中运行的,因此也应该到这个环境中寻找解决的办法。除此之外,至少还应进一步考虑希望机器人执行什么动作,想得越多越全面,那么离成功会越来越近。
  2.1.1 机器人所处的环境
  一般情况下,大部分的机器人都是基于室内环境而设计的,因为室内环境相对比较简单,大大降低了机器人的设计难度,比如迷宫中的墙壁、室内的箱子和比赛中的障碍物等。这些环境因素对机器人驱动装置设计的影响是固定的,无突发性的。再者就是室内的家具、人、宠物等典型的障碍物,以及门槛的高低、地毯的疏密、地板间的缝隙,甚至是地上的鞋子、儿童玩具等,这些障碍物对机器人设计的影响也是有限的。
  室外环境相对于室内环境就复杂多了,除了要考虑机器人所执行任务时会遇到的特殊情况外,防尘防潮、气候影响及减振这几个方面也是不可忽视的。这些都会影响机器人的驱动装置,甚至影响控制板的正常工作。在室外环境中,工作的机器人可能不会知道自己将会遇到什么障碍,不能非常明确地知道自己当前的位置,并且随着自身的移动,这种不确定性会越来越严重。
  以往的控制方式是通过解释环境中每个物体,建立环境模型,然后据此控制机器人执行相应的动作。这种方式效果很不好,由于每次执行动作之前需要进行大量的计算,使得机器人行动缓慢,反应迟钝。而机器人所处的环境在不断地变化,有时等到机器人执行完动作之后,外部的环境已经变得不符合执行动作的条件了。
  ……      
前言/序言
     随着Arduino的出现,开源硬件的思潮得到了迅猛的发展,无论是否了解电子硬件,在开源硬件的环境中都能够很快地制作出几个电子产品。2012年是中国机器人制作以及电子产品DIY制作普及的一年,在各种创客活动中看到了许多各式各样的机器人,这些创客很多都没有电子硬件背景,但他们通过简单学习同样能够制作出非常有意思的电子产品和机器人。对于喜好机器人以及机器人技术的人来说,除了希望看到各种机器人所实现的功能及其构造外,更想参与到机器人的设计与制作中。如果你不知道从哪里开始,那么就让这本书带你走入机器人制作的世界吧!
  本书基于开源硬件思想,完全公开各个结构件的外观尺寸,控制板基于开源硬件领域内广泛使用的Arduino,采用在Arduino之上又封装了一层硬件接口的Dreamer,使的硬件模块的连接更加方便、简单。
  结构安排
  本书是关于Dreamer控制板的第一本书,依托于自律型机器人的3个基本要素:感知、动作以及智能,从最基础的控制电机和舵机开始,按照控制板应用、结构组装、行为实现的结构逐步展开,讲述的是简单自律机器人的制作方法,包括轮型机器人和关节型机器人两种类型,它们能够完成各种基本自律行为。这堂内容都是完全开源的,无论你在电子硬件方面是什么水平,只要动手跟着书中的内容一步一步进行,都能够完成一个简单的自律型机器人。读者可以购买相应的套件组装,也可以自动动手制作。随书光盘中包含了所有的程序代码。
  ……    
				
 
				
				
					《自律型机器人制作入门:基于Arduino(附光盘1张)》是一本面向机器人制作初学者的实践指南。本书旨在通过清晰的讲解和丰富的案例,帮助读者掌握机器人设计、硬件连接、软件编程以及系统集成的核心技能,最终能够独立制作出具有一定智能和自主性的机器人。  本书核心价值与特色:  1.  循序渐进的学习路径: 本书摒弃了枯燥晦涩的理论堆砌,而是从最基础的电子元件和Arduino开发板开始,逐步引导读者深入了解机器人各个子系统的原理和实现方法。每个章节都围绕一个具体的知识点或一个小型功能模块展开,确保学习过程的连贯性和易懂性。读者无需具备深厚的电子或编程背景,只需要对机器人技术充满兴趣,即可跟随本书踏上探索之旅。  2.  Arduino平台深度解析与应用: Arduino作为开源硬件的代表,以其易用性、灵活性和庞大的社区支持,成为机器人制作领域的首选平台。本书将详细介绍Arduino Uno开发板的结构、工作原理、引脚功能,以及如何利用Arduino IDE进行程序开发。重点在于讲解如何利用Arduino的数字输入/输出、模拟输入、PWM控制等核心功能,与各种传感器和执行器进行交互。通过实际案例,读者将学会如何读取传感器数据(如距离、光线、声音),如何控制电机、舵机等执行器实现运动和姿态调整。  3.  丰富的传感器集成与数据采集: 机器人感知环境的能力是其实现自主性的关键。本书将涵盖多种常用机器人传感器,包括但不限于:        超声波传感器: 用于测量距离,是实现避障功能的基础。读者将学习其工作原理、连接方式以及如何读取精确的距离数据。        红外传感器: 可用于循迹、测速、感应障碍物等,本书会介绍不同类型的红外传感器及其应用。        光敏电阻/光线传感器: 用于感知环境光照强度,可以实现光控或追光功能。        陀螺仪与加速度计(IMU): 用于测量机器人的姿态和运动状态,是实现平衡、导航等高级功能的重要组成部分。        编码器: 安装在电机轴上,用于精确测量电机转速和行进距离,是实现精准运动控制的关键。     本书将详细指导读者如何将这些传感器正确连接到Arduino开发板,并编写代码读取和处理传感器数据,将原始的模拟或数字信号转化为有意义的信息。  4.  执行器控制与运动学基础: 机器人执行动作的关键在于其执行器。本书将重点介绍以下几种常见的执行器及其控制方法:        直流电机: 用于驱动轮子实现前进、后退、转向等基本运动。读者将学习如何使用H桥电路(如L298N模块)来控制直流电机的正反转、速度调节。        步进电机: 能够实现精确的角度控制,适用于需要精确定位的场合。        舵机(Servo Motor): 能够精确控制转动角度,常用于机械臂、云台等。本书将讲解如何利用Arduino的PWM输出控制舵机的角度。     通过对这些执行器的深入讲解,读者将能够构建出能够移动、抓取、调整姿态的机器人本体。  5.  机器人控制算法与自主性实现: 本书不仅关注硬件的连接和驱动,更注重机器人“智能”的培养。读者将学习到一系列基础的机器人控制算法,使其能够根据传感器信息做出自主决策:        避障算法: 利用超声波传感器等,编写程序让机器人在遇到障碍物时能够自动绕行。        循迹算法: 利用红外传感器等,使机器人能够沿着预设的黑线或白线路径行驶。        简单的路径规划: 结合里程计(编码器)和方向传感器,实现简单的点对点导航。        PID控制(可选,根据难度适当引入): 介绍PID控制的基本原理,用于实现更精确的电机速度控制或姿态稳定。  6.  模块化设计与系统集成: 机器人是一个复杂的系统工程,涉及到硬件、软件、电源等多个方面。本书强调模块化设计理念,将机器人分解为若干个功能模块(如感知模块、决策模块、执行模块),分别进行设计和实现,最后再进行集成。这种方法不仅降低了开发的复杂度,也提高了系统的可维护性和扩展性。读者将学习如何将各个模块有机地组合起来,构建一个完整、协同工作的机器人系统。  7.  实践导向的案例分析: 本书最核心的亮点在于其丰富的实践案例。每一个重要的概念和技术点都会通过一个具体的机器人制作项目来呈现。例如:        基础小车平台搭建: 从组装底盘、安装电机、连接驱动板开始,实现一个可以远程遥控或简单自主移动的小车。        智能避障小车: 在基础小车平台上增加超声波传感器,实现自主避障功能。        红外循迹小车: 利用红外传感器实现循迹功能,让小车沿着地面绘制的线条行驶。        简单的机械臂控制: 利用舵机构建一个可以进行简单抓取或搬运的机械臂。        光感应小车: 利用光敏电阻实现对光源的追踪或避光功能。     这些案例由浅入深,难度循序渐进,使读者在动手实践中巩固所学知识,体验制作机器人的乐趣。  8.  附赠光盘资源: 本书附带一张内容丰富的DVD光盘,包含:        Arduino IDE软件及常用库文件: 方便读者快速搭建开发环境。        本书涉及的所有例程源代码: 读者可以直接下载、编译、运行,并在此基础上进行修改和创新。        电子元件数据手册(Datasheets): 提供关键电子元件的详细技术规格,帮助读者深入理解元件特性。        相关的参考资料和教程链接: 拓展读者的学习视野,提供更多深入研究的资源。        部分项目的三维模型或电路原理图(如适用): 辅助读者理解整体结构和连接。  9.  解决实际制作问题: 在机器人制作过程中,读者常常会遇到各种问题,如电路连接错误、传感器读数异常、程序逻辑不通等。本书的编写过程中,充分考虑了初学者可能遇到的难点,并提供了详细的调试技巧和常见问题解决方案,帮助读者克服障碍,顺利完成制作。  本书适合读者群体:     机器人爱好者: 对机器人技术充满好奇,希望亲手制作属于自己的机器人。    学生(高中生、大学生): 希望通过实践项目学习电子、编程和控制技术,为未来学习或职业发展打下基础。    STEM教育工作者: 寻找合适的教学材料,带领学生进行机器人相关的项目式学习。    业余爱好者和创客: 喜欢动手制作,希望将创意转化为实际产品的电子爱好者。    有一定编程基础,但缺乏硬件实践经验的人员: 希望将编程技能应用于硬件控制,探索更广阔的应用领域。  学习本书的收益:  通过本书的学习,读者不仅能够掌握Arduino平台下的机器人制作核心技术,更能培养出解决实际问题的能力、逻辑思维能力和创新能力。本书致力于成为您机器人制作之旅的坚实起点,为您打开一个充满无限可能的智能世界。您将从“零”开始,逐步搭建出功能多样、能够自主思考和行动的机器人,体验从无到有、从简单到复杂的创造过程。