Sunteți pe pagina 1din 31

Sistem inteligent de iluminare cu încuietoare

PROIECT

Arhitectura și organizarea
calculatoarelor

Autor:
Gogu Andronache
Calculatoare anul IV
Grupa 4LF991
Gogu.andronache@student.unitbv.ro

BRAȘOV, 2021
Sistem inteligent de iluminare cu încuietoare

Conținut
1 Rezumat............................................................................................................................................3
1.1 Descrierea proiectului...............................................................................................................3
1.2 Descrierea implementării..........................................................................................................3
2 Introducere........................................................................................................................................3
2.1 Prezentarea temei......................................................................................................................3
2.2 Motivația practică pentru alegerea temei..................................................................................4
2.3 Sisteme actuale.........................................................................................................................4
2.3.1 Încuietoare inteligentă Yale Linus – 1400 Lei.................................................................4
2.3.2 Bandă cu leduri Wireless Light Strip LED RGB Sonoff – 173 Lei................................4
3 Prezentarea platformei hardware......................................................................................................5
3.1 Caracteristici tehnice ale procesorului......................................................................................5
3.2 Interfete disponibile..................................................................................................................6
3.2.1 UART...............................................................................................................................6
3.2.2 SPI....................................................................................................................................6
3.2.3 I2C...................................................................................................................................6
3.3 Modalitatea de alimentare a plăcii............................................................................................6
3.3.1 Caracteristicile sursei de alimentare................................................................................6
4 Schema bloc a implementării............................................................................................................7
5 Costurile realizării practice a proiectului..........................................................................................8
6 Prezentarea pachetelor software si a limbajelor de programare.......................................................9
7 Prezentarea firmware-ului dezvoltat...............................................................................................10
7.1 Schema logică.........................................................................................................................10
7.2 Fragmente de cod sursă relevante...........................................................................................11
7.3 Statistici legate de numărul de linii de cod si timpul necesar dezvoltării codului..................13
7.4 Interfața grafică a aplicației bluetooth....................................................................................13
8 Prezentarea montajului realizat.......................................................................................................14
8.1 Arduino uno R3......................................................................................................................15
8.2 Încuietoarea.............................................................................................................................16
8.3 Banda led RGB.......................................................................................................................17
8.4 Modul IRF520 Mosfet............................................................................................................17
8.5 Modul RFID RC522...............................................................................................................18
8.6 Modul bluetooth HC-05..........................................................................................................19
8.7 Buzzer activ............................................................................................................................20
8.8 Modul LED rgb.......................................................................................................................21
8.9 Alimentator 12v 2a.................................................................................................................21

1
Sistem inteligent de iluminare cu încuietoare

8.10 Buton.......................................................................................................................................22
9 Performanțe.....................................................................................................................................22
10 Concluzii.........................................................................................................................................25
11 Bibliografie.....................................................................................................................................26
12 Anexă – cod sursă...........................................................................................................................28
12.1 Arduino...................................................................................................................................28
12.2 AppInventor............................................................................................................................30

2
Sistem inteligent de iluminare cu încuietoare

0 REZUMAT

0.1 DESCRIEREA PROIECTULUI


Proiectul realizat reprezintă o implementare proprie asupra ideii de încuietoare inteligenta
și a sistemului de iluminare RGB folosind ca si microcontroler principal un Arduino Uno R3.
Acesta va manipula o încuietoare pentru a se deschide sau închide cu ajutorul modulul RFID și
va controla sistemul de iluminare RGB folosind modulul Bluetooth și o aplicație pe mobil. De
asemenea sunt folosite un buzzer și un led RGB pentru a informa utilizatorul si a îl alerta atunci
cand accesul la deschiderea încuietorii este permis sau interzis.

0.2 DESCRIEREA IMPLEMENTĂRII


Pentru o înțelegere mai amplă a implementării proiectului vom începe cu segmentele cele
mai îndepărtate de microcontrolerul central. Astfel:

 Aplicația Android ce are ca scop trimiterea de semnale către modulul Bluetooth este realizată
în App Inventor, un creator modern de aplicații ce folosește blocuri pentru a implementa
logica pe care se bazează aplicația. Motivația de a folosi această platformă a fost ușurința cu
care se pot crea aplicații simple, în cazul nostru o aplicație care se poate conecta și trimite
semnale către modulul Bluetooth.
 Modulul Bluetooth este conectat la receptorul serial al microcontrolerului, folosind interfața
UART și programat pentru a avea o parolă de conectare adecvată.
 Tag-urile și cartela au un ID unic care a fost stocat in memoria microcontrollerului, astfel
încât să fie recunoscute când încuietoarea trebuie deschisă.
 Modulul RFID este conectat prin interfață SPI la microcontroler
 În cazul în care este primit un semnal detectat că fiind autorizat, încuietoarea se va deschide,
