0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看威廉希尔官方网站 视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何使用Arduino微控制器

454398 来源:工程师吴畏 2019-08-13 17:29 次阅读

第1步:Pssst,公民科学和“官方科学”有什么区别?

最大的区别在于,正如我所说,公民科学是“手波浪”,这意味着存在许多错误和不确定性,并且没有严格的过程来识别它们。因此,通过公民科学得出的结论远不如科学科学那么准确,不应该依赖于做出严重/改变生命/危及生命的主张或决定。*

话虽如此,公民科学是建立对各种迷人科学现象的基本理解的好方法,对于大多数日常应用来说已经足够好了。

*如果您正在进行公民科学研究并发现有潜在危险的事物(例如水中铅含量过高),请通知您的教育工作者(如果适用)并联系相关机构和专业人士寻求帮助。

第2步:什么是Arduino ??

Arduino是一个微控制器板和集成开发环境(“IDE”),这是一种说“编码程序”的奇特方式。对于初学者,我强烈推荐 Arduino Uno 主板,因为它们非常强大,可靠且功能强大。

Arduino板是公民科学项目的不错选择,因为它们有很多输入引脚可以读取interwetten与威廉的赔率体系 和数字传感器(我们稍后会详细介绍)。

当然,您可以根据您(或学生)的需求,能力和舒适程度,将其他微控制器用于公民科学。以下是微控制器的概述,以帮助您决定什么是最适合您的!

闪存或编程,Arduino板,通过USB插入,然后:

1。在工具 - 》板下选择您正在使用的Arduino类型。 (照片2)

2。选择端口(也就是连接到计算机的位置)。 (照片3)

3。单击“上载”按钮,检查它是否完成上载。 (照片4)

第3步:工具和材料

如果您刚入门,获取套件是一种快速简便的方法一次得到一堆零件。我在本教程中使用的工具包是 Elegoo Arduino入门套件。*

工具

Arduino Uno

USB A到B电缆(又名打印机电缆)

跳线

3 male- to-male

3男性对女性

面包板

可选但建议让您的生活更轻松,更有趣:)

材料

对于本教程中涉及的项目,您需要以下部分来自Elegoo Arduino入门套件:

倾斜开关

DTH11温度和湿度传感器

LED

100欧姆电阻

*完全披露:我购买了相同的套件研讨会,但本教程中使用的工具包是由Elegoo的可爱人员捐赠的。

第4步:我们可以使用哪种传感器

设计科学前我们通常会提出一个问题:植物每天吸收多少二氧化碳?跳跃的冲击力是多少?什么是意识?

根据我们的问题,我们可以确定我们想要测量的内容并进行一些研究以找出我们可以用来收集数据的传感器(虽然最后收集数据有点棘手)问题!)。

使用电子设备时,有两种主要类型的传感器数据信号:数字和模拟。 在照片中,前两行的部分都是数字传感器,而前两行是模拟的。

有许多不同类型的数字传感器,有些更难以工作与其他人相比。在为您的公民科学项目进行研究时,请始终检查传感器如何输出数据(srsly tho)并确保您可以找到该特定传感器的(Arduino)库。

在本教程涉及的三个项目中,我们将使用两种类型的数字传感器和一种模拟传感器。让我们来学习吧!

第5步:数字传感器!第1部分:Easy Ones!

您将使用的大多数传感器输出数字信号,这是一个信号,要么是打开或关闭。*我们使用二进制数来表示这两种状态:On信号由1或True给出,而Off为0或False。如果我们要绘制二进制信号的图像,那就像方波2中的方波一样。

有一些数字传感器,如开关,非常简单直接测量因为按下按钮并且我们得到信号(1),或者没有按下按钮而我们没有信号(0)。第一张照片底行中的传感器都是简单的开/关类型。顶行的传感器有点复杂,在我们的第一个项目之后就会被覆盖。

本教程的前两个项目将教你如何使用这两种类型!继续建立我们的第一个项目!!

* On表示电流和电压形式的电信号。关闭表示无电信号!

步骤6:项目1:倾斜开关数字传感器

对于第一个项目,让我们使用一个倾斜开关,即带有两条腿的黑色圆柱形传感器!

步骤1:将倾斜开关的一条腿插入Arduino数字引脚13,另一脚接入引脚13旁边的GND引脚。方向无关紧要。

步骤2:编写一个草图,读入并打印出Digital Pin 13的状态。

