Sadržaj:

Sustav upozorenja za tlo niske vlažnosti za vašu biljku: 5 koraka
Sustav upozorenja za tlo niske vlažnosti za vašu biljku: 5 koraka

Video: Sustav upozorenja za tlo niske vlažnosti za vašu biljku: 5 koraka

Video: Sustav upozorenja za tlo niske vlažnosti za vašu biljku: 5 koraka
Video: Противовирусная настройка иммунитета 2024, Studeni
Anonim
Sustav upozorenja za tlo niske vlažnosti za vašu biljku
Sustav upozorenja za tlo niske vlažnosti za vašu biljku

U nekoliko stanova uobičajeno je pronaći staklenke s različitim vrstama biljaka. I s velikim brojem svakodnevnih aktivnosti, ljudi zaboravljaju zalijevati svoje biljke i umiru zbog nedostatka vode.

Kako bismo izbjegli ovaj problem, odlučili smo stvoriti sustav za obavještavanje kada biljka nema vode. Na taj način nikada nećete zaboraviti zalijevati svoju biljku i ona će dugo ostati živa. Zatim ćemo predstaviti cjelokupni razvoj ovog projekta.

Pribor

  • PCBWay Prilagođena PCB
  • Analogni osjetnik vlage tla za Arduino
  • Arduino UNO
  • Kratkospojne žice (općenito)
  • Standardni LCD - 16 x 2 plavi
  • UTSOURCE Rotacijski potenciometar 10k

Korak 1: Razvoj projekta

Razvoj projekta
Razvoj projekta

Jedan od načina za otkrivanje količine vode u biljci je parametar vlage. Dakle, što je manje vode u staklenci naše biljke, to je niža vlaga u tlu.

Stoga moramo koristiti senzor vlažnosti za analizu stanja vlage u našoj biljci.

Kroz njega smo postavili krug montiran u ploču s Arduinom za nadzor i indikaciju niske vlažnosti staklenke s kaktusima. Dakle, pomoću LCD zaslona obavijestiti naše korisnike o vlazi, kao što je prikazano na slici 1.

Korak 2: Umetanje osjetnika vlage u krug

Umetanje osjetnika vlage u krug
Umetanje osjetnika vlage u krug
Umetanje osjetnika vlage u krug
Umetanje osjetnika vlage u krug

Iz gornjeg kruga umetnut ćemo sondu za mjerenje vlažnosti u postrojenje koje želimo nadzirati. U naš projekt ubacujemo sondu u mali kaktus, kao što je prikazano na slici 2.

Sada ćemo vidjeti kako projicirati rad korak po korak i u nastavku, naučit ćemo kako stvoriti kontrolni kod. U početku, kada ne povežemo senzor unutar staklenke, uređaj ima nizak sadržaj vlage od 2% izvana staklenka za kaktus. To se može vidjeti na slici 3.

Korak 3: Shvatite vrijednosti vlage

Shvatite vrijednosti vlage
Shvatite vrijednosti vlage
Shvatite vrijednosti vlage
Shvatite vrijednosti vlage

Ova niska postotna vrijednost predstavlja nisku vlažnost. Sada, nakon umetanja senzora u tlo posude s kaktusima, prikazat će se vrijednost od 36%, kao što je prikazano na slici 4. To jest, naša vlaga je niska i sustav prikazuje poruku Low Moisture (Niska vlaga) jer je vrijednost manja više od 60%.

Sljedeći korak je navodnjavanje tla vrča našeg kaktusa i možemo provjeriti povećanje vrijednosti vlažnosti na 69%.

Nakon razumijevanja rada projekta, predstavit ćemo svu logiku izgradnje za stvaranje ovog sustava praćenja. Počnimo!

Korak 4: Logičko programiranje

U nastavku će se programska logika prikazati kroz konstruirani kod.

U početku je proglašena knjižnicom Display LCD -a, varijabli i stvoren je objektni LCD sa svojim pinovima veze s Arduino UNO.

#uključi