led-ul RGB va deveni verde, iar buzerul va scoate un sunet specific acestui caz. În caz contrar
încuietoarea va rămâne închisă sau se va închide, iar led-ul va deveni roșu și buzerul va scoate
un sunet specific diferit de cel din cazul precedent.
 Încuietoarea se închide prin intermediul apăsării unui buton.
 Atunci când incuietoarea este deschisă, se poate porni aplicația Bluetooth pentru a controla
banda de led-uri RGB. Astfel, aceasta va lumina doar când încuietoarea este deschisă și se va
stinge atunci când butonul va fi acționat.

1 INTRODUCERE

1.1 PREZENTAREA TEMEI


Tema principală pe care m-am concentrat in desfășurarea proiectului este dezvoltarea și
implementarea unei încuietori inteligente cu sistem de iluminare care să faciliteze siguranța
obiectelor dintr-un spațiu de depozitare(spre exemplu: dulap, noptieră) și să sporească
vizibilitatea acestora. Astfel, folosind un card sau cartel RFID se poate deschide ușa spațiului de
depozitare, apoi se poate seta o culoare preferențială atunci cand încuietoarea este deschisa.
Pentru a economisi energie, când spațiul de depozitare este închis, implicit si încuietoarea este
inchisă, iluminarea se oprește.
Sistemul poate fi modificat cu ușurință și pot fi modificate oricâte carduri sau cartele RFID,
astfel se poate scăpa de grija pierderii unei cartele, deoarece se pot configura cartele de rezervă.

3
Sistem inteligent de iluminare cu încuietoare

1.2 MOTIVAȚIA PRACTICĂ PENTRU ALEGEREA TEMEI


Motivul principal pentru alegerea acestei teme este sporirea confortului. Intr-o eră a
tehnologiei, când aproape toate casele încep să se indrepte spre “Smart-Home”, acest proiect are
un rol important in imbunătățirea ideii de casă inteligentă. Totodată, se poate modifica sau
schimba încuietoarea astfel încât sa fie folosită la o ușă mare. In acest caz, proiectul devine mult
mai amplu si spectaculos, deoarece se poate ilumina toată incaperea atunci când ușa este
deschisă.

1.3 SISTEME ACTUALE


1.3.1 Încuietoare inteligentă Yale Linus – 1400 Lei

Figura 1 Încuietoare inteligentă Yale Linus

Încuietoarea inteligenta Linus® este o incuietoare sigură, care iți permite sa încui și să
descui ușa, de oriunde te-ai afla.
Ai acces fara chei, vezi cine cand soseste, ofera chei virtuale vizitatorilor, verifica daca
usa este inchisa sau deschisa. Toate acestea sunt posibile prin intermediul aplicatiei Yale Access.
Odata conectat la aplicatie, poti securiza, monitoriza si gestiona accesul in locuinta ta folosindu-
ti telefonul, de oriunde din lume.
Bucura-te de liniste sufleteasca, protejata de cea mai noua incuietoare inteligenta Yale,
care incorporeaza 180 de ani de experienta in domeniul securitatii.

1.3.2 Bandă cu leduri Wireless Light Strip LED RGB Sonoff – 173 Lei

Figura 2 Bandă cu leduri Wireless Light Strip LED RGB Sonoff

4
Sistem inteligent de iluminare cu încuietoare

Banda LED RGB Sonoff L1 ofera un aspect decorativ, asigurand o lumina placuta ce iti va
transforma atmosfera casei tale in una adevarat originala.
Cu ajutorul benzii inteligente Sonoff L1 poti transforma orice melodie intr-o simfonie de
culori si lumini. Foloseste aplicatia mobila sau telecomanda inclusa in pachet pentru a pregati
luminile pentru petrecere, o cina romantica sau alte activitati alaturi de prietenii tai.

2 PREZENTAREA PLATFORMEI HARDWARE

2.1 CARACTERISTICI TEHNICE ALE PROCESORULUI


Microcontrollerul care stă la baza sistemului implementat este un Arduino Uno R3.
Acesta contine un microchip denumit ATmega328P. Arduino este o companie open-source care
produce atât plăcuțe de dezvoltare bazate pe microcontrolere, cât și partea de software destinată
funcționării și programării acestora. Pe lângă acestea include și o comunitate uriașă care se ocupă
cu creația și distribuirea de proiecte care au ca scop crearea de dispozitive care pot sesiza și
controla diverse activități sau procese în lumea reală.
Aceste plăci pun la dispoziția utilizatorului pini I/O, digitali și analogici, care pot fi
interfațați cu o gamă largă de plăcuțe numite scuturi (shield-uri) și/sau cu alte circuite. Plăcile au
interfețe de comunicații seriale, inclusiv USB pe unele modele, pentru a încărca programe
din calculatorele personale. Pentru programarea microcontrolerelor, Arduino vine cu un mediu
de dezvoltare integrat (IDE) care include suport pentru limbaje de programare ca C și C++.

