Sadržaj:
- Korak 1: Nabavka svih dijelova
- Korak 2: Povežite sve dijelove zajedno
- Korak 3: Pisanje koda
- Korak 4: Upotreba vašeg Arduina
Video: Arduino DHT22 projekt senzora i vlage tla s izbornikom: 4 koraka
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:05
Zdravo momci Danas vam predstavljam svoj drugi projekt o instrukcijama. Ovaj projekt predstavlja mješavinu mog prvog projekta u kojem sam koristio senzor vlage tla i senzor DHT22 koji se koristi za mjerenje temperature i vlažnosti. Ovaj je projekt jednostavan za napraviti, a ljudima koji koriste Arduino bit će zanimljivo napraviti ga. Razlika između ovog projekta i prvog je u tome što će u ovom projektu korisnik imati izbornik u kojem može izabrati ono što želi vidjeti u ovom trenutku. Biće četiri opcije. Zato uzmite komplet i počnite izrađivati ovaj projekt koji se može koristiti u bilo kojem domu.
Korak 1: Nabavka svih dijelova
Ovaj projekt koristi nekoliko dijelova. Dobivanje ovih dijelova je vrlo jeftino, stoga ne brinite o cijeni. Neki dijelovi korišteni u ovom projektu mogu se promijeniti tako da je izrada projekta jeftinija. Na vama je koje ćete preporučene dijelove koristiti i učiniti ovaj projekt još boljim. Dijelovi korišteni u ovom projektu:
- Arduino uno rev3 (Možete koristiti i drugi Arduino)
- Breadboard
- LCD 1602 zeleni ekran sa I2C (možete koristiti i ekran sa I2C, ali za povezivanje će vam trebati više pinova)
- Tastatura sa 16 tastera (promenljiva)
- FC-28-d Modul za detekciju higrometra tla + senzor vlažnosti tla
- Senzor temperature i vlažnosti DHT22 (Možete koristiti DHT11 koji je jeftiniji)
- Crvena LED dioda
- Plava LED dioda
- 2 otpornika 220 ohma (koristi se za diode)
- 4k7 otpornik koji se koristi za DHT22 na shemi
- Konektor za Arduino bateriju
- Nekoliko kratkospojnih kabela za povezivanje svih dijelova
Jedna stvar koju vam moram reći prije nego počnete graditi ovaj projekt je da tastatura nije potrebna. Ovaj put sam koristio tastaturu jer mi je okretni koder pokvaren. Mislim da bi ovaj projekt bio savršen da ima rotacijski koder jer bi koristio manje pinove ili bi mogao koristiti 3 tipke.
Korak 2: Povežite sve dijelove zajedno
U ovom koraku možete vidjeti shemu koju sam napravio sa friziranjem. Zapisaću vruće da povežem svaki ključni dio ovog projekta.
Kao što vidite, za napajanje matične ploče koristimo 5V i GND iz arduina.
LCD:
- VCC na 5V (+ dio na matičnoj ploči)
- GND u gnd (- dio na matičnoj ploči)
- SDA na analogni pin A4
- SCL na analogni pin A5
Tastatura sa 16 tastera:
Koristimo pinove 9, 8, 7, 6, 5, 4, 3, 2 za povezivanje tipkovnice (to je razlog zašto bih koristio rotacijski davač, jer bi na ploči trebala samo 3 pina)
Senzor vlažnosti tla:
- VCC na 5V (+ dio na matičnoj ploči)
- GND u gnd (-dio na ploči)
- D0 na digitalni pin 0
- A0 na analogni pin A0
DHT22:
- VCC na 5V (+ dio na matičnoj ploči)
- GND u gnd (-dio na ploči)
- Izlazni pin je spojen na pin 12
Spajanje dioda:
- jedan dio diode ulazi u - dio matične ploče
- drugi dio prolazi kroz otpornik od 220 ohma, a nakon toga se spaja na pin 10 (plava dioda) ili 11 (crvena dioda)
Korak 3: Pisanje koda
Pokušat ću objasniti kod u nekoliko dijelova. Također će biti napisan cijeli kod tako da ga možete kopirati i promijeniti ako vidite da je potrebno. Također u ovom kodu postoji nekoliko napisanih metoda za rad senzora, ali ovaj put glavni fokus bio je na stvaranju izbornika koji će biti lako razumljiv za ljude koji su tek počeli koristiti Arduino. Ovaj put ne koristim nikakve prekide, ali u sljedećim projektima ću, pa imajte na umu da ovaj kod može biti mnogo bolji s prekidima.
- Prvi dio koda uključuje sve biblioteke koje se koriste za ovaj projekt. Imajte na umu da su vam za sve dijelove koje sam rekao da koristim potrebne sljedeće biblioteke: Wire, LiquidCrystal_I2C, Keypad i DHT. Sve biblioteke mogu se pronaći na Arduino IDE -u ako prijeđete na dio skice, a zatim u biblioteke za uključivanje. Također imajte na umu da ćete, ako koristite nešto poput rotacijskog kodera, vjerojatno morati nabaviti nove biblioteke umjesto tipkovnice, koja bi vjerojatno bila rotacijska.h i gumb. Ako koristite DHT11 senzor, biblioteka je i dalje DHT.
- U drugom dijelu koda bit će definirano korištenje svih korištenih dijelova. Prije svega, to je LCD. Nakon toga slijedi DHT senzor koji predstavlja sličan objekt s dht tipom senzora, kao i pin koji je spojen. Senzor vlage tla i diode su treći.
- Opisaću tastaturu još malo. Kao što sam rekao, moj rotacijski davač je pokvaren, pa sam ga odlučio upotrijebiti. Za ovaj projekt dovoljno je imati samo četiri gumba, čak su i tri dobra za to. Zato koristim četiri tastera na tastaturi za samo jednu opciju. Možete koristiti neke od gumba ako želite nešto drugo ako imate ideju. Morate definirati redove i stupce u ovom dijelu. Nakon toga hexaKeys će vam predstaviti opcije korištene za ovaj projekt. U mom projektu postoje B (nazad), U (gore), D (dole) i A (prihvati). Svako dugme možete učiniti da učini nešto drugo. Jedno dugme može uključiti pozadinsko osvjetljenje, jedno ga može isključiti. Zato se slobodno poigrajte s njim još malo
- U ovom dijelu su globalne varijable korištene u kodu. Bool varijable se koriste za promjenu ekrana. Varijabla dobrodošlice je istinita samo nekoliko sekundi samo kada je arduino i uključen, nakon toga će ostati netačna ostatak vremena. Glavni fokus je na varijabli mainScreen. Ova varijabla se koristi za vođenje od menija do bilo koje druge opcije u kodu. Ako je ova varijabla netačna, to znači da je korisnik odlučio koristiti jednu od četiri opcije ovog projekta.
- Ovdje su zapisane sve metode korištene u ovom kodu. Pokušat ću objasniti sve pisane metode u ovom dijelu
- void startScreen (); // metoda za pokretanje projekta i arduina
- int choiceNumber (int choice); // ovo mijenja vaš izbor opcija projekta. Broj se kreće od 1 do 4
- void mainScreenP (int izbor); // bit će napisane četiri opcije napravljenog uređaja
- bool mainScreenCS (bool mainScreen); // ovo mijenja mainScreen u false
- bool mainScreenBack (bool mainScreen); // ovo mijenja mainScreen u true
- void tempCelsius (); // očitavanje temperature u opciji C DHT senzora
- void tempFarenheit (); // očitavanje temperature u opciji F DHT senzora
- void printHumidity (); // očitavanje opcije DHT senzora vlažnosti
- void readSensorData (); // očitavanje podataka na spojenim senzorima
- String getTemperatureC ();
- String getTemperatureF ();
- String getHumidity ();
- void groundMoisture (); // ovo je za drugi senzor i diode
- void printSensorSoilMoisture (); // ispis vlažnosti tla na LCD -u
- void diodeLights (int vrijednost); // uključivanje i isključivanje dioda
- void printValue (int vrijednost);
6. Podešavanje za arduino je dio gdje postavljate LCD i DHT senzor te diode
7. Glavni dio je dio u kojem se koriste sve gore navedene pisane metode.
Potpuni kôd ovog projekta bit će u prilogu ovog koraka. Imajte na umu da postoji mogućnost da pinovi možda nisu povezani kao na shemi, mislim da se diode mijenjaju.
Korak 4: Upotreba vašeg Arduina
Ovo je vjerojatno najsmješniji dio. Barem je smiješnije nakon svega napisanog kodiranja. U ovom dijelu možete vidjeti slike kako projekt funkcionira. Postoje 4 opcije.
- Očitavanje temperature u Celzijusima
- Očitavanje temperature u Fahrenheitu
- Očitavanje vlažnosti
- Uključivanje dioda i očitanje vrijednosti senzora vlažnosti tla.
Možete odabrati bilo koju od mogućih opcija, a također se možete vratiti i ponovo izabrati ako želite vidjeti nešto drugo. Jednostavno i jednostavno za korištenje.
Ako imate bilo koje drugo pitanje, možete me pitati. Hvala vam što ste pogledali moj projekt. Uz sve pozdrave. Sebastian
Preporučuje se:
Solarni mjerač vlage tla sa ESP8266: 10 koraka (sa slikama)
Solarni mjerač vlage tla sa ESP8266: U ovom Instructable -u izrađujemo monitor vlažnosti tla na solarni pogon. Koristi bežični mikrokontroler ESP8266 koji radi sa kodom male snage i sve je vodootporno pa se može ostaviti vani. Možete tačno slijediti ovaj recept ili iz njega uzeti
Napravite vlastiti osjetnik vlage tla s Arduinom !!!: 10 koraka
Napravite vlastiti senzor vlage u tlu s Arduinom !!!: O !!! U ovom uputstvu povezat ćemo senzor vlažnosti tla FC-28 s Arduinom. Ovaj senzor mjeri volumetrijski sadržaj vode u tlu i daje nam nivo vlage kao izlaz. Senzor je opremljen sa oba analogna
Arduino štap za praćenje vlage tla - nikada ne zaboravite zalijevati vaše biljke: 4 koraka (sa slikama)
Arduino štap za praćenje vlažnosti tla - nikada ne zaboravite zalijevati vaše biljke: Zaboravljate li često zalijevanje sobnih biljaka? Ili im možda pridajete previše pažnje i zalijevate ih? Ako to učinite, trebali biste sami napraviti štap za praćenje vlažnosti tla na baterije. Ovaj monitor koristi kapacitivnu vlagu tla
Senzor vlage tla s Arduinom: 4 koraka
Senzor vlage tla s Arduinom: Zdravo momci, u ovim uputstvima naučit ćemo kako koristiti senzor vlage tla s Arduinom. Dakle, kako naziv sugerira senzor vlažnosti tla, što znači da će otkriti vlagu u tlu. Tako će reći o sadržaju vode u unutrašnjosti
Arduino LCD senzor vlage tla: 5 koraka
Arduino LCD senzor vlage tla: Ono što ćemo napraviti je Arduino senzor vlage sa YL-69 senzorom koji radi na osnovu otpora između dva "noža". On će nam dati vrijednosti između 450-1023 pa ga moramo mapirati da bismo dobili postotnu vrijednost, ali dobro smo dobili