如何使用Blynk创建自己的物联网闹钟

这篇文章来源于DevicePlus.com英语网站的翻译稿。

iot alarm clock

欢迎观看本项目的演示视频

概览

想象一下,在一个环境中,您可以煮咖啡,打开窗帘,打开浴室灯,每天早上播放您最喜欢的音乐,而这些并不需要移动您的手指。

您很幸运,这已不再是梦想。这很可能是您亲力亲为的下一个项目!在本教程中,我们将使用Particle Photon创建一只简单的智能物联网闹钟。我们将从简单的功能开始,例如在您自己的智能手机中设置闹钟警报声。我们还会在下文中讲述更多功能。

硬件:

  1. 1套Particle Photon开发板
  2. 1台2×16液晶屏
  3. 1只蜂鸣器

 

软件:

  1. Online particle IDE 或 particle Dev
  2. Blynk 应用程序

 

Particle Photon

iot alarm clock

图1:Photon / © Particle

Particle是一只小型微控制器,可轻松将设备连接到互联网并通过网络和手机应用程序交换数据。Particle(以及Arduino)是目前市场上最受欢迎的微控制器之一,拥有如下优势(来源:Particle公司):

 

iot alarm clock

从去年开始就实现了Microsoft Azure与Particle的配套使用。现在可以直接从Particle发送数据到Azure并显示结果。

强烈建议您在设置前认真阅读此处的Particle Setup Guide(Particle设置指南)。阅读指南可以让您更好地了解设备的工作方式以及互联网连接的相关知识,这点至关重要。

本设备设有几种模式,可以通过设备上RGB LED的颜色进行识别。例如,设备尝试连接到互联网时会以绿色闪烁。如果WiFi模块关闭,则以白色闪烁。因此,只需看LED的颜色,就可以了解Particle所处的模式。

Particle Dev

您可以通过云(Tinker应用程序)或IDE在线/离线等多种方式对Photon进行编程。

为简化编程过程,本例中选用了选择了离线IDE模式(Particle Dev)。Particle的编程方式和Arduino的IDE非常类似。您可以轻松创建文件夹并添加程序代码所需的所有文件,例如该文件夹中使用的库。

开始

本项目分为以下几个步骤。请按照适合自己节奏的步骤操作。在本项目中首先将Photon连接到一个名为Blynk的应用程序,然后观察从Blynk发来的信号导致Photon的内置LED(数字引脚7)闪烁的情况,并进行简单的测试。

下一步,使屏幕与Particle一起正常工作。本项目中使用Particle Photon对LCD的接线方法进行说明,并绘制了LCD闪烁模式的草图,还提供了该步骤所需的库。稍后还需使用此LCD来显示日期和时间。

在最后的草图中说明了判断蜂鸣器是否正常工作的方法。该蜂鸣器用作嗡嗡声警报,所以必须确保其声音足够响亮。

1. 使用Blynk创建一个简单的应用程序

iot alarm clock

本例中从Blynk的一个简单功能开始,以控制Particle Photon开发板上内置的LED。Photon在D7引脚上配有一个内置的LED,与Arduino UNO不同,后者在D13上配有LED。

按照以下步骤创建您的第一个应用程序,用来控制Particle Photon:

  1. 创建您的项目
  2. 选择您的主微控制器
  3. 获取实现应用程序与硬件项目链接所需的身份验证口令
  4. 将微件和功能添加到工作区

*如果您不熟悉Blynk并且您不确定如何使用该应用程序,可参见我以前发布的A Smart Mailbox短文(在Blynk Mobile App章节中)。

首先创建一个新项目。

iot alarm clock

输入项目标题,然后选择“Particle Photon”作为硬件模型。点击“Email”(电子邮件),获取正确的身份验证口令,该口令稍后用于最终代码中,该代码以闪存方式编入Particle内。按下按钮后,相关口令会直接发送到您的电子邮箱。

iot alarm clock

现在,您已经创建了适用于您的应用的基本平台。使用“添加”按钮和其他小功能可添加您自己的功能。

iot alarm clock

按右上角的“+”图标,在Blynk提供的可用按钮和微件之间进行选择。

iot alarm clock

为了简单起见,选择了一个简单按钮来测试应用程序的闪烁功能。

iot alarm clock

将其拖动到工作区后,点击按钮。点击后会打开一个窗口,选择按钮设置,可对引脚编号、按钮名称及按钮状态(开关方式/按钮方式)进行设置。

本项目中选择了D7作为photon的输入,并设置了按钮方式。

iot alarm clock