Caracteristici tehnice:
 Microcontroller: ATmega328P
 Tensiune de funcționare: 5 Volți
 Tensiune de intrare: 7-20 Volți
 Pini I/O digitali: 14 (din care 6 pot furniza ieșire PWM)
 UART: 1
 I2C: 1
 SPI: 1
 Pini de intrare analogici: 6
 Curent continuu pentru un pin I/O: 20 mA
 Curent continuu pentru pinul de 3,3 V: 50 mA
 Memorie Flash: 32 KB din care 0,5 KB utilizată de bootloader
 SRAM: 2 KB
 EEPROM: 1 KB
 Viteza ceasului: 16 MHz
 Lungime: 68,6 mm
 Lățime: 53,4 mm
 Greutate: 25 g

2.2 INTERFETE DISPONIBILE


Interfețele disponibile au fost prezentate mai sus, in cadrul caracteristicilor tehnice.
Microcontrollerul utilizat dispune de 3 interfețe care vor fi prezentate in sub-secțiunile
urmatoare.

5
Sistem inteligent de iluminare cu încuietoare

2.2.1 UART
Unul dintre cele mai de bază protocoale de comunicații din electronică este protocolul
serial Universal Asynchronous Receive Transmit (UART). Protocolul UART permite ca două
dispozitive să comunice între ele. Protocolul necesită două fire între dispozitivele care comunică;
una pentru fiecare direcție de comunicare. Fiecare dispozitiv are un modul de transmisie și
recepție independent. Când un dispozitiv transmite, acesta trimite date ca o serie de impulsuri.
Fiecare impuls reprezintă un bit de date, deci un octet (8 biți) de date este trimis ca opt impulsuri
pe fir. Aceste impulsuri sunt trimise cu o anumită sincronizare predefinită numită o rată de
transmisie(Baud Rate) care trebuie înțeleasă de ambele dispozitive.

2.2.2 SPI
Interfața seriala SPI (Serial Peripheral Interface) este o interfața sincronă standard de
mare viteză, ce operează în mod full duplex. Ea e folosită ca sistem de magistrală serială sincronă
pentru transmiterea de date, unde circuitele digitale pot să fie interconectate pe principiul master-
slave. Aici, modul master/slave înseamnă că dispozitivul (circuitul) digital master inițiază
cuvântul de date. Mai multe dispozitive (circuite) digitale slave sunt permise cu slave select
individual, adică cu selectare individuală.

2.2.3 I2C
Protocolul Inter Integrated Circuit (I2C) este un protocol creat pentru a permite mai
multor circuite integrate “slave” sa comunice cu unul sau mai mute cipuri “master”. Acest tip de
comunicare poate fi folosit doar pe distante mici de comunicare si asemenea protocolului UART
are nevoie doar de 2 fire de semnal pentru a trimite/primii informatii.

2.3 MODALITATEA DE ALIMENTARE A PLĂCII


Întrucât piesele cele mai important din proiect, încuietoarea si banda led, folosesc o
tensiune de 12V, a fost nevoie de o sursă de alimentare suplimentara. Microcontroller-ul, fără a
avea alimentare suplimnetară, se conectează la USB-ul calculatorulu personal și acesta generează
o tensiune de maxim 5V. Astfel, prin intermediul unui alimentator, problema alimentării este
rezolvată.
Alimentatorul foloseste o mufă de alimentare standard 5.5 x 2.1mm și se cuplează pe
microcontroller prin intermediul unui conector special. Tensiunea suplimentară se propagă si se
poate folosi prin intermediul pinului VIN de pe microcontroller-ul Arduino.

2.3.1 Caracteristicile sursei de alimentare


Caracteristicile tehnice ale alimentatorului despre care s-a detaliat mai sus sunt prezentate in
capitolul 8.9.

3 SCHEMA BLOC A IMPLEMENTĂRII

6
Sistem inteligent de iluminare cu încuietoare

Figura 3 Schema bloc a implementării

După cum se poate observa în schema bloc, canalele de comunicație sunt prezentate pentru fiecare
componentă in parte.

4 COSTURILE REALIZĂRII PRACTICE A PROIECTULUI

Nr. Crt Denumire componenta Preț(RON)

1 Încuietoare electrică 12V 51,75

7
Sistem inteligent de iluminare cu încuietoare

2 Arduino Uno R3 Atmega328P 34,80

3 Modul RFID RC 522 cu card și tag 19,80

4 Cablu USB A-B 0.3m 7,15

5 Modul Bluetooth HC-05 33,35

6 Alimentator 12V 2A 27,01

7 Modul LED RGB 8,45

8 2 x Breadboard 830 puncte 30,96

10 20 x Fire Dupont tata-tata 10cm 7,54

11 10 x Fire Dupont mama-tata 10cm 3,77

12 1 x N-Channel MOSFET 60V 30A 4

13 1 x Diode Rectifier – 1A 50V 1

14 Bandă led RGB 19

15 3 x IRF520 Mosfet 9

16 Buzzer activ 4,68

Total 260.26

Tabel 1 Costul materialelor pentru implementarea proiectului

5 PREZENTAREA PACHETELOR SOFTWARE SI A


LIMBAJELOR DE PROGRAMARE
Arduino Integrated Development Environment(IDE) este o aplicație cross-platform,
open-source care conține un editor de text pentru scrierea codului în limbaj C/C++, o zonă de
afișare a mesajelor, o consolă text și o bară de instrumente pentru funcții comune și o serie de
meniuri. Programele scrise folosind acest mediu se numesc schițe și se salvează cu extensia .ino.
Acesta se conectează la plăcute Arduino sau Genuino pentru a încarcă programe și a comunica cu ele.
Când o schița este încărcată este folosit de fapt Arduino Bootloader, un program mic care a fost
încărcat pe microcontrolerul de pe plăcută. Acesta permite încărcarea de cod fără a mai folosi
hardware adițional.
8
Sistem inteligent de iluminare cu încuietoare

Pentru a se construi programul sunt necesari mai mulți pași. Acțiuni de pre-procesare sunt utilizate
pentru a transforma schița într-un program C/C++. Apoi sunt localizate dependințele schiței, iar apoi
codul este pasat unui compilator avr-gcc/avr-g++. Următorul pas este că acest cod să fie combinat cu
librării standard Arduino care să asigure funcționalități de bază. Rezultatul este un fișier hex, care
conține byții specifici care trebuie scriși pe chip ul de memorie al plăcuței Arduino.
AVR-GCC este un compilator care preia cod scris în limbaj de nivel înalt C și creează o
sursă binară ce poate fi încărcată într-un microcontroler AVR
Mediul de dezvoltare Arduino se folosește de librari pentru a asigura funcționalități extra în
dezvoltarea schițelor. Acestea sunt încărcate pe plăcută împreună cu schița, astfel ocupând un spațiu
mai mare pe această.
Librăriile de Arduino IDE folosite în acest proiect sunt: SPI.h, MFRC522.h, Wire.h,
LiquidCrystal_I2C.h.
Librăria SPI(Interfață Serial Periferică)
SPI este un protocol serial sincron de date folosit de microcontrolere pentru comunicarea
rapidă pe distanțe mici cu unul sau mai multe dispozitive periferice. De obicei sunt trei linii
comune pentru toate dispozitivele:

 MISO (Master In Slave Out) - linia slave pentru a trimite date către master
 MOSI (Master Out Slave In) - linia master pentru a trimite date către periferice
 SCK (Serial Clock) - pulsurile de ceas care sincronizează transmiterea datelor generate de
master
Și o linie specifică pentru fiecare dispozitiv:

 SS (Slave Select) - pinul de pe fiecare dispozitiv pe care masterul îl poate folosi pentru a
activa și dezactiva anumite dispozitive

Librăria MFRC522
Această librărie este folosită pentru a citi și scrie diferite tipuri de carduri RFID folosind Arduino și
un dispozitiv RC522 conectat prin intermediul interfeței SPI.

App Inventor este un software care furnizează anumite module/servicii pentru a crea
aplicații Android fără a mai fi nevoie de scrierea directă a codului. Este o distribuție a MIT App
Inventor peste care adaugă funcționalități în plus și un control mai în detaliu asupra aplicației
create.
Avantajele dezvoltării în acest mediu față de scrierea directă a codului sursă este ușurință
creării unui proiect și a realizării produsului final(apk). Datorită folosirii blocurilor, codul nu
devine extrem de voluminos, astfel putând reține un overview asupra întregii aplicații cu
ușurință.

9
Sistem inteligent de iluminare cu încuietoare

6 PREZENTAREA FIRMWARE-ULUI DEZVOLTAT

6.1 SCHEMA LOGICĂ

Figura 4 Schemă logică

6.2 FRAGMENTE DE COD SURSĂ RELEVANTE

10
Sistem inteligent de iluminare cu încuietoare

Figura 5 Rutinele de deschidere si închidere a lacătului solenoid

Figura 6 Inițializarea codului in Arduino IDE

11
Sistem inteligent de iluminare cu încuietoare

Figura 7 Bucla repetitivă

6.3 STATISTICI LEGATE DE NUMĂRUL DE LINII DE COD SI TIMPUL


NECESAR DEZVOLTĂRII CODULUI

 Există în total 138 linii de cod în Arduino IDE și 7 blocuri în App Inventor.

12
Sistem inteligent de iluminare cu încuietoare

 Numărul total de ore necesar pentru scrierea acestuia a fost în jur de 9-10 ore.

6.4 INTERFAȚA GRAFICĂ A APLICAȚIEI BLUETOOTH

Figura 8,9 Intefața grafică a aplicației AppInventor

7 PREZENTAREA MONTAJULUI REALIZAT


Montajul a fost realizat cu ajutorul documentației pentru fiecare componentă folosită.
Fișa de catalog a avut un rol foarte important in realizarea legăturilor intre placa de dezvoltare
Arduino si modulele pe care le puteți observa in figura de mai jos (Figura 10). Totodată, o etapă
importantă și nelipsită pentru siguranța noastră, dar si a montajului, a fost documentarea temeinic
despre nivelele de tensiune acceptate pentru fiecare modul.

