使用谷歌Firebase和ESP32 NodeMCU的基于物联网的LED控制
扫描二维码
随时随地手机看文章
ESP32是物联网应用的强大硬件平台,广泛用于物联网应用的原型设计和开发。在我们之前的一些会议中,我们已经在许多物联网云平台上使用了ESP32:
•ThingSpeak和ESP32:如何使用ESP32将数据发送到云
•ESP32 Web服务器:从网页控制LED
•谷歌助手使用ESP32和Adafruit IO控制LED
•物联网控制LED使用ESP32与Blynk应用程序
如何使用IFTTT和ESP32触发LED与电子邮件通知
在本文中,我们将看到如何使用google firebase控制台和ESP32来控制LED。
Firebase是谷歌的数据库平台,用于创建、管理和修改从任何android应用程序、web服务、传感器等生成的数据。它基本上是一个移动和web应用程序开发平台,它有许多服务,如Firebase云消息、Firebase认证、实时数据库等。在实时数据库中,我们可以在firebase云上看到实时数据,并且可以使用Internet从任何地方控制任何外围设备。
要从谷歌firebase控制LED,首先我们将设置谷歌firebase控制台,然后是ESP32模块。
需求
•ESP32模块
•USB电缆
•电路试验板
•LED
•跳线
•电阻器1 k
线路图
为ESP32设置Firebase控制台
如果你是第一次使用firebase,那么你必须为firebase创建一个帐户,或者可以直接使用谷歌帐户注册:
在右上角单击“Go to Console”。
点击“添加项目”。
输入您想要的项目名称,然后单击创建项目。
现在你的项目已经创建好了,点击“继续”。
现在,在编程ESP32时,您将需要此项目的主机名和授权密钥/密钥;现在我们来看看这些参数是怎么得到的。
进入设置图标,点击“项目设置”。
现在单击“服务帐户”,然后单击“数据库秘密”。
在点击数据库秘密你会发现一个秘密密钥,复制这个密钥并保存在记事本中,这是你的firebase授权密钥,你以后会需要。
现在点击左侧控制栏的“数据库”。
现在向下滚动,点击“创建数据库”。
现在选择“在测试模式下启动”并单击“启用”。
现在您的数据库已经创建,您将不得不再次来到这里来控制您的LED,现在只需在记事本中复制给定的URL,不带斜杠和http。这是您的firebase主机,您将在稍后需要。
使用Firebase设置ESP32模块
要使用谷歌firebase与ESP32一起工作,您将需要一个firebase库,因此首先使用下面的链接下载该库并将其保存在Arduino库文件中。
现在打开Arduino IDE,转到Sketch- > include Library- > Add . zip Library并添加从上面链接下载的文件。
安装库之后,您就可以使用ESP32使用谷歌firebase了。
现在转到工具,选择ESP32 Dev board和适当的COM端口,复制下面给出的代码,并编辑网络凭据,firebase密钥和firebase主机。编辑后使用Arduino IDE将代码上传到ESP32。
谷歌Firebase ESP32编程
使用ESP32控制LED的完整代码在教程结束时给出
首先包括使用ESP32和firebase的库。
现在输入您的firebase主机、密钥和网络凭据。
在设置功能中,定义输出引脚,延迟,波特率并连接到Wi-Fi。
下面的语句尝试连接firebase服务器。如果主机地址和授权密钥正确,则连接成功。
这是由firebase库提供的用于向firebase服务器发送字符串的类。通过这个我们可以改变LED的状态。
在将一个状态字符串发送到firebase路径后,编写以下语句从同一路径获取LED的状态并将其保存到变量中。
如果接收到的字符串是“ON”或“ON”,那么只需打开输出LED。
如果接收到的字符串是“OFF”或“OFF”,那么只需关闭输出LED。
如果接收到的字符串不是这些,那么就忽略并打印一些错误消息。
输出
上传代码后,打开串行监视器,在浏览器中打开firebase并转到控制台,然后选择前面创建的项目。在这个进入数据库,它会显示最初的LED状态是OFF,从这里你可以通过在这里写ON来改变LED状态,你的LED会变成ON状态,你也可以在串行监视器上看到你的LED状态。
本文编译自iotdesignpro