#define senzor A0 bool LCDControl = 0, LowUmid = 0, HighUmid = 0; bajt UmidityPercent = 0, vlaga = 0, PreviousValue = 0; int ValUmidade = 0, AnalogValue = 0; const int rs = 2, en = 3, d4 = 4, d5 = 5, d6 = 6, d7 = 7; LCD tekući kristal (rs, en, d4, d5, d6, d7);

Nakon toga, funkcija postavljanja i LCD zaslon 16x2 su inicijalizirane, a pin senzora konfiguriran kao ulaz. Konačno smo prvo očitali senzor i upotrijebili smo ga kao referencu za varijablu PreviousValue, kao što je prikazano u nastavku.

{Serial.begin (9600); lcd.begin (16, 2); pinMode (senzor, ULAZ); PreviousValue = analogRead (senzor); }

S kreiranim varijablama i naredbama u funkciji postavljanja void, objasnit ćemo sve logičko programiranje u funkciji petlje.

// Le o valor do pino A0 do sensorAnalogValue = analogRead (sensor); // Moral o valor da porta analogica no serijski monitor Serial.print ("Analog Port:"); Serial.println (AnalogValue); UmidityPercent = karta (AnalogValue, 0, 1023, 0, 100); vlaga = 100 - UmidityProcent;

U funkciji petlje, analogna vrijednost je očitana i vrijednost je mapirana u rasponu od 0 i 100. Ova vrijednost predstavlja postotak vlage tla. Kad je vlaga velika, vrijednost se približava 0, a ako je vlaga niska, vrijednost se približava 100.

Kako bismo olakšali predstavljanje vrijednosti i spriječili zbunjivanje korisničkog čitanja, preokrećemo ovu logiku i predstavljamo da će 0% biti niska vlažnost i 100% visoka vlažnost. To je učinjeno pomoću proračuna provedenog nakon mapiranja.

vlaga = 100 - UmidityProcent;

Nakon očitavanja, vrijednost vlage je potrebno prikazati na LCD zaslonu. Sljedeći korak je provjeriti je li vrijednost vlage različita od njezine vrijednosti plus 1 ili vrijednosti minus 1, prema dolje navedenom uvjetu.

if ((vlaga> (Prethodna vrijednost) +1) || (vlaga <(Prethodna vrijednost)- 1))

Ovaj se uvjet koristi kako bi se spriječilo da sustav prikaže istu vrijednost nekoliko puta na LCD zaslonu. No, ako je uvjet istinit, sustav će prikazati vrijednost na LCD -u i provjeriti je li vrijednost veća ili jednaka od 60%ili manja od 60%. Ako je vrijednost bila veća ili jednaka od 60%, sustav je prisutan poruka High Moisture, u protivnom, prikazuje poruku Low Moisture, kao što je prikazano u nastavku.

if ((vlaga> (Prethodna vrijednost) +1) || (vlaga <(Prethodna vrijednost)- 1)) {lcd.setCursor (1, 0); lcd.print ("Vlaga:"); lcd.print (""); lcd.setCursor (11, 0); lcd.tisak (vlaga); lcd.print ("%"); if (vlaga = 60 && HighUmid == 0) {lcd.setCursor (2, 1); lcd.print (""); lcd.setCursor (1, 1); lcd.print ("Visoka vlaga"); HighUmid = 1; LowUmid = 0; } PreviousValue = vlaga; }

Konačno, sustav će pohraniti vrijednost varijable vlažnosti u varijablu PreviousValue kako bi aktualizirao njezinu vrijednost. Svaki put kada se na zaslonu prikaže nova vrijednost, varijabla PreviousValue se aktualizira za upotrebu u drugim ciklusima obrade koda. Stoga je ovo jednostavan sustav koji se koristi za praćenje vlage biljaka u našim stanovima i informiranje korisnika o razina vlažnosti tla.

Korak 5: Zahvalnice

Silícios Lab zahvaljuje PCBWay -u na podršci i zajedničkom radu. A mi imamo mnogo prednosti za vas. Zaradite 10 besplatnih PCB -a i puno novčića u grahu (Saznajte više) za trgovinu proizvodima na web stranici PCBWay.

Osim njih, Silícios Lab zahvaljuje UTSOURCE -u na podršci, koja nam je ponudila jeftine elektroničke komponente velike kvalitete i dobre usluge.

Preporučeni: