Satura rādītājs:

DIY laika stacija, izmantojot DHT11, BMP180, Nodemcu ar Arduino IDE virs Blynk servera: 4 soļi
DIY laika stacija, izmantojot DHT11, BMP180, Nodemcu ar Arduino IDE virs Blynk servera: 4 soļi

Video: DIY laika stacija, izmantojot DHT11, BMP180, Nodemcu ar Arduino IDE virs Blynk servera: 4 soļi

Video: DIY laika stacija, izmantojot DHT11, BMP180, Nodemcu ar Arduino IDE virs Blynk servera: 4 soļi
Video: Своими руками паяльная станцияジ. Как подключить термофен для пайки. 🔥КУПИЛ,ПОДКЛЮЧИЛ,ПРИМЕНИЛ. 2024, Novembris
Anonim
DIY laika stacija, izmantojot DHT11, BMP180, Nodemcu ar Arduino IDE virs Blynk servera
DIY laika stacija, izmantojot DHT11, BMP180, Nodemcu ar Arduino IDE virs Blynk servera
DIY laika stacija, izmantojot DHT11, BMP180, Nodemcu ar Arduino IDE virs Blynk servera
DIY laika stacija, izmantojot DHT11, BMP180, Nodemcu ar Arduino IDE virs Blynk servera
DIY laika stacija, izmantojot DHT11, BMP180, Nodemcu ar Arduino IDE virs Blynk servera
DIY laika stacija, izmantojot DHT11, BMP180, Nodemcu ar Arduino IDE virs Blynk servera
DIY laika stacija, izmantojot DHT11, BMP180, Nodemcu ar Arduino IDE virs Blynk servera
DIY laika stacija, izmantojot DHT11, BMP180, Nodemcu ar Arduino IDE virs Blynk servera

Github: DIY_Weather_Station

Hackster.io: meteoroloģiskā stacija

Vai jūs būtu redzējis laika lietojumprogrammu? Atverot to, jūs uzzināsit laika apstākļus, piemēram, temperatūru, mitrumu utt. Šie rādījumi ir lielas teritorijas vidējā vērtība, tādēļ, ja vēlaties uzzināt precīzus parametrus, kas saistīti ar jūsu istabu, paļauties uz laika apstākļu lietojumprogrammu. Šim nolūkam ļauj pāriet uz meteostacijas izveidi, kas ir rentabla, turklāt uzticama un sniedz mums precīzu vērtību.

Laika stacija ir iekārta ar instrumentiem un iekārtām atmosfēras apstākļu mērīšanai, lai sniegtu informāciju laika prognozēm un pētītu laika apstākļus un klimatu. Lai pievienotu un kodētu, tas prasa nedaudz pūļu. Tātad, sāksim darbu.

Par Nodemcu:

NodeMCU ir atvērtā koda IoT platforma.

Tas ietver programmaparatūru, kas darbojas ar ESP8266 Wi-Fi SoC no Espressif Systems, un aparatūru, kuras pamatā ir ESP-12 modulis.

Termins "NodeMCU" pēc noklusējuma attiecas uz programmaparatūru, nevis uz izstrādātāju komplektiem. Programmaparatūra izmanto Lua skriptu valodu. Tas ir balstīts uz eLua projektu un ir balstīts uz Espressif ne-OS SDK, kas paredzēts ESP8266. Tas izmanto daudzus atvērtā pirmkoda projektus, piemēram, lua-cjson un spiffs.

Prasības sensoriem un programmatūrai:

1. Nodemcu (esp8266-12e v1.0)

2. DHT11

3. BMP180

4. Arduino IDE

1. darbība. Ziniet savus sensorus

Ziniet savus sensorus
Ziniet savus sensorus

BMP180:

Apraksts:

BMP180 sastāv no pjezo-pretestības sensora, analogā-digitālā pārveidotāja un vadības bloka ar E2PROM un sērijas I2C interfeisu. BMP180 nodrošina nekompensētu spiediena un temperatūras vērtību. E2PROM ir saglabājis 176 bitu individuālos kalibrēšanas datus. To izmanto, lai kompensētu nobīdi, atkarību no temperatūras un citus sensora parametrus.

  • UP = spiediena dati (no 16 līdz 19 bitiem)
  • UT = temperatūras dati (16 biti)