13
Sistem inteligent de iluminare cu încuietoare

Figura 10 Poză de ansamblu pentru montajul pornit

14
Sistem inteligent de iluminare cu încuietoare

Figura 11 Poză de ansamblu pentru montajul oprit

În următoarele sub-capitole sunt prezentate componentele folosite si concluziile trase in urma


documentării despre acestea.

7.1 ARDUINO UNO R3

Figura 11 Descrierea pinii pentru controller-ul Arduino Uno R3

15
Sistem inteligent de iluminare cu încuietoare

Figura 12 Poză de ansamblu pentru controller-ul Arduino Uno R3

Arduino Uno R3 este o placă de dezvoltare bazată pe microcontrollerul Atmega328. Are


14 pini de intrare/ieșire (dintre care 6 pot fi folosiți ca ieșiri PWM), 6 intrări analog, un
microprocesor de 16MHz, o conexiune USB, mufă de alimentare, și un buton de reset.
Poate fi alimentat direct de la calculator, de la portul USB, prin intermediul unei baterii
de 9V sau a unui alimentator de 9V.

7.2 ÎNCUIETOAREA

Figura 13 Încuietoarea

 Lucreaza cu o tensiune de 12V, aceasta se deschide atunci cand tensiunea


specificată este aplicată la pinii de intrare.
 Un alimentator de 12V este absolut necesar pentru controlul încuietorii.
 Încuietoarea trebuie comandată (inchis/deschis) din Arduino cu o tensiune de 0V
(inchis) si 5V(deschis)
 Pentru deschiderea si închiderea circuitului unde este prezentă o tensiune de 12V
folosind o tensiune de comandă de 0V – 5V trebuie neapărat folosit un tranzistor.
 Pin-ul de comandă de pe placa Arduino este pinul numarul 2. Atunci când
tensiunea de ieșire de pe pinul 2 este 0V, încuietoarea este deschisă, iar când
tensiunea este 5V, încuietoarea este închisă.

16
Sistem inteligent de iluminare cu încuietoare

7.3 BANDA LED RGB

Figura 14 Banda de led-uri RGB

Banda LED aduce o economie considerabilă de energie electrică și de bani in orice locuință.
Datorita designului modern aceste becuri permit o iluminare de 360 grade. Aceste becuri cu LED
dau o lumina de calitate ridicată și au o durata de functionare de pana la 50 000 de ore; inlocuind
becurile clasice cu acestea moderne, economia energiei electricce creste cu circa 90%, ceea ce va
aduce si o economie considerabila de bani. Banda de led se conectează la cele trei module
IRF520.

Caracteristici tehnice:

 Tip led: SMD5050


 Voltaj operare: 12V
 Lungime: 15cm
 Interconectare led-uri: anod comun

7.4 MODUL IRF520 MOSFET

Figura 15 Modul IRF520 Mosfet

Acesta este un modul trazistor de putere, are o Conectare ușoară la arduino sau la alt
microcontroler de 3-5v. Ofera un impuls de curent printr-un pin PWM pentru a controla o pompă
sau un LED sau alt dispozitiv DC la o frecvență de până la 24V și ~ 5A. Acest modul este foarte
ușor de folosit, cea mai simplă modalitate de a explica modul în care funcționează această placă
mică este conectarea la dispozitivul pe care doriți să-l controlați pe Vin și GND.
Acest mic modul are utilitatea de a controla culorile benzii de led individual, deoarece
banda lucrează cu 12V iar tensiunea de operare pentru microcontrollerul folosit este de 5V.

17
Sistem inteligent de iluminare cu încuietoare

Caracteristici tehnice:

 Tensiune: 3.3V, 5V
 Tensiunea de ieșire: 0-24V
 Curentul de ieșire: <5A (necesită un radiator peste 1A)
 Platformă: Arduino, MCU, ARM, Raspberry PI.
 Acționarea până la 24V permite încărcarea, cum ar fi luminile cu LED-uri, motoarele de
curent continuu, pompele miniaturale, supapele solenoidale.
 Greutate: 10g
 Dimensiune: 33.5 x 25.5mm
 Tensiune de comutare la intrare: Potrivit pentru microcontrolere de 5V.

Nume pin modul IRF520 Nume pin placă Arduino


SIG – RED ~3
SIG – GREEN ~5
SIG – BLUE ~6
VIN VIN (12V)
GND GND
Tabel 2 Denumirea pinilor conectați între modululele IRF520 si Arduino

7.5 MODUL RFID RC522

Figura 16 Modul RFID RC522 Figura 17 Cartele de acces pentru RFID 13.56Mhz

Modulul RFID cu chip RC522 este un cititor de carduri, ușor de utilizat, cu costuri
reduse și se aplică dezvoltării de echipamente și de aplicații avansate. Acest modul poate fi
încărcat direct în diferite forme de cititoare. Utilizează o tensiune de 3.3V, iar comunicarea se
poate face prin intermediul interfeței SPI.

