Server Security System

Autor: Ștefan-Theodor Ionică

Grupa: 331CB

Introducere

Acest proiect este destinat in special camerelor de servere oferind pe langa sistemul de securitate si optiuni de monitorizare al mediului.

Descriere generală

Printr-un senzor special bazat pe magneti se detecteaza deschiderea usii si se trimite un semnal catre sistemul de securitate. Acesta va astepta ca cel care a intrat in incapere (utilizatorul) sa introduca parola timp de 1 minut. Daca utilizatorul nu introduce parola in intervalul alocat, sau exista 3 incercari nereusite, va fi generat un semnal de alerta prin un buzzer si, de asemenea, va fi trimis un SMS catre adminstratorul serverului. De asememea se vor afisa date despre mediul din camera de server, anume temperatura si umiditatea.

Interfata cu utilizatorul este simplista, formata dintr-un keypad 4×4 si un ecran LCD cu 2 randuri si 16 coloane. Pe ecran se va afisa starea sistemului:

  • Hello!: nu s-a identificat niciun eveniment
  • Waiting <N>: usa a fost deschisa si se asteapta parola (N reprezinta numarul de secunde ramase)
  • Denied <N>: parola introdusa este gresita
  • Granted: parola introdusa este corecta
  • Intruder: parola nu a fost introdusa la timp sau au existat 3 incercari eronate (SMS-ul a fost trimis)

De asemenea, printr-un senzor de temperatura si umiditate se vor colecta date care vor fi afisate pe ecran.

Hardware Design

Lista piese:

  • Arduino UNO
  • NodeMCU V3
  • LCD 1602 cu Interfata I2C
  • Buzzer Pasiv de 5V
  • Senzor de Temperatura si Umiditate DHT22
  • Senzor magneti pentru usa
  • Set fire
  • Rezistente
  • Breadboard

Software Design

Pentru implementarea proiectul am folosit Arduino IDE (placa de dezvoltare NodeMCU V3 foloseste cod compatibil Arduino), iar acesta consta in doua parti: sistemul de securitate si sistemul de alerta SMS.

Sistemul de securitate

Sistemul de securitate contine placa de dezvoltare Arduino UNO, display-ul LCD, keypad-ul 4×4, buzzer-ul si senzorul de temperatura DHT22. De asemenea, in cadrul se afla logica proiectului.

Initial, sistemul se afla in starea de idle. In acesta stare pe ecran se afiseaza mesajul “Hello!”. Magnetul detecteaza deschiderea usii in `loop` si schimba starea sistemul in modul de asteptare. Modul de asteptare este caracterizat prin afisarea mesajului “Waiting <N>”, unde N este timpul ramas pentru introducerea parolei. Timpul este calculat folosind Timer1, care numara cate o secunda si decrementeaza contorul. Odata ce contorul atinge valoarea 0 sau au fost introduse 3 parole gresite, semnalul de alarma este trimis sistemului de alerta SMS, se afiseaza “Intruder”, suna buzzerul si dupa 15 secunde se revine in starea initiala.

In momentul in care se introduce parola, aceasta este afisata pe ecran prin `*`. La fiecare apasare a unei taste, caracterul `*` este adaugat pana la introducerea celor caractere necesare pentru parola. Daca parola introdusa este corecta se afiseaza “Granted” si dupa cateva secunde se trece inapoi in starea de idle, altfel se afiseaza “Denied <N>”, cu numarul de secunde aferent.

In permanenta, se vor afisa temperatura si umiditatea din camera de server pe al doilea rand al LCD-ului.

Sistemul de alerta SMS

Sistemul de alerta SMS este alcatuit din placa de dezvoltare NodeMCU V3, cu microchip ESP8266. Aceasta comunica cu cel sistemul principal de securitate prin portul USART si, in momentul in care primeste mesajul “intruder”, se va conecta prin wifi la un webhook IFTTT, care la randului anunta aplicatia de la aceiasi de pe telefon sa trimita SMS administratorului de securitate.

Rezultate Obţinute

ionica_stefan-theodor_1.jpg ionica_stefan-theodor_2.jpg ionica_stefan-theodor_3.jpg ionica_stefan-theodor_4.jpg ionica_stefan-theodor_5.jpeg

Concluzii

In cadrul acestui proiect, am invatat foarte multe asptecte legate de dezvoltarea aplicatiilor pe microcontrollere si doresc sa refac proiectul la vara intr-o forma mai compacta si mai estetica.

Demo

Download

Jurnal

Etapele proiectului:

  • 22 Aprilie - comanda de piese a ajuns
  • 25 Aprilie - verificare functionare corecta piese
  • 29 Aprilie - Prezentare Milestone 1
  • 13 Mai - implementare partiala NodeMCU V3
  • 15 Mai - implementare partiala Arduino UNO
  • 21 Mai - finalizare proiect
  • 23 Mai - Prezentare Milestone 2
  • 27 Mai - Wiki

Bibliografie/Resurse

pm/prj2022/dene/security_system.txt · Last modified: 2022/06/01 15:42 by stefan.ionica
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