或者你可以使用我的!

如果您刚开始编写代码,请仔细阅读注释,以便更好地了解草图的工作原理,并尝试更改某些内容以了解会发生什么!打破事情是可以的,这是一种很好的学习方式!您可以随时重新下载该文件并重新开始:)

步骤3:要查看您的实时数据,请单击“串行监视器”按钮(照片2)。

。. aaaand就是这样!您现在可以使用倾斜开关来测量方向!将它设置为在敲击东西时叫出你的小猫,或用它来跟踪风暴期间树枝如何移动! 。.在这两个极端之间可能存在其他应用。

第7步:数字传感器!第2部分:PWM和串行通信

有很多方法可以创建更复杂的数字信号!一种方法称为脉冲宽度调制(“PWM”),,这是一种奇特的方式,表示信号在一定时间内开启并关闭一段时间。伺服电机(可用于测量位置)和超声波传感器是使用PWM信号的传感器示例。

还有一些传感器使用串行通信来发送数据一位,或二进制数字,一次。这些传感器需要熟悉读取数据表,如果您刚开始使用它们会非常棘手。幸运的是,常见的串行传感器将具有代码库*和示例程序,因此您仍然可以拼凑一些功能性的东西。有关串行通信协议的更多细节超出了本教程的范围,但是这里有一个很好的资源来自SparkFun的串行通信以了解更多信息

对于这个示例项目,让我们使用温度和湿度传感器(DHT11)!这是一个带有孔和3个针脚的蓝色正方形。

首先,我们需要为DHT11传感器提供一些特殊的库: DHT11库和Adafruit统一传感器库。

安装这些库(以及大多数其他Arduino库):

步骤1:打开Arduino库管理器,转到草图 - 》库 - 》管理库(照片2)

步骤2:安装并激活DHT库,搜索“DHT”,然后单击“安装”以获取“DHT Arduino Library”(照片3)

步骤3:安装并激活Adafruit统一传感器库,方法是搜索“Adafruit Unified Sensor”并单击“安装”。

步骤4:插入DHT库Libraries,然后单击“DHT Arduino Library。”(照片4)这将在草图顶部插入几行新行,这意味着我们的库现在处于活动状态随时可以使用!(照片5)

*就像你喜欢的一样ocal库,代码库是丰富的知识和其他人的辛勤工作,我们可以用来使我们的生活更轻松,yay!

第8步:项目2:温度和湿度数字串行传感器

抓住3个男性到来自Elegoo Arduino入门套件的女性跳线我们已经准备好了!

第1步:当标题针朝向你时,连接最右边的标题将DHT11引脚连接到Arduino接地(“GND”)引脚。

步骤2:将中间接头引脚连接到Arduino 5V 输出引脚。

步骤3:将最左边的标头引脚连接到Arduino数字引脚2。

第4步:最后,阅读DHT库并试着写一个草图! Oooor你可以在Arduino中使用我的或DHT测试示例草图 - 》示例!

当你启动并运行时,出去测量所有东西的温度和湿度! 。.就像动物的呼吸,温室或一年中不同时间你最喜欢的攀岩点,找到*完美的*发送温度。

步骤9:模拟传感器!

在难以深入数字传感器后,模拟传感器看起来轻而易举!模拟信号是连续信号,如第2张照片所示。大多数物理世界存在于模拟(例如温度,年龄,压力等),但由于计算机是数字*,大多数传感器将输出数字信号。一些微控制器,如Arduino板,也可以读取模拟信号**。

对于大多数模拟传感器,我们给出传感器功率,然后使用模拟输入引脚读取模拟信号。对于此测试,我们将使用更简单的设置来测量LED上的电压时LED上的电压。

*计算机使用数字信号存储和传输信息。这是因为数字信号更易于检测且更可靠,因为我们必须担心的是信号与否,而不必担心信号的质量/准确性。

**要在数字设备上读取模拟信号,我们必须使用模数转换器ADC转换器,它通过将输入与已知输入进行比较来近似模拟信号设备上的电压,然后计算达到输入电压所需的时间。有关详细信息,这是一个有用的网站。

步骤10:项目3:LED作为光传感器!

抓住LED(白色以外的任何颜色),100欧姆电阻和2根跨接电缆。哦,还有面包板!

步骤1:将LED插入面包板,右侧有较长的腿。

步骤2 :连接Arduino模拟引脚A0的跳线和较长的LED支脚。