Tehniskās specifikācijas:

  • Vin: 3 līdz 5VDC
  • Loģika: 3 līdz 5V saderīga
  • Spiediena noteikšanas diapazons: 300-1100 hPa (no 9000 m līdz -500 m virs jūras līmeņa)
  • Līdz 0,03 hPa / 0,25 m izšķirtspēja-40 līdz +85 ° C darbības diapazons, +-2 ° C temperatūras precizitāte
  • Šī plate/mikroshēma izmanto I2C 7 bitu adresi 0x77.

DHT11:

Apraksts:

  • DHT11 ir pamata, īpaši lēts digitālais temperatūras un mitruma sensors.
  • Tas izmanto kapacitatīvu mitruma sensoru un termistoru, lai izmērītu apkārtējo gaisu, un izspiež ciparu signālu uz datu tapas (nav vajadzīgas analogās ievades tapas). Tas ir diezgan vienkārši lietojams, taču datu iegūšanai nepieciešams rūpīgs laiks.
  • Vienīgais patiesais šī sensora mīnuss ir tas, ka jūs varat iegūt no tā jaunus datus tikai reizi 2 sekundēs, tāpēc, izmantojot mūsu bibliotēku, sensora rādījumi var būt līdz 2 sekundēm veci.

Tehniskās specifikācijas:

  • 3 līdz 5 V jauda un I/O
  • Piemērots 0-50 ° C temperatūras rādījumiem ± 2 ° C precizitātei
  • Piemērots 20-80% mitruma rādījumiem ar 5% precizitāti
  • 2,5 mA maksimālā strāvas izmantošana pārveidošanas laikā (datu pieprasīšanas laikā)

2. darbība. Savienojamība

Savienojamība
Savienojamība

DHT11 ar Nodemcu:

1. tapa - 3.3V

2. tapa - D4

3. tapa - NC

4. tapa - Gnd

BMP180 ar Nodemcu:

Vin - 3.3V

Gnd - Gnd

SCL - D6

SDA - D7

3. darbība: iestatiet Blynk

Image
Image
Iestatiet Blynk
Iestatiet Blynk

Kas ir Blynk?

Blynk ir platforma ar iOS un Android lietotnēm, lai internetā kontrolētu Arduino, Raspberry Pi un tamlīdzīgas lietas.

Tas ir digitāls informācijas panelis, kurā varat izveidot sava projekta grafisko interfeisu, vienkārši velkot un nometot logrīkus. Ir ļoti vienkārši visu iestatīt, un jūs sāksit ķerties pie mazāk nekā 5 minūtēm. Blynk nav piesaistīts kādam īpašam dēlim vai vairogam. Tā vietā tā atbalsta jūsu izvēlēto aparatūru. Neatkarīgi no tā, vai jūsu Arduino vai Raspberry Pi ir savienots ar internetu, izmantojot Wi-Fi, Ethernet vai šo jauno ESP8266 mikroshēmu, Blynk jūs novirzīs tiešsaistē un būs gatavs interneta lietām.

Lai iegūtu vairāk informācijas par Blynk iestatīšanu: Detalizēta Blynk iestatīšana

4. solis: kods

Kods
Kods

// Katras rindas komentāri ir sniegti tālāk esošajā.ino failā

#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 = "Ievietojiet savu autentifikācijas atslēgu no lietotnes Blynk šeit"; char ssid = "Jūsu WiFi SSID"; char pass = "Jūsu parole"; #define DHTPIN 2 #define DHTTYPE DHT11 DHT dht (DHTPIN, DHTTYPE); // Tapas un dhttype BlynkTimer taimera definēšana; void sendSensor () {if (! bmp.begin ()) {Serial.println ("Nevarēja atrast derīgu BMP085 sensoru, pārbaudiet vadu!"); kamēr (1) {}} peldēt h = dht.readHumidity (); pludiņš t = dht.readTemperature (); if (isnan (h) || isnan (t)) {Serial.println ("Neizdevās nolasīt no DHT sensora!"); atgriešanās; } dubultā gamma = log (h / 100) + ((17,62*t) / (243,5 + t)); dubultā dp = 243,5*gamma / (17,62-gamma); pludiņš bp = bmp.read spiediens ()/100; pludiņš ba = bmp.readAltitude (); pludiņš bt = bmp.readTemperature (); pludiņš 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); kavēšanās (10); timer.setInterval (1000L, sendSensor); } void loop () {Blynk.run (); taimeris.run (); }

Ieteicams: