Održavanje sobne biljke na životu može biti težak posao, zar ne? A često se radi samo o tome da ga se sjetite zalijevati. Srećom, senzori vlage u tlu mogu nam pomoći da ne zaboravimo zalijevati naše biljke i pomoći im da žive dulje.
Međutim, većina jeftinih senzora vlage u tlu rezistivni su (mjere otpor), imaju dva zupca i senzor mjeri sadržaj vode u tlu na temelju vodljivosti između njih. U početku rade dobro, ali s vremenom počnu hrđati, čak i ako su pozlaćeni! Ovo hrđanje smeta očitanjima, tako da morate stalno prilagođavati svoj kod da biste ga dobili kako treba. Također, ne rade tako dobro u rastresitom tlu.
Srećom, postoji bolja opcija: kapacitivni senzori vlage u tlu . Ovi senzori rade na temelju kapacitivnog mjerenja, što nudi značajne prednosti u odnosu na rezistivno mjerenje. Ovi senzori imaju samo jednu sondu, nemaju metal koji je izložen hrđi i ne štete vašim biljkama uvođenjem struje u tlo.
Pregled hardvera
Kapacitivni senzori vlage u tlu su prilično nevjerojatni. Samo ih zabodite u zemlju i oni emitiraju analogni signal koji je proporcionalan koliko je tlo vlažno. Ovi senzori koriste 555 timer IC i mjere koliko brzo (ili sporo) se kondenzator puni kroz otpornik, ali u ovim senzorima kondenzator nije doslovna komponenta, već je formiran od dvije PCB bakrene trake koje su blizu jedna drugoj . Njihov se kapacitet, a time i brzina punjenja, mijenja ovisno o količini vode oko njih.
Senzor uključuje ugrađeni regulator napona od 3,3 V, što ga čini prikladnim za MCU od 3,3 V i 5 V. Osim toga, troši manje od 5mA struje. Imajte na umu da ovaj senzor može pružiti samo kvalitativno mjerenje vlažnosti tla. Kako tlo postaje vlažnije, izlazna vrijednost se smanjuje, a kako je tlo suše, izlazna vrijednost raste. Kada se napaja na 5 V, izlazni napon se kreće od oko 1,5 V (za mokro tlo) do 3 V (za suho tlo). Međutim, na konačnu izlaznu vrijednost utječu i dubina umetanja sonde i koliko je tlo nabijeno oko nje.
Kapacitivni senzor vlage u tlu ima 3-pinski JST PH2.0 konektor. Jedan kraj priloženog kabela uključuje se u ovaj konektor, dok je drugi kraj standardni 3-pinski ženski konektor Dupont stila. Kabel je označen bojama tako da možete lako prepoznati koja je žica koja: crna predstavlja uzemljenje, crvena predstavlja VCC, a žuta predstavlja AOUT.
VCCje izvod za napajanje. Preporuča se da se senzor napaja od 3,3V do 5V. Imajte na umu da će analogni izlaz varirati ovisno o naponu koji se dovodi na senzor.
GNDje izvod za uzemljenje.
AOUT izvod daje analogni izlazni napon koji je proporcionalan količini vlage u tlu. Izlaz se može očitati pomoću analognog ulaza na vašem mikroupravljaču. Kako se razina vlage povećava, izlazni napon se smanjuje i obrnuto.
Upute za korištenje
Kada koristite senzor, imajte na umu sljedeće:
- Preporuča se da se sonda ne postavlja na dubinu koja prelazi graničnu liniju na senzoru.
- Komponente na ovoj ploči NISU vodootporne, stoga pazite da ne dođu u kontakt s vodom ili prskanjem. Za dodatnu zaštitu razmislite o upotrebi komada široke termoskupljajuće cijevi oko gornjeg dijela ploče.
- Imajte na umu da bi rubovi PCB-a s vremenom mogli apsorbirati vlagu, skraćujući životni vijek senzora. Kako biste povećali njegovu trajnost, razmislite o nanošenju zaštitnog premaza, poput prozirnog epoksida, koji neće utjecati na performanse senzora.
Spajanje kapacitivnog senzora vlage tla na Arduino
Povezivanje kapacitivnog senzora vlage u tlu na arduino je jednostavno. Trebate spojiti samo tri žice. Započnite spajanjem crvene žice senzora (VCC) na napajanje, 3,3 V-5 V je u redu. Koristite isti napon na kojem se temelji logika vašeg mikrokontrolera. Za većinu Arduina to je 5V. Za logičke uređaje od 3,3 V koristite 3,3 V. Sada spojite crnu žicu (GND) na masu. Na kraju, spojite žutu žicu (AOUT) na jedan od analognih ulaznih izvoda na vašem Arduinu. U našem slučaju, spojen je na A0 izvod.
Pronalaženje graničnih vrijednosti
Iz izvedenih mjerenja nije moguće izravno odrediti stvarni postotak vlage u tlu. Međutim, relativno je lako definirati osnovne raspone za ono što se smatra "presuhim", "prevlažnim" i "taman kako treba".
Jednostavno pokrenite skicu u nastavku i zabilježite izlaz senzora pod tri osnovna uvjeta:
- Kada je tlo dovoljno suho da biljku treba zalijevati.
- Kada je tlo zaliveno do idealne razine vlage za biljku.
- Kada je tlo jako zaliveno i previše mokro, što nije idealno za biljku.
#define sensorPin A0
void setup() {
Serial.begin(9600);
}
void loop() {
int value = analogRead(sensorPin);
Serial.print("Analogna vrijednost: ");
Serial.println(value);
delay(1000);
}
Nakon pokretanja skice, trebali biste očekivati očitanja slična onima navedenima u nastavku:
- Na otvorenom: oko 590
- Suho tlo koje treba zalijevati: približno 380
- Idealna vlažnost tla: između 277 i 380
- Tlo koje je upravo zaliveno: približno 277
- U šalici vode: približno 273
Ovaj test može zahtijevati pokušaje i pogreške. Nakon što dobijete očitanja, možete ih koristiti kao pragove.
Arduino primjer koda
Skica u nastavku procjenjuje razinu vlažnosti tla pomoću sljedećih graničnih vrijednosti:
- < 277 je prevlažan
- 277 – 380 je ciljni raspon
- > 380 je previše suho
/* Izmijenite vrijednosti prema vašim probama */
#define vlazno 277 // Definiranje maksimalne vrijednosti ispod koje smatramo da je tlo vlažno'
#define suho 380 // Definiranje minimalne vrijednosti iznad koje smatramo da je tlo suho'
// Define analog input
#define senzor A0
void setup() {
Serial.begin(9600);
}
void loop() {
// Očitavanje analognog izvoda i ispis podataka
int vlaga = analogRead(senzor);
Serial.print("Analogna vrijednost: ");
Serial.println(vlaga);
// Određivanje razine vlage u zemlji
if (vlaga< vlazno) {
Serial.println("Status: Tlo je prevlažno");
} else if (vlaga>= vlazno && vlaga< suho) {
Serial.println("Status: Vlaga u tlu je idealna");
} else {
Serial.println("Status: Tlo je presuho - vrijeme je za navodnjavanje!");
}
Serial.println();
// Očitanja svake sekunde
delay(1000);
}