Proiectul pe care doresc să îl realizez reprezintă un sistem de alarmă care va fi montat într-o locaţie în miniatură şi care va comunica cu PC-ul prin USB, folosind HID. Pe PC va exista o aplicaţie care va reprezenta interfaţa alarmei şi care va afişa harta locaţiei pe care o protejează alarma, iar în cazul in care aceasta din urmă se va declaşa, alături de un sunet specific unei alarme, pe ecranul PC-ului vom putea vedea şi zona, din locaţia protejată, în care s-a produs alarma.
Ideea de la care am plecat a fost dorinţa de a implementa un sistem de alarmă mai eficient, în sensul că majoritatea alarmelor doar produc un sunet specific atunci când sunt declanşate şi m-am gândit ca ar fi foarte util să vedem exact şi zona din perimetru unde s-a produs alarma, pentru a putea interveni mai rapid şi mai eficient.
Acest tip de alarmă este foarte util în orice locaţie, de la un apartament sau un magazin până la perimetre mari, cu multe zone, acolo unde consider că utilitatea proiectului iese cel mai bine în evidenţă.
Schema bloc a sistemului de alarmă este următoarea:
Intreg sistemul este format din următoarele module:
Sistemul de alarmă este format din următoarele componente:
Schema în Eagle a alarmei:
Compilator: avr-gcc
Mediu de dezvoltare: Notepad++
Din punct de vedere software am reuşit să scriu codul doar pentru partea de comunicaţie cu senzorii şi comandă buzzer. Pentru partea de hid nu am găsit un program de la care să plec si pe care să-l modific astfel încăt să pot trimite date computerului, pe care acesta să le interpreteze. Codul pe care l-am scris realizează următoarele: initializează ADC-ul şi PWM-ul(astfel încât buzzer-ul să emită sunete diferite), după care verifică în fiecare moment de timp starea senzorilor, iar în caz de alarmă comandă buzzerul.
Funcţii implementate:
void initBuzz();
void stopBuzz();
void doDelay(unsigned int delay);
void buzz();
void ADC_get(unint8_t channel);
void ADC_init(void);
Codul efectiv se găseşte în arhiva ce poate fi descărcată din secţiunea Download.
Sistemul de alarmă:
Unul dintre senzorii de prezentă(emitorul de IR în acţiune):
Locaţia [1]:
Locaţia [2]:
De aici puteţi descărca arhiva proiectului: proiect.zip
Continut arhivă:
13 Martie ⇒ Sesiunea de corodat/găurit/imprimat PCB
15 - 23 Martie ⇒ Procurare piese placuţa de bază
24 - 25 Martie ⇒ Realizare plăcuţa de bază
27 Marie ⇒ Pus bootloaderul pe placuţă şi testarea ei folosind programul de bază
19 - 26 Aprilie ⇒ Alegere proiect etapa 2
5 Mai ⇒ Realizare locaţie în miniatură
10 - 11 Mai ⇒ Realizare hardware design in Eagle şi documentare despre piese
21 - 24 Mai ⇒ Procurare piese necesare în etapa 2
26 - 27 Mai ⇒ Lipire componente pe placuţa de extensie
29 ⇒ Realizare wiki (partea I)
31 Mai - 1 Iunie ⇒ Implementare şi testare diverse variante de cod. Probleme cu bootloaderul.
2 Iunie ⇒ Pus pe placuţă altă variantă de bootloader. Testare cod.
2 Iunie ⇒ Realizare wiki (partea II)