电子发烧友App

硬声App

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

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

3天内不再提示
电子发烧友网>电子资料下载>电子资料>使用Adafruit IO的无线警铃

使用Adafruit IO的无线警铃

2023-07-05 | zip | 0.31 MB | 次下载 | 免费

资料介绍

描述

在这个项目中,我使用 ESP8266-01 通过 MQTT 协议使用互联网触发警报到所需目的地(连接到 NodeMCU 的蜂鸣器)。只要 ESP8266 都可以通过 WiFi 访问互联网,就可以从任何远程位置操作警报按钮。单个按钮执行以下功能。

1. 短时间按下按钮时(500 到 1500 毫秒之间)- 每隔短时间(alert-1)鸣响蜂鸣器触发警报。

2. 长时间按下按钮时(超过 1500 毫秒)- 通过保持蜂鸣器高电平触发警报(alert-2)。

3.当按钮刚被点击时(少于500毫秒)-禁用警报。

MQTT 协议

MQTT 是一种轻量级的消息传递协议,它使用发布/订阅操作在客户端和服务器之间交换数据。我使用了这个协议,因为它是开发“物联网”项目的理想选择,因为它速度更快、使用的数据包更少并且专为受限设备而设计。

pYYBAGOX4HaAX1BbAAAXdv5DVOE481.png
 

MQTT 代理作为客户端(NodeMCU 和 ESP8266-01)之间基于感兴趣主题的信息交换媒介。我在这个项目中使用的主题是“警报”。由于 ESP8266-01 必须发送按钮的状态,它会将关于“警报”主题的数据“发布”到 MQTT 代理。在接收端,NodeMCU “订阅”了相同的主题,因此它接收到按钮状态。根据接收到的按钮状态,连接到 NodeMCU 的蜂鸣器运行。我使用了 Adafruit io 的 MQTT 代理,因为它免费且易于实现。为此,我们需要在 Adafruit io 上设置仪表板。

设置 Adafruit 仪表板

要创建新仪表板,我已按照adafruit io提供的步骤进行操作

1.仪表板创建后,您将看到一个空白屏幕。要添加块,您需要单击“+”图标。

poYBAGOX4HiAQVMNAADEbXfKgIU322.jpg
初始仪表板设置
 

2. 选择量块。

pYYBAGOYtVSAIICEAAB95d6LJXI018.jpg
选择量块
 

3. 创建一个新的提要作为“警报”并选择提要。ESP8266 的草图被编程为将数据发送到同一馈送。

 
 
 
pYYBAGOYtVaAWi4ZAABLmzJrZS0398.jpg
 
1 / 2创建一个新的提要作为“警报”
 

4. 输入仪表的最小值和最大值为“1”和“3”。值'1'是禁用警报,'2'是触发alert-1,'3'是触发alert-2。

poYBAGOYtViAHm_CAAB8DxavpZw305.jpg
输入仪表的最小值和最大值
 

5. 仪表最终设置完毕,您将能够在仪表板屏幕中看到它。

poYBAGOYtVuAGNX6AADc171uRlg138.jpg
最终仪表板设置
 

要向/从仪表“发布”和“订阅”数据,我们需要将草图上传到 NodeMCU 和 ESP8266-01。

上传草图

ESP8266 的草图已从示例草图修改(示例-> Adafruit MOTT 库-> mqtt_esp8266)

如果您是 ESP8266 的新手,请确保在 Arduino IDE 上安装 ESP8266 板。在上传我的第一个草图之前,我已经按照此处给出的步骤进行操作。

该草图需要以下,您可以从 Arduino IDE(工具->库管理器)本身安装这些库。

1. Adafruit IO Arduino (由 Adafruit 提供)

2. Adafruit MQTT 库(由 Adafruit 提供)

3. ArduinoHttpClient (由 arduino 提供)

在将草图上传到两个 ESP8266 模块之前,请确保在草图中输入SSID、密码、用户名、Aio 密钥

pYYBAGOabJyAKoJDAABwUtRGuG8924.jpg
 

ESP8266 通过互联网运行时,也可以为它们分配单独的 SSID 和密码。

用户名aio 密钥可以从 adafruit 仪表板右上角获取。在 IDE 草图中复制相同的内容。

 
 
 
poYBAGOabJ6AYf28AAA6-o0krpY927.jpg
 
1 / 2
 