步骤3:在较短的LED支脚和面包板负电源导轨之间连接电阻(蓝线旁边)。

步骤4:将Arduino GND引脚连接到面包板上的负电源轨。

步骤5:编写一个读入的草图模拟引脚A0并打印到串行监视器!

以下是启动ya的示例代码。

步骤11:可视化数据:Arduino IDE!

Arduino IDE附带内置工具来可视化数据。我们已经探索了串行监视器的基础知识,它允许我们打印传感器值。 如果您想保存和分析数据,直接从串行监视器复制输出并粘贴到文本编辑器,电子表格或其他数据分析工具中。

我们可以用来查看Arduino程序中的数据的第二个工具是串行绘图仪,串行监视器的可视版本(又称图形)。 要使用Serial Llotter,请转到Tools - 》 Serial Plotter。 照片2中的图表是项目3中LED作为光传感器的输出!*

该图将自动缩放并作为只要您对传感器使用Serial.println(),它也会以不同颜色打印所有传感器。万岁!就是这样!

*如果你看一下,有一个非常有趣的波浪模式,可能是由于我们的头灯中的交流电(“AC”)!

第12步:可视化数据:Excel!第1部分

对于更严肃的数据分析,有一个超酷(并且免费!)Excel的加载项称为 Data Streamer *,。

这个加载项从串口读取,所以我们可以使用完全相同的编码威廉希尔官方网站 将数据打印到串口,直接将数据输入Excel 。.哎呀!

如何使用Data Streamer加载项:

1。 一旦安装完毕(或者如果你有O365),点击Excel中的Data Streamer标签(最右边)。

2。 插入Arduino并点击“连接设备”,,然后从下拉菜单中选择Arduino。(照片1)

第3。单击“开始数据”开始数据收集! (照片2)您会看到三张新纸张打开:“数据输入”,“数据输出”和“设置”。

实时数据打印在数据输入表中。 (照片3)每行对应一个传感器读数,最新值打印在最后一行。

默认情况下,我们只获得15行数据,但您可以通过转到“设置”来更改此行。我们最多可以收集500行(限制是由于Excel带宽 - 背景中发生了很多事情!)。

*完全披露:虽然本教程不隶属于我,但我确实工作w/开发此插件的Microsoft Hacking STEM团队。

步骤13:可视化数据:Excel!第2部分

4。添加数据图!做一些数据分析!

散点图显示传感器读数如何随时间变化,这与我们在Arduino串行绘图仪中看到的相同。

添加散点图:

转到“插入” - 》“图表” - 》“散点”。弹出绘图后,右键单击它并选择“选择数据”,然后选择“添加”。我们希望我们的数据显示在y轴上,x轴上带有“time”*。为此,请单击 y轴旁边的箭头,转到数据输入表,然后选择所有传入的传感器数据(照片2)。

我们也可以在Excel中进行计算和比较!要编写公式,单击一个空单元格并键入等号(“=”),然后执行您要执行的计算。有很多内置命令,如平均值,最大值和最小值。

要使用命令,键入等号,命令名称和左括号,然后选择要分析的数据并关闭括号(照片3)

5。要发送多列数据(AKA多个传感器),请在逗号分隔的同一行上打印值,最后一行为空行,如下所示:

Serial.print(sensorReading1);

Serial.print(“,”);

Serial.print(sensorReading2);

Serial.print(“,”);

Serial.println();

*如果希望实际时间在x轴上,请在“数据输入”表中的“A列”中为散点图中的x轴值选择时间戳。无论哪种方式,我们都会看到我们的数据随着时间的推移而变化。

第14步:进行测量并测量所有事情!!

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 微控制器
    +关注

    关注

    48

    文章

    7552

    浏览量

    151423
  • Arduino
    +关注

    关注

    188

    文章

    6469

    浏览量

    187071
