- Potrebni materiali
- Senzor za dež
- Delovanje senzorja za dež
- Shema vezja
- Razlaga kode
- Delovanje sistema za zaznavanje dežja na osnovi Arduina
Preprost sistem za zaznavanje dežja lahko enostavno sestavite tako, da povežete Arduino s senzorjem za dež. Senzor bo zaznal padavine, ki padajo nanj, plošča Arduino pa jo bo zaznala in lahko izvede potrebna dejanja. Takšen sistem je mogoče uporabiti na številnih različnih področjih, kot sta kmetijstvo in avtomobilizem. Zaznavanje padavin lahko uporabimo za samodejno uravnavanje namakalnega postopka. Tudi podatki o stalnih padavinahlahko kmetom pomagajo pri uporabi tega pametnega sistema za samodejno zalivanje pridelka le, kadar je to nujno potrebno. Podobno je v avtomobilskem sektorju mogoče brisalce vetrobranskega stekla popolnoma samodejno uporabiti s sistemom za zaznavanje dežja. Sistemi za avtomatizacijo doma lahko s pomočjo zaznavanja dežja samodejno zaprejo okna in prilagodijo sobno temperaturo. V tej vadnici bomo z uporabo Arduina z brenčalom izdelali osnovni senzor za dež. Nato lahko s to nastavitvijo sestavite vse, kar želite, na vrhu. Prav tako ugotavljajo, da je modul dežni senzor imenovan tudi kot senzor dežne kaplje ali senzorja merilnika dež ali deževnice senzorja, ki temelji na uporabi, vendar se vsi sklicujejo na isti senzor, ki se uporablja v ta projekt in vse delo na istem principu.
Z uporabo 555 Timer smo zgradili tudi preprost alarm za dež in samodejni brisalnik avtomobila, morda boste to želeli preveriti tudi, če ne želite uporabljati Arduina. Glede na to se vrnimo k temu projektu in začnimo graditi naš merilnik dežja Arduino.
Potrebni materiali
- Arduino UNO
- Senzor za dež
- Zvočni signal
- Breadboard
- Priključne žice
Senzor za dež
Modul Raindrops je sestavljen iz dveh plošč, in sicer Rain Board in Control Board.
Modul Rain board je sestavljen iz dveh bakrenih tirov, zasnovanih tako, da v suhih pogojih zagotavlja visoko odpornost na napajalno napetost, ta izhodna napetost tega modula pa bo 5V. Odpornost tega modula se postopoma zmanjšuje glede na povečanje vlažnosti na plošči. Ko se upor zmanjša, se njegova izhodna napetost zmanjša tudi glede na mokroto modula. Modul dež plošča je sestavljena iz dveh zatiči, ki se uporabljajo za povezavo s krmilno ploščo, kot je prikazano spodaj.
Modul nadzorne plošče nadzoruje občutljivost in pretvori analogni izhod v digitalni izhod. Če je analogna vrednost pod pragom vrednosti nadzorne plošče, je izhod digitalno nizek in če je analogna vrednost višja od mejne vrednosti, je izhod digitalno visok. Za to primerjavo in pretvorbo je uporabljen primerjalnik LM393 OP-Amp. Primerjalnik Op-Amp je zanimivo vezje, ki ga lahko uporabimo za primerjavo dveh različnih napetostnih vrednosti, v tem vezju smo že uporabljali v številnih projektih, kot so Smart Electronic Candle, Laser Security Alarm, Line Follower Robot in še veliko več.
Nadzor dež modul, ki je prikazana spodaj sestavljajo 4 zatiči za povezavo Arduino sicer VCC, GND, d0, A0 in dva zatiči za priključitev modula dež deska. Če povzamemo, modul dežne plošče zazna deževnico, modul nadzorne plošče pa se uporablja za nadzor občutljivosti ter primerjavo in pretvorbo analognih vrednosti v digitalne vrednosti.
Delovanje senzorja za dež
Delovanje modula senzorja za dež je enostavno razumeti. V sončnem dnevu zaradi suhosti na modulu dežne plošče nudi visoko odpornost na napajalno napetost. Ta napetost se na izhodnem zatiču modula dežne plošče prikaže kot 5V. Ta 5V se bere kot 1023, če ga bere analogni zatič Arduino. Med dežjem deževnica povzroči povečanje vlažnosti na deževnici, kar posledično povzroči zmanjšanje upora, dobavljenega za dovod. Ko se upor postopoma zmanjšuje, začne izhodna napetost padati.
Ko je dežna plošča popolnoma mokra in je upor, ki ga ponuja, najmanjši, bo izhodna napetost čim nižja (približno 0). Ta vrednost 0V se bere kot vrednost 0, če jo bere analogni zatič Arduino. Če je modul dežne deske delno moker, bo izhod tega modula dežne deske glede na upor, ki ga nudi. Če je upor modula dežne plošče takšen, da ima izhod 3V, bo odčitana analogna vrednost 613. Formulo za iskanje ADC lahko damo z ADC = (vrednost analogne napetosti X 1023) / 5. Z uporabo te formule lahko pretvorite katero koli analogno napetost v vrednost branja analogne analogne vrednosti Arduino.
Shema vezja
Spodnji diagram vezja prikazuje povezave vezij za senzor padca dežja z Arduino. Zasnova je narejena z uporabo proteusa, fizični moduli so podobni modulom, ki so prikazani na vezju.
Modul za merjenje dežja, ki je prikazan na vezju, je povezan z nadzorno ploščo. Zatič VCC nadzorne plošče je povezan z napajalnikom 5V. Ozemljitveni zatič je povezan z zemljo. Po potrebi je priključek D0 povezan s katerim koli digitalnim zatičem Arduina in ta zatič mora biti v programu prijavljen kot izhodni zatič. Težava, s katero se soočamo z zatičem D0, je ta, da ne moremo dobiti natančne vrednosti izhodne napetosti. Če izhod preseže mejno napetost, lahko krmilni modul zazna spremembo izhoda. Z brenčalom moramo upravljati, tudi če se v modulu dežne plošče občutno spremeni izhodna napetost. Zaradi teh razlogov je pin A0 povezan z analognim pinom Arduino, kar olajša spremljanje spremembe izhoda. Zvočni signal, ki se uporablja kot signal uporabniku,je mogoče priključiti na kateri koli digitalni pin Arduina. Če zvočni signal potrebuje več kot 5V, poskusite priključiti relejsko vezje ali tranzistor in nato nanj priključiti obremenitev.
Razlaga kode
Koda Arduino za senzor za dež je bila napisana z uporabo Arduino IDE. Popolna koda za ta projekt je podana na koncu strani.
#define padavine A0 #define brenčalo 5 int value; int set = 10;
Določite pin A0 kot padavino, pin 5 pa kot zvočni signal in spremenljivko "value" in "set" določite za celi števili in nastavite njeno nastavljeno vrednost spremenljivke na 10. To vrednost lahko spremenite glede na zahtevano raven delovanja. Če želite, da se zvočni signal aktivira, ga nastavite na najmanjšo vrednost, tudi če je malo dežja
void setup () {Serial.begin (9600); pinMode (brenčalo, IZHOD); pinMode (padavine, INPUT); }
Inicializacija serijske komunikacije in nastavitev zvočnega signala. Nastavitev padavinskega zatiča kot izhodnega in vhodnega zatiča.
void loop () {vrednost = analogRead (padavine); Serial.println (vrednost); vrednost = zemljevid (vrednost, 0,1023,225,0);
funkcija analogRead odčitava vrednost senzorja za dež. Zemljevid funkcije preslika vrednost senzorja za dež iz izhodnega zatiča in spremenljivki dodeli vrednost od 0 do 225.
if (value> = set) {Serial.println ("dež je zaznan"); digitalWrite (brenčalo, VISOKO);
Če je vrednost odčitka senzorja večja od nastavljene vrednosti, program vstopi v zanko, natisne sporočilo na serijski monitor in vklopi brenčalo
else {digitalWrite (brenčalo, LOW);
Program vnese funkcijo else le, če je vrednost manjša od nastavljene vrednosti. Ta funkcija bo izklopila zvočno opozorilo, ko je nastavljena vrednost višja od vrednosti senzorja, ki sporoča, da ni dežja.
Delovanje sistema za zaznavanje dežja na osnovi Arduina
Ta sistem deluje tako, da ob dežju deževnica deluje kot sprožilec, ki vklopi zvočni signal. V Arduino kodi senzorja za kapljice dežja smo opredelili, da sta nožici 5 in A0 zvočni signal in padavine. S tem lahko spremenimo zatiče v definiranem delu funkcije, preostali del kode pa bo nedotaknjen. Tako bo programer enostavno urejal zatiče.
V void zanki ukaz analogRead prebere vrednost s senzorja. V naslednji vrstici ukaz Serial.println (value) natisne vrednost na serijski monitor. To bo koristno med odpravljanjem napak. Funkcija map preslika dohodno vrednost med 0 -225. Format funkcije za zemljevid je zemljevid (vrednost, najmanjša vrednost, največja vrednost, vrednost, ki jo je treba preslikati za najmanjšo vrednost, vrednost, ki se preslika za največjo vrednost). Zvočni signal se vklopi ali izklopi, odvisno od nastavljene vrednosti in izhoda senzorja. Ta vrednost se v funkciji if primerja z nastavljeno vrednostjo. Če je vrednost večja od nastavljene vrednosti, se vklopi zvočni signal. Če je vrednost manjša od nastavljene vrednosti, se zvočni signal izključi.
Celotno delo najdete v spodnjem videoposnetku. To je ena izmed mnogih aplikacij, enako načelo bomo videli pri brisalcih vetrobranskega stekla, drugih napravah za avtomatizacijo stanovanj, kmetijstvu itd. Upam, da ste projekt razumeli in uživali v gradnji nečesa koristnega. Če imate kakršna koli vprašanja, uporabite spodnji odsek za komentarje ali na naših forumih za druga tehnična vprašanja.