Table of Contents

Smart Home System

Student: Afumatu Elena-Cristina
Grupa: 334CC

Introducere

Proiectul constă în implementarea unui sistem smart-home care să sporească nivelul de confort și siguranță din locuință. Scopul acestui sistem este de a oferi o soluție pentru securitatea și monitorizarea casei prin intermediul unor dispozitive care să furnizeze informații importante și notificări în timp real.

Am pornit de la ideea implementării unei alarme de securitate, apoi am adăugat diverse caracteristici astfel încât să devină și mai folositor, acoperind mai multe necesități. Astfel, se dovedește a fi un sistem util, oferind un nivel ridicat de protecție împotriva intrușilor prin alertele primite pe telefon la declanșarea alarmei. De asemenea, adăugarea senzorului de gaz ajută la prevenirea unor situații periculoase, cum ar fi incendiile sau acumularea de gaze toxice, iar ecranul LCD contribuie la monitorizarea condițiilor din interiorul casei.

Descriere generală

Pentru asigurarea funcției de monitorizare, sistemul implică un senzor de temperatură și umiditate, ce va fi conectat la plăcuța Arduino, iar informațiile colectate de acesta vor fi afișate pe un display LCD, comunicarea realizându-se prin modulul I2C de pe AVR.

Sistemul contribuie la siguranța locuinței prin două moduri. Acesta conține alarma de securitate, fiind una dintre cele mai importante componente ale sale. Oricând dorește să o activeze, utilizatorul poate introduce un cod prin intermediul telecomenzii, acesta fiind apoi preluat de un receptor (modulul IR conectat la piniile plăcuței Arduino). Odată cu activarea acestei funcții, mișcările detectate de senzorul de prezență vor fi tratate ca atare, și, în cazul în care este identificată o potențială intrare neautorizată, un semnal sonor va fi redat cu ajutorul buzzer-ului, ledul RGB se va aprinde (albastru), iar proprietarul va fi înștiințat printr-un SMS, prin intermediul modulului GPRS GSM, astfel încât să poată lua măsurile necesare pentru a-și proteja casa.

O altă componentă importantă a sistemului este senzorul de gaze, adecvat pentru detectarea CH4, gaz natural, LNG, fum, hidrogen, metan și alcool, fiind util în situațiile de urgență și în prevenirea acestora. Atunci când valorile detectate de senzor ating punctul de alarmă, sistemul funcționează similar cu descrierea anterioară: buzzer-ul va reda un sunet corespunzător, led-ul RGB va fi roșu de această dată, iar utilizatorul este înștiințat cu ajutorul modulului GPRS GSM.

Schema bloc:

Hardware Design

Lista componente:

Schema electrica:

Deoarece Tinkercad nu ofera suport pentru Sensor Shield, am folosit un breadboard pentru conectarea componentelor.

Software Design

Descrierea codului aplicaţiei (firmware):

  • mediu de dezvoltare: Arduino IDE 2.1.0
  • biblioteci utilizate:
    • LiquidCrystal_I2C.h
    • dht.h
    • IRremote.h
    • SoftwareSerial.h

Descrierea implementarii:

Pentru asigurarea functiei de monitorizare a sistemului am implementat functia printData(), care citeste date de la senzorul de temperatura si umiditate si le afiseaza pe LCD. Exista doua modalitati de afisare a temperaturii, in grade Celsius sau Fahrenheit, iar utilizatorul poate selecta modul dorit folosind telecomanda IR, schimbarea facandu-se la apasarea sagetii UP/DOWN.

Functia checkGasSensor() verifica valoarea primita de la senzorul detector de gaz si daca aceasta depaseste o valoare prestabilita, atunci alarma va fi declansata, adica un sunet este redat pe buzzer si ledul va fi rosu. Se mentine aceasta stare pana cand valorile scad sub pragul mentionat.

Functia checkCode() primeste de la telecomanda IR 4 cifre, apoi verifica daca acest cod corespunde cu cel de activare/dezactivare a alarmei. In caz afirmativ, aceasta activeaza alarma de securitate daca ea era oprita si viceversa.

Functia checkPirSensor() verifica inputul de la senzorul de prezenta. Daca acesta transmite doar valori HIGH timp de o secunda, atunci alarma este declansata si un sms este trimis utilizatorului, prin functia sendSMS(). Odata pornita, alarma poate fi oprita doar prin introducerea codului folosind telecomanda IR. Pentru introducerea codului de la telecomanda trebuie sa fie mai intai apasat butonul OK.

Toate functiile mentionate ruleaza intr-o bucla infinita, asigurand astfel buna functionare a sistemului.

Rezultate Obţinute

Demo: demo.zip

Concluzii

Proiectul permite afisarea temperaturii si a umitidatii pe un lcd, este benefic in cazul situatiilor de urgenta precum scurgerile de gaze si contine o alarma de securitate, ce poate fi activata/dezactivata pe baza unui cod. Desi pot fi adaugate multe imbunatariti si functionalitati, consider ca este un proiect care m-a ajutat sa consolidez informatiile de la laborator si sa inteleg mai bine proiectele ce au la baza un microcontroller ATMega328p. smart_home_system.zip

Download

Codul sursa poate fi gasit in arhiva de mai jos.
smart_home_system.zip

Jurnal

  1. 20.04.2023 - Stabilirea temei pentru proiect
  2. 28.04.2023 - Comandarea pieselor necesare
  3. 06.05.2023 - Adăugare documentație inițială
  4. 13.05.2023 - Testarea individuala a componentelor
  5. 14.05.2023 - Implementare hardware
  6. 20.05.2023 - Realizare schema electrica
  7. 28.05.2023 - Adaugare cod sursa

Bibliografie/Resurse

Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe Resurse Software şi Resurse Hardware.

Export to PDF