Cuprins:
- Pasul 1: Obținerea tuturor părților
- Pasul 2: Conectarea tuturor părților împreună
- Pasul 3: Scrierea codului
- Pasul 4: Utilizarea Arduino
Video: Senzor Arduino DHT22 și proiect de umiditate a solului cu meniu: 4 pași
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:42
Bună ziua, băieți Astăzi vă prezint al doilea proiect despre instructabile. Acest proiect prezintă amestecul primului meu proiect în care am folosit senzorul Soad Moisture și senzorul DHT22 care este utilizat pentru măsurarea temperaturii și umidității. Acest proiect este ușor de realizat, iar persoanele care folosesc Arduino vor simți că este liniștit interesant de realizat. Diferența dintre acest proiect și primul este că în acest proiect utilizatorul va avea un meniu în care poate alege ceea ce vrea să vadă în acest moment. Vor fi patru opțiuni. Deci, ia-ți trusa și începe să realizezi acest proiect care poate fi folosit în orice casă.
Pasul 1: Obținerea tuturor părților
Acest proiect folosește puține părți. Aceste piese sunt foarte ieftine de obținut, așa că nu vă faceți griji cu privire la preț. Unele dintre părțile utilizate în acest proiect pot fi schimbate, astfel încât proiectul să poată fi mai ieftin de realizat. Ceea ce aveți de gând să folosiți este dvs. și faceți acest proiect și mai bun. Piese utilizate în acest proiect:
- Arduino uno rev3 (Puteți utiliza și alte Arduino)
- Pană de pâine
- Afișaj LCD 1602 verde cu I2C (puteți utiliza și afișaj cu I2Cous, dar veți avea nevoie de mai mulți pini pentru a-l conecta)
- Tastatură cu 16 butoane (modificabilă)
- FC-28-d Modul de detectare a higrometrului solului + senzor de umiditate a solului
- Senzor de temperatură și umiditate DHT22 (Puteți utiliza DHT11, care este mai ieftin de obținut)
- Diodă LED roșie
- Diodă LED albastră
- 2 rezistoare 220 ohm (utilizate pentru diode)
- Rezistor 4k7 folosit pentru DHT22 pe schematică
- Conector baterie Arduino
- Câteva cabluri jumper pentru a conecta toate piesele
Un lucru pe care trebuie să-l spun înainte de a începe construirea acestui proiect este că tastatura nu este necesară. De data aceasta am folosit tastatura, deoarece codificatorul meu rotativ era rupt. Cred că acest proiect ar fi perfect dacă ar avea codificator rotativ, deoarece ar folosi pini mai mici sau poate folosi 3 butoane.
Pasul 2: Conectarea tuturor părților împreună
În acest pas puteți vedea schema pe care am făcut-o cu fritzing. Voi scrie la cald pentru a conecta fiecare parte cheie a acestui proiect.
După cum puteți vedea, folosim 5V și GND de la arduino pentru a alimenta panoul de control.
LCD:
- VCC la 5v (+ parte pe panou)
- GND la gnd (- parte pe panou)
- SDA la pinul analogic A4
- SCL la pinul analogic A5
Tastatura cu 16 butoane:
Folosim pinii 9, 8, 7, 6, 5, 4, 3, 2 pentru a conecta tastatura (acesta este motivul pentru care aș folosi codificator rotativ, deoarece ar lua doar 3 pini pe placă)
Senzor de umiditate a solului:
- VCC la 5v (+ parte pe panou)
- GND la gnd (-partea pe panou)
- D0 la pinul digital 0
- A0 la pinul analogic A0
DHT22:
- VCC la 5v (+ parte pe panou)
- GND la gnd (-partea pe panou)
- Pinul de ieșire este conectat la pinul 12
Conectarea diodei:
- intră o parte a diodei - o parte a panoului
- a doua parte trece printr-un rezistor de 220 ohmi și după aceea este conectat la pinul 10 (diodă albastră) sau 11 (diodă roșie)
Pasul 3: Scrierea codului
Voi încerca să explic codul în câteva părți. De asemenea, va fi scris un cod complet, astfel încât să îl puteți copia și schimba, de asemenea, dacă vedeți orice nevoie. De asemenea, în acest cod sunt scrise câteva metode de lucru cu senzorii, dar de data aceasta accentul principal a fost pe crearea unui meniu care va fi ușor de înțeles pentru persoanele care sunt noi cu Arduino. De data aceasta nu folosesc nicio întrerupere, dar în următoarele proiecte o voi face, așa că rețineți că acest cod poate deveni mult mai bun cu întreruperile.
- Prima parte a codului include toate bibliotecile utilizate pentru acest proiect. Rețineți că pentru toate părțile pe care le-am spus că le folosesc aveți nevoie de bibliotecile următoare: Wire, LiquidCrystal_I2C, tastatură și DHT. Toate bibliotecile pot fi găsite pe Arduino IDE dacă accesați partea de schiță și apoi includeți biblioteci. De asemenea, rețineți că, dacă utilizați ceva de genul codificatorului rotativ, va trebui probabil să obțineți noi biblioteci în loc de tastatură, care probabil ar fi rotary.h și buton. Dacă utilizați senzorul DHT11, biblioteca este în continuare DHT.
- În a doua parte a codului vor fi definite toate piesele utilizate. În primul rând este LCD. După aceea, există un senzor DHT care este reprezentat ca un obiect cu tip de senzor dht și, de asemenea, un pin conectat. Senzorul de umiditate al solului și diodele sunt al treilea.
- Voi descrie tastatura un pic mai mult. După cum am spus, codificatorul meu rotativ era rupt, așa că am decis să îl folosesc. Pentru acest proiect este suficient să aveți doar patru butoane, chiar și trei sunt bune pentru el. Deci, folosesc patru butoane de pe tastatură pentru o singură opțiune. Puteți utiliza unele dintre butoane dacă doriți altceva dacă aveți o idee. Trebuie să definiți rânduri și coloane în această parte. După aceea, hexaKeys vă va reprezenta opțiunile utilizate pentru acest proiect. În proiectul meu sunt B (înapoi), U (în sus), D (în jos) și A (accept). Puteți crea fiecare buton pentru a face altceva. Un singur buton poate activa lumina de fundal, poate fi oprit. Așadar, nu ezitați să mai jucați cu el
- În această parte sunt variabile globale utilizate în cod. Variabilele Bool sunt folosite pentru schimbarea ecranului. Variabila de întâmpinare este adevărată câteva secunde numai la pornirea arduino i, după aceea va fi falsă pentru restul timpului. Accentul principal este pe variabila mainScreen. Această variabilă este utilizată pentru a vă ghida de la meniu la orice altă opțiune din cod. Dacă această variabilă este falsă, atunci înseamnă că utilizatorul a decis să utilizeze una dintre cele patru opțiuni ale acestui proiect.
- Aici sunt scrise toate metodele utilizate în acest cod. Voi încerca să explic toate metodele scrise din această parte
- void startScreen (); // metoda de pornire a proiectului și arduino
- int choiceNumber (int choice); // acest lucru vă modifică alegerea opțiunilor proiectului. Numărul merge de la 1 la 4
- void mainScreenP (int choice); // vor fi scrise patru opțiuni ale dispozitivului care este realizat
- bool mainScreenCS (bool mainScreen); // aceasta schimbă mainScreen în false
- bool mainScreenBack (bool mainScreen); // aceasta schimbă mainScreen în true
- void tempCelsius (); // citirea temperaturii în opțiunea senzorului C DHT
- void tempFarenheit (); // citirea temperaturii în opțiunea senzorului F DHT
- void printHumidity (); // opțiunea de citire a senzorului de umiditate DHT
- void readSensorData (); // citirea datelor pe senzorii conectați
- String getTemperatureC ();
- String getTemperatureF ();
- String getHumidity ();
- void soilMoisture (); // aceasta este pentru un alt senzor și diode
- void printSensorSoilMoisture (); // imprimarea părții de umiditate a solului pe lcd
- void diodeLights (valoare int); // pornirea și oprirea diodelor
- void printValue (valoarea int);
6. Configurarea pentru arduino face parte din setarea senzorilor LCD și DHT, precum și a diodelor
7. Partea principală este partea în care sunt utilizate toate metodele scrise de mai sus.
Codul complet al acestui proiect va fi atașat acestui pas. Rețineți că există posibilitatea ca pinii să nu fie conectați ca pe schemă, cred că diodele sunt schimbate.
Pasul 4: Utilizarea Arduino
Aceasta este probabil cea mai amuzantă parte. Cel puțin este mai amuzant după toate codurile scrise. În această parte puteți vedea imagini cu modul în care funcționează proiectul. Există 4 opțiuni.
- Temperatura de citire în Celsius
- Temperatura de citire în Fahrenheit
- Citirea umidității
- Pornirea diodelor și citirea valorilor senzorului de umiditate a solului.
Puteți alege oricare dintre opțiunile posibile, de asemenea, puteți reveni și alege din nou dacă doriți să vedeți altceva. Simplu și ușor de utilizat.
Dacă există vreo altă întrebare pe care mi-o puteți pune. Vă mulțumesc băieților că ați analizat proiectul meu. Cu toate privirile. Sebastian
Recomandat:
Creați-vă propriul senzor de umiditate a solului cu Arduino !!!: 10 pași
Creați-vă propriul senzor de umiditate a solului cu Arduino !!!: DESPRE !!! În acest instructable, vom interfața un senzor de umiditate al solului FC-28 cu Arduino. Acest senzor măsoară conținutul volumetric al apei din sol și ne oferă nivelul de umiditate ca ieșire. Senzorul este echipat atât cu analo
Senzor ușor de umiditate a solului Afișaj pe 7 segmente Arduino: 4 pași (cu imagini)
Senzor de umiditate ușor al solului Afișaj segment Arduino 7: Bună ziua! Carantina poate fi dură. Sunt norocos că am o mică curte și o mulțime de plante în casă și asta m-a făcut să mă gândesc că aș putea să fac un mic instrument care să mă ajute să le păstrez bine în timp ce sunt blocat acasă.Acest proiect este un instrument simplu și funcțional
Automatizarea unei sere cu LoRa! (Partea 1) -- Senzori (temperatură, umiditate, umiditate a solului): 5 pași
Automatizarea unei sere cu LoRa! (Partea 1) || Senzori (temperatură, umiditate, umiditate a solului): În acest proiect vă voi arăta cum am automatizat o seră. Asta înseamnă că vă voi arăta cum am construit sera și cum am conectat electronica de putere și automatizare. De asemenea, vă voi arăta cum să programați o placă Arduino care utilizează L
Cum se face un senzor de umiditate a solului DIY [ARDUINO / ESP COMPATIBIL]: 3 pași
Cum se face un senzor de umiditate a solului DIY [ARDUINO / ESP COMPATIBIL]: Bună ziua, în acest ghid vom vedea cum să construim un senzor de umiditate a solului de la zero! Este foarte ieftin și este compatibil cu toate tipurile de microcontrolere, din punctul electric din vedere circuitul este prezentat ca un simplu separator de pensii
Senzor de umiditate a solului cu Arduino: 4 pași
Senzor de umiditate a solului cu Arduino: Bună, băieți, în acest instructable vom învăța cum să folosiți senzorul de umiditate al solului cu Arduino. Deci, va spune despre conținutul de apă disponibil în interiorul s