Table of Contents

Smart Curtain

Introducere

Proiectul consta in implementarea unui sistem automatizat si motorizat pentru jaluzelele clasice, in functie de nivelul luminii exterioare, astfel tinandu-se inchise noaptea (cand intensitatea luminii este scazuta) si deschizandu-se dimineata. Pe langa modul automat de actionare, comandat de valoarea citita de senzorul de lumina, sistemul pune la dispozitie si un mod manual de reglare a jaluzelelor printr-o telecomanda.

Descriere generală

Mod functionare
Sistemul va avea doua moduri, ce vor putea fi selectate din telecomanda, by default acesta va fi automat, unde in functie de valoarea pragului de lumina mentionat in codul placutei, motorul va incepe sa deschida jaluzelele cand valoarea transmisa de senzorul ambiental e peste prag (deci s-a facut zi, este multa lumina afara), iar in momentul in care se trece sub prag, acestea se vor inchide din nou (voi exemplifica in cadrul proiectului cu o lumina artificiala, puternica, de la flash-ul telefonului, fiind mai usor de demonstrat functionalitatea).
Pentru a trata cazul unei intreruperi, se va efectua o rutina de initializare a motorului, care va citi un byte de pe memoria EEPROM (pe care il updatez de fiecare data cand deschid jaluzeaua) pentru a vedea daca ultima oara era deschisa, pentru a o aduce in pozitia default (inchisa).
In modul manual, utilizatorul va putea controla pozitia jaluzelei prin actionarea a doua butoane pe telecomanda.
De asemenea am si un mod de setup de unde pot alege daca vreau sa fiu in modul automat sau in cel manual (cu feedback pe ecranul LCD)
Schema Bloc

Hardware Design

Lista de piese


Schema TinkerCAD

Schema electrica

Se poate observa prezenta a doua rezistente de pull-up pe magistralele SDA si SCL, acest lucru este datorat prezentei a doua dispozitive I2C care sunt conectate la aceeasi doi pini ai dispozitivului arduino (Senzorul de lumina + Ecranul LCD). Este nevoie de acestea pentru a reusi sa opresc interferentele intre cele doua si a nu avea probleme la nivelul HIGH al semnalului pe cele doua bus-uri.

Carcasa de motor (se poate monta pe un perete)
Roata pentru motor (reliefata pentru potrivirea cu snurul)

Software Design

Mediu dezvoltare + biblioteci third-party

Proiectul a fost realizat in AVR Studio, am folosit:

Functii implementate

In functia de setup a programului initializez pinii si modurile lor, initializez comunicarea cu dispozitivele I2C, deschid interfata Seriala + ascultarea comenzilor primite de la telecomanda, initalizez variabilele globale si apelez o rutina de initializare: functie ce verifica daca in momentul inchiderii sistemului jaluzeaua era deschisa, pentru a o inchide (pozitia default).

In functia de loop am doua functii principale:


Drept functii auxiliare am:

Rezultate Obţinute

Exterior - carcasa sistem


Interior - carcasa sistem

Montaj Motor

Ansamblu

Download

Link github proiect

Jurnal

Bibliografie/Resurse

Link-uri Internet:

Export to PDF