Table of Contents

Sistem de Alarma

Aici puneţi tot ce ţine de hardware design:

  • Nume: Vidrighin Andrei-Catalin
  • Grupa: 333CA

Introducere

Proiectul isi propune realizarea unui sistem de alarma multifunctional care sa reactioneze la mai multi factori, de exemplu fumul respectiv vibratiile. In functie de informatia primita sistemul va reactiona diferit.

In cazul detectiei fumului acesta va actiona un motor ce deschide un geam si un alt motor ce porneste un ventilator care are rolul de a elimina pe geam gazele toxice, iar in cazul detectiei de vibratii, la usa, sistemul va actiona o bariera ce va consolida usa astfel incat patrunderea in casa va fi mult mai complicata sau chiar imposibila.

Descriere generală

Sistemul are mai multe componente principale printre care se numara:

Hardware Design

Listă de piese:

  • Placă Arduino NANO;
  • Senzor de fum MQ-2;
  • Senzor de vibrații tilt SW 520-D;
  • 2x DC Motor pentru ventilator și geam;
  • Motor în miniatură pentru barieră;
  • Breadboard;
  • 2x Shift Register L293D;
  • LED Roșu;
  • Rezistori(10k Ω si 330 Ω);
  • Buzzer.

În ceea ce privește mecanismul de coborâre și ridicare a barierei în fața ușii, în cazul detectării unor vibrații puternice, am folosit un senzor de vibrații SW-520D, un senzor care este folosit în fabricarea bombelor. Pe Breadboard este așezat vertical, iar în interior sunt două bile așezate una peste cealaltă, fiind starea inițială care va returna 1-logic. În cazul unei vibrații puternice, iar în conformitate cu principiul acțiunii și reacțiunii, cele două bile nu se vor atinge într-un interval scurt de timp, bila de deasupra fiind ușor înălțată, astfel returnând 0-logic.

Aceste rezultate duc la o logică inversă în ceea ce privește codul și funcționalitățile oferite de către placa Arduino, astfel am luat în calcul următorul scenariu: diferența dintre cazul în care cineva ar vrea să intre prin efracție într-o clădire și cazul în care un musafir vine și bate la ușă, nereușind să genereze o vibrație atât de puternică pentru a activa senzorul.

Când senzorul de vibrație nu mai detectează nimic, bariera se va ridica în poziția inițială, iar alarma se va opri. sw-520d.jpg

Declanșarea sistemului de incendiu este prevăzută cu un senzor de gaz MQ2 care este folosit pentru a detecta scurgerile de gaze în încăperi mici sau mari și reprezintă o metodă de precauție pentru incendii sau pentru intoxicații. Senzorul are o sensibilitate ridicată și principalele gaze pe care le vizează sunt GPL-ul, izobutan, propan, metan, alcool, hidrogen și fum. Senzorul dispune de un comparator, astfel că poate citi date analogice în timp real sau poate afla dacă concentrația de gaz a depășit o anumită limită. Pe partea de software, în cod este setată o anumită limită a valorii obținute de către senzor, ceea ce duce la sensibiliatea sa și modul de desfășurare al procesului.

Când limita valorii obținute depășește valoarea impusă, sistemul de incendiu este activat, astfel cele doua motoare DC vor porni, unul va deschide geamul din încăpere, iar celălalt va porni ventilatorul din dreptul geamului. Ventilatorul are un rol important, dat fiind de faptul că anumite gaze sau fumuri sunt foarte dense, întrucât nu este de ajuns doar deschiderea unui geam pentru a diminua pe cât posibil pericolul. De asemenea, va porni alarma de incendiu formată dintr-un buzz pasiv care generează un sunet și un LED roșu se va aprinde.

În cazul în care senzorul returnează valori care nu depășesc de limita impusă, atunci sistemul va reveni în poziția inițială, astfel geamul se va închide, ventilatorul și alarma se vor opri.

mq-2.jpg

În ceea ce privește rotația motoarelor, motorul ventilatorului se învârte decât într-un sens, întrucât are doar rolul de a scoate fumul sau gazul afară, nefiind necesar de rotația inversă, dar, în cazul motoarelor specifice barierei și geamului, am folost 2x Shift Register L293D pentru a putea roti cele două motoare în ambele sensuri, deoarece, după ce a fost declanșată alarma, iar pericolul a fost îndepărtat, sistemul trebuie să revină la poziția inițială.

l293d.jpg

Sistem de alarma in teste(stare finala)

theend.jpg

Software Design

Mediu de dezvoltare:

  • Arduino IDE

Librarii utilizate: -

Descriere Software

Declarații și Inițializări

Se declară pinii pentru diferite componente: senzori (de fum și vibrații), motoare (pentru barieră și fereastră), LED și buzzer. De asemenea, se definesc două variabile booleene pentru a păstra starea ferestrei și barierei. quarterRotationTime și windowRotationTime definesc timpul necesar pentru o rotație parțială a motoarelor.

Funcția setup

Funcția setup inițializează pinii ca intrări sau ieșiri, setează tonul buzzer-ului și pornește comunicarea serială pentru debugging.

Funcția loop

În bucla loop, se citesc valorile senzorilor de vibrații și fum și se afișează pentru debugging. Se controlează motorul barierei și cel al ferestrei pe baza valorilor citite:

Similar, pentru senzorul de fum:

Funcții pentru citirea senzorilor și oprirea motoarelor

In concluzie

Acest cod este util pentru a monitoriza și reacționa la vibrații și fum, oferind o soluție automată pentru controlul unei bariere și a unei ferestre într-un sistem de siguranță.

Testare si rezultate

Procedura de testare:

Rezultate:

Bibliografie/Resurse

MQ-2 Gas Sensor Module

SW-520D Tilt Sensor

Shift Register L293D

Export to PDF