基于物联网的智能水箱监控系统,采用浮子传感器和NodeMCU
扫描二维码
随时随地手机看文章
在这里,我们正在构建一个物联网水位监测系统,使用浮动液位传感器和NodeMCU ESP8266来监测水位并将其发布在web服务器上。本系统在水位低时自动开启水泵,在水位满时自动关闭水泵。用户也可以从web服务器手动覆盖对泵的控制。如果您是ESP8266的新手,那么在继续之前先学习创建基于ESP8266的web服务器。此外,在这里查看其他基于ESP8266的物联网项目。
浮子传感器
浮子传感器或浮子开关传感器是一种用于感应罐内液体液位的装置。这种水浮开关的主要用途是在液体水位上升或下降时打开或关闭电路。大多数浮子开关处于“常闭”位置。这意味着当浮子处于底部位置时(例如,当油箱是空的),来自开关顶部的两根电线完成了一个电路。浮子开关使用磁簧开关来打开或关闭电路。簧片密封在玻璃管中,玻璃管用环氧树脂粘合在塑料或不锈钢阀杆上。
这种磁浮子传感器包裹着一个密封的磁铁,当液位上升或下降时,它沿着阀杆的长度上下移动。当磁铁靠近两个触点时,它允许电流通过,当磁铁离开时,触点分离并消磁,从而断开电路。一个正确使用的浮动开关可以提供数百万个ON/OFF周期,运行多年。故障通常是由于过载,引起频繁的尖峰电压。浮子开关可用于驱动泵、报警器、指示灯或其他设备。由于开关能承载的电流很小(0.5A),当它连接到负载时必须使用继电器。开关可以很容易地从常开转换为常闭通过反压浮子。
用Arduino IDE编程NodeMCU
要用Arduino IDE编程NodeMCU,请进入File - > preferences - >Settings。
在“附加板管理器URL”字段中输入,然后单击“确定”。
现在转到Tools > Board > Boards Manager。
在板管理器窗口中,在搜索框中输入esp, esp8266将在下面列出。现在选择最新版本的板并点击安装。
安装完成后,进入Tools >Board >,选择“NodeMCU 1.0(ESP-12E Module)”。现在您可以使用Arduino IDE对NodeMCU进行编程。
所需的组件
•ESP8266 NodeMCU
•浮子传感器
•继电器模块
•LED
•连接电线
•Arduino IDE
线路图
以下是水位自动监测系统的电路图:
这里,水位浮动开关用于确定水箱内的水位。浮子开关由两根电线组成。浮动开关一根接在NodeMCU的D4引脚(GPIO2)上,另一根接在接地上。浮子传感器的值由NodeMCU读取。如果值为“HIGH”则表示油箱已满,如果值为“LOW”则表示油箱为空。D1pin脚(GPIO5)接继电器模块,接水泵开关。当水位低时开关自动打开,当水位高时开关自动关闭。
代码的解释
本文最后给出了该无线水位监测系统的完整程序。将程序复制并上传到NodeMCU,打开串口监视器。在串行监视器中,您将能够看到一些信息,如WiFi是否连接。如果它已连接,您将获得本地IP地址,这里是192.168.1.23(这对您来说可能不同)。记下串行监视器上显示的那个。
注意:如果串口显示器是空白的,没有显示任何东西,那么按下NodeMCU板上的RESET按钮
现在,在上传代码后,在您的计算机上打开一个网页(只需在b谷歌Chrome, Firefox或任何浏览器中打开一个页面),并在地址栏中输入我们从串行监视器收集的IP地址,然后单击键盘上的ENTER。现在你将能够看到水位,你也可以从web服务器控制泵的开/关。网页应该如下所示:
本文编译自iotdesignpro