将草图上传到 ESP8266-01 可能有点棘手。我已经使用 Arduino UNO 对 ESP8266-01 进行了编程。如下所示进行连接。

poYBAGOabKCAX0hJAAEbk2Ir4ow347.jpg
 

在 IDE 中选择板作为“通用 ESP8266 模块”并上传草图。我建议您在使用锂电池/锂离子电池时使用稳压器(查看此处了解更多信息)。

连接到 ESP8266-01 的 Pin-2 的 LED 提供有关按钮按下和连接到 MQTT 的状态。最初,LED 将闪烁一秒钟,表示与 MQTT 的连接成功。如果按下按钮触发警报 1(小于 500 和 1500 毫秒),则 LED 会立即闪烁,如果按下按钮以触发警报 2(大于 1.5 秒),则 LED 会一直亮起直到它转动关闭(当按钮被点击时)。

pYYBAGOabKeAWiIzABJzLT13jz4788.jpg
ESP8266-01(发射器)
 

您会注意到,按下 ESP8266-01 上的按钮后,仪表板上的仪表值会发生变化,这意味着发射端通信成功。

如果仪表值发生变化,则 NodeMCU 接收到它并响起与按下的按钮相对应的蜂鸣器。NodeMCU 的内置 LED 还提供有关与 MQTT 代理连接的指示。最初,当 NodeMCU 打开时,LED 变为高电平表示它正在连接,当 LED 变为低电平时,表示与代理的连接成功。

pYYBAGOabKyAUFnEAAiaHsBl0Kg737.jpg
NodeMCU(接收器
 

 

 

 


下载该资料的人也在下载 下载该资料的人还在阅读
更多 >

评论

查看更多

下载排行

本周

  1. 1山景DSP芯片AP8248A2数据手册
  2. 1.06 MB  |  532次下载  |  免费
  3. 2RK3399完整板原理图(支持平板,盒子VR)
  4. 3.28 MB  |  339次下载  |  免费
  5. 3TC358743XBG评估板参考手册
  6. 1.36 MB  |  330次下载  |  免费
  7. 4DFM软件使用教程
  8. 0.84 MB  |  295次下载  |  免费
  9. 5元宇宙深度解析—未来的未来-风口还是泡沫
  10. 6.40 MB  |  227次下载  |  免费
  11. 6迪文DGUS开发指南
  12. 31.67 MB  |  194次下载  |  免费
  13. 7元宇宙底层硬件系列报告
  14. 13.42 MB  |  182次下载  |  免费
  15. 8FP5207XR-G1中文应用手册
  16. 1.09 MB  |  178次下载  |  免费

本月

  1. 1OrCAD10.5下载OrCAD10.5中文版软件
  2. 0.00 MB  |  234315次下载  |  免费
  3. 2555集成电路应用800例(新编版)
  4. 0.00 MB  |  33566次下载  |  免费
  5. 3接口电路图大全
  6. 未知  |  30323次下载  |  免费
  7. 4开关电源设计实例指南
  8. 未知  |  21549次下载  |  免费
  9. 5电气工程师手册免费下载(新编第二版pdf电子书)
  10. 0.00 MB  |  15349次下载  |  免费
  11. 6数字电路基础pdf(下载)
  12. 未知  |  13750次下载  |  免费
  13. 7电子制作实例集锦 下载
  14. 未知  |  8113次下载  |  免费
  15. 8《LED驱动电路设计》 温德尔著
  16. 0.00 MB  |  6656次下载  |  免费

总榜

  1. 1matlab软件下载入口
  2. 未知  |  935054次下载  |  免费
  3. 2protel99se软件下载(可英文版转中文版)
  4. 78.1 MB  |  537798次下载  |  免费
  5. 3MATLAB 7.1 下载 (含软件介绍)
  6. 未知  |  420027次下载  |  免费
  7. 4OrCAD10.5下载OrCAD10.5中文版软件
  8. 0.00 MB  |  234315次下载  |  免费
  9. 5Altium DXP2002下载入口
  10. 未知  |  233046次下载  |  免费
  11. 6电路仿真软件multisim 10.0免费下载
  12. 340992  |  191187次下载  |  免费
  13. 7十天学会AVR单片机与C语言视频教程 下载
  14. 158M  |  183279次下载  |  免费
  15. 8proe5.0野火版下载(中文版免费下载)
  16. 未知  |  138040次下载  |  免费