步驟1:概念
這個想法是將傳感器連接到ESP8266并監視空氣中的氣體量。當氣體量達到一定閾值時,將觸發警報(蜂鳴器)。氣體數據還將定期上傳到云(網絡服務器),從而可以遠程訪問和監視氣體。如果在這段時間內在數據庫中捕獲了數據,則可以將其繪制到圖表上以顯示趨勢。
步驟2:使用的材料
以下是此構建中使用的材料列表:
-ESP8266-這將是使我們能夠連接事物的大腦到互聯網
-氣體傳感器MQ-5
-蜂鳴器
ESP8266是一個很棒的模塊,它允許事物連接到互聯網,即氣體傳感器使用的MQ5允許2種操作模式,數字模式和模擬模式。
第3步:連接圖
我們將氣體傳感器MQ-5連接到ESP8266的模擬輸入(AD0),如圖所示。蜂鳴器連接到GND和D3引腳。
在此示例中,我們使用傳感器的模擬輸出,該輸出允許我們監視更大范圍的氣體。也可以使用傳感器的數字輸出,但是必須正確校準,以確保當檢測到某種氣體成分時,它將給出所需的觸發信號。
第二張圖顯示了使用原型板的連接。我們連接了傳感器和蜂鳴器。 ESP8266由3.3 V供電。開發板允許通過USB連接,將5V轉換為開發板使用的3.3 V。
一旦連接,您就可以將USB連接連接到PC或Mac以上傳通過Arduino IDE編寫代碼。如果您不熟悉Arduino IDE,則可以查看我的其他Instructables文章,以幫助您入門。
步驟4:Web服務器設置
先決條件:您熟悉設置網絡服務器,通過ftp上傳文件,創建虛擬目錄和服務器腳本的過程。如果您不熟悉,請放心,您總是可以讓您的怪異朋友幫助您完成此步驟。
下載“ IoTGasSensorWebserver.zip”文件,然后使用將該文件解壓縮到Web服務器的根目錄您喜歡的ftp軟件,或您喜歡的任何虛擬目錄中。在此示例中,我假設Web服務器為“ http://arduinotestbed.com”
ESP8266將調用的php腳本稱為“ gasdata_store.php”。在此示例中,我們假設此文件的完整路徑為“ http://arduinotestbed.com/gasdata_store.php”
如果您正確上傳了文件,則可以通過指向您的文件來測試一切是否正常Web瀏覽器訪問以下鏈接“ http://arduinotestbed.com/GasData.php”
您應該使用Gas數據撥盤為您提供與上圖類似的站點。
您還需要確保文件“ gas.txt”需要可寫,因此您需要使用以下unix命令將此文件的權限設置為“ 666”:
chmod 666 gas.txt
這也可以使用ftp軟件或網站托管中的文件管理器來完成。
此文件是ESP8266將傳感器數據上傳到的文件。
步驟5:代碼
一旦完成所有設置,就可以打開Arduino IDE并下載上面的草圖。提取zip文件,總共應該有2個文件:
-ESP8266GasSensor.ino
-mainPage.h
-settings.h
將它們全部放在同一文件夾中,并在Arduino IDE中選擇“ ESP8266GasSensor.ino”,然后對代碼進行小的修改,以指向上圖所示的正確的Web服務器位置。
還修改以下行以匹配您的Web服務器位置中的文件。
String weburi = “/gasdata_store.php”
然后通過選擇Arduino IDE頂部的“打勾”按鈕來編譯草圖。如果一切順利,則您的代碼應該可以成功編譯。
下一步是將代碼上傳到ESP8266,要執行此操作,您可以點擊Arduino接口上的“ =》”按鈕,然后應該將您的代碼加載到ESP8266中。如果一切順利,您應該在首次運行ESP8266時擁有一個可以正常工作的AP(接入點)。 AP的名稱稱為“ ESP-GasSensor”。
嘗試使用筆記本電腦或移動電話連接到此AP,然后找出分配給您的IP地址是什么,可以使用Windows中的“ ipconfig”命令或Linux或Mac中的“ ifconfig”命令。如果您使用的是iPhone,則可以單擊所連接的ESP-GasSensor旁邊的“ i”按鈕。打開您的網絡瀏覽器并指向ESP-GasSensor Ip地址,如果您分配的地址為192.168.4.10,則ESP-GasSensor的IP為192.168.4.1,因此您可以將網絡瀏覽器指向http://192.168.4.1應該顯示設置頁面,您可以在其中輸入wifi配置。輸入連接到互聯網的WiFi接入點后,勾選“更新Wifi配置”復選框,然后單擊“更新”以將設置保存到ESP8266。
ESP8266現在將重新啟動并嘗試連接到您的WiFi路由器。如果一切順利,您應該會看到天然氣數據會定期更新到Web服務器。在此示例中,您可以將瀏覽器指向“ http://arduinotestbed.com/GasData.php”
恭喜!如果您設法達到這一部分。您應該拍一下自己的背部。現在,您可以將有關氣體傳感器的信息告訴您的朋友。
步驟6:下一步
您可能想要重新校準傳感器警報以適合您的需要。
這不僅是為了顯示,還應在氣體閾值達到一定水平時觸發并發出警報。根據所用傳感器的類型,您需要對此進行校準。因此,去拿一個打火機,將打火機對準傳感器,在不點燃打火機的情況下,按下打火機上的氣體釋放按鈕,氣體就會流到傳感器上。這會使蜂鳴器跳閘。如果不是,那么您需要通過查看網絡服務器來檢查讀數是否上升。如果這不起作用,則需要檢查連接,傳感器和蜂鳴器。如果一切順利,則蜂鳴器應發出聲音。
代碼中的閾值設置為100,您應該可以在代碼的以下部分找到它:
double threshold = 100;
隨意更改閾值更高或更低取決于您的需要。
希望您喜歡這個項目。如果您愿意,請給我留言并在IoT競賽中投票支持我,并訂閱我的博客以獲取更簡單的Arduino項目。
一些最終想法,您可以使用sqllite將氣體讀數記錄到數據庫中或更強大的功能這將允許您繪制與上述相似的圖形。不僅看起來整潔,而且可以幫助您校準傳感器。例如,如果您想用它來監視爐子上的燃氣泄漏,則可能需要將其放置幾天以讀取測量值,然后下載讀數以查看正常使用情況下的模式,然后,當讀數超出正常范圍時,您可以為規則設置例外觸發器。
步驟7:免責聲明
該項目面向業余愛好者,使人們可以了解物聯網及其實際用法。絕不能更換商用氣體泄漏傳感器。如果您因使用此項目檢測煤氣泄漏而使您的房屋起火或因煤氣中毒而暈倒,我概不負責。那里有很多傳感器,質量取決于成本。在認真使用它之前,需要進行測試,并進行校準以確保構建的安全性和可靠性。
-
氣體傳感器
+關注
關注
14文章
568瀏覽量
38162
發布評論請先 登錄
評論