按钮已设置,您可以看到该按钮显示为D7。

iot alarm clock

草图:

运行应用程序前,必须在您的Particle中刷新该代码

如何刷新代码?操作很简单!下载代码并在Particle IDE中打开。

iot alarm clock

通过左上角的“验证”按钮对代码进行编译,然后以闪存方式存入设备内。您能够在代码中看到任何错误(若存在错误)。

iot alarm clock

通过闪存按钮可将代码编入设备内。

2. 连接液晶屏

iot alarm clock

图2:2×16 液晶屏

液晶屏为16列*2行点阵型,这足以满足要求。

按照示例的草图和接线图进行操作。

接线:

iot alarm clock

 

iot alarm clock

图3:LCD和Photon接线图

草图:

如上所述,完成LCD屏幕的连接和接线后,将此图上传到Particle Photon。

“Hello Sparky”将显示出来,其定时器从您打开LCD的那一刻开始计算。

如果您得到不同的结果,请返回并再次检查接线。

iot alarm clock

图4:LCD引脚图/©allaboutcircuits

3. 测试蜂鸣器功能

iot alarm clock

图5:蜂鸣器/©linksprite

准备一只警报时能发出嗡嗡声蜂鸣器。这款小型蜂鸣器只需2根引脚即可实现所有功能:一根为接地脚,另一根为Photon的输入脚。选择数字引脚6用来输入信号。

 

iot alarm clock

iot alarm clock

图6:LCD、Photon和蜂鸣器的接线图

 

草图:

该草图的功能是从蜂鸣器中提取警报音。

 

4. 通过Blynk应用程序设置闹钟

然后回到Blynk并添加3个新增按钮。操作步骤与前述步骤完全相同。按钮对应于模拟引脚A0、1、2和3。

警报功能采用开关按钮方式实现:按下该按钮可将LCD切换到警报模式,该模式开启后您可以看到警报时间。

Reset(重置)功能采用按钮方式实现:按下该按钮可将预设警报重置为默认值“0:0”。

小时和分钟采用两个按钮:这两个按钮用于控制警报时间的数字。

iot alarm clock

如下面的模式部分所示,将警报按钮的功能设置为开关方式,这点至关重要。

iot alarm clock

与“警报”按钮不同,其他所有按钮将设置为按钮方式,如模式部分所示。

iot alarm clock

主图

在Particle Dev上运行主代码,操作非常简单。只需在IDE上打开主文件夹main folder,然后刷新主文件SparkTimeExample.cpp即可。

该文件夹中包含主代码中使用的所有库,例如Blynk库和RTC“实时时钟”,该时钟能提供互联网同步的准确时间,无需任何外部设备。使用RTC和LCD库,可以在LCD上显示准确的日期和时间。

在Particle Dev中运行主代码的快速指南:

选择包含所有文件的主文件夹(主要代码+库)

iot alarm clock

在闪存中编入代码前,请确保设备在线,如下面的黄色框所示!

请注意,我们只对SparkTimeExample.cpp进行编程

iot alarm clock

总结

智能家居行业近年来发展迅速。越来越多的创新者和研发者正投身这一领域,每天不断研制出各种新的设备。

该物联网闹钟项目的灵感来自Ian Sterling,他使用Microsoft HoloLens开创了一个惊人的项目。按照其理念,他称之为“IoTxMR”,用户只需查看微件并用手势就能进行控制。

DevicePlus 编辑团队
Omar Hussein

自学成才的爱好者和极客。Omar喜欢学习新技巧,能将Arduino连接到他手头能使用的任何东西上。他喜欢创建可以在日常生活中使用的项目。

相关文章

  1. image00-1

    想自己实现DIY物联网项目吗?

  2. image001-copy

    在Fritzing中创建自定义元件

  3. speech-icon-2797263_1280

    如何在Raspberry Pi项目中添加Siri控制

  4. fpga tutorial

    FPGA教程:通过Mojo开发板介绍FPGA – 第1部分

  5. camera-bot

    Arduino与Raspberry Pi连接指南 + 自己动手实现Arduino和Raspberry…

TECH INFO

  • Sugiken老师的电机驱动器课堂
  • 重点必看
  • 技术分享
  • Arduino入门指南

基础知识

  • Si功率元器件
  • IGBT功率元器件
  • 热设计
  • 电路仿真
  • 开关噪声-EMC
  • AC/DC
  • DC/DC
  • 电机
  • 传递函数

工程技巧


Sugiken老师的电机驱动器课堂

PICK UP

PAGE TOP