收藏 人收藏

    评论

    相关推荐

    FPGA 与微控制器优缺点比较

    在现代电子设计领域,FPGA和微控制器(MCU)是两种常用的计算平台。它们各自具有独特的优势和局限性,适用于不同的应用场景。 性能 FPGA FPGA是一种可编程的硬件,由大量的逻辑单元、触发
    的头像 发表于 12-02 09:58 316次阅读

    stm32与Arduino的比较

    微控制器的世界里,STM32和Arduino是两个经常被提及的名字。STM32是一系列由STMicroelectronics生产的高性能微控制器,而Arduino则是一个开源电子原型
    的头像 发表于 11-19 15:45 861次阅读

    嵌入式系统中微控制器与微处理的区别

    嵌入式微控制器已成为我们日常接触的众多设备背后的无声指挥者。从用于烹饪食物的微波炉到监测健康的智能手表,微控制器确保这些设备能够精准、可靠地运作。本文的目的是揭示嵌入式微控制器的世界,帮助读者理解
    的头像 发表于 10-14 11:02 446次阅读
    嵌入式系统中<b class='flag-5'>微控制器</b>与微处理<b class='flag-5'>器</b>的区别

    ESP32 微控制器系列指南

    2024-05-29 Don Wilcher [微控制器] ESP32 微控制器已成为物联网 (IoT) 和嵌入式控制器领域的核心部分。 ESP32 生态系统的制造商 Espressif
    的头像 发表于 10-02 18:21 2731次阅读
    ESP32 <b class='flag-5'>微控制器</b>系列指南

    C2000™微控制器的USB闪存编程

    电子发烧友网站提供《C2000™微控制器的USB闪存编程.pdf》资料免费下载
    发表于 09-26 11:30 0次下载
    C2000™<b class='flag-5'>微控制器</b>的USB闪存编程

    什么是微控制器/它的关键组成部分有哪些?

    微控制器
    芯广场
    发布于 :2024年09月18日 15:02:33

    微控制器内部的存储有哪些

    微控制器(MCU)内部的存储微控制器系统的重要组成部分,它负责存储程序代码、数据以及控制逻辑等信息。这些存储类型多样,各具特点,共同支
    的头像 发表于 08-22 10:41 771次阅读

    微控制器的结构和应用

    微控制器(Microcontroller Unit,简称MCU)作为嵌入式系统的核心部件,其原理和应用在现代科技发展中占据了举足轻重的地位。本文将从微控制器的原理、基本结构、工作原理、性能特点以及广泛的应用领域等方面进行详细阐述,旨在全面介绍
    的头像 发表于 08-22 10:40 1023次阅读

    微控制器与运动控制器的区别

    随着现代工业威廉希尔官方网站 的快速发展,控制威廉希尔官方网站 在各种机械设备中扮演着越来越重要的角色。微控制器和运动控制器作为两种常见的控制设备,在各自的领域发挥着重要作用。然而,两者在功能、应用、特点等方面存
    的头像 发表于 06-13 14:52 635次阅读

    微控制器是否能替代PLC

    在工业自动化和控制系统领域,微控制器(MCU)和可编程逻辑控制器(PLC)都是不可或缺的核心设备。它们各自具有独特的功能和优势,并在不同的应用场景中发挥着重要作用。然而,关于微控制器
    的头像 发表于 06-13 14:52 676次阅读

    微控制器的定义和工作原理

    微控制器,作为现代电子威廉希尔官方网站 中的核心部件,其发展历程与电子威廉希尔官方网站 的进步息息相关。自20世纪70年代中期诞生以来,微控制器凭借其高度集成化、低成本、高性能等优势,已广泛应用于电机控制、条码阅读
    的头像 发表于 05-24 17:17 1666次阅读

    新唐科技宣布推出基于微控制器的终端AI平台,加速AI应用普及

    新唐科技宣布推出基于微控制器的终端AI平台,使AI生态系扩展至微控制器领域。
    的头像 发表于 04-23 09:58 725次阅读

    针对 C2000™ 微控制器的集成微控制器 (MCU) 电源解决方案数据表

    电子发烧友网站提供《针对 C2000™ 微控制器的集成微控制器 (MCU) 电源解决方案数据表.pdf》资料免费下载
    发表于 03-04 14:12 0次下载
    针对 C2000™ <b class='flag-5'>微控制器</b>的集成<b class='flag-5'>微控制器</b> (MCU) 电源解决方案数据表

    S1C17M02,S1C17M03微控制器

    微控制器
    Piezoman压电侠
    发布于 :2024年01月24日 17:53:48

    继电器光耦在微控制器中的应用

    继电器是电子系统中的重要组件,用作使用低功率信号控制高功率电路的开关。继电器与微控制器的集成在各种应用中变得越来越普遍。该领域的一个重大进步是继电器光耦合的使用,这是一种增强基于微控制器
    的头像 发表于 01-05 16:09 464次阅读
    继电器光耦在<b class='flag-5'>微控制器</b>中的应用