Sergiu ISOPESCU (78636) - Smart Home Alarm

Autorul poate fi contactat la adresa: Login pentru adresa

Introducere

Proiectul este destinat persoanelor dornice sa scape de grija pe care o au mereu cand sunt la serviciu, la cumparaturi sau in vacanta, si anume grija locuintei lor.

In acest sens, am ales sa proiectez o alarma ce poate fi setata printr-un set de parole cunoscute de proprietarul locuintei si care, in momentul efractiei, sa declanseze o alarma sonora si, in acelasi timp, sa initieze trimiterea unui SMS proprietarului.

Motivat fiind de faptul ca acest gen de experienta nefericita este usor la moda in ziua de azi, consider ca un astfel de sistem de siguranta a locuintei este foarte util si usor de folosit de catre oricine.

Descriere generală

Se folosesc butoanele pentru a alege setul de parole corecte si pentru a arma dispozitivul.

Odata armat, daca senzorul de miscare detecteaza prezenta unei persoane, se declanseaza un sunet incet care atentioneaza ca a detectat miscare si, din acel moment, persoana are cateva secunde la dispozitie sa introduca parola. Daca o introduce corect, alarma se dezactiveaza, altfel mai are doar alte 2 incercari, in acelasi interval de timp, sa o introduca corect. Daca se depaseste acel numar de secunde si nu a fost introdusa parola / una din parolele corecte, se declanseaza un sunet mai puternic si se initiaza trimiterea SMS-ului.

Hardware Design

Nume piesa Cantitate
Placa de baza 1
Senzor miscare 1
Modul GSM 1
LCD 1
Difuzor 1
Butoane 4
Rezistente
Fire legatura

Am realizat cu ajutorul aplicatiei EAGLE schema electrica a proiectului :

Software Design

Pentru a scrie cod am folosit Notepad++ si am compilat cu avr-gcc in linia de comanda.

Am inceput implementarea de la codul laboratorului 0 si conectat separat fiecare componenta.

Am folosit bibliotecile din laborator pentru LCD, SPI ( lab 5 ) si USART ( lab 1 ).

Functii implementate:

  1. senzor_miscare() - la armarea alarmei se asteapta 10 secunde (masurate folosind Timer1) pentru ca persoana sa poata iesi din locuinta, fara sa fie detectata de senzor, apoi, in momentul in care detecteaza miscare, se termina.
  2. buzzer() - dupa ce senzorul detecteaza miscare, alarma incepe sa sune cu tonalitatea 1, timp de 8 secunde (masurate cu Timer1). Daca in acest timp se introduce parola corecta, alarma se dezarmeaza si buzzerul se opreste. Altfel, la expirarea timpului sau dupa introducerea a 3 parole incorecte, alarma incepe sa sune cu tonalitatea 2 si intra in starea BLOCKED.
  3. blocked() - se ajunge aici doar in situatia critica. Se apeleaza functia make_call() si buzzerul ramane activ cu tonalitatea 2.
  4. make_call() - trimite un SMS proprietarului, prin intermediul modului GSM folosind USART si comenzi AT.

Pentru a reusi sa folosesc modulul GSM, am folosit un convertor UART-USB, cu ajutorul caruia am trimis comenzi AT din calculator, prin aplicatia Putty. Astfel, am determinat ordinea corecta a comenzilor ce au trebuit date pentru a-mi atinge obiectivul.

Rezultate Obţinute

Concluzii

Acest proiect m-a ajutat sa aflu informatii pe care nu le stiam, sa-mi intaresc cunostintele pe care le aveam si sa constientizez cata responsabilitate implica realizarea unei aplicatii simple, pe care o folosesc zilnic. Avand in vedere ca este primul meu proiect de acest gen, pot spune ca a fost o experienta frumoasa.

Download

Sursele aferente proiectului se gasesc aici: surse_sergiuisopescu.zip.

Bibliografie/Resurse

Resurse Software

biblioteca LCD si SPI: lab6

biblioteca USART : lab1

Resurse Hardware

modul gsm/gprs : howToSendSMSFromPC.asp

senzor miscare: 78-4110_v1.pdf

  • Documentația în format PDF
pm/prj2018/amocanu/sergiuiso.txt · Last modified: 2021/04/14 17:07 (external edit)
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