Caracteristici tehnice:

18
Sistem inteligent de iluminare cu încuietoare

 Curent: 13-26mA / DC 3.3V


 Curent inactiv: 10-13mA / DC 3.3V
 Consum în stand-by: <80uA
 Viteza maximă: <30mA
 Frecvență de operare: 13.56MHz
 Tipuri de carduri acceptate: S50, S70, UltraLight, Pro, Desfire
 Temperatura mediului de operare: -20-80 grade Celsius
 Mediu Temperatura de depozitare: -40-85 grade Celsius
 Umiditate relativă: 5% -95%
 Rata de transfer a datelor: Max. 10Mbit / s
 Caracteristici fizice ale produsului: Dimensiuni: 40mm × 60mm

Nume pin modul RFID Nume pin placă Arduino


SDA ~10
SCK 13
MOSI ~11
MISO 12
IRQ neconectat
GND GND
RST ~9
3.3V 3.3V
Tabel 3 Denumirea pinilor conectați între modulul RFID si Arduino

7.6 MODUL BLUETOOTH HC-05

Figura 18 Modul Bluetooth HC-05 – poză din față Figura 19 Modul Bluetooth HC-05 – poză din
spate

HC-05 este un modul care poate adăuga funcții Wireless în două direcții (full-duplex)
pentru o varietate de proiecte. Acest dispozitiv se poate folosi pentru a comunica intre 2
microcontrolere ca de exemplu Arduino, sau cu orice dispozitiv ce folosește Bluetooth precum
un telefon sau laptop. Acest modul comunică prin intermediul interfeței USART la o rată baud de
9600. De asemenea se pot configura valorile predefinite, folosind comenzi specifice.

Caracteristici tehnice:

 Tensiune alimentare: 3.6V - 6V

19
Sistem inteligent de iluminare cu încuietoare

 Consum: 30mA
 Rază acoperire: max. 100m
 Folosește protocolul IEEE 802.15.1 standardizat
 Poate fi opera atât ca Master cât și Slave
 Baud Rate: 9600, 19200, 38400, 57600, 115200, 230400, 460800

Nume pin modul HC-05 Nume pin placă Arduino


RXD 1 – TX
TXD 0 – RX
GND GND
VCC 5V
Tabel 4 Denumirea pinilor conectați între modulul Bluetooth HC-05 si Arduino

7.7 BUZZER ACTIV

Figura 20 Modul Buzzer Activ

Acest modul este constituit dintr-un buzzer piezoelectric activ, ce generează un sunet
atunci când se depășește o valoare predefinită. Produce un sunet de aproximativ 2,5KHz.
Buzzer-ul este conectat pe pinul său de „+” la pin-ul 8 de pe Arduino. Pinul „-” este conectat la
masa (GND).
Caracteristici tehnice:

 Tensiune de alimentare: 3.3V - 5.5V


 Consum: 30mA / 5V
 Frecvența sunetului: 2500Hz ± 300Hz
 Intensitate sonoră (minim): 85Db @ 10cm
 Temperatură de lucru: -20°C ~ 70°C
 Dimensiuni: 18.5mm x 15mm

20
Sistem inteligent de iluminare cu încuietoare

7.8 MODUL LED RGB

Figura 21 Modul LED RGB

Acest modul LED ofertă posibilitatea de a crea o variată gamă de culori folosindu-vă de
abilitatea sa de a trimite semnal separat pe fiecare dintre culorile roșu (R), verde (G), albastru
(B). Conexiunile RGB prezintă limitare de curent pentru a preveni arderea.
Caracteristici tehnice:

 Tensiune 5V
 Catod comun

Nume pin modul LED RGB


Nume pin placă Arduino

Neconectat
GND
Tabel 5 Denumirea pinilor conectați între modulul LED RGB si Arduino

7.9 ALIMENTATOR 12V 2A

Figura 22 Alimentator 12V 2A

Acest alimentator este compatibil cu placa Arduino Uno R3 și absolut necesar pentru alimentarea
încuietorii. Tensiunea de ieșire generată de alimentator este furnizata pe pin-ul VIN de pe controller.
Caracteristici tehnice:

21
Sistem inteligent de iluminare cu încuietoare

 Tensiune la ieșire: 12V DC


 Curent la ieșire: maxim 2A
 Tensiune intrare: 100- 240V AC
 Protecție la scurtcircuit
 Protecție la supratensiune
 Protecție la suprasarcină
 Mufă alimentare standard 5.5 x 2.1mm

7.10 BUTON

Figura 23 Buton

Acesta este un buton simplu, folosit pentru acționarea inchiderii încuietorii. Acest dispozitiv
este conectat pe pin-ul 7 de pe placa Arduino si deschide un circuit de 5V atunci c ând este
apăsat, declanșând un 1 logic in cod.

