Sistem Smart Home

Student Macovei Ioana-Andreea, 335 CC.

https://youtu.be/r0r7bnUJbv8

Adresa de e-mail contact: ioana.macovei@stud.acs.pub.ro.

Introducere

Ce face proiectul ?

Proiectul simulează un Sistem Smart Home, asigurându-se de calitatea traiului ușurată prin automatizarea unor componente principale ale unei locuințe. Acest sistem aprinde luminile la lăsarea întunericului, pornește un ventilator la detectarea unei temperaturi ridicate în locuință, are senzori de mișcare și sistem de alarmă împotriva intrărilor nepermise cât și cod de autentificare (care oprește alarma și descuie ușa).

Scopul proiectului

Proiectul propune automatizarea traiului de zi cu zi a oamenilor, propunând câteva îmbunătățiri în stilul de viață al acestora. Efectul dorit este reducerea timpului pierdut pe activități necesare dar inutile ca dezvoltare personală (aprindere/stingere lumină, pornire/oprire ventilator), cu scopul eficientizării acestuia și sporirii productivității.

Ideea de la care s-a pornit

În urma unui reportaj văzut la televizor la știri am ajuns la următoarea realizare. În vremurile prezente de pandemie contactul interpersonal este limitat. În România și nu numai, există persoane care ar avea nevoie de ajutor și cărora le-ar fi grea mișcarea prin locuință (precum bătrânii sau persoanele bolnave). Acest sistem poate ajuta la cele mai mici lucruri (din punctul nostru de vedere) care pentru ei pot fi chiar și cele mai complicate activități.

Utilitatea proiectului

Proiectul poate fi folosit de oricine dacă s-ar aduce de la un nivel mini la un nivel extins de casă. Privind mai sus la scopul său și la ideea de la baza sa, consider că realizarea acestuia ar aduce atât o utilitate vizibilă cât și un ajutor.

Descriere generală

Descrierea funcționalității:

La dorința de a intra în locuință trebuie introdus pinul (o secvență de mișcări ale joystick-ului). În cazul în care a fost introdus un cod greșit și se vrea resetarea pașilor anteriori se va apăsa butonul acestuia. Odată ce codul introdus este corect, alarma casei se dezactivează și servomotorul se mută într-o poziție din care ușa se poate deschide (contrar atunci când casa este securizată/ alarma este pornită). În cazul se detectează mișcare în casă (prin senzorul de mișcare - PIR) fără introducerea parolei, sau aceasta e incorectă, buzzer-ul pornește și până nu se introduce parola corectă nu se oprește. Când se dorește pornirea alarmei (se părăsește locuința) se va introduce iarăși parola. Odată ce senzorul de temperatură detectează o temperatură ridicată, acesta pornește motorașul la care este atașată o elice, componentă ce reprezintă un mini-ventilator. Când temperatura se va întoarce la un prag normal, acesta se oprește. Senzorul de lumină verifică luminozitatea prezentă în exterior. Dacă afară este întuneric, se pornesc automat luminile (ledurile) iar dacă afară este lumină, acestea se sting.

Diagrama bloc corespunzătoare proiectului:

Hardware Design

Listă de piese

  • Senzor lumina;
  • Senzor temperatură;
  • Motor;
  • Elice;
  • Servomotor;
  • Senzor de mișcare (PIR);
  • Joystick;
  • Buzzer;
  • Rezistențe;
  • Leduri;
  • Adaptor alimentare - 5V.

Componentele sistemului și funcționalitățile lor :

Casa funcționează pe trei moduri. Conform acestor moduri, componentele acționează diferit.

  1. Sistem armat: casa este protejată de intrări nedorite.
  2. Sistem dezarmat: casa are funcționalitățile normale de trai.
  3. Armarea și dezarmarea casei: procesul propriu zis de securizare.

Sistem dezarmat :

Modul cu Fotorezistor (Senzor de Lumină): Senzorul amplasat în fața casei va verifica luminozitatea provenită de afară. În cazul în care valoarea acestuia indică întuneric, înăuntrul casei se va aprinde lumina. Altfel, aceasta va rămâne stinsă.

LED : Lipit pe unul dintre pereții casei, reprezintă “lumina” care va fi aprinsă pentru a regla luminozitatea camerei.

Modul de temperatură DHT22 : Lipit pe un perete al casei, acesta va verifica temperatura și umiditatea acesteia. Dacă temperatura va trece de o limită impusă manual de către programator, un ventilator se va porni pentru a o regla.

