This is an old revision of the document!


Smart Home System

Autor: Iulian-Ilie Drăcea
Grupa: 332CB

Introducere

Scopul proiectului este de a realiza un sistem smart home ce poate fi accesat prin telefon.

Din aplicație se vor putea regla intensitățile becurilor din casă, deschide/închide lacătul de la intrare și totodată în aplicație vor apărea temperatura și nivelul de umiditate din casă, luate de un senzor.

Descriere generală

Placa Arduino UNO va aștepta comenzi din aplicația de pe telefon și în funcție de comandă
va face una din acțiunile posibile:

  1. Va lua date de la senzorul de temperatură și umiditate DHT22 și le va trimite către aplicație.
  2. Va schimba intensitatea luminii becului selectat din aplicație.
  3. Va deschide/închide lacătul ușii de la intrare.

Practic placa Arduino UNO va fi cea care interpretează comenzile primite din aplicație
și în funcție de aceasta controlează mini sistemele din cadrul casei smart.

Hardware Design

Listă componente:

  • Arduino UNO R3
  • senzor temperatură și umiditate DHT22
  • releu 5V, 1 canal
  • încuietoare electrică 12V
  • 4 x LED
  • 4 x potețiometre digitale MCP4131
  • modul Wifi ESP8266
  • suport 3 x baterii 18650
  • 3 x baterii 18650 (am trecut de la aceastea la 1 baterie 9V, incuietoarea mergand si doar cu atat)
  • breadboard-uri
  • rezistențe 100, 220 Ω
  • cablu USB
  • conectori, fire jumper, fire dupont

Schemă electrică:

Software Design

Mediu de dezvoltare: Arduino IDE, RemoteXY (pentru aplicatia mobile)

Biblioteci utilizate:

DHT sensor library (by Adafruit) - pentru comunicarea cu senzorul DHT22
RemoteXY - pentru aplicatia mobile si modulul wifi ESP8266
SPI - pentru controlul potentiometrelor digitale MCP4131

Diagrama activitati:

In setup configurez modulul ESP8266, si pinii de control pentru led-uri, DHT22 si lacatul electric. Setez led-urile ca fiind oprite.
In loop, api-ul RemoteXY verifica conexiunea. Daca a primit o conexiune de la un client nou se creeaza o noua conexiune si pentru fiecare conexiune trimite mai departe valorile de la arduino la aplicatie prin ESP8266, apoi se trimit date si de la aplicatie la arduino, pe arduino actualizand toti pinii cu datele primite. Daca au trecut 0.5s de la ultima masurare a temperaturii si umiditatii masor iar temperatura si umiditatea, iar datele vor fi trimise la urmatorul loop.
Pentru comunicarea cu potentiometrele conectate la led-uri am facut functia potDigitalWrite ce trimite prin SPI valoarea primita potentiometrului selectat prin CS.
Pentru citirea valorilor de la DHT22 am creat functia readAndSetTempAndHumidity ce citeste temperatura si umiditatea si scrie valorile primite in bufferele ce vor fi trimise catre aplicatie la urmatorul loop.

Rezultate Obţinute

Am realizat o macheta din carton a casei si a camerei din casa.
Am vrut sa fie o apropiat de una reala si m-am gandit ca circuitele ar fi cumva intre pereti.
Nu sunt cele mai frumoase cablaje, fiind multe lucruri de conectat si spatiu destul de mic, dar am dorit doar ca incaperea (cutia alba) sa fie cea ferita de cablaje, si am reusit acest lucru.

Nu am reusit sa fac un demo, deoarece nu pot filma si folosi aplicatia in acelasi timp cu un singur telefon.

Concluzii

Am atins ce am vrut sa fac, un sistem SmartHome conectat la telefon ce este functional.

Download

Jurnal

21.04.2022 Alegere temă proiect și căutare componente
22.04.2022 Creare Wiki
23.05.2022 Adaugare cod sursa, poze realizate si arhiva proiect

Bibliografie/Resurse

Resurse Software :

Resurse Hardware :

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

Export to PDF

pm/prj2022/abirlica/smart_home_system.1653593468.txt.gz · Last modified: 2022/05/26 22:31 by iulian_ilie.dracea
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