8 PERFORMANȚE
Sistemul funcționează foarte bine, însă ca orice alt proiect, se mai pot aduce îmbunătățiri
ulterioare, atât aplicației de pe telefon, cât și montajului. Planurile pe viitor pentru dezvoltarea și
îmbunătățirea acestui proiect sunt prezentate in următoarea listă, in ordinea prioritaților:
1. Modificare aplicație pentru a adauga modificarea intensității luminoase.
2. Proiectare si creare PCB pentru minimizarea dimensiunii proiectului.
3. Proiectarea unei carcase din plastic printată la o imprimantă 3D.
4. Adăugarea posibilitații de a deschide încuietoarea din telefon.
In următoarele poze, sunt prezentate câteva din rezultatele testării. Totodată, puteți
urmări videoclipul “DEMO_PROIECT_AOC.mp4” pentru un demo mai detaliat.

22
Sistem inteligent de iluminare cu încuietoare

Figura 24,25 Iluminare albă

Figura 26,27 Iluminare galbenă

23
Sistem inteligent de iluminare cu încuietoare

Figura 28,29 Iluminare mov

Figura 30,31 Iluminare roșie

24
Sistem inteligent de iluminare cu încuietoare

9 CONCLUZII
Din punctul meu de vedere, acest proiect este unul reușit și dus la bun sfârșit. Este o
aplicație foarte bună pentru a aduce un plus de culoare intr-o locuință. Costul dezvoltării acestui
proiect a fost prezentat mai detaliat intr-un capitol anterior (260.26 Lei).
Dificultățile pe care le-am întâmpinat in dezvoltarea acestui proiect a fost conectarea
modulului de RFID și citirea codului unic de pe cartele, insă am trecut cu brio peste această
provocare. Un alt impas de care m-am lovit a fost comandarea benzii de led-uri și a încuietorii
prin intermediul semnalelor de 5V. Știind ca cele două componente lucreaza cu 12V, a trebuit o
sursă de alimentare auxiliară si folosirea tranzistoarelor MOSFET N-CHANNEL.
În comparație cu alte sisteme prezentate in capitolele anterioare, acesta este la stadiul de
concept, însă se poate pune in practica cu un efort suplimentar. Trebuie proiect PCB-ul si carcasa
de plastic pentru a putea fi pus in funcțiune intr-un dulap sau noptieră.

25
Sistem inteligent de iluminare cu încuietoare

10 BIBLIOGRAFIE
[1] An Introduction To Arduino Uno Pinout
https://www.circuito.io/blog/arduino-uno-pinout/
[2] Arduino Uno R3 ATMEGA328P
https://cleste.ro/arduino-uno-r3-atmega328p.html?
gclid=Cj0KCQiAuJb_BRDJARIsAKkycUm1yTonGYzQSAPtB8zaj69IX617y1svT9JMqqSLlw5DTg
E1py2t8lEaAvW8EALw_wcB
[3] Modul RFID cu card si tag
https://cleste.ro/modul-rfid-cu-card-si-tag.html?
gclid=Cj0KCQiAuJb_BRDJARIsAKkycUkfdQ9ikTUlK8q76Pxk2lCsVzeCqrNaxttiBkzAdro52z6TY
pGTlXMaAo2zEALw_wcB
[4] Modul Bluetooth HC-05
https://cleste.ro/modul-bluetooth-hc-05.html
[5] Modul buzzer activ
https://cleste.ro/modul-buzzer-activ.html?
gclid=Cj0KCQiAuJb_BRDJARIsAKkycUkqxZC5OQ4s_0uhyBahDRVyAq1gbl9g8gKBJ6BhS5PrCr
tJFK4iOmsaAlBQEALw_wcB
[6] Modul LED rgb
https://cleste.ro/modul-led-rgb.html?
gclid=Cj0KCQiAuJb_BRDJARIsAKkycUluap5feyu1IVJOt_2banzC_Wl3aFqLm8_U10QxDFpAQG
sYu5-zAH8aAtouEALw_wcB
[7] Alimentator 12V 2A
https://cleste.ro/alimentator-12v-2a.html
[8] Arduino Uno
https://en.wikipedia.org/wiki/Arduino_Uno
[9] Intro to Arduino: UART Serial Communication
https://ns-electric.com/knowledge-base/intro-to-arduino-uart-serial-communication/
[10] Interfața serială SPI
https://ro.wikipedia.org/wiki/Interfa%C8%9Ba_serial%C4%83_SPI
[11] Arduino IDE
https://arduino.github.io/arduino-cli/latest/sketch-build-process/
https://www.arduino.cc/en/guide/environment
[12] AVR-GCC
https://ccrma.stanford.edu/~juanig/articles/wiriavrlib/AVR_GCC.html

[13] MFRC522.h
https://github.com/miguelbalboa/rfid

26
Sistem inteligent de iluminare cu încuietoare

[14] Încuietoare inteligentă Yale


