House Alarm System

Introducere

Prezentarea pe scurt a proiectului:

  • Proiectul presupune implementarea unei alarme de securitate pentru casă;
  • Acesta are ca scop protejarea casei. De fiecare dată când se detectează mișcare în proximitatea senzorului, se declanșează un buzzer, se aprinde un LED și se afișează pe LCD un mesaj corespunzător de tipul “Mișcare detectată - Introduceți parola”. Astfel, prin intermediul unei tastaturi matriceale, se introduce parola setată de utilizator, iar în cazul în care aceasta este corectă, alarma este dezactivată;
  • În zilele noastre, din ce în ce mai multe persoane optează pentru achiziționarea alarmelor de securitate, astfel încât să își mențină în siguranță bunurile și proprietățile. Prin urmare, acestea sunt la mare căutare, iar importanța lor este extrem de ridicată, deoarece o alertă imediată poate ajuta la creșterea șanselor de a prinde infractorii. Mai mult decât atât, aceștia pot fi descurajați în a comite infracțiuni doar prin simplul fapt că proprietatea deține o alarmă de securitate, indiferent de calitatea acesteia.

Descriere generală

Hardware Design

Listă componente:

  • 2 x Arduino UNO R3
  • LCD 1602 I2C
  • Tastatura Matriceala 4×4
  • Senzor de proximitate
  • Buzzer
  • Potențiometru
  • Rezistori
  • Fire

Software Design

Descrierea codului aplicaţiei (firmware)

Biblioteci:

  1. Arduino:
    • Keypad.h
    • Wire.h
    • LiquidCrystal.h

Funcții:

  1. Arduino1:
    • receiveEvent(): utilizată pentru comunicarea I2C dintre cele 2 Arduino-uri, în care se efectuează citirea datelor primite prin Wire.read();
    • activateBuzzer(): funcție ce declanșează buzzer-ul și aprinde un LED(setand PIN-ul asociat acestuia pe high), fiind initializată și transmisia I2C;
    • deactivateBuzzer(): funcție asemănătoare celei descrise anterior, dar de această dată se dezactivează alarma și LED-ul;
    • checkPin(): aici are loc verificarea PIN-ului introdus de la tastatura matriceală (după cum se poate vedea și în cod, PIN-ul setat este *123#); în cazul în care PIN-ul introdus este corect, atunci alarma este dezactivată; dacă PIN-ul introdus este greșit, atunci se scade numărul de încercări rămase (user-ul are dreptul la 3 încercări) și alarma rămâne pornită în continuare; dacă după 3 încercări PIN-ul nu este cel corect, atunci alarma rămâne pornită și nu mai poate fi dezactivată;
    • setup(): funcție ce configurează pinii, comunicarea serială, I2C etc. pentru a inițializa placa Arduino spre a fi folosită;
    • loop(): aici este implementată logica programului.
  2. Arduino2:
    • setup(): functie în care se configurează senzorul de mișcare și LCD-ul ce afișează mesaje specifice;
    • loop(): implementarea logicii programului pentru input-ul primit de la senzor și output-ul pe LCD.

Rezultate Obţinute

Concluzii

Acesta este primul proiect hardware făcut de mine. Consider că diversele situații la care am fost supus în decursul implementării acestuia mă vor ajuta cu siguranță mai departe, în cazul în care voi mai realiza astfel de proiecte. De asemenea, ținând cont că produsul ales este unul de actualitate și frecvent utilizat în viața de zi cu zi, mi-ar plăcea să îl extind mai departe și să îl duc cât mai aproape de statutul de produs finit.

Download

Arhiva cu codul Arduino și videoclipul funcționalității: house_alarm.zip

Bibliografie/Resurse

pm/prj2023/avaduva/house_alarm_system.txt · Last modified: 2023/05/29 10:03 by florin.valcu
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