Tartalomjegyzék:
Videó: Üzemi monitor ESP32 Thing és Blynk használatával: 5 lépés
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:40
Áttekintés
A projekt célja egy kompakt készülék létrehozása, amely képes megfigyelni a szobanövény állapotát. A készülék lehetővé teszi a felhasználó számára, hogy okostelefonjáról ellenőrizze a talaj nedvességtartalmát, páratartalmát, hőmérsékletét és az "érezhető" hőmérsékletet a Blynk App segítségével. Ezenkívül a felhasználó e -mailben értesítést kap, ha a körülmények alkalmatlanná válnak az üzem számára. Például a felhasználó emlékeztetőt kap a növény öntözésére, ha a talaj nedvességtartalma megfelelő szint alá csökken.
1. lépés: Követelmények
Ez a projekt egy Sparkfun ESP32 dolgot, egy DHT22 érzékelőt és egy elektronikus tégla talajnedvesség -érzékelőt használ. Ezenkívül wifi -hálózat és a Blynk alkalmazás is szükséges. Lehetőleg vízálló burkolatot kell létrehozni az ESP32 dolog tárolására. Míg ez a példa egy szabványos hálózati aljzatot használ az áramforráshoz, az újratölthető akkumulátor, a napelem és a töltésvezérlő hozzáadása lehetővé tenné az eszköz megújuló energiaforrásokról történő működtetését.
2. lépés: Blynk
Ehhez töltse le a Blynk alkalmazást, és hozzon létre egy új projektet. Vegye figyelembe a hitelesítési tokent-ezt fogja használni a kódban. Hozzon létre új megjelenítő modulokat a Blynk alkalmazásban, és válassza ki a kódban meghatározott megfelelő virtuális csapokat. Állítsa be a frissítés intervallumát. Minden widgethez hozzá kell rendelni a saját virtuális PIN -kódját.
3. lépés: Arduino IDE
Töltse le az Arduino IDE -t. Kövesse a letöltési utasításokat az ESP32 dolog illesztőprogramjához és a bemutatóhoz a wifi kapcsolat biztosítása érdekében. Töltse le a kódban található Blynk és DHT könyvtárakat. Töltse ki a hitelesítési tokent, a wifi jelszót, a wifi felhasználónevet és az e -mailt a végső kódban. Használja a talajnedvesség -érzékelő demókódját, hogy megtalálja a talajtípus minimális és maximális értékeit. Jegyezze fel és cserélje ki ezeket az értékeket a végső kódban. A végső kódban cserélje ki a növény hőmérsékletének, talajnedvességének és páratartalmának minimális értékeit. Töltse fel a kódot.
4. lépés: Építsd fel
Először csatlakoztassa a talajnedvesség -érzékelőt a 3,3 V -os földeléshez és a 34 -es bemenethez. Megjegyzés: integrált, hogy a kapcsoló A állásban van, mert ennek az érzékelőnek az analóg beállítását kell használni. Ezután csatlakoztassa a DHT érzékelőt a 3,3 V -os földeléshez és a 27 -es bemeneti tüskéhez. A DHT22 érzékelőnek 10 K ohmos ellenállásra van szüksége a VCC és az adatkimeneti tű között. Feltétlenül ellenőrizze a DHT diagramot, hogy megbizonyosodjon arról, hogy megfelelően van -e bekötve. Állítsa be az ESP32 -t egy vízálló burkolatban, a talajban lévő nedvességérzékelővel és a DHT -érzékelővel a felszín felett. Csatlakozzon egy áramforráshoz, és élvezze az üzem környezetével kapcsolatos adatokat.
5. lépés: Kód
// Tartalmazott könyvtárak
#define BLYNK_PRINT sorozat
#include #include #include #include "DHT.h"
// DHT érzékelő információ
#define DHTTYPE DHT22 // DHT 22 (AM2302), AM2321 #define DHTPIN 27 // DHT érzékelőhöz csatlakoztatott digitális tű DHT dht (DHTPIN, DHTTYPE); // Inicializálja a DHT érzékelőt.
// bemeneti csapok és kimenetek meghatározása
int talaj_érzékelő = 34; // határozza meg a nedvességérzékelőhöz csatlakoztatott analóg bemeneti tű számát
int output_value; // kimenetként határozza meg
int nedvességszint; // kimenetként határozza meg
int bejelentett = 0; // definiálja a notifed -et 0 -ként
int időzítés = 60000L; // állítsa be az időzítőt, hogy futtassa az adatokat percenként vagy 60 000 ezredmásodpercenként
// minimális értékek beállítása az üzem számára
int min_nedvesség = 20; int min_hőmérséklet = 75; int min_nedvesség = 60;
// A Blynk alkalmazásban meg kell szereznie az Auth Token -t.
char auth = "Auth_Token_Here";
// WiFi hitelesítő adatai.
char ssid = "Wifi_Network_Here"; char pass = "Wifi_Password_Here";
BlynkTimer időzítő;
// Ez a funkció minden másodpercben elküldi az Arduino felkelési idejét a Virtual Pin (5) -re.
// Az alkalmazásban a Widget olvasási gyakoriságát PUSH értékre kell állítani. Ez azt jelenti, // hogy Ön határozza meg, hogy milyen gyakran kell adatokat küldeni a Blynk App alkalmazásba.
void Sensors () // fő funkció az érzékelők olvasásához és a blynk -hez való nyomáshoz
{output_value = analogRead (dirt_sensor); // Olvassa el az analóg jelet a dirt_sensor -tól és határozza meg output_value -ként // A output_vlaue értéket min, max értékről 100 -ra, és korlátozza 0, 100 között // Mintakód és soros monitor használatával keresse meg a min és max. értékek az egyedi érzékelőhöz és a talajtípushoz a jobb kalibrálás érdekében nedvességszint = korlátozás (térkép (output_value, 1000, 4095, 100, 0), 0, 100); float h = dht.readHumidity (); // páratartalom lebegés leolvasása t = dht.readTemperature (); // A hőmérséklet olvasása Celsius -ban (alapértelmezett) float f = dht.readTemperature (true); // A hőmérséklet leolvasása Fahrenheit -ként (isFahrenheit = igaz) // Hőindex kiszámítása Fahrenheitben (alapértelmezett) float hif = dht.computeHeatIndex (f, h); // Ellenőrizze, hogy valamelyik olvasás nem sikerült -e, és lépjen ki korán (újrapróbálkozáshoz). if (isnan (h) || isnan (t) || isnan (f)) {Serial.println (F ("Nem sikerült leolvasni a DHT szenzorból!")); Visszatérés; } // Ez összeköti a vales -t a Blynk alkalmazás kütyüiben definiált virtuális csapokkal Blynk.virtualWrite (V5, niiskási szint); // Nedvességszint küldése a virtuális 5 -ös tüskére Blynk.virtualWrite (V6, f); // Hőmérséklet küldése a virtuálisnak 6. tüske Blynk.virtualWrite (V7, h); // Küldje el a páratartalmat a virtuális 7 -es csapnak Blynk.virtualWrite (V8, hif); // Hőindex küldése a virtuális 8 -as érintkezőre
ha (értesítve == 0)
{if (nedvességszint <= min_nedvesség) // Ha a nedvességszint egyenlő vagy alacsonyabb a min értéknél {Blynk.email ("Email_Here", "Plant Monitor", "Water Plant!"); // E -mail küldése a vízműnek} delay (15000); // A Blynk e -maileknek 15 másodperc távolságra kell lenniük egymástól. Késleltesse a 15000 ezredmásodpercet, ha (f <= min_temperature) // Ha a hőmérséklet megegyezik a min értékkel vagy az alatt van {Blynk.email ("Email_Here", "Plant Monitor", "Low Temperature!"); // E -mail küldése arról, hogy a hőmérséklet alacsony
}
késleltetés (15000); // A Blynk e -maileknek 15 másodperc távolságra kell lenniük egymástól. Késleltesse a 15000 milliszekundumot, ha (h <= min_páratartalom) // Ha a páratartalom megegyezik a min értékkel {Blynk.email ("Emial_Here", "Plant Monitor", "Nedvesség alacsony!") Vagy az alatt van; // E -mail küldése alacsony páratartalomról} értesített = 1; timer.setTimeout (timedelay *5, resetNotified); // többpontos időzítés késleltetett percek számával az ismétlődő figyelmeztető e -mailek között}}
void resetNotified () // függvény az e -mail gyakoriságának visszaállításához
{értesített = 0; }
üres beállítás ()
{Serial.begin (9600); // Hibakereső konzol Blynk.begin (auth, ssid, pass); // csatlakozás a blynk timer.setInterval (időzítés, érzékelők); // Állítson be egy percenként meghívandó függvényt vagy azt, hogy milyen időzítésre van beállítva a dht.begin (); // DHT érzékelő futtatása}
// Az üres ciklusnak csak a blynk.run -t és az időzítőt kell tartalmaznia
void loop () {Blynk.run (); // Fuss blynk timer.run (); // BlynkTimer kezdeményezése}
Ajánlott:
MQ7-POLLUTION MONITORING THING SPEAK és NODEMCU használatával: 4 lépés
MQ7-POLLUTION MONITORING THING SPEAK ÉS NODEMCU HASZNÁLATÁVAL: A környezetszennyezés a mai világunk egyik fő problémája. De hogyan tudjuk nyomon követni a közeli szennyeződést, most ez nagyon egyszerű
IoT APIS V2 - Autonóm IoT -kompatibilis automata üzemi öntözőrendszer: 17 lépés (képekkel)
IoT APIS V2 - Autonóm IoT -kompatibilis automata üzemi öntözőrendszer: Ez a projekt a korábbi utasításaim továbbfejlesztése: APIS - Automatizált növényi öntözőrendszer távolról figyelje a növényt. Így
A gyorsulás felügyelete a Raspberry Pi és az AIS328DQTR használatával Python használatával: 6 lépés
A gyorsulás nyomon követése a Raspberry Pi és az AIS328DQTR használatával Python használatával: A gyorsulás véges, azt hiszem, a fizika egyes törvényei szerint.- Terry Riley A gepárd elképesztő gyorsulást és gyors sebességváltozásokat használ üldözés közben. A leggyorsabb lény a parton időnként kihasználja csúcssebességét a zsákmány elkapására. Az
Üzemi érzékelők egyedi mintavételi szivattyúkhoz: 3 lépés
Üzemi érzékelők egyedi mintavételi szivattyúkhoz: Készítettem egy rendszert, amely szabályozza a mintavételi szivattyúk megfelelő működését
APIS - Automatizált üzemi öntözőrendszer: 12 lépés (képekkel)
APIS - Automatizált Növényi Öntözőrendszer: A TÖRTÉNET: (ennek a rendszernek a következő fejlesztése itt érhető el) A növények öntözésének témájában jó néhány utasítás található, ezért alig találtam ki itt valami eredetit. Mitől lesz ez a rendszer más, a programozás és az igényesség