https://www.emag.ro/incuietoarea-inteligenta-yale-linus-ios-android-bluetooth-4-2-criptare-ble-aes-
tls-argintiu-05-101200-si/pd/DD0KJ2MBM/?X-Search-Id=644b095efda3668d966b&X-Product-
Id=7148555&X-Search-Page=1&X-Search-Position=0&X-Section=search&X-MB=0&X-Search-
Action=view
[15] Bandă led rgbw rece ip20
https://www.led-box.ro/banda-led-rgbw-alb-rece-ip20
[16] Modul tranzistor putere IRF520
https://cleste.ro/modul-tranzistor-de-putere-irf520.html?
gclid=CjwKCAiAouD_BRBIEiwALhJH6BmXxZYPJ8svzJLTl3UX-
9YQPQEKW2BB95SBvEZ6tWttRPYKWflZyBoC5vcQAvD_BwE
[17] Bandă cu led-uri wireless
https://www.emag.ro/banda-cu-leduri-wireless-light-strip-led-rgb-sonoff-l1-5m-6920075770063/pd/
DC3PTWBBM/?cmpid=86968&gclid=CjwKCAiAouD_BRBIEiwALhJH6NCBx5GSuY6AT6X9N-
I4SihKxEw9LRsSlNdwis_QkCgfRFIKof4P6hoC5M8QAvD_BwE

11 ANEXĂ – COD SURSĂ

11.1 ARDUINO
#include <SPI.h>
#include <MFRC522.h>

27
Sistem inteligent de iluminare cu încuietoare

#include <Wire.h>
String serialResponse = "";
bool isLocked = true;
int red_val = 0;
int green_val = 0;
int blue_val = 0;

#define red_ledbar 3
#define green_ledbar 5
#define blue_ledbar 6
#define button 7
#define led_green 2
#define led_red 4
#define SS_PIN 10
#define RST_PIN 9
#define BUZZER 8

MFRC522 mfrc522(SS_PIN, RST_PIN); // Create MFRC522 instance.

void Unlock() {
digitalWrite(led_green, HIGH);
digitalWrite(led_red, LOW);
digitalWrite(BUZZER, HIGH);
delay(300);
digitalWrite(BUZZER, LOW);
}

void Lock() {
WriteRGB(0, 0, 0);
int delay_time = 100;
digitalWrite(led_green, LOW);

for (int i = 0; i <= 3; i++) {


digitalWrite(BUZZER, HIGH);
digitalWrite(led_red, HIGH);
delay(delay_time);
digitalWrite(BUZZER, LOW);
digitalWrite(led_red, LOW);
delay(delay_time);
}
digitalWrite(led_red, HIGH);

void ToggleLockWithRFID() {
if ( ! mfrc522.PICC_IsNewCardPresent())
{
return;
}
// Select one of the cards
if ( ! mfrc522.PICC_ReadCardSerial())
{
return;
}
String content = "";
byte letter;
for (byte i = 0; i < mfrc522.uid.size; i++)
{
content.concat(String(mfrc522.uid.uidByte[i] < 0x10 ? " 0" : " "));
content.concat(String(mfrc522.uid.uidByte[i], HEX));
}
content.toUpperCase();
if (content.substring(1) == "03 EC 9A 03" || content.substring(1) == "89 6F 04 C2" ||
content.substring(1) == "B3 56 2B 83")
{
if (isLocked) {
Unlock();
isLocked = false;
}
}
else
{
if (!isLocked) {
isLocked = true;
Lock();
}

28
Sistem inteligent de iluminare cu încuietoare

}
}

void WriteRGB(int red, int green, int blue){


analogWrite(red_ledbar, red);
analogWrite(green_ledbar, green);
analogWrite(blue_ledbar, blue);
}

void setup()
{
Serial.begin(9600);
pinMode(led_green, OUTPUT); // led pin + lock pin
pinMode(led_red, OUTPUT);
pinMode(BUZZER, OUTPUT);
pinMode(red_ledbar, OUTPUT);
pinMode(green_ledbar, OUTPUT);
pinMode(blue_ledbar, OUTPUT);
digitalWrite(led_green, LOW);
digitalWrite(led_red, HIGH);

SPI.begin(); // Initiate SPI bus


mfrc522.PCD_Init(); // Initiate MFRC522
}

void loop()
{

if (Serial.available() > 0) {
serialResponse = Serial.readString();

// Convert from String Object to String.


char buf[30];
serialResponse.toCharArray(buf, sizeof(buf));
char *p = buf;
char *str;
//red int
str = strtok_r(p, "/", &p);
red_val = atoi(str);
//green int
str = strtok_r(p, "/", &p);
green_val = atoi(str);
//blue int
str = strtok_r(p, "/", &p);
blue_val = atoi(str);
}

if(!isLocked){
WriteRGB(red_val, green_val, blue_val);
}

if (digitalRead(button) == 1 && !isLocked) {


isLocked = true;
Lock();
}
else {
ToggleLockWithRFID();
}
}

29
Sistem inteligent de iluminare cu încuietoare

11.2 APPINVENTOR

Figura 32 Codul sursă pentru aplicația mobilă

30

S-ar putea să vă placă și