Obsah:
Video: Monitor rastlín pomocou veci ESP32 a Blynk: 5 krokov
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 11:56
Prehľad
Cieľom tohto projektu je vytvoriť kompaktné zariadenie schopné monitorovať podmienky izbovej rastliny. Zariadenie umožňuje používateľovi pomocou aplikácie Blynk kontrolovať úroveň pôdnej vlhkosti, úroveň vlhkosti, teplotu a „pocitovú“teplotu zo smartfónu. Okrem toho používateľ dostane e -mailové upozornenie, keď sa podmienky stanú nevhodnými pre závod. Používateľ napríklad dostane pripomienku na zalievanie rastliny, keď úroveň pôdnej vlhkosti klesne pod vhodnú úroveň.
Krok 1: Požiadavky
Tento projekt používa vec Sparkfun ESP32, snímač DHT22 a elektronický snímač vlhkosti tehlovej pôdy. Okrem toho je potrebná sieť Wi -Fi a aplikácia Blynk. Prednostne by mal byť vytvorený vodotesný kryt, ktorý bude obsahovať vec ESP32. Aj keď tento príklad používa štandardnú zásuvku pre zdroj energie, pridanie nabíjateľnej batérie, solárneho panelu a regulátora nabíjania by umožnilo napájanie zariadenia prostredníctvom obnoviteľnej energie.
Krok 2: Blynk
Ak chcete, stiahnite si aplikáciu Blynk a vytvorte nový projekt. Všímajte si autentifikačný token-bude použitý v kóde. V aplikácii Blynk vytvorte nové zobrazovacie miniaplikácie a vyberte zodpovedajúce virtuálne piny definované v kóde. Nastavte interval obnovenia na stlačenie. Každý widget by mal mať priradený svoj vlastný virtuálny pin.
Krok 3: Arduino IDE
Stiahnite si Arduino IDE. Pripojenie wifi zabezpečte podľa pokynov na stiahnutie ovládača veci ESP32 a ukážky. Stiahnite si knižnice Blynk a DHT zahrnuté v kóde. Vyplňte autentifikačný token, heslo wifi, užívateľské meno wifi a e -mail do konečného kódu. Pomocou demo kódu pre snímač pôdnej vlhkosti vyhľadajte minimálne a maximálne hodnoty pre typ pôdy. Tieto hodnoty zaznamenajte a nahraďte v konečnom kóde. V konečnom kóde nahraďte minimálne hodnoty teploty, pôdnej vlhkosti a vlhkosti pre rastlinu. Nahrajte kód.
Krok 4: Postavte to
Najprv pripojte snímač pôdnej vlhkosti k 3,3 V, uzemneniu a vstupnému kolíku 34. Všimnite si, že je integrálny, prepínač je nastavený do polohy A, pretože pre tento snímač sa použije analógové nastavenie. Potom pripojte snímač DHT k 3,3 V, uzemneniu a vstupnému kolíku 27. Snímač DHT22 vyžaduje 10 V ohmový odpor medzi VCC a dátovým výstupným pinom. Nezabudnite skontrolovať diagram DHT, aby ste sa presvedčili, že je správne zapojený. Konfigurujte ESP32 vo vodotesnom kryte so snímačom vlhkosti v pôde a snímačom DHT nad povrchom. Pripojte zdroj napájania a vychutnajte si údaje o prostredí vášho zariadenia.
Krok 5: Kód
// Zahrnuté knižnice
#define BLYNK_PRINT Sériové číslo
#include #include #include #include "DHT.h"
// Informácie o snímači DHT
#define DHTTYPE DHT22 // DHT 22 (AM2302), AM2321 #define DHTPIN 27 // Digitálny pin pripojený k snímaču DHT DHT dht (DHTPIN, DHTTYPE); // Inicializácia snímača DHT.
// definujte vstupné piny a výstupy
int earth_sensor = 34; // definujte číslo pinu analógového vstupu pripojeného k senzoru vlhkosti
int output_value; // definuje ako výstup
int vlhkosť vzduchu; // definovať ako výstup
int oznámenia = 0; // definujte upozornenie ako 0
int časové oneskorenie = 60 000 L; // nastavenie časovača na spustenie získavania údajov raz za minútu alebo 60 000 milisekúnd
// nastavenie minimálnych hodnôt pre závod
int min_vlhkost = 20; int min_teplota = 75; vnútorná minimálna vlhkosť = 60;
// V aplikácii Blynk by ste mali dostať Auth Token.
char auth = "Auth_Token_Here";
// Vaše poverenia WiFi.
char ssid = "Wifi_Network_Here"; char pass = "Wifi_Password_Here";
Časovač BlynkTimer;
// Táto funkcia posiela každú sekundu čas prevádzky Arduina na Virtual Pin (5).
// V aplikácii by mala byť frekvencia čítania widgetu nastavená na PUSH. To znamená, že // definujete, ako často sa majú údaje odosielať do aplikácie Blynk.
void Sensors () // hlavná funkcia na čítanie senzorov a stlačenie na blynk
{output_value = analogRead (earth_sensor); // Načítanie analógového signálu zo zariadenia earth_sensor a definovanie ako output_value // Map output_vlaue z min., max. hodnôt na 100, 0 a obmedzenie medzi 0, 100 // Na nájdenie min. a min. maximálne hodnoty pre individuálny senzor a typ pôdy pre lepšiu kalibráciu úroveň vlhkosti = obmedzenie (mapa (výstupná_hodnota, 1000, 4095, 100, 0), 0, 100); float h = dht.readHumidity (); // Čítanie vlhkosti float t = dht.readTemperature (); // Čítanie teploty ako Celzia (predvolené) float f = dht.readTemperature (true); // Prečítajte teplotu ako Fahrenheit (isFahrenheit = true) // Vypočítajte tepelný index vo Fahrenheite (predvolené) float hif = dht.computeHeatIndex (f, h); // Skontrolujte, či niektoré čítanie zlyhalo, a ukončite operáciu predčasne (skúste to znova). if (isnan (h) || isnan (t) || isnan (f)) {Serial.println (F ("Failed reading from DHT sensor!")); návrat; } // Toto prepojí hodnoty s virtuálnymi kolíkmi definovanými vo widgetoch v aplikácii Blynk Blynk.virtualWrite (V5, vlhkosť); // Odoslanie úrovne vlhkosti na virtuálny kolík 5 Blynk.virtualWrite (V6, f); // Odoslanie teploty do virtuálnej pin 6 Blynk.virtualWrite (V7, h); // Odoslanie vlhkosti na virtuálny pin 7 Blynk.virtualWrite (V8, hif); // Odoslanie indexu tepla na virtuálny pin 8
ak (oznámené == 0)
{if (hladina vlhkosti <= min_vlhkosť) // Ak je úroveň vlhkosti rovná alebo nižšia ako minimálna hodnota {Blynk.email ("Email_Here", "Plant Monitor", "Water Plant!"); // odoslanie e -mailu na vodnú rastlinu} zdržanie (15 000); // Blynkove e -maily musia mať odstup 15 sekúnd. Oneskorenie 15 000 milisekónov, ak (f <= min_teplota) // Ak je teplota rovnaká alebo nižšia ako minimálna hodnota {Blynk.email ("Email_Here", "Plant Monitor", "Temperature Low!"); // Pošlite e -mail, že teplota je nízka
}
oneskorenie (15 000); // Blynkove e -maily musia mať odstup 15 sekúnd. Oneskorenie 15 000 milisekúnd, ak (h <= min. Vlhkosť) // Ak je vlhkosť rovná alebo nižšia ako minimálna hodnota {Blynk.email ("Emial_Here", "Monitor zariadenia", "Vlhkosť nízka!"); // Odoslať e -mail, že vlhkosť je nízka} upozornenie = 1; timer.setTimeout (timedelay *5, resetNotified); // vynásobenie časového oneskorenia počtom požadovaných minút medzi opakovanými výstražnými e -mailmi}}
void resetNotified () // funkcia volaná na resetovanie frekvencie e -mailov
{notifikované = 0; }
neplatné nastavenie ()
{Serial.begin (9600); // Konzola ladenia Blynk.begin (auth, ssid, pass); // pripojenie k blynk timer.setInterval (timedelay, Sensors); // Nastavte funkciu, ktorá sa má volať každú minútu alebo aké časové oneskorenie je nastavené na dht.begin (); // spustenie senzora DHT}
// Prázdna slučka by mala obsahovať iba blynk.run a časovač
void loop () {Blynk.run (); // Spustite blynk timer.run (); // Inicializuje BlynkTimer}
Odporúča:
Oznamovač internetu vecí pomocou ESP-12E: 7 krokov (s obrázkami)
Oznamovateľ internetu vecí pomocou ESP-12E: Ste doma mimo svojho milovaného? V tomto ťažkom období sa tento zábavný malý projekt určite pokúsi vyčarovať úsmev na vašich tvárach. V tomto návode vám ukážem, ako zobrazovať upozornenia z vášho mobilného telefónu vo forme
Zalievanie izbových rastlín pomocou NodeMCU, miestneho servera Blynk a Blynk Apk, nastaviteľná žiadaná hodnota: 3 kroky
Zalievanie izbových rastlín pomocou NodeMCU, miestneho servera Blynk a Blynk Apk, nastaviteľná hodnota: Tento projekt som postavil, pretože moje izbové rastliny musia byť zdravé, aj keď som dlhší čas na dovolenke a páči sa mi myšlienka mať ovládať alebo aspoň sledovať všetky možné veci, ktoré sa dejú u mňa doma, cez internet
Ako vyhľadávať veci v prehliadači Google Chrome pomocou makier programu Microsoft Excel (NIE JE POTREBNÉ VEDIEŤ KÓDOVANIE): 10 krokov
Ako vyhľadávať veci v prehliadači Google Chrome pomocou makier programu Microsoft Excel (NIE JE POTREBNÉ ZNAČKY KÓDOVANIA): Vedeli ste, že do svojej tabuľky programu Excel môžete ľahko pridať funkciu vyhľadávania? Ukážem vám, ako to urobiť v niekoľkých jednoduchých krokoch! Na to budete potrebovať: Počítač - (SKONTROLUJTE!) Je na vás nainštalovaný Microsoft Excel Google Chrome
Minimalistické hodiny internetu vecí (pomocou ESP8266, Adafruit.io, IFTTT a Arduino IDE): 10 krokov (s obrázkami)
Minimalistické hodiny IoT (pomocou ESP8266, Adafruit.io, IFTTT a Arduino IDE): V tomto návode vám ukážem, ako môžete vytvoriť minimalistické hodiny synchronizované s internetom. Testoval som to s dvoma rôznymi doskami založenými na ESP8266: Firebeetle a NodeMCU. Mikrokontrolér získava aktuálny čas zo servera Google a zobrazuje ho na
Ovládanie LED pomocou WiFi modulu ESP8266- internet vecí: 6 krokov
Ovládanie LED pomocou WiFi modulu ESP8266-Internet vecí: ESP8266 je nízkonákladový Wi-Fi čip s plným zásobníkom TCP/IP a MCU (jednotka mikrokontroléra), ktorý vyrába čínsky výrobca v Šanghaji, spoločnosť Espressif Systems. sa dostal do povedomia západných tvorcov v auguste 2014 s t