資料介紹
描述
在這個項目中,我們將建造一個供家庭使用的個人氣象站。我們將使用基于 ESP8266 的開發(fā)板,即 NodeMCU。我們將監(jiān)測光線、溫度和濕度。為此,我們將使用 LDR 和 DHT11 傳感器。
本項目由三部分組成:
1.從傳感器收集數(shù)據(jù)。
2.將數(shù)據(jù)發(fā)送到在線數(shù)據(jù)庫(在我們的例子中是 Google Firebase)。
3.在 Web 應(yīng)用程序上顯示存儲在數(shù)據(jù)庫中的數(shù)據(jù)。
-------------------------------------------------- -------------------------------------------------- -------------------------------------------------- ----------------------
1. 收集數(shù)據(jù)
我們將使用光檢測電阻器 (LDR) 來獲取大氣光的值。如圖所示,將 LDR 連接到 NodeMCU 的 A0 引腳。

我們將使用光檢測電阻器 (LDR) 來獲取大氣光的值。如圖所示,將 LDR 連接到 NodeMCU 的 A0 引腳。
DHT11 傳感器用于測量濕度和溫度。我們在這里使用 DHT.h 庫。進行以下連接:
VCC ==> 3v
接地 ==> 接地
數(shù)據(jù) ==> D3

-------------------------------------------------- -------------------------------------------------- -------------------------------------------------- ----------------------
2. 向 Firebase 發(fā)送數(shù)據(jù)
要將數(shù)據(jù)上傳到 firebase,我們需要先連接到互聯(lián)網(wǎng),然后再訪問 firebase。為此,我們需要使用以下兩個庫:
1.ESP8266WiFi.h
2. FirebaseArduino.h
根據(jù)代碼連接到 wifi 網(wǎng)絡(luò)后,我們現(xiàn)在可以使用 FirebaseArduino.h 庫的功能上傳數(shù)據(jù)。
傳感器數(shù)據(jù)存儲在float 類型的light、temp 和 hum變量中。
所以我們將使用setFloat()函數(shù)將值上傳到 firebase 的實時數(shù)據(jù)庫。查看代碼以更好地理解它。
Firebase.setFloat("light", light);
// handle error
if (Firebase.failed()) {
Serial.print("setting /light failed:");
Serial.println(Firebase.error());
return;
}
上傳數(shù)據(jù)后,我們可以將其實時顯示在網(wǎng)絡(luò)應(yīng)用程序上,并可從世界任何地方訪問。
-------------------------------------------------- -------------------------------------------------- -------------------------------------------------- ----------------------
3. 在 Web App 上顯示數(shù)據(jù)
單擊此處查看我的網(wǎng)絡(luò)應(yīng)用程序。
這是你可以真正發(fā)揮創(chuàng)造力的地方。如果您熟悉 HTML 和 CSS,那么您可以制作用戶自己的 UI。我使用 Bootstrap 來創(chuàng)建我的。對于那些剛接觸網(wǎng)絡(luò)的人來說,這里是一個非?;镜?UI 的代碼(我沒有在這里提供我的代碼,因為那將是勺子喂食,我希望你們構(gòu)建自己的 UI。相信我,這很有趣?。?/font>
步驟1:
將此代碼粘貼到記事本中并將其另存為index.html的文件夾中,例如 在任何所需位置的網(wǎng)絡(luò)。
<html>
<head>
<script src="https://www.gstatic.com/firebasejs/5.8.4/firebase.js">script>
<script src="https://www.gstatic.com/firebasejs/5.8.5/firebase-app.js">script>
<script src="https://www.gstatic.com/firebasejs/5.8.5/firebase-database.js">script>
head>
<body style="background-color: #4d4d4d;">
<ul>
<li><h1>LIGHTh1>
<pre id="light" style="font-size:24px;">pre>li>
<li><h1>TEMPERATUREh1>
<pre id="temp" style="font-size:24px;">pre>li>
<li><h1>HUMIDITYh1>
<pre id="hum" style="font-size:24px;">pre>li>
ul>
<script src="app.js">script>
body>
html>
第2 步:
在 firebase 中創(chuàng)建一個數(shù)據(jù)庫。打開Firebase 網(wǎng)站。使用您的 Gmail 帳戶登錄。通過單擊數(shù)據(jù)庫創(chuàng)建一個實時數(shù)據(jù)庫。然后按照圖像中的方向獲取密鑰。

第 3 步:
將以下代碼復(fù)制并粘貼到記事本中,并將其作為app.js保存在您保存index.html文件的同一文件夾中。
(function() {
// Initialize Firebase
var config = {
firebase.initializeApp(config);
//Get element
const prelight= document.getElementById('light');
//Create refences
const dbReflight= firebase.database().ref().child('light');
// sync logs cahnges
dbReflight.on('value', snap => {
prelight.innerText=JSON.stringify(snap.val(),null,3);
});
const pretemp= document.getElementById('temp');
//Create refences
const dbReftemp= firebase.database().ref().child('temperature');
// sync logs cahnges
dbReftemp.on('value', snap => {
pretemp.innerText=JSON.stringify(snap.val(),null,3)+"° C";
});
const prehum= document.getElementById('hum');
//Create refences
const dbRefhum= firebase.database().ref().child('moisture');
// sync logs cahnges
dbRefhum.on('value', snap => {
prehum.innerText=JSON.stringify(snap.val(),null,3)+" %";
});
}());
您必須根據(jù)您的數(shù)據(jù)庫更改 var config 中的值。

完成此操作后,您就可以開始了。
將代碼上傳到您的 NodeMCU,建立連接并為電路板加電。它將開始將數(shù)據(jù)上傳到 Firebase。
-------------------------------------------------- ----------------------------------
注意:不要忘記在.ino 文件中更改您的 WIFI SSID、WIFI 密碼、密碼和主機名。
#define FIREBASE_HOST "YOUR DATABASE LINK"
#define FIREBASE_AUTH "SECRET CODE"
#define WIFI_SSID "YOUR SSID"
#define WIFI_PASSWORD "YOUR PASSWORD"
-------------------------------------------------- ----------------------------------
完成此操作后,只需打開index.html文件即可實時查看您的數(shù)據(jù)。
我希望你們理解這個項目。感謝您閱讀本教程。如果您有任何疑問或疑問,請在評論部分發(fā)表評論。
祝你好運!
- 設(shè)施農(nóng)業(yè)實時氣象信息采集與發(fā)布系統(tǒng)的設(shè)計
- 在線氣象站開源分享
- Chaac氣象站開源項目
- 太陽能氣象站開源項目
- 辛迪的鬧鐘/錄音氣象站開源分享
- 使用Arduino和網(wǎng)絡(luò)技術(shù)制作實時氣象站
- 宙斯電子氣象站(ZeWS)開源分享
- 獨特的桌面氣象站開源設(shè)計
- WIFI氣象站開源分享
- 屏幕上的氣象站開源案例
- 便攜式氣象站開源分享
- 無人機氣象站開源分享
- Arduino氣象站的設(shè)置開源分享
- 微型互聯(lián)網(wǎng)氣象站開源項目
- Arduino Nano氣象站開源
- Nuttx RTOS入門知識簡介及開源代碼運行 5861次閱讀
- 基于幾何的泰森多邊形來生成形體骨架 1004次閱讀
- 前沿開源技術(shù)領(lǐng)域的開源大數(shù)據(jù)一一解讀 1180次閱讀
- 4G氣象站的設(shè)計與實現(xiàn) 991次閱讀
- 如何利用ESP8266實現(xiàn)防雨物聯(lián)網(wǎng)氣象站的設(shè)計 5136次閱讀
- 如何利用粒子光子把你的雨傘變成氣象站 1532次閱讀
- 如何使用ESP32創(chuàng)建一個氣象站 4040次閱讀
- 基于樹莓派組成的可隨身攜帶氣象站設(shè)計方案 2989次閱讀
- 如何使用兩個dht傳感器及HC12模塊制作遠程氣象站? 2977次閱讀
- 基于創(chuàng)建帶有空氣質(zhì)量傳感器的室內(nèi)氣象站 2358次閱讀
- dfrobotDIY智能氣象站套件簡介 1756次閱讀
- 阿米納隱形音響,將私人影院和高端養(yǎng)生會所結(jié)合,讓客戶享受綜合性服務(wù) 4191次閱讀
- 新興科技趨勢報告:20項最值得關(guān)注的科技發(fā)展趨勢 6377次閱讀
- 基于STM32的自動氣象站控制模塊設(shè)計 8676次閱讀
- FreeRTOS嵌入式開源實時操作系統(tǒng)介紹 4250次閱讀
下載排行
本周
- 1DD3118電路圖紙資料
- 0.08 MB | 1次下載 | 免費
- 2AD庫封裝庫安裝教程
- 0.49 MB | 1次下載 | 免費
- 3PC6206 300mA低功耗低壓差線性穩(wěn)壓器中文資料
- 1.12 MB | 1次下載 | 免費
- 4網(wǎng)絡(luò)安全從業(yè)者入門指南
- 2.91 MB | 1次下載 | 免費
- 5DS-CS3A P00-CN-V3
- 618.05 KB | 1次下載 | 免費
- 6海川SM5701規(guī)格書
- 1.48 MB | 次下載 | 免費
- 7H20PR5電磁爐IGBT功率管規(guī)格書
- 1.68 MB | 次下載 | 1 積分
- 8IP防護等級說明
- 0.08 MB | 次下載 | 免費
本月
- 1貼片三極管上的印字與真實名稱的對照表詳細說明
- 0.50 MB | 103次下載 | 1 積分
- 2涂鴉各WiFi模塊原理圖加PCB封裝
- 11.75 MB | 89次下載 | 1 積分
- 3錦銳科技CA51F2 SDK開發(fā)包
- 24.06 MB | 43次下載 | 1 積分
- 4錦銳CA51F005 SDK開發(fā)包
- 19.47 MB | 19次下載 | 1 積分
- 5PCB的EMC設(shè)計指南
- 2.47 MB | 16次下載 | 1 積分
- 6HC05藍牙原理圖加PCB
- 15.76 MB | 13次下載 | 1 積分
- 7802.11_Wireless_Networks
- 4.17 MB | 12次下載 | 免費
- 8蘋果iphone 11電路原理圖
- 4.98 MB | 6次下載 | 2 積分
總榜
- 1matlab軟件下載入口
- 未知 | 935127次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費下載
- 340992 | 191390次下載 | 10 積分
- 5十天學(xué)會AVR單片機與C語言視頻教程 下載
- 158M | 183342次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81588次下載 | 10 積分
- 7Keil工具MDK-Arm免費下載
- 0.02 MB | 73815次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65989次下載 | 10 積分
評論