基于物联网的智能门锁系统使用NodeMCU
扫描二维码
随时随地手机看文章
从联网汽车到联网可穿戴设备再到家庭安全,物联网正迅速进入各个领域。现在我们有物联网支持的家庭自动化和安全设备,可以使用物联网从世界任何地方控制。市场上有很多种类的Wi-Fi门锁,可以让你的家更安全,节省找钥匙的时间。在这里,我们还构建了一个类似的Wi-Fi门锁,可以通过智能手机控制。
所以在这个项目中,我们将使用NodeMCU,电磁锁和Adafruit IO来制作一个基于物联网的门锁系统。在这里,NodeMCU将作为主控制器,通过互联网将用户连接到门锁系统。这使得用户可以在世界任何地方使用智能手机锁定/解锁他家的门锁。
组件的要求
•NodeMCU ESP8266
•电磁锁
•继电器模块
•蜂鸣器
我们在之前的许多物联网项目中使用了NodeMCU ESP8266,这里我们使用的是电磁门锁,所以让我们先了解一下这个电子门锁。
电磁锁
在传统的门锁中,有钥匙来拉动或推动门闩,我们必须手动操作,而在电磁锁中,门闩可以通过施加电压来自动操作。电磁锁有一个低压电磁阀,当中断(按钮,继电器等)被激活时,将门闩拉回门中。锁存器将保持其位置,直到中断被启用。电磁锁的工作电压为12V。您也可以使用9V,但它会导致较慢的操作。电磁门锁主要用于偏远地区,实现自动化操作,不涉及任何人力。
智能门锁电路图
Wi-Fi门锁的电路图如下所示。
这个物联网智能门锁的连接非常简单,因为我们只连接一个电磁锁,继电器模块和一个蜂鸣器与NodeMCU ESP8266。继电器的输入引脚接在NodeMCU的D5引脚上,VCC和接地引脚接在NodeMCU的Vin和GND引脚上。蜂鸣器的正引脚接在NodeMCU的D6引脚上,GND引脚接在NodeMCU的GND上。
我已经焊接了Perfboard上的所有组件,如下图所示:
这是wifi门锁安装在门上后的完整设置:
Adafruit IO设置物联网门锁
Adafruit IO是一个开放的数据平台,允许您在云中聚合、可视化和分析实时数据。使用Adafruit IO,您可以在互联网上上传,显示和监控数据,并使您的项目启用物联网。您可以使用Adafruit IO控制电机,读取传感器数据,并通过互联网制作酷的物联网应用程序。为了测试和尝试,有一些限制,Adafruit IO是免费使用的。我们以前也使用过Adafruit IO与树莓派,Arduino和ESP32。
1. 要使用Adafruit IO,首先,您必须在Adafruit IO上创建一个帐户。要做到这一点,请访问Adafruit IO网站,点击屏幕右上方的“免费开始”。
2. 在完成帐户创建过程后,登录您的帐户并单击右上角的“AIO密钥”以获取您的帐户用户名和AIO密钥。
当你点击“AIO密钥”,一个窗口将弹出你的Adafruit IO AIO密钥和用户名。复制此密钥和用户名,稍后将在代码中用到。
3. 现在,在此之后,您需要创建一个提要。要创建提要,请单击“feed”。然后点击“Actions”,然后点击“Create a New Feed”,如下图所示。
4. 在此之后,将打开一个新窗口来输入提要的名称和描述。书写描述是可选的。
5. 点击“创建”,然后;您将被重定向到新创建的提要。
在创建提要之后,现在创建Adafruit IO仪表板,以添加一个开关按钮来打开和关闭门锁。为此,首先创建一个指示板,然后在该指示板中添加提要。
要创建仪表板,请单击dashboard选项,然后单击“Action”,然后单击“create a New dashboard”。
在下一个窗口中,输入仪表板的名称并单击“Create”。
6. 随着仪表板的创建,现在我们将把提要添加到仪表板中。要添加提要,请单击右上角的“+”。
这里我们将添加一个切换按钮块来打开和关闭Wi-Fi门锁。要在仪表板上添加按钮,请单击Toggle块。
在下一个窗口中,它将要求您选择提要,因此单击您的提要。
添加切换按钮后,我的仪表板如下所示。您可以通过单击设置按钮来编辑仪表板。
代码的解释
在文档末尾给出了使用物联网的智能门锁的完整代码和工作视频。下面给出了代码的详细解释。
首先,包括所有必需的库。在这个程序中,只使用Adafruit MQTT和ESP8266WiFi.h库。您可以通过以下链接下载Adafruit库。
然后包括从Adafruit IO服务器复制的WiFi和Adafruit IO凭据。这些将包括MQTT服务器、端口号、用户名和AIO密钥
然后使用前面提供的凭据设置MQTT连接。
设置你订阅的订阅源。这里‘ Lock ’是Feed的名称。
在void设置函数中,定义蜂鸣器引脚和继电器引脚作为输出。
现在,void循环函数将不断检查订阅提要中的数据,并将该数据与定义的字符串进行比较。如果接收到的字符串和定义的字符串都是相同的,那么它将根据数据执行进一步的操作。
测试基于物联网的门锁系统
硬件和代码准备好后,将NodeMCU连接到笔记本电脑并上传代码。之后,打开Adafruit IO仪表板并切换按钮以打开和关闭门。
本文编译自iotdesignpro