Geek De Mic

Senzor Arduino nivel apă cu avertizare sonoră

Senzor Arduino nivel apă cu avertizare sonoră

Am schimbat de curând centrala termică de acasă şi bineînţeles că m-am pricopsit cu una model nou în condensaţie care ia ghiciţi ce ştie sa facă.
Exact! Condens.
Deoarece nu a fost posibilă montarea unei ţevi separate pentru scurgere am fost nevoit sa pun lângă centrală un recipient dedicat pentru a colecta condensul.
Totul bine şi frumos numai că apa aia nu ştie să strige când ajunge să umple recipientul, aşa că am avut de mai multe ori treabă cu mopul prin bucătărie ca urmare a supraincărcării recipientului pentru condens (ehh, ce bine sună recipient faţă de “PET-ul de 5 litri” 🙂 )
Şi ce face un geek când are o asemenea problemă?
Face comandă din China de nişte piese şi aşteaptă vreo doua luni jumate să-i ajungă.
Dar uite că aşteptarea a luat sfârşit şi au ajuns piesele.
Aşa că m-am apucat de încropit un senzor de apă cu avertizare sonoră (adică să ţipe apa când e prea multă) folosind un Arduino Nano.

Piese necesare:
– Senzor apă
– Arduino Nano
– Difuzor mic (recuperat dintr-un calculator mai vechi)
– O baterie exernă. Eu am folosit momentan una mai şmecheră cu card reader, cu wifi etc însa doar pentru că pe asta o aveam disponibilă. Dar se poate face alimentarea şi cu un încărcător clasic 220V – USB.
– Cablu USB-miniUSB. Folosit atât pentru alimentare cât şi pentru încărcarea programului pe Arduino Nano.
– Câteva cabluri de conexiune pentru senzor şi difuzor

senzor nivel apa avertizare sonora arduino nano

senzor nivel apa avertizare sonora arduino nano

senzor nivel apa avertizare sonora arduino nano

senzor nivel apa avertizare sonora arduino nano

senzor nivel apa avertizare sonora arduino nano

senzor nivel apa avertizare sonora arduino nano

1. Se conectează Arduino la calculator prin cablul USB-miniUSB
2. Se deschide softul dedicat Arduino
3. Se încarcă în placuţa Arduino Nano programul de mai jos

Arduino Nano sketch

const int SenzApa = A0;
const int difuzor = 9;
int ValApa;

void setup() {
pinMode(difuzor, OUTPUT);
pinMode(SenzApa, INPUT);
Serial.begin(9600);

}

void loop() {
ValApa = analogRead(SenzApa);
Serial.println(ValApa);
if (ValApa <= 0)
{ 
digitalWrite(difuzor, HIGH); 
delay(1000);
} 
else
{ 
digitalWrite(difuzor, LOW); 
tone(9, 3000, 100); 
delay(100);
tone(9, 0, 10); 
delay(100); 
} 
}

Odată încărcat programul puteţi să deconectaţi plăcuţa Arduino de la calculator.

4. Se conectează senzorul de apa după cum urmează:

+ de la senzor la 5V pe plăcuţa Arduino Nano
– de la senzor la GND pe Arduino
S de la senzor la A0 de pe Arduino

5. Se conectează difuzorul:
-un fir al difuzorului la D9 de pe Arduino
-celălat fir al difuzorului la GND de pe Arduino

6. Se conectează bateria externă sau altă sursă de alimentare cu 5V cu cablul miniUSB la Arduino Nano.

7. Se poziţionează senzorul în aşa fel încât să intre în apă când aceasta se ridică peste un anumit nivel.
Si cam asta-i tot.
Nu uitati din când în când să mai încărcaţi bateria externă.
De acum sper să nu mă mai trezesc cu lacul Baikal la mine în bucătărie.

Şi un clip video cu testarea întregului ansamblu.

2 Comments

  1. Foarte tare proiectul! De ce ai mers pe varianta cu Arduino? Știu că există senzori dedicați pentru așa ceva prin care poți să primești notificări pe telefon.

  2. Silviu Foca Author

    Mulţumesc!
    Am preferat să folosesc Arduino din mai multe motive:
    1. Costuri mult mai reduse
    2. Pot folosi restul porturilor pentru alţi senzori (temperatură, presiune, etc)
    3. Mă simt mai bine că am făcut eu proiectul decât să cumpăr un senzor gata făcut. Geek style. 🙂

Leave a Comment

Your email address will not be published. Required fields are marked *