Sistem de alarmă

Introducere

Proiectul constă într-un senzor de distanță care declanșează o alarmă ce poate fi oprită numai prin introducerea parolei setate anterior. Comunicarea cu individul se realizează prin intermediul unui ecran LCD.

Descriere generală

Pentru a putea folosi sistemul, trebuie setată inițial o parolă de 4 cifre, ascpect indicat pe ecranul LCD. Ulterior, aceasta poate fi schimbată. Proprietarul are opțiunea de a activa alarma doar după introducerea codului și are la dispoziție 10 secunde sa plece din raza sa de acțiune. Senzorul emite ultrasunete ce sunt reflectate inapoi de obiectele din aria sa. Dacă un obstacol este prea aproape, alarma se declanșează și poate fi oprită doar prin introducerea parolei.

Schema bloc

Hardware Design

Schema electrică

LCD

Ecranul are 16 pini, din care am conectat 12:

  • Vo - conectat la un potentiometru poate modifica contrastul si intensitatea ercanului;
  • RS(register select) - folosit pentru a selecta daca trimitem comenzi sau date;
  • R/W(read/write) - folosit pentru a selecta daca scriem sau citim date (conectat la ground pentru scriere);
  • E(enable) - permite scrierea in regiștrii sau pe pinii D0-D7
  • D4-D7 - folositi pentru a trimite date;
  • A, K(anod, catod) - folosiți pentru lumina de fundal (anod-ul este conectat la la VCC ptrintr-o rezistență 22Ω);
  • GND(ground);
  • VCC - conectat la 5V;

Am conectat pinii RS, W, D4-D7 la pinii A0-A5 de pe placuta arduino (14-19)

Keypad 4X4

Tastatura are 8 pini:

  • 4 utilizati pentru controlarea liniilor(conectati la pinii 9-6 de pe plăcuță);
  • 4 pentru coloane (pinii 5-2);
Buzzer
  • GND
  • 1 pin conectat la pinul 13 al plăcuței;
Senzor Ultrasonic
  • TRIG - utilizat pentru a trimite ultrasunete;
  • ECHO - utilizat pentru a recepta undele reflectate;
  • GND
  • VCC - conectat la 5V

Software Design

Mediu de dezvoltare folosit:

  • Unordered List ItemArduino IDE

Biblioteci:

  • LiquidCrystal.h
  • Keypad.h

Implementare

  1. setup()
    • setez pinii de input si output;
    • inițializez LCD-ul;
  2. setPassword()
    • afișeaza pe ercan indicațiile de setare a unei parole;
    • citește datele primite de la tastatură și setează parola;
  3. verifyPassword()
    • citește date de la tastatura pana este introdusa parola corecta;
    • afișează pe ecran daca parola este cea corectă sau nu;
  4. loop()
    • rulează până este oprit programul;
    • indică setarea parolei inițiale;
    • dacă alarma nu este activată, atunci oferă posibiltatea de schimbare a parolei, sau de activare a alarmei;
    • dacă alarma este activată, masoară distanța față de obiectele din jur, iar daca un obstacol se afla prea aproape se declanșează alarma;
  5. setOffAlarm()
    • declanșează alarma;
    • citeste date de la tastatură, iar dacă se introduce codul corect, atunci oprește alarma;
  6. checkDistance()
    • calculează distanța pe care se propaga undele in funcție de timpul scurs de la emiterea acestora si până la întoarcerea lor;

Rezultate Obţinute

Concluzii

Proiectul permite setarea unui cod de acces, activare unei alarme și declanșarea acesteia în cazul în care se află obstacole mai aproape decât o distanță inițial calculată.

Download

Bibliografie/Resurse

pm/prj2021/avaduva/sistemalarma.txt · Last modified: 2021/06/02 13:53 by irina.voicescu
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