This is an old revision of the document!


Baby Alarm

Introducere

Prezentarea pe scurt a proiectului vostru:

  • Acest ansablu produce o alarma cand microfonul receptioneaza un numar de decibeli ce depaseset un anumit prag, cat si sa afiseze temperatura din camera bebelusului
  • Are scopul de a trezi parintii daca bebelusul incepe sa planga
  • Acest proiect a fost ispirat din exemplele din Room of Inspiration
  • Consider ca acest proiect este util pentru ca nu toti parintii pot dormi in aceeasi camera cu bebelusul lor

Descriere generală

Modul de functionare al proiectului:

  • microfonul cu sensibilitate inalta detecteaza daca s-a produs zogmot mai mare de 50dB timp de minim 2 secunde.
  • in momentul in care aceasta conditie este depasita, se aprinde led-ul, iar buzzer-ul incepe sa sune. Pe ecran se afiseaza mesajul “Alerta zgomot!@”
  • buzzerul si ledul se sting dupa 5s urmand ca microfonul sa fie pus din nou in functiune pentru a detecta zgomot
  • Totodata, pe ecranul lcd-ului se afiseaza atat in starea de alerta, cat si in starea de liniste temperatura si umiditatea din camera.

Hardware Design

Lista de piese folosite:

  • placuta Arduino UNO
  • lcd 16×2 cu convertor I2C
  • microfon cu sensibilitate inalta
  • senzor temperatura si umiditate
  • fire de legatura (tata-tata, mama-mama)
  • led, buzzer, rezistente

Software Design

Pentru a incarca codul pe placuta am folosit Arduino IDE. Am folosit urmatoarele biblioteci: LiquidCrystal_I2C.h si DHT.h.

Implemetare:

  • Mi-am definit macro-uri pentru pinii la care erau conectati piesele.
  • Mi-am initializat lcd-ul si senzorul de temperatura si umiditate.
  • micVal reprezinta valoarea detectata de microfon, alert este o variabila folosita pentru a detecta cand a fost depasit un anumit sunet de db, iar currentMillis si prevMillis reprezinta contoare ale timpului folosite pentru a vedea la ce diferenta de timp s-a detectat zgomot din nou fata de data precedenta.
  • In functia setup imi setez ca pinul care asculta microfonul sa fie de INPUT, iar pinii care asculta buzzerul si ledul sa fie de OUTPUT. Totodata, lcd-ul va afisa mesajul “Hello”.
  • In functia loop, citesc temperatura si umiditatea detectata de senzor si o afisez pe lcd. Daca ne aflam in starea de alerta, afisam pe lcd mesajul “Alerta zgomot!” si aprindem ledul si buzzerul (ele se sting automat dupa 5s si nu o sa mai fie stare de alerta). Daca nu suntem in starea de alerta, citim valoarea detectata de microfon.
  • Functia readMicrophone() se ocupa cu detectarea nivelului de zgomot din camera bebelusului. Daca aceasta valoare depaseste 50db si se produce intr-un interval de timp mai mare ca 2s atunci se trece pe starea de alerta si parintii sunt anuntati.

Rezultate Obţinute

Concluzii

Download

O arhivă (sau mai multe dacă este cazul) cu fişierele obţinute în urma realizării proiectului: surse, scheme, etc. Un fişier README, un ChangeLog, un script de compilare şi copiere automată pe uC crează întotdeauna o impresie bună ;-).

Fişierele se încarcă pe wiki folosind facilitatea Add Images or other files. Namespace-ul în care se încarcă fişierele este de tipul :pm:prj20??:c? sau :pm:prj20??:c?:nume_student (dacă este cazul). Exemplu: Dumitru Alin, 331CC → :pm:prj2009:cc:dumitru_alin.

Jurnal

Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului.

Bibliografie/Resurse

pm/prj2022/cstan/baby_alarm.1653219930.txt.gz · Last modified: 2022/05/22 14:45 by cosmin.durla
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0