内容简介
《智能硬件项目教程:基于Arduino》主要通过项目学习(PBL,Project-Based Learning)的方式综合讲解.Arduino编程基础和电子电路基础,具体介绍了Arduino IDE、Mixly、Arduino UNO主控板、C语言编程、传感器、执行器、自律型机器人等相关知识。通过精心设计的课程,让学生由浅入深地了解Arduino软件、智能硬件的性能和使用方法,锻炼学生的程序逻辑思维能力,通过编程和使用智能硬件完成自己的创意。
《智能硬件项目教程:基于Arduino》是全国青少年机器人技术等级考试(三、四级)的指定教材;同时,还可作为非电子类、计算机等专业智能硬件的入门教程,以及中小学科技教育课程教材,也可供Arduino的初学者和爱好者使用。
内页插图
目录
第1章 走进智能殿堂
1.1 电子时代
1.2 开源硬件
1.3 什么是Arduino
1.4 Arduino UNO主控板简介
1.5 国内开源主控板简介
1.6 Arduino学习套件
1.6.1 Arduino学习套件元器件清单
1.6.2 使用Arduino主控板及其他电子元器件的注意事项
1.6.3 Arduino UNO主控板功能简介
1.6.4 Arduino UN0端口扩展板功能简介
1.6.5 面包板
1.6.6 学习平台结构安装
1.7 Arduino软件及驱动安装
1.7.1 Arduino IDE的下载及安装
1.7.2 Arduino IDE初始设置
1.7.3 Arduino UNO主控板驱动程序安装
1.7.4 上传系统例程Blin k.ino程序到Arduino UNO主控板
1.7.5 编写自己的“HeIlo World”程序
1.7.6 Arduino IDE编程语言参考
1.7.7 基本语法规则
1.8 米思齐简介
1.8.1 软件获取
1.8.2 界面介绍
1.9 本章思考题
第2章 炫彩流水灯
2.1 基本概念2.1.1 电压、电流、接地
2.1.2 电阻和电阻器
2.1.3 欧姆定律
2.1.4 短路
2.1.5 电路搭设注意事项
2.1.6 元器件技术参数
2.1.7 元器件电源引脚标识
2.1.8 信号、模拟信号、数字信号
2.2 器件介绍
2.3 项目一:搭建第一个电路——串联电路
2.4 项目二:搭建第二个电路——并联电路
2.5 项目三:搭建第一个程序控制电路——闪烁LED灯
2.6 项目四:炫彩流水灯
2.7 本章思考题
第3章 自助式红绿灯
3.1 基本概念
3.2 器件介绍
3.3 项目一:通过按键开关点亮LED灯
3.4 项目二:蜂鸣器响起来
3.5 项目三:自助式红绿灯
3.6 本章思考题
第4章 呼吸灯
4.1 基本概念
4.1.1 几种常用数制
4.1.2 几种常用数制问的转换
4.2 器件介绍
4.3 项目一:读取电位器的模拟信号值
4.4 项目二:通过电位器控制LED灯的亮度
4.5 项目三:通过光敏电阻调整LED灯的亮度
4.6 项目四:呼吸灯的制作
4.7 数字信号/模拟信号操作函数
4.8 本章思考题
第5章 迎宾机器人
5.1 器件介绍
5.2 项目一:舵机动起来
5.3 项目二:"世界那么大,我想去看看
5.4 项目三:超声波测距
5.5 项目四:距离说出来
5.6 项目五:迎宾机器人
5.7 本章思考题
第6章 红外遥控调速小风扇
6.1 基本概念
6.1.1 导体、半导体、绝缘体
6.1.2 二极管
6.1.3 晶体管
6.1.4 双极型晶体管
6.2 器件介绍
6.3 项目一:红外遥控控制LED灯
6.4 项目二:按键控制直流电机的启停
6.5 项目三:红外遥控调速小风扇
6.6 本章思考题
课中项目设计
第7章 搭建智能小车
项目:智能小车结构安装
第8章 红外遥控智能小车
8.1 基本概念
8.2 项目一:让智能小车动起来
8.3 项目二:红外遥控智能小车
第9章 自律型自动跟随小车
9.1 基本概念
9.1.1 自律型移动机器人
9.1.2 开环控制和闭环控制
9.2 项目:自律型自动跟随小车
第10章 差分归航智能小车
10.1 基于差分传感器的归航行为
10.2 器件介绍
10.3 项目一:循迹归航小车
10.4 项目二:寻光归航小车
10.5 项目三:差分避障小车
结业项目设计——疯狂迷宫
附录A Mixly各功能模块介绍及使用
A.1 Mixly各功能模块介绍
A.1.1 输入/输出
A.1.2 控制
A.1.3 数学
A.1.4 文本
A.1.5 数组
A.1.6 逻辑
A.1.7 通信
A.1.8 存储
A.1.9 传感器
A.1.10 执行器
A.1.11 变量和函数
A.2 模块使用说明
附录B 语音模块内容对照表
索引
参考文献
前言/序言
随着Arduino等开源软硬件和互联网社交网络的大规模普及,科技创新的门槛和成本得以大幅度降低,每个有基本学习和操作能力的人,不管是成人还是中小学生,也不管是学工科的还是学设计、人文的,都可以很快地利用这些新技术、新工具,将自己的创新想法变成各种让人脑洞大开的作品。
Arduino智能硬件涉及软件使用、硬件、编程等众多方面。避免初学者困惑于众多的基础知识,从开始学习就享受Arduino带来的乐趣,是本书编写过程中所着重解决的问题。
本书的编写本着项目学习(PBL)的课程思路和做中学的学习方法,结合全国青少年机器人技术等级考试标准三、四级的要求,通过精心安排不同的项目,将所需掌握的软件知识(例如:C语言语法、Arduino功能函数等)和硬件知识(例如:数字信号、模拟信号、传感器、基本元器件等)无缝地串联起来。
本书内容分为三个阶段。
第一阶段:基础入门,从第1章到第4章。通过项目,学习基础的Arduino IDE使用方法、C语言编程、电子电路的基础知识、LED和传感器的使用。
第二阶段:进阶,第5章和第6章。通过项目,在学习新知识的同时,综合运用所学知识,锻炼解决实际问题的能力。
第三阶段:提高,从第7章到第10章。通过智能小车,引入机器人、自动控制和算法设计,进一步提高学生分析、解决复杂问题的能力。
书中对各项目程序中的知识点做了详细的讲述。为了便于理解,除了提供源程序外,还提供了流程图和Mixly程序。
本书第1章的1.1、1.2、1.3、1.8节和附录A由程晨编写,其他章节由曹盛宏编写。
掌控数字世界的脉搏:从零开始的智能硬件交互艺术 在这个万物互联的时代,智能硬件已不再是遥不可及的科幻概念,而是渗透进我们生活方方面面的现实力量。从智能家居的便捷舒适,到工业自动化的精准高效,再到 wearable devices 的个性化健康管理,每一个创新的背后,都跳动着硬件与软件巧妙结合的智慧心脏。本书《智能硬件项目教程:基于Arduino》,正是为了点燃你心中那团创造智能硬件的火苗而生,为你提供一份详实、系统、充满实践指导的入门宝典,助你掌握掌控数字世界的钥匙。 我们深知,对于初学者而言,面对琳琅满目的电子元器件、错综复杂的电路图以及晦涩难懂的编程语言,常常会感到无从下手。许多现有的教程或过于理论化,或跳跃性太强,难以真正带领读者从零开始,一步一个脚印地构建属于自己的智能硬件项目。因此,本书的核心宗旨在于“化繁为简,实践先行”,通过清晰的讲解、丰富的案例和循序渐进的难度设置,让你在动手的过程中,潜移默化地掌握核心概念,逐步建立起扎实的理论基础和过硬的实践能力。 核心理念:由表及里,全面覆盖 本书的设计理念,是让你从“为什么”和“是什么”出发,逐步深入到“怎么做”。我们不会直接丢给你一堆代码和电路图,而是会从智能硬件的基本构成、工作原理出发,为你勾勒出一幅清晰的全景图。 第一部分:铸就坚实基础,洞悉智能硬件之魂 在正式踏上项目实践的征程前,充分理解智能硬件的本质至关重要。这一部分将带你: 探秘智能硬件的“五脏六腑”: 深入了解微控制器(MCU)的核心作用,它如同智能硬件的大脑,指挥着一切运作。我们会重点介绍作为本书核心平台的Arduino,它的架构、优势以及为何成为全球最受欢迎的开源硬件之一。 认识无处不在的“感官”: 传感器是智能硬件感知世界的眼睛和耳朵。我们将详细介绍各类常用传感器,例如温度传感器、湿度传感器、光线传感器、超声波传感器、人体红外传感器等,它们如何将物理世界的信号转化为电子信号,以及在实际项目中的应用场景。 掌握“行动”的指令: 执行器则是智能硬件与物理世界互动的“手脚”。本书将为你解析舵机、直流电机、继电器、LED等常见执行器的工作原理,以及如何控制它们实现各种动作,如旋转、开关、亮灭等。 理解“沟通”的桥梁: 通信模块是实现智能硬件之间、或智能硬件与互联网之间互联互通的关键。我们将介绍Wi-Fi、蓝牙、Zigbee等主流通信技术,并解释它们在构建物联网(IoT)项目中的作用。 揭示“电力”的奥秘: 学习如何为你的项目提供稳定可靠的电力供应,了解不同电源方案的优劣,以及电源管理的重要性。 第二部分:Arduino 实战演练,点亮创意火花 有了坚实的基础,我们便要开始动手实践。Arduino 作为本书的灵魂,将带领你穿越一个个精彩的实战项目,让你在解决问题的过程中,掌握编程技巧和硬件连接的艺术。 环境搭建与基础操作: 从Arduino IDE的安装和配置,到第一个“Hello World”——LED闪烁程序,我们将带领你熟悉Arduino开发环境,并掌握基本的代码编写、上传和调试流程。 传感器的数据采集与处理: 温度监测站: 利用DHT11/DHT22传感器,实时读取环境温度和湿度,并通过串口输出,让你直观感受数据变化。 光照强度测量仪: 使用光敏电阻(LDR),测量环境光照强度,并根据读数控制LED灯的亮灭,体验光与电的联动。 距离测量器: 结合超声波传感器(HC-SR04),构建一个能够测量距离的装置,理解回声定位的原理。 人体感应报警器: 利用PIR传感器,实现对人体活动的侦测,并在检测到移动时发出声音或点亮LED,体验安防监控的雏形。 执行器的精妙控制: 智能灯光系统: 结合光线传感器和LED,实现根据环境光线自动调节亮度的智能灯光。 自动门禁系统: 使用舵机模拟门锁的开关动作,并结合按钮或传感器进行触发,理解伺服电机的精确控制。 智能风扇控制器: 将温度传感器与风扇(通过继电器控制)相结合,实现根据温度自动开关风扇的功能。 人机交互的魅力: 简易电子琴: 利用按钮和蜂鸣器,创建一个可以演奏简单旋律的电子琴,体验声音的生成与控制。 数码管显示屏: 学习如何驱动数码管,显示数字、文字甚至简单的动画,让你的项目拥有更直观的输出界面。 OLED/LCD显示屏应用: 掌握在OLED或LCD屏幕上显示传感器读数、项目状态信息等,提升项目的交互性和信息传达能力。 第三部分:进阶项目拓展,玩转物联网与智能生活 当你在前两部分打下了坚实的基础后,我们将带领你挑战更具挑战性、更贴近实际应用的项目,让你体验智能硬件在物联网时代的光芒。 无线通信的实践: 蓝牙遥控小车: 利用HC-05/HC-06蓝牙模块,通过手机App或另一台Arduino控制小车前进、后退、转向,体验无线控制的乐趣。 Wi-Fi智能插座: 结合ESP8266/ESP32等Wi-Fi模块,将普通插座变成智能设备,实现远程开关控制,并学习MQTT协议的应用。 数据上传与云端交互: 环境数据云端监控: 将传感器采集到的环境数据通过Wi-Fi上传到ThingSpeak、Blynk等物联网云平台,实现远程数据查看、分析和可视化。 基于云平台的远程控制: 利用云平台的API或Web界面,实现对Arduino设备的远程控制,真正构建起一个物联网应用。 进阶传感器与模块应用: 介绍更复杂的传感器,如GPS模块、摄像头模块、RFID读卡器等,并指导你如何将它们集成到项目中,实现更高级的功能。 学习特色:不仅仅是教程,更是你的创意伙伴 本书并非枯燥的理论堆砌,而是致力于成为你创意路上的可靠伙伴。 丰富的实战项目: 每个项目都经过精心设计,从简单到复杂,难度循序渐进,确保你能逐步掌握各项技能。 清晰易懂的讲解: 我们使用通俗易懂的语言,避免使用过多的专业术语,并辅以大量的图解和示意图,帮助你直观理解电路连接和代码逻辑。 代码注释详尽: 提供的所有代码都经过精心注释,让你清楚地理解每一行代码的功能和作用,便于学习和修改。 解决常见问题: 在每个项目完成后,我们会总结可能遇到的常见问题及解决方法,帮助你规避开发过程中的坑。 鼓励创新与探索: 本书提供的项目只是一个起点,我们更鼓励你根据自己的兴趣和需求,对项目进行二次开发和创新,创造出独一无二的智能硬件作品。 谁适合阅读本书? 对智能硬件充满好奇的初学者: 无论你是否有编程或电子基础,只要你对制作自己的智能设备感兴趣,本书都能带你入门。 电子技术爱好者: 想要系统学习Arduino和智能硬件开发,并希望通过实践巩固知识的爱好者。 学生和教师: 作为STEM教育的优质教材,本书能帮助学生建立科学思维,培养动手能力,为未来的学习和职业发展打下基础。 想要将创意转化为现实的创客: 如果你脑中有无数个关于智能设备的奇思妙想,本书将是你实现这些想法的得力助手。 展望未来:用代码和硬件,改变世界 学习智能硬件开发,不仅仅是掌握一门技术,更是开启了一种新的思考方式和解决问题的方式。它能让你更深入地理解我们所处的世界,并赋予你创造改变的力量。 《智能硬件项目教程:基于Arduino》将是你开启这段激动人心旅程的最佳起点。我们相信,通过本书的学习,你不仅能掌握Arduino的开发技巧,更能点燃你内心深处的创造之火,用你的双手和智慧,去构筑属于你的智能未来,去感受科技带来的无限可能。现在,就让我们一起,踏上这场精彩的智能硬件探索之旅吧!