Motor cu elice : Lipit la unul dintre geamuri, motorașul va ține post de ventilator și va porni odată ce e semnalizat de senzorul DHT22, rotind elicea ce va stabiliza temperatura camerei.

Sistem armat :

Senzor PIR (de mișcare) : Pus pe jos, paralel cu ușa de intrare și având pe laterale geamurile, senzorul verifică apariția unei intrări nedorite în cadrul locuinței cu ajutorul întreruperilor.

Buzzer : Odată ce este semnalizat de senzor, buzzerul pornește alarma (începe să facă gălăgie) și până când locuința nu este dezarmată nu se oprește din sunat.

Armarea și dezarmarea sistemului:

Casa se poate arma (și dezarma) în două moduri. Securizarea casei nu diferă, ci doar modul de armare/dezarmare:

  1. Simplă: Ținând apăsat pe buton trei secunde.
  2. Cu parolă: Se va apăsa inițial pe buton iar apoi se va insera secvențial un cod.

Joystick : Joystick-ul reprezintă “cheia” principală a procesului de securizare al locuinței. Procesul de securizare este pe perechi, astfel orice altă combinație în afară de cele de mai jos nu va funcționa în cadrul sistemului.

  1. Simplă:
  • Armarea simplă: Se ține apăsat pe butonul joystick-ului timp de trei secunde.
  • Dezarmarea simplă: Dacă sistemul a fost armat cu ajutorul armării simple, acesta va fi dezactivat prin același proces: trebuie ținut apăsat butonul joystick-ului timp de trei secunde.
  1. Cu parolă:
  • Armarea cu parolă: Butonul se va apăsa o singură dată inițial. Apoi, la semnalul buzzer-ului, se va face și menține poziția pasului secvenței până când buzzer-ul se oprește. Când utilizatorul dorește să se oprească (adică a terminat secvența dorită) acesta va apăsa iar pe butonul joystick-ului.
  • Dezarmarea cu parolă: Utilizatorul va apăsa o singură dată pe buton. Apoi, va acționa exact la fel (ca la armare) cu ajutorul buzzer-ului și joystick-ului. Dacă introduce o parolă greșită și vrea să pornească de la început, acesta va apăsa pe buton și la aprinderea becului, procesul se va reseta.

Servomotor : La armare, servomotorul se va muta la un unghi de 180 de grade, astfel blocând deschiderea ușii (respectiv intrarea în locuință). La dezarmare, servomotorul se va muta la un unghi de 90 de grade, eliberând astfel accesul pe la ușă.

Buzzer : La fiecare element al secvenței de cod de armare (respectiv dezarmare), buzzer-ul va notifica utilizatorul de când și până când să mențină poziția joystick-ului astfel încât aceasta să fie luată în calcul.

LED : Doar la dezarmare, în cazul în care persoana a greșit codul, va reapăsa pe butonul Joystick-ului. LED-ul se va aprinde ca semnalizare a acestui lucru și astfel se va putea insera de la început un alt cod.

Schema electrică

Software Design

La nivel de software m-am folosit de Arduino 1.8.13. Cu ajutorul laboratoarelor de PM de pe OCW am reușit să dezvolt codul pentru Sistemul Smart Home. Am folosit atât cod Arduino (la majoritatea codului) dar și AVR (pentru întreruperea de la senzorul PIR am umblat manual la pinii PCMSK, PCICR, PINB, șamd).

Am folosit și două biblioteci auxiliare, cea a servomotorului “Servo.h” și cea a senzorului de temperatură “DHT.h”, folosind astfel funcțiile acestora (la servo: attach, write; la dht : begin, readTemperature).

De asemenea, am folosit variabile și funcții auxiliare (fiecare pentru câte unul dintre cele trei moduri de funcționare și două pentru crearea și recunoașterea secvențelor parolei) în loop având doar procesul de recunoaștere al modului de funcționare și condițiile de verificare.

Rezultate Obţinute

Odată ce adaptorul este conectat la priză, casa funcționează conform celor menționate mai sus. Starea inițială este = “Sistem dezarmat” iar toate funcționalitățile acesteia sunt respectate conform acestui mod, urmând ca tranzițiile de securizare să modifice acest lucru. =)

Download

Codul și fișierul de README ale proiectului sunt atașate în arhiva .zip de mai jos. :-D macovei_ioana_proiect_pm_335cc.zip

Bibliografie/Resurse

pm/prj2021/dbrigalda/474.txt · Last modified: 2021/06/01 19:54 by ioana.macovei
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