This shows you the differences between two versions of the page.
pm:prj2022:sgherman:security_alarm [2022/05/26 13:46] petru_alin.tomescu |
pm:prj2022:sgherman:security_alarm [2022/05/31 10:28] (current) petru_alin.tomescu [Download] |
||
---|---|---|---|
Line 34: | Line 34: | ||
| Modul bluetooth HC-05 | X1 | | | Modul bluetooth HC-05 | X1 | | ||
| Breadboard | X5 | | | Breadboard | X5 | | ||
- | | Potentiometru | X1 | | ||
| Fire legatura | - | | | Fire legatura | - | | ||
==== Schemă Electrică ==== | ==== Schemă Electrică ==== | ||
Line 64: | Line 63: | ||
=== Bucla principala === | === Bucla principala === | ||
Pe durata functionarii sistemului de alarma, exista 4 stari(moduri) in care acesta se afla:\\ | Pe durata functionarii sistemului de alarma, exista 4 stari(moduri) in care acesta se afla:\\ | ||
- | * Modul 0 (Activ): Aici are loc citirea senzorului PIR. In cazul in care acesta a detectat miscare, se afiseaza pe LCD mesajul corespunzator, se trimite o alerta pe aplicatie, si apoi se face trecerea sistemului in modul 1. Tot aici, in cazul in care butonul este apasat, se trece in modul 3 unde se realizeaza resetarea parolei sistemului si salvarea ei atat in memoria programului, cat si pe cardul micro-sd. \\ | + | * Modul 0 (Activ): Aici are loc citirea senzorului PIR. In cazul in care acesta a detectat miscare, se afiseaza pe LCD mesajul corespunzator, se trimite o alerta pe aplicatie. Apoi se face trecerea sistemului in modul 1. Tot aici, in cazul in care butonul este apasat, se trece in modul 3 unde se realizeaza resetarea parolei sistemului si salvarea ei atat in memoria programului, cat si pe cardul micro-sd. \\ |
* Modul 1 (Miscare detecata): In acest mod, miscare a fost detectata, deci este pornit si sunetul buzzerului. In cazul in care se primeste un mesaj de oprire de la aplicatie, alarma se opreste si are loc recalibrarea senzorului PIR (asteptarea 1 minut), precum si trecerea in modul 0. In cazul in care se apasa be buton, se realizeza trecerea in modul 2, pentru introducerea parolei.\\ | * Modul 1 (Miscare detecata): In acest mod, miscare a fost detectata, deci este pornit si sunetul buzzerului. In cazul in care se primeste un mesaj de oprire de la aplicatie, alarma se opreste si are loc recalibrarea senzorului PIR (asteptarea 1 minut), precum si trecerea in modul 0. In cazul in care se apasa be buton, se realizeza trecerea in modul 2, pentru introducerea parolei.\\ | ||
* Modul 2 (Introducere parola): In acest mod, poate fi introdusa parola. In cazul in care aceasta este incorecta, se trece inapoi in modul 1. Daca parola e corecta, se realizeaza recalibrarea senzorului PIR, precum si trecerea inapoi in modul 0.\\ | * Modul 2 (Introducere parola): In acest mod, poate fi introdusa parola. In cazul in care aceasta este incorecta, se trece inapoi in modul 1. Daca parola e corecta, se realizeaza recalibrarea senzorului PIR, precum si trecerea inapoi in modul 0.\\ | ||
Line 103: | Line 102: | ||
===== Rezultate Obţinute ===== | ===== Rezultate Obţinute ===== | ||
+ | {{https://drive.google.com/file/d/1mNFZa6pzOeaAx2AXB8ZSmMI-TQkOcm8H/view?usp=sharing|Demo activare alarma si oprire prin aplicatie}}\\ | ||
+ | {{https://drive.google.com/file/d/1QSa4QfNW7U3ARq3aEUuonQvkKR82pK8A/view?usp=sharing|Demo introducere parola incorecta si corecta}}\\ | ||
+ | {{https://drive.google.com/file/d/1sdwcjI_ku7sYBkka2moXZa6OnQV2qXTw/view?usp=sharing|Demo password reset}}\\ | ||
+ | {{https://drive.google.com/file/d/1N9Pwcjleh6DyCX5pjmprqex70Cqp4x9G/view?usp=sharing|Demo introducere parola gresita si oprire alarma din aplicatie}}\\ | ||
{{:pm:prj2022:sgherman:securityalarm_1.jpeg?400X350|}} | {{:pm:prj2022:sgherman:securityalarm_1.jpeg?400X350|}} | ||
{{:pm:prj2022:sgherman:securityalarm_2.jpeg?400X350|}} \\ | {{:pm:prj2022:sgherman:securityalarm_2.jpeg?400X350|}} \\ | ||
Line 109: | Line 112: | ||
{{:pm:prj2022:sgherman:securityalarm_5.jpeg?400X350|}} | {{:pm:prj2022:sgherman:securityalarm_5.jpeg?400X350|}} | ||
{{:pm:prj2022:sgherman:securityalarm_6.jpeg?400X350|}} \\ | {{:pm:prj2022:sgherman:securityalarm_6.jpeg?400X350|}} \\ | ||
- | {{:pm:prj2022:sgherman:securityalarm_7.jpeg?400X350|}} | ||
{{:pm:prj2022:sgherman:securityalarm_8.jpeg?400X350|}} \\ | {{:pm:prj2022:sgherman:securityalarm_8.jpeg?400X350|}} \\ | ||
==== Aplicatie ==== | ==== Aplicatie ==== | ||
Line 116: | Line 118: | ||
{{:pm:prj2022:sgherman:securityalarm_10.jpeg?400X800|}} \\ | {{:pm:prj2022:sgherman:securityalarm_10.jpeg?400X800|}} \\ | ||
Aplicatie conectata, cu notificare primita. Butonul de oprirea a sistemului nu e activat. Se asteapta oprirea prin introducerea parolei. \\ | Aplicatie conectata, cu notificare primita. Butonul de oprirea a sistemului nu e activat. Se asteapta oprirea prin introducerea parolei. \\ | ||
- | {{:pm:prj2022:sgherman:securityalarm_11.jpeg?600X400|}} | + | {{:pm:prj2022:sgherman:securityalarm_11.jpeg?600X400|}} \\ |
+ | Aplicatie conectata, cu notificare primita si butonul de oprire a sistemului activ.\\ | ||
+ | {{:pm:prj2022:sgherman:securityalarm_7.jpeg?400X400|}} | ||
===== Concluzii ===== | ===== Concluzii ===== | ||
De-a lungul proiectului, am intampinat mici obstacole, atat software, cat si hardware. Acestea m-au determinat sa lucrez cu mai multe metode de debugging, de la printarea pe seriala, la testarea separate a componentelor, atat a functionalitatii, cat si a alimentarii lor corecte, utilizand leduri. Am invatat, de asemenea, sa lucrez mai bine cu Arduino, proiectul oferindu-mi posibilitatea de a aprofunda conceptele studiate la laborator si curs.\\ \\ | De-a lungul proiectului, am intampinat mici obstacole, atat software, cat si hardware. Acestea m-au determinat sa lucrez cu mai multe metode de debugging, de la printarea pe seriala, la testarea separate a componentelor, atat a functionalitatii, cat si a alimentarii lor corecte, utilizand leduri. Am invatat, de asemenea, sa lucrez mai bine cu Arduino, proiectul oferindu-mi posibilitatea de a aprofunda conceptele studiate la laborator si curs.\\ \\ | ||
Line 122: | Line 126: | ||
===== Download ===== | ===== Download ===== | ||
- | Link catre github, unde se pot gasi atat codul sursa, cat si codul aplicatie de android si schema electrica: | + | Link catre arhiva zip, unde se pot gasi atat codul sursa, cat si codul aplicatie de android si schema electrica:\\ |
- | https://github.com/PetruAlin/SecurityAlarm | + | {{:pm:prj2022:sgherman:security_alarm.zip}} \\ |
+ | Github: {{https://github.com/PetruAlin/SecurityAlarm.git|SecurityAlarm}} \\ | ||
===== Jurnal ===== | ===== Jurnal ===== | ||
*21.4.2022: Testat senzorul PIR, modulul pentru micro-sd card si keypadul;\\ | *21.4.2022: Testat senzorul PIR, modulul pentru micro-sd card si keypadul;\\ | ||
Line 138: | Line 143: | ||
*24.5.2022: Fixat componentele si Arduino pe o placa de sustinere; \\ | *24.5.2022: Fixat componentele si Arduino pe o placa de sustinere; \\ | ||
*25.5.2022: Adaugarea sectiunii despre Software pe ocw; \\ | *25.5.2022: Adaugarea sectiunii despre Software pe ocw; \\ | ||
+ | *26.5.2022: Adaugat poze, demou-ri + Bibliografie si resurse;\\ | ||
===== Bibliografie/Resurse ===== | ===== Bibliografie/Resurse ===== | ||
<html><a class="media mediafile mf_pdf" href="?do=export_pdf">Security Alarm</a></html> | <html><a class="media mediafile mf_pdf" href="?do=export_pdf">Security Alarm</a></html> | ||
\\ \\ | \\ \\ | ||
- | Linkuri utile: | + | Linkuri utile:\\ |
+ | Laboratoare | ||
* https://ocw.cs.pub.ro/courses/pm/lab/lab0-2022 \\ | * https://ocw.cs.pub.ro/courses/pm/lab/lab0-2022 \\ | ||
* https://ocw.cs.pub.ro/courses/pm/lab/lab1-2022 \\ | * https://ocw.cs.pub.ro/courses/pm/lab/lab1-2022 \\ | ||
Line 148: | Line 155: | ||
* https://ocw.cs.pub.ro/courses/pm/lab/lab5-2022 \\ | * https://ocw.cs.pub.ro/courses/pm/lab/lab5-2022 \\ | ||
* https://ocw.cs.pub.ro/courses/pm/lab/lab6-2022 \\ | * https://ocw.cs.pub.ro/courses/pm/lab/lab6-2022 \\ | ||
+ | Software | ||
* https://www.arduino.cc/reference/en/libraries/sd/ \\ | * https://www.arduino.cc/reference/en/libraries/sd/ \\ | ||
* https://www.arduino.cc/reference/en/libraries/liquidcrystal-i2c/ \\ | * https://www.arduino.cc/reference/en/libraries/liquidcrystal-i2c/ \\ | ||
- | * https://www.makeriot2020.com/index.php/2020/10/05/using-i2c-with-a-4x4-matrix-keypad/ \\ | + | * https://www.arduino.cc/reference/en/libraries/i2ckeypad/ \\ |
- | * https://electronics.stackexchange.com/questions/220641/pir-sensor-always-gives-high | + | * https://www.arduino.cc/reference/en/language/functions/communication/spi/ \\ |
* https://create.arduino.cc/projecthub/electropeak/getting-started-with-hc-05-bluetooth-module-arduino-e0ca81 \\ | * https://create.arduino.cc/projecthub/electropeak/getting-started-with-hc-05-bluetooth-module-arduino-e0ca81 \\ | ||
- | * https://appinventor.mit.edu/ \\ | + | * https://create.arduino.cc/projecthub/Arnov_Sharma_makes/lcd-i2c-tutorial-664e5a \\ |
+ | * https://appinventor.mit.edu/ (Creare aplicatie android)\\ | ||
+ | |||
+ | Hardware | ||
+ | * https://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-7810-Automotive-Microcontrollers-ATmega328P_Datasheet.pdf \\ | ||
+ | * https://components101.com/sites/default/files/component_datasheet/HC-05%20Datasheet.pdf \\ | ||
+ | * https://www.homemade-circuits.com/pir-sensor-datasheet-pinout-specification-working/ \\ | ||
+ | * https://components101.com/modules/micro-sd-card-module-pinout-features-datasheet-alternatives \\ | ||
+ | * https://electronics.stackexchange.com/questions/220641/pir-sensor-always-gives-high \\ | ||
+ | * https://www.youtube.com/watch?v=-B6_RVCNMoE (Lipire LCD cu modulul I2C)\\ | ||
+ | * https://www.mouser.com/datasheet/2/400/ef532_ps-13444.pdf \\ | ||
\\ | \\ | ||
- | Librari utilizate: | + | Biblioteci utilizate: |
* https://github.com/RobTillaart/I2CKeyPad/blob/master/I2CKeyPad.h \\ | * https://github.com/RobTillaart/I2CKeyPad/blob/master/I2CKeyPad.h \\ | ||
* https://github.com/fdebrabander/Arduino-LiquidCrystal-I2C-library/blob/master/LiquidCrystal_I2C.h \\ | * https://github.com/fdebrabander/Arduino-LiquidCrystal-I2C-library/blob/master/LiquidCrystal_I2C.h \\ | ||
* https://github.com/PaulStoffregen/SoftwareSerial \\ | * https://github.com/PaulStoffregen/SoftwareSerial \\ | ||
+ | * https://github.com/esp8266/Arduino/blob/master/libraries/Wire/Wire.h \\ | ||