基于物聯(lián)網(wǎng)的智能水箱監(jiān)控系統(tǒng),采用浮子傳感器和NodeMCU
在這里,我們正在構建一個物聯(lián)網(wǎng)水位監(jiān)測系統(tǒng),使用浮動液位傳感器和NodeMCU ESP8266來監(jiān)測水位并將其發(fā)布在web服務器上。本系統(tǒng)在水位低時自動開啟水泵,在水位滿時自動關閉水泵。用戶也可以從web服務器手動覆蓋對泵的控制。如果您是ESP8266的新手,那么在繼續(xù)之前先學習創(chuàng)建基于ESP8266的web服務器。此外,在這里查看其他基于ESP8266的物聯(lián)網(wǎng)項目。
浮子傳感器
浮子傳感器或浮子開關傳感器是一種用于感應罐內(nèi)液體液位的裝置。這種水浮開關的主要用途是在液體水位上升或下降時打開或關閉電路。大多數(shù)浮子開關處于“常閉”位置。這意味著當浮子處于底部位置時(例如,當油箱是空的),來自開關頂部的兩根電線完成了一個電路。浮子開關使用磁簧開關來打開或關閉電路?;善芊庠诓AЧ苤?,玻璃管用環(huán)氧樹脂粘合在塑料或不銹鋼閥桿上。
這種磁浮子傳感器包裹著一個密封的磁鐵,當液位上升或下降時,它沿著閥桿的長度上下移動。當磁鐵靠近兩個觸點時,它允許電流通過,當磁鐵離開時,觸點分離并消磁,從而斷開電路。一個正確使用的浮動開關可以提供數(shù)百萬個ON/OFF周期,運行多年。故障通常是由于過載,引起頻繁的尖峰電壓。浮子開關可用于驅(qū)動泵、報警器、指示燈或其他設備。由于開關能承載的電流很小(0.5A),當它連接到負載時必須使用繼電器。開關可以很容易地從常開轉(zhuǎn)換為常閉通過反壓浮子。
用Arduino IDE編程NodeMCU
要用Arduino IDE編程NodeMCU,請進入File - > preferences - >Settings。
在“附加板管理器URL”字段中輸入,然后單擊“確定”。
現(xiàn)在轉(zhuǎn)到Tools > Board > Boards Manager。
在板管理器窗口中,在搜索框中輸入esp, esp8266將在下面列出?,F(xiàn)在選擇最新版本的板并點擊安裝。
安裝完成后,進入Tools >Board >,選擇“NodeMCU 1.0(ESP-12E Module)”。現(xiàn)在您可以使用Arduino IDE對NodeMCU進行編程。
所需的組件
?ESP8266 NodeMCU
?浮子傳感器
?繼電器模塊
?LED
?連接電線
?Arduino IDE
線路圖
以下是水位自動監(jiān)測系統(tǒng)的電路圖:
這里,水位浮動開關用于確定水箱內(nèi)的水位。浮子開關由兩根電線組成。浮動開關一根接在NodeMCU的D4引腳(GPIO2)上,另一根接在接地上。浮子傳感器的值由NodeMCU讀取。如果值為“HIGH”則表示油箱已滿,如果值為“LOW”則表示油箱為空。D1pin腳(GPIO5)接繼電器模塊,接水泵開關。當水位低時開關自動打開,當水位高時開關自動關閉。
代碼的解釋
本文最后給出了該無線水位監(jiān)測系統(tǒng)的完整程序。將程序復制并上傳到NodeMCU,打開串口監(jiān)視器。在串行監(jiān)視器中,您將能夠看到一些信息,如WiFi是否連接。如果它已連接,您將獲得本地IP地址,這里是192.168.1.23(這對您來說可能不同)。記下串行監(jiān)視器上顯示的那個。
注意:如果串口顯示器是空白的,沒有顯示任何東西,那么按下NodeMCU板上的RESET按鈕
現(xiàn)在,在上傳代碼后,在您的計算機上打開一個網(wǎng)頁(只需在b谷歌Chrome, Firefox或任何瀏覽器中打開一個頁面),并在地址欄中輸入我們從串行監(jiān)視器收集的IP地址,然后單擊鍵盤上的ENTER?,F(xiàn)在你將能夠看到水位,你也可以從web服務器控制泵的開/關。網(wǎng)頁應該如下所示:
本文編譯自iotdesignpro