What is Arduino?
Arduino is an open-source electronics platform based on easy-to-use hardware and software. Arduino boards are able to read inputs - light on a sensor, a finger on a button, or a Twitter message - and turn it into an output - activating a motor, turning on an LED, publishing something online. You can tell your board what to do by sending a set of instructions to the microcontroller on the board. To do so you use the Arduino programming language (based on Wiring), and the Arduino Software (IDE), based on Processing.
Over the years Arduino has been the brain of thousands of projects, from everyday objects to complex scientific instruments. A worldwide community of makers - students, hobbyists, artists, programmers, and professionals - has gathered around this open-source platform, their contributions have added up to an incredible amount of accessible knowledge that can be of great help to novices and experts alike.
Arduino was born at the Ivrea Interaction Design Institute as an easy tool for fast prototyping, aimed at students without a background in electronics and programming. As soon as it reached a wider community, the Arduino board started changing to adapt to new needs and challenges, differentiating its offer from simple 8-bit boards to products for IoT applications, wearable, 3D printing, and embedded environments. All Arduino boards are completely open-source, empowering users to build them independently and eventually adapt them to their particular needs. The software, too, is open-source, and it is growing through the contributions of users worldwide.
Why Arduino?
Thanks to its simple and accessible user experience, Arduino has been used in thousands of different projects and applications. The Arduino software is easy-to-use for beginners, yet flexible enough for advanced users. It runs on Mac, Windows, and Linux. Teachers and students use it to build low cost scientific instruments, to prove chemistry and physics principles, or to get started with programming and robotics. Designers and architects build interactive prototypes, musicians and artists use it for installations and to experiment with new musical instruments. Makers, of course, use it to build many of the projects exhibited at the Maker Faire, for example. Arduino is a key tool to learn new things. Anyone - children, hobbyists, artists, programmers - can start tinkering just following the step by step instructions of a kit, or sharing ideas online with other members of the Arduino community.
There are many other microcontrollers and microcontroller platforms available for physical computing. Parallax Basic Stamp, Netmedia#39;s BX-24, Phidgets, MIT#39;s Handyboard, and many others offer similar functionality. All of these tools take the messy details of microcontroller programming and wrap it up in an easy-to-use package. Arduino also simplifies the process of working with microcontrollers, but it offers some advantage for teachers, students, and interested amateurs over other systems:
- Inexpensive - Arduino boards are relatively inexpensive compared to other microcontroller platforms. The least expensive version of the Arduino module can be assembled by hand, and even the pre-assembled Arduino modules cost less than $50
- Cross-platform - The Arduino Software (IDE) runs on Windows, Macintosh OSX, and Linux operating systems. Most microcontroller systems are limited to Windows.
- Simple, clear programming environment - The Arduino Software (IDE) is easy-to-use for beginners, yet flexible enough for advanced users to take advantage of as well. For teachers, it#39;s conveniently based on the Processing programming environment, so students learning to program in that environment will be familiar with how the Arduino IDE works.
- Open source and extensible software - The Arduino software is published as open source tools, available for extension by experienced programmers. The language can be expanded through C libraries, and people wanting to understand the technical details can make the leap from Arduino to the AVR C programming language on which it#39;s based. Similarly, you can add AVR-C code directly into your Arduino programs if you want to.
- Open source and extensible hardware - The plans of the Arduino boards are published under a Creative Commons license, so experienced circuit designers can make their own version of the module, extending it and improving it. Even relatively inexperienced users can build the breadboard version of the module to understand how it works and save money.
Arduino Software (IDE)
The Arduino Integrated Development Environment - or Arduino Software (IDE) - contains a text editor for writing code, a message area, a text console, a toolbar with buttons for common functions and a series of menus. It connects to the Arduino and Genuino hardware to upload programs and communicate with them.
Writing Sketches
Programs written using Arduino Software (IDE) are called sketches. These sketches are written in the text editor and are saved with the file extension .ino. The editor has features for cutting/pasting and for searching/replacing text. The message area gives feedback while saving and exporting and also displays errors. The console displays text output by the Arduino Software (IDE), including complete error messages and other information. The bottom righthand corner of the window displays the configured board and serial port. The toolbar buttons allow you to verify and upload programs, create, open, and save sketches, and open the serial monitor.
Additional commands are found within the five menus: File, Edit, Sketch, Tools, Help. The menus are context sensitive,
全文共15476字,剩余内容已隐藏,支付完成后下载完整资料
什么是Arduino?
Arduino 是一个开源电子平台基于简单易用的硬件和软件。Arduino开发板能够读取输入,比如点亮一个传感器、按下一个按钮或者读取推特的消息。然后根据这些输入信息将其转化为输出。比如开启电机、打开LED灯以及在线发布一些信息。你可以通过发送一系列指令到Arduino开发板上微控制器告诉你的Arduino应该做什么事情。为了实现这种效果,你需要掌握Arduino的编程语言以及Arduino的集成开发软件。
这些年来,成千上万的项目,从身边简单的项目到复杂的科学仪器,都是将Arduino作为核心控制板。一个全世界范围的开发社区——学生、兴趣爱好者、艺术家、编程人员以及专业相关的人员,通过这款开源的平台聚集到一起。他们为我们贡献了难以置信数量的资料与知识,可以为新手和专家们提供很大的帮助。
Arduino 出生与Ivrea互动设计研究所,作为快速原型设计的简单工具,面向没有电子和编程背景的学生。一旦达到更广泛的社区,Arduino开发板便开始了转变,将其简单的8位板与互联网应用、可穿戴设备、3D打印以及嵌入式环境等产品区分开来以适应新的需求和挑战。所有的Arduino开发板都是完全开源的,能够让用户构建他们自己独立的应用并最终适应他们的特别的需求。软件也是开源的,并且在全世界范围的开发者的帮助下也在日渐成长。
为什么选择Arduino?
由于它结构简单并且易于使用的用户体验,Arduino已被用于数千个不同的项目和应用程序。Arduino软件对于初学者来讲易于上手,对于高级用户更加灵活。软件可以在Mac、Window以及Linux上运行。老师和学生可以用Arduino开发软件构建出低花销的科学仪器来证明化学和物理定理,或者通过软件来学习编程和开发机器人。设计师和建筑师创建交互式原型,作曲家和艺术家用它来安装和试验新的乐器。制造商可以用它构建出许多项目用来在创意展览会上展出。例如,Arduino是学习新事物的关键工具。任何人,比如孩子、兴趣爱好者、艺术家、程序开发人员都可以开始创造,只需要按照一步一步的指令,或者在线与其他Arduino社区的成员分享你的想法。
有许多其他微控制器和微控制器平台可以用于物理计算。比如Parallax的Basic Stamp、Netmedia的BX-24、Phidgets、麻省理工的Handyboard以及其他许多有相似功能的产品。所有这些工具将复杂、诸多细节的微控制器编程包装为易用的包中。Arduino同时也简化了微控制器的工作过程,并且较其他系统而言,它对老师、学生和业余的爱好者有一些优势:
-
- 价格低廉:Arduino开发板相比其他微控制器平台来讲价格低廉。Arduino模块最便宜的版本可以手动组装,甚至预装的Arduino模块的成本也不到50美元。
- 多平台:Arduino的集成开发平台软件可以在Mac、Windows以及Linux上运行。大多数为控制器系统仅限于Windows。
- 简单、清晰的编程环境:Arduino开发软件对于初学者来说简单易用,对于高级开发者来说更加灵活。对于教师,它可以方便的配置开发环境,对于学习编程的学生来讲在这种环境下将会更加熟悉如何使用Arduino软件开始编程。
- 开源可扩展的软件:Arduino的软件作为开源工具发布,开发语言可以通过C 库扩展,而想了解技术细节的人可以从Arduino跳跃到基于它的AVR C语言编程。同样的,你可以直接将AVR-C代码添加到Arduino程序中。
- 开源可扩展的硬件:Arduino电路板的计划是根据知识共享许可证发布的,所以经验丰富的电路设计人员可以制作自己的模块版本,扩展和改进模块。即使相对没有经验的用户也可以构建模块的面包板版本,以了解它的工作原理并节省资金。
Arduino 软件(集成开发环境)
Arduino集成开发环境(软件)包含一个文本编辑器用爱写代码,一个消息区域,一个文本控制台,一个包含常用功能快捷键的工具栏和一些列菜单。它可以链接Arduino和Genuino硬件并上传程序代码以及实现和板通讯的功能。
编写程序
利用Arduino软件编写的程序被叫做草图(Sketch)。这些程序通过文本编辑器编写并被保存在以.ino结尾的文件中。编辑器支持复制粘贴以及寻找和替换文本。消息区域在保存或者导出时给予反馈信息,在程序出错时也会显示错误信息。控制台显示Arduino软件的文字输出信息,包括完整的错误信息和其他的信息。在软件窗口的右下角展示开发板的信息和端口号。工具栏的按钮允许你来验证和上传程序、创建、打开和保存草图,以及打开串口监视器。
更多功能可以在以下五个菜单项中找到:文件、编辑、程序、工具、帮助。菜单是上下文相关的,也就意味着只有那些和当前工程相关的选项才可以被选择。
上传程序
在上传程序之前,你需要确保你选择了正确的开发板版本以及端口号,在工具gt;开发板和工具gt;端口中确认。在Windows系统桑,它可能是COM1或者COM2或者更高的端口号,为了找出是哪一个端口,你需要查找USB串口设备在Windows设备管理器中的那个区域。一旦你选择了正确的串口号和板子型号,按下工具栏中的上传按钮或者菜单中的上传选项。当前的Arduino板子会自动种植并开始上传过程。老版本的板子缺少自动重置,所以可能需要在上传之前按下板子上的重置按钮。在大多数板子上,你会看见RX和TX灯在上传程序的时候闪烁。Arduino软件会在上传完成后显示一条消息,或者显示错误信息。
当你上传程序时,你是在使用Arduino的引导程序。引导程序是一段预装在微控制器上的一段程序。这段程序可以让你上传你的代码而不需要用任何额外的硬件。引导程序在板子重置后会有几秒钟处于激活状态,然后他会开始运行最新上传到微控制器的程序。引导程序在运行时会闪烁板载LED(在13号引脚)。
库
库提供了额外的功能可以用在程序中。比如,硬件驱动以及操纵数据。要在程序中使用库,从程序gt;导入库菜单中选则库并导入。这将会插入一个或多个#include语句在程序的最上面,并且会和你的程序一块编译。因为库也会随着程序一起上传到板子上,库会增加你的程序占用空间。如果一个程序不再需要库中的功能,只需要简单的删除程序中的#include语句就好了。
第三方硬件
支持第三方硬件可以添加到您的素描本目录的硬件目录中。平台安装也许包含了板子定义(在开发板菜单中)、核心库、引导程序和编程定义。要安装硬件,请创建硬件文件夹,然后将第三方平台解压到它自己的子文件夹中。(不要将“arduino”作为子文件夹的名字,否则就重写了Arduino的内建平台)。要卸载平台,删除对应文件夹即可。
串口监视器
用来显示Arduino或者Genuino板发过来的串口数据(USB或者串口)。要发送数据到板子,只需输入文字然后点击发送按钮或者按下回车键。从下拉菜单中选择与串口匹配(程序中预设的波特率)的波特率。在Windows、Mac或者Linux上需要注意,当你开启串口监视器时,Arduino或者Genuino板子将会重置(也就是程序重新从头开始执行)。
传感器部分
DTH11 温湿度传感器
DHT11温湿度传感器具有温湿度传感器,具有校准数字信号输出。通过采用专有的数字信号采集技术和温湿度传感技术,确保了高的可靠性和长期稳定性。该传感器包括电阻式湿度测量部件和NTC温度测量部件,并连接到高性能8位微控制器,具有出色的质量,快速地响应,抗干扰能力和成本效益。
每隔DHT11元件都在实验室进行了严格的校准,在湿度校准方面非常精确。校准系数作为程序存储在一次性可编程存储器中,由传感器的内部信号检测过程使用。单线串行接口使系统集成简单快速。它的尺寸小,能耗低,信号传输达20米,是各种应用的最佳选择,包括最苛刻的应用。该组件是4针单排引脚封装。链接方便,可根据用户要求提供特殊封装。
通信过程:串行接口(单线双向)
单总线数据格式用来在MCU和DHT11传感器之间通信和同步。一次通信过程大约4毫秒。数据由十进制和整数部分组成。一次完整的数据传输是40位,传感器最先发送数据高位。数据格式:8位整数的RH数据 8位十进制RH数据 8位整数温度数据 8位十进制温度数据 8位校验和。如果数据传输正确,校验和应该是“ 8位整数的RH数据 8位十进制RH数据 8位整数温度数据 8位十进制温度数据“的后8位。
整体通信过程(下面的图1)
当MCU发送一个开始信号,DHT11从低功耗模式转变为运行模式,等待MCY完成开始信号。一旦完成,DHT11发送40位的相应数据包括相对的湿度和温度信息到MCU。用户可以选择读取其中的信息。没有MCU的开始信号,DHT11将不会响应信号到MCU。一旦收集到数据,DHT11将会变为低功耗模式直到它接收到了MCU的开始信号。
图1. 全局通信进程
MCU发送开始信号到DHT(下面的图2)
数据单线总线空闲状态为高电平。当MCU和DHT11之间的通信开始时,MCU的程序将会将数据单总线的电压电平从高设置为低,该过程必须持续至少18毫秒,以确保DHT检测到MCU的信号,然后MCU将上拉电压并20-40微秒用于等待DHT的响应。
图2. MCU发出开始信号和DHT的响应
DHT响应MCU(上面的图2)
一旦DHT检测到开始信号,它会发出一个持续80微妙的低电平响应号。然后DHT的程序拉高数据单总线的电压并保持80微妙一边DHT准备发送数据。
当数据单总线在低电平的时候,这意味着DHT正在发送响应信号。一旦DHT发出了响应信号,它会拉高电压并保持80微妙并且准备数据传输。当DHT发送数据到MCU的时候,每比特数据会议50微妙的低电平开始并且接下来的高电平的持续时长决定了数据位是“0”还是“1”(看下面的图3和图4).
图3. 数据“0”表示
图4. 数据“1”表示
如果来自DHT响应信号一直是高电平,那就意味着DHT并没有正确的响应,请检查连接。当最后一位数据传输完成后,DHT11拉低电平并保持50us。然后单总线电压会通过电阻拉高,恢复到空闲总线状态。
GP2Y1010AU0F夏普紧凑型光学防尘传感器
GP2Y1010AU0F是一款紧凑型光学防尘传感器。红外发光二极管(IRED)和光电晶体管对角地布置在该器件中。它能够检测空气中灰尘的反射光。特别是检测香烟烟雾等非常细小的颗粒是有效的。此外,它可以通过输出电压的脉冲模式来区分烟雾和房屋灰尘。
特点
- 紧凑,薄包装(46.0 x 30.0 x 17.6mm)
- 低消耗电流(Icc: MAX 20 mA)
- 能够将烟雾和室内灰尘区分开来
- 符合无铅和RoHS的标准
应用
- 探测空气中的灰尘
- 例子:空气净化器、空调、空气质量监测仪
内部结构
图5. 内部结构图
LED输入端的推荐输入
变量 |
符号 |
值 |
单位 |
脉冲周期 |
T |
101 |
ms |
脉冲宽度 |
PW |
0.320.02 |
ms |
操作的提供电压 |
Vcc |
50.5 |
V |
表1. LED的推荐输入条件
MS1100 VOC 传感器
描述:用于检测甲醛、甲苯、有机溶剂的传感器,半导体型。
一般应用:该传感器一般用于挥发性气体的检测(甲醛、甲苯、苯等等)。
应用:呼吸机、空气净化器等。
操作范围:
- 工作环境温度:零下10摄氏度到50摄氏度
- 工作环境湿度:低于保和点湿度
- 存放环境温度:零下20摄氏度到80摄氏度之间
基本测量电路稳定性:
图5. 基本测量电路
显示部分
薄膜晶体管屏幕(TFT Screen)
在Arduino集成开发软件1.0.5版本及之后的版本都默认包含了薄膜晶体管屏幕的库文件。
这个库能够让以块Arduino电路板和Arduino薄膜晶体管屏幕进行通信。它简化了绘制形状、线条、图片以及文字的流程,使用起来更加方便。
Arduino液晶屏的库文件继
全文共5378字,剩余内容已隐藏,支付完成后下载完整资料
资料编号:[143966],资料为PDF文档或Word文档,PDF文档可免费转换为Word
以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。