第1步:了解傳感器
BMP180:
說(shuō)明:
BMP180包括一個(gè)壓阻傳感器,一個(gè)模數(shù)轉(zhuǎn)換器以及一個(gè)帶有E2PROM和串行I2C接口的控制單元。 BMP180提供了壓力和溫度的未補(bǔ)償值。 E2PROM已存儲(chǔ)176位的單個(gè)校準(zhǔn)數(shù)據(jù)。用于補(bǔ)償傳感器的偏移,溫度依賴性和其他參數(shù)。
UP =壓力數(shù)據(jù)(16到19位)
UT =溫度數(shù)據(jù)(16位) )
技術(shù)規(guī)格:
Vin:3至5VDC
邏輯:3至5V兼容
壓力感應(yīng)范圍:300-1100 hPa(海拔9000m至-500m)
高達(dá)0.03hPa/0.25m分辨率-40至+ 85°C的工作范圍,+ -2°C的溫度精度
此板/芯片使用I2C 7位地址0x77。
DHT11:
說(shuō)明:
DHT11是一款基本的超低成本數(shù)字溫度和濕度傳感器。
它使用電容式濕度傳感器和熱敏電阻來(lái)測(cè)量周?chē)目諝猓⒃跀?shù)據(jù)引腳上發(fā)出數(shù)字信號(hào)(無(wú)需模擬輸入引腳)。它使用起來(lái)相當(dāng)簡(jiǎn)單,但是需要謹(jǐn)慎的時(shí)間來(lái)獲取數(shù)據(jù)。
此傳感器的唯一真正缺點(diǎn)是,每2秒只能從其中獲取一次新數(shù)據(jù),因此,在使用我們的庫(kù)時(shí),傳感器讀數(shù)可能長(zhǎng)達(dá)2秒。
技術(shù)規(guī)格:
3至5V電源和I/O
適用于0-50°C溫度讀數(shù),±2°C精度
適用于20-80%的濕度讀數(shù),精度為5%
轉(zhuǎn)換期間最大電流消耗為2.5 mA(在請(qǐng)求數(shù)據(jù)時(shí))
步驟2:通過(guò)Nodemcu連接
DHT11:
引腳1-3.3V
針腳2-D4
針腳3-NC
針腳4-Gnd
帶有Nodemcu的BMP180:
Vin-3.3V
Gnd-Gnd
SCL-D6
SDA-D7
第3步:設(shè)置Blynk
Blynk是什么?
Blynk是一個(gè)具有iOS和Android應(yīng)用程序的平臺(tái),用于控制Arduino,Raspberry Pi和
這是一個(gè)數(shù)字儀表板,您可以通過(guò)si為您的項(xiàng)目構(gòu)建圖形界面mply拖放小部件。設(shè)置一切非常簡(jiǎn)單,您將在不到5分鐘的時(shí)間內(nèi)開(kāi)始進(jìn)行修補(bǔ)。 Blynk并未綁在某些特定的板子或護(hù)板上。相反,它是您選擇的支持硬件。無(wú)論您的Arduino或Raspberry Pi是通過(guò)Wi-Fi,以太網(wǎng)還是此新型ESP8266芯片鏈接到Internet,Blynk都能使您上線并為物聯(lián)網(wǎng)做好準(zhǔn)備。
有關(guān)設(shè)置的更多信息Blynk:詳細(xì)的Blynk設(shè)置
第4步:代碼
//Comments for each line is given in the .ino file below
#include
#define BLYNK_PRINT Serial
#include
#include
#include
#include
#include
Adafruit_BMP085 bmp;
#define I2C_SCL 12
#define I2C_SDA 13
float dst,bt,bp,ba;
char dstmp[20],btmp[20],bprs[20],balt[20];
bool bmp085_present=true;
char auth[]=“Put your Authication key from the Blynk app here”;
char ssid[] = “Your WiFi SSID”;
char pass[] = “Your Password”;
#define DHTPIN 2
#define DHTTYPE DHT11
DHT dht(DHTPIN, DHTTYPE); //Defining the pin and the dhttype
BlynkTimer timer;
void sendSensor()
{
if (!bmp.begin())
{
Serial.println(“Could not find a valid BMP085 sensor, check wiring!”);
while (1) {}
}
float h = dht.readHumidity();
float t = dht.readTemperature();
if (isnan(h) || isnan(t))
{
Serial.println(“Failed to read from DHT sensor!”);
return;
}
double gamma = log(h/100) + ((17.62*t) / (243.5+t));
double dp = 243.5*gamma / (17.62-gamma);
float bp = bmp.readPressure()/100;
float ba = bmp.readAltitude();
float bt = bmp.readTemperature();
float dst = bmp.readSealevelPressure()/100;
Blynk.virtualWrite(V5 , h);
Blynk.virtualWrite(V6 , t);
Blynk.virtualWrite(V10, bp);
Blynk.virtualWrite(V11, ba);
Blynk.virtualWrite(V12, bt);
Blynk.virtualWrite(V13, dst);
Blynk.virtualWrite(V14, dp);
}
void setup()
{
Serial.begin(9600);
Blynk.begin(auth, ssid, pass);
dht.begin();
Wire.begin(I2C_SDA, I2C_SCL);
delay(10);
timer.setInterval(1000L, sendSensor);
}
void loop()
{
Blynk.run();
timer.run();
}
責(zé)任編輯:wv
-
服務(wù)器
+關(guān)注
關(guān)注
13文章
9795瀏覽量
88003 -
Arduino
+關(guān)注
關(guān)注
190文章
6498瀏覽量
192207 -
氣象站
+關(guān)注
關(guān)注
1文章
776瀏覽量
16230
發(fā)布評(píng)論請(qǐng)先 登錄

解密交通氣象站:數(shù)據(jù)驅(qū)動(dòng)的交通氣象服務(wù)革新

智慧校園:氣象站引領(lǐng)氣象知識(shí)科普
自動(dòng)氣象站的工作原理與應(yīng)用
城市交通氣象站:本地化氣象服務(wù)保障都市交通
如何在Linux系統(tǒng)上設(shè)置站群服務(wù)器IP地址
綠色校園,智慧氣象:走進(jìn)我們的氣象站
自動(dòng)超聲波氣象站:智慧氣象的重要組成部分
校園氣象站:科學(xué)觀測(cè),服務(wù)師生
校園內(nèi)環(huán)境監(jiān)測(cè)氣象站

車(chē)載小型氣象站:實(shí)時(shí)、準(zhǔn)確地監(jiān)測(cè)氣象
區(qū)域生態(tài)自動(dòng)氣象站:數(shù)據(jù)監(jiān)測(cè)與傳輸

校園氣象站高校科普論文氣象站多功能氣象站

基于啟揚(yáng)IMX8MPlus核心板的自動(dòng)氣象站應(yīng)用解決方案

評(píng)論