Monitorizarea umidității și temperaturii în casă: 11 pași
Monitorizarea umidității și temperaturii în casă: 11 pași
Anonim
Monitorizarea umidității și temperaturii casei
Monitorizarea umidității și temperaturii casei

Buna baieti ! Pentru a începe în cel mai bun mod, o mică poveste despre proiect. Recent am absolvit și m-am mutat în Austria pentru prima mea funcție de inginer. Țara este frumoasă, dar foarte rece și umedă în sezonul de iarnă. Am început repede să observ ceva condens pe ferestre în fiecare dimineață când m-am trezit, precum și ceva mucegai târându-se pe pereții frumosului apartament pe care îl închiriez. A fost prima mea întâlnire cu un nivel atât de ridicat de umiditate vreodată, venind din sudul Franței, cu adevărat nu avem o astfel de problemă acolo. Așa că am căutat soluții pe internet și am decis să adun câteva piese și să construiesc propriul meu sistem de monitorizare, pentru a verifica nivelul de umiditate al fiecărei camere a apartamentului meu, precum și temperatura ambiantă. Următorul proiect a avut câteva orientări majore:

  1. Trebuie să fie ieftin.
  2. Trebuie să fie suficient de precis.
  3. Am vrut ceva mic, ușor de transportat și alimentat cu baterie.
  4. Îmi plac plantele și am decis că va putea verifica umezeala solului pentru a ști dacă trebuie sau nu să-mi ud plantele. (Fără context, dar mi-a plăcut ideea!: D)

Acesta este un proiect destul de ușor, cu toate acestea acesta este cel mai util pe care l-am făcut vreodată. Sunt capabil să verific umiditatea din fiecare cameră și să văd dacă trebuie să reacționez pentru a opri mucegaiul. Deci sa începem.

Pasul 1: Adunați componentele

Adunați componentele
Adunați componentele

Proiectul nostru este destul de simplu. Vom folosi un Arduino (nano în cazul meu) ca creier, deoarece este foarte simplu la programare, ieftin și înlocuibil dacă este necesar.

Un DHT-22 ca senzor de temperatură și umiditate, există o versiune mai mică numită DHT-11, care este destul de o prostie în opinia mea vorbind de acuratețe și pentru încă 3 euro puteți obține DHT-22 care este mult mai precis, mai precis & poate lucra pe o varietate mai largă de temperaturi. Un afișaj OLED pentru a afișa datele și pentru a avea o interfață vizuală între senzori și omul care sunt. Am constatat că 64 cu 128 este perfect, deoarece este puțin, aș putea să încap suficiente date pe el și foarte ușor de interfațat.

Un senzor de umiditate a solului YL-69, pentru a verifica ori de câte ori trebuie să-mi ud plantele minunate. Și acesta este practic tot ce aveți nevoie pentru proiect. Opțional, am dorit ca proiectul să fie alimentat folosind Lipos pe care îl aveam în jur. -Puteți, la fel de bine, să funcționeze cu o baterie normală de 9V foarte ușor. Am vrut să pot monitoriza tensiunea bateriilor Lipo folosind câteva intrări analogice pe arduino. Voi oferi mai multe informații pe paginile următoare.

În plus, veți avea nevoie de următoarele:

  1. O bucată de panou.
  2. Comutator ON / OFF * 1
  3. Un conector de baterie de 9V
  4. Baterie de 9V

Și dacă doriți să implementați lipos și monitorizarea:

  1. Rezistențe 10K * 3
  2. Rezistențe 330R * 1
  3. LED * 1
  4. Comutator glisor * 1
  5. Suporturi Lipo (Sau vă voi arăta o versiune tipărită 3D pe care o folosesc în prezent)
  6. 2 celule lipo.

Pasul 2: Schema completă

Schema completă
Schema completă

Veți găsi atașat schema completă. Vă rugăm să nu că, în mod evident, alegeți partea bateriei de 9V a circuitului sau partea bateriei LIPO conectată la VBAT. Am separat ambele circuite cu pătrate roșii și am pus titlul roșu pentru a evidenția fiecare.

Nu vă faceți griji, fiecare conexiune va fi explicată în mod corespunzător în pașii următori.

Pasul 3: Instalarea corectă

Asigurați-vă că aveți instalat Arduino IDE. Și descărcați bibliotecile care vin cu acest pas. Voi pune și codul complet, dacă nu doriți să vă deranjați să continuați testarea fiecărei componente în pașii următori.

Pasul 4: Conectarea DHT-22

Conectarea DHT-22
Conectarea DHT-22

Primul pas al proiectului este conectarea DHT-22 la arduino. Conexiunea este destul de simplă: DHT-22 ------ Arduino

VCC ------ + 5V

DATE ------ D5

GND ------ GND

Pentru a testa conexiunea DHT-22 la Arduino, vom implementa codul încorporat în acest pas.

Pasul 5: Conectarea afișajului OLED

Conectarea afișajului OLED
Conectarea afișajului OLED
Conectarea afișajului OLED
Conectarea afișajului OLED

Următorul pas este conectarea afișajului OLED. Acest tip de afișaj se conectează utilizând protocolul I2C. Prima noastră sarcină este să găsim pinii I2C corecți pentru arduino, dacă utilizați Arduino nano, pinii I2C sunt A4 (SDA) și A5 (SCL). Dacă utilizați un alt arduino, cum ar fi UNO sau MEGA, căutați pe site-ul oficial arduino sau pe foaia de date pentru pinii I2C.

Conexiunea este după cum urmează: OLED ------ Arduino

GND ------ GND

VCC ------ 3V3

SCL ------ A5

SDA ------ A4

Pentru a testa OLED, vom afișa datele DHT pe ecranul OLED direct, încărcând codul încorporat în acest pas.

Ar trebui să vedeți temperatura și umiditatea afișate pe ecranul OLED cu o rată de eșantionare foarte rapidă, deoarece nu am pus încă nicio întârziere.

Pasul 6: Monitorizarea umidității solului

Monitorizarea umidității solului
Monitorizarea umidității solului
Monitorizarea umidității solului
Monitorizarea umidității solului

Pentru că am vrut să monitorizez umiditatea solului plantelor mele, trebuie să conectăm YL-69.

Acest senzor este foarte interesant pentru mine și se comportă ca atunci când solul este:

Umed: tensiunea de ieșire scade.

Uscat: tensiunea de ieșire crește.

Conexiunea este după cum urmează:

YL69 ------ Arduino

VCC ------ D7

GND ------ GND

D0 ------ NU CONECTAȚI

A0 ------ A7

După cum puteți vedea, conectăm pinul VCC al modulului la un pin digital al Arduino. Ideea din spate este să alimentăm modulul exact atunci când vrem să facem măsurarea și nu continuu. Acest lucru se datorează faptului că senzorul funcționează prin măsurarea curentului care merge de la un picior al sondei la celălalt. Din această cauză are loc electroliza și poate distruge sonda destul de repede în solurile cu umiditate ridicată.

Acum vom adăuga senzorul de umiditate în codul nostru și vom afișa datele de umiditate cu datele DHT pe OLED. Încărcați codul încorporat în acest pas.

Pasul 7: Monitorizarea VBAT (baterie de 9V)

Monitorizare VBAT (baterie de 9V)
Monitorizare VBAT (baterie de 9V)
Monitorizare VBAT (baterie de 9V)
Monitorizare VBAT (baterie de 9V)

Am vrut să știu cât de scăzută era bateria pentru a nu avea nicio surpriză într-o zi și a rămâne fără a putea anticipa. Modul de a monitoriza tensiunea de intrare este de a utiliza niște pini analogici ai arduino pentru a ști câtă tensiune este primită. Pinii de intrare ai Arduino pot dura maxim 5V, dar bateria utilizată generează 9V. Dacă conectăm direct această tensiune mai mare, am distruge unele componente hardware, trebuie să folosim un divizor de tensiune pentru a aduce 9V sub pragul de 5V.

Am folosit două rezistențe de 10k pentru a face divizorul de tensiune și împărțind cu un factor 2 9V și să-l aduc la 4,5V max.

Pentru a afișa faptul că bateria se descarcă folosind un LED normal cu un rezistor de limitare a curentului de 330 ohmi.

Vom folosi pinul analogic A0 pentru a monitoriza VBAT.

Urmați schema pentru a afla cum să conectați componentele:

Îl vom adăuga acum la codul nostru de cod încorporat în acest pas.

Pasul 8: Monitorizarea VBAT (2 Lipos Configuration)

Monitorizarea VBAT (2 configurații Lipos)
Monitorizarea VBAT (2 configurații Lipos)
Monitorizarea VBAT (2 configurații Lipos)
Monitorizarea VBAT (2 configurații Lipos)
Monitorizarea VBAT (2 configurații Lipos)
Monitorizarea VBAT (2 configurații Lipos)

Am vrut să știu cât de scăzută era bateria pentru a nu avea nicio surpriză într-o zi și a rămâne fără a putea anticipa.

Modul de a monitoriza tensiunea de intrare este de a utiliza niște pini analogici ai arduino pentru a ști câtă tensiune este primită. Pinii de intrare ai Arduino pot lua maximum 5V, dar Lipos generează maximum 4.2 * 2 = 8.4V.

Diferența față de pasul anterior este că, în cazul utilizării a 2 lipos în serie pentru a crea o tensiune> 5V pentru a alimenta placa Arduino, trebuie să monitorizăm fiecare celulă lipo deoarece acestea se pot descărca la o rată diferită. Rețineți că nu doriți să descărcați excesiv o baterie lipo, este foarte periculoasă.

Pentru primul Lipo nu există nicio problemă, deoarece tensiunea nominală de 4,2V este sub pragul de 5V care poate suporta pinii de intrare ai arduino-ului. totuși, când puneți 2 baterii în serie, tensiunea lor se adaugă: Vtot = V1 + V2 = 4.2 + 4.2 = 8.4 maxim.

Dacă conectăm direct această tensiune mai mare la pinul analogic, am distruge unele componente hardware, trebuie să folosim un divizor de tensiune pentru a aduce 8.4V sub pragul de 5V. Am folosit două rezistențe de 10k pentru a face divizorul de tensiune și împărțind la un factor 2 8.4V și pentru a-l aduce la 4.2V max.

Vom folosi pinul analogic A0 pentru a monitoriza VBAT. Urmați schema pentru a ști cum să conectați componentele:

Pentru a afișa faptul că bateria se descarcă folosind un LED normal cu un rezistor de limitare a curentului de 330 ohmi.

Îl vom adăuga acum la codul nostru încorporat în acest pas.

Pasul 9: Incinta

Incinta
Incinta
Incinta
Incinta

Am șansa să dețin o imprimantă 3D, așa că am decis să imprim o carcasă folosind PLA standard.

Veți găsi fișierele atașate, am proiectat carcasa folosind Autodesk Inventor & Fusion360.

Puteți crea la fel de bine propriul design sau pur și simplu să păstrați panoul de afișare așa cum este, cutia în sine nu adaugă nimic funcționalităților. Din păcate, hotend-ul meu de imprimantă 3D tocmai a murit, așa că nu am putut imprima încăperea, îmi voi actualiza postarea ori de câte ori primiți piesele luate pe Amazon. Edit: acum este tipărit și îl puteți vedea pe imagini.

Pasul 10: Perspective de ameliorare

Deocamdată proiectul se potrivește perfect nevoilor mele. Cu toate acestea, ne putem gândi la câteva puncte pe care le-am putea îmbunătăți:

  1. Reducem consumul de baterie, am putea îmbunătăți consumul actual fie schimbând hardware-ul, fie îmbunătățind software-ul.
  2. Adăugați Bluetooth pentru a vă conecta fie la o aplicație, fie pentru a stoca date și faceți câteva analize în timp.
  3. Adăugați un circuit de încărcare LIPO pentru a-l reîncărca conectându-vă direct la perete.

Dacă vă gândiți la ceva, nu ezitați să îl scrieți în secțiunea de comentarii.

Pasul 11: Mulțumesc

Vă mulțumim că ați citit acest tutorial, nu ezitați să interacționați cu mine și cu alții în secțiunea de comentarii. Sper că ți-a plăcut proiectul și ne vedem data viitoare pentru un alt proiect!