REZUMAT
În lucrare se prezintă o staţie meteo care măsoară într-o zonă temperatura şi umiditatea cu un senzor
digital inteligent, care se conectează la un sistem (tip DHT11) cu Arduino Uno. La acelaşi sistem se conectează
şi ceasul de timp real (tip DS3231) care afişează data şi timpul. Pentru afişarea informaţiilor se utilizează un
shield cu display LCD 2x16 caractere care se conectează direct pe placa cu Arduino Uno. Umiditatea şi
temperatura sunt măsurate şi afişate în fiecare secundă (delay 1000).
1. INTRODUCERE
Microcontrolerele constituie în această perioadă un domeniu deosebit de dinamic.
Acestea se impun din ce în ce mai mult în aplicaţiile industriale. Un microcontroler poate fi
considerat a fi un microcalculator care pe lângă procesor şi memorie este completat cu
circuite şi funcţii speciale care îi permit să interacţioneze uşor cu mediul exterior.
Microcontrolerele sunt mici „creiere” electronice care, dacă au primit „educaţia
necesară” (prin firmware), pot înlocui cu succes foarte multe tipuri de circuite electrice şi
electronice. În acest mod, microcontrolerele ne permit să obţinem aparate mai mici, mai
ieftine şi mai performante. [1]
Arduino este un instrument prin care poţi realiza sisteme informatice capabile să
perceapă, şi să controleze lumea înconjurătoare. Acest instrument este open-source şi este
compus dintr-un mediu de dezvoltare şi o placă de dezvoltare cu microcontroler AVR.
Arduino poate fi folosit pentru dezvoltarea de obiecte interactive. Informaţia este
preluată de la o gamă variată de senzori şi comutatoare, se procesează în interiorul
microcontrolerului AVR, şi este transmisă către o gamă la fel de variată de lumini, motoare,
actuatoare, etc.
2. MICROCONTROLERE AVR
Microcontrolerul AVR are la bază un procesor RISC cu o arhitectură Harvard, adică
unitatea centrală de procesare are memorie de program şi memorie de date separate.
Aceste microcontrolere sunt destinate aplicațiilor simple cum ar fi: controlul
motoarelor, controlul fluxului de informație pe portul USB, controlul accesului de la distanţă
(Remote Access Control), ş.a. Ele folosesc folosesc o arhitectură RISC care permite execuția
celor mai multe instrucțiuni într-un singur ciclu de tact, ceea ce duce la îmbunătățirea
performanței de 10 ori față de procesoarele convenționale (de exemplu, Intel 8051) care
operează la aceiași frecvență. [2]
Ecranul LCD pe care îl vom utiliza este dedicat afișării textului. Ca și capabilități, el
poate afișa un text format din 32 de caractere, câte 16 pe fiecare dintre cele două rânduri
disponibile. Fiecare caracter este de fapt o matrice de 5x8 puncte. Deasupra ecranului este o
rezistentă semireglabilă ce are rolul setării contrastului pentru ecranul LCD. Sub ecran se
găsesc 6 butoane, primul pentru selecție, următoarele 4 pentru a indică o direcție
(sus/jos/stânga/dreaptă) conectate la intrarea analogică A0 și ultimul pentru a reseta Arduino-
ul (este acelaşi buton de reset de pe placa Arduino).
Ecranul se poate monta direct şi uşor pe placa Arduino, dupa cum se vede in fig. 7.
DS3231 este un ceas de timp real, cu o precizie foarte mare, care poate afișa ora,
minutele și secundele, precum și informații de zi, lună și an. De asemenea, are o compensație
automată pentru ani și pentru luni cu mai puțin de 31 de zile. Modulul poate funcționa fie la
3.3, fie la 5 V, ceea ce îl face potrivit pentru multe platforme de dezvoltare sau
microcontrolere. Intrarea bateriei este de 3 V, iar o baterie tipică CR2032, 3V, poate alimenta
modulul și poate menține informațiile mai mult de un an. [8]
Dispozitivul încorporează o intrare de baterie, în cazul în care deconectați sursa de
alimentare principală îşi menține datele exacte, secunde, minute, ore, ziua, data, luna și
informații despre an. Dacă luna are mai puțin de 31 de zile, data finală va fi reglată automat,
inclusiv corecțiile pentru anul bisect. Ceasul funcționează în oricare dintre cele doua moduri:
24 de ore sau AM / PM al formatului de 12 ore. Are dimensiunea de 38 mm (lungime), 22
mm (lăţime) şi 14 mm (înălțime), tensiunea de operare este 3,3-5 0,5 V, cipul ceasului de
înaltă precizie este DS3231, senzorul de temperatură cip vine cu o precizie de ± 3 %, cipuri de
memorie: AT24C32 (capacitate de stocare) 32KB. Interfață IIC, viteza maximă de transmisie
de 400 KHz (tensiune de 5 V de lucru). Poate fi folosit în cascadă cu un alt dispozitiv IIC. [9]
Deschide un proiect
După verificarea programului acesta a fost încărcat pe Arduino Uno și rulat (fig.10).
Figura 11: Rularea programului
După cum se poate observa în figura 9, în partea din stânga sus este afișată umiditatea,
în stânga jos este afișată temperatura în grade Celsius, în dreapta sus se poate vedea data și în
dreapta jos este afișată ora.
4. CONCLUZII
O definiţie, cu un sens foarte larg de cuprindere, ar fi aceea că un microcontroler este
un microcircuit care incorporează o unitate centrală (CPU) şi o memorie împreună cu resurse
care-i permit interacţiunea cu mediul exterior.
Printre multele domenii unde utilizarea lor este practic un standard industrial se pot
menţiona: în industria de automobile (controlul aprinderii/motorului, climatizare, diagnoză,
sisteme de alarmă, etc.), în aşa zisa electronică de consum (sisteme audio, televizoare, camere
video şi videocasetofoane, telefonie mobilă, GPS-uri, jocuri electronice, etc.), în aparatura
electrocasnică (maşini de spălat, frigidere, cuptoare cu microunde, aspiratoare), în controlul
mediului şi climatizare (sere, locuinţe, hale industriale), în industria aerospaţială, în mijloacele
moderne de măsurare - instrumentaţie (aparate de măsură, senzori şi traductoare inteligente),
la realizarea de periferice pentru calculatoare, în medicină.
Prețul unui microcontroler este redus, ceea ce aduce cu sine şi micşorarea preţului
sistemelor de control.
Sistemele cu microcontroler sunt din ce în ce mai mult folosite în procesele de control
automat, atât datorită costurilor mici pe care le oferă această tehnologie în momentul de față,
cât mai ales înaltei flexibilități aplicative.
5. BIBLIOGRAFIE
[1] Viorel-Constantin Petre, Introducere în microcontrolere și automate programabile, Editura Matrixrom
București
[2] http://www.unitbv.ro/faculties/biblio/interfete_specializate/curs.pdf
[3] https://biblioteca.regielive.ro/proiecte/electronica/programator-universal-pentru-microcontrolere-pic-
93762.html
[4] https://electronicgadgets.ro/shield-uri-arduino-raspberry/70-modul-rtc-ceas-ds3231.html
[5 ]https://www.optimusdigital.ro/ro/senzori-senzori-de-temperatura/99-senzor-de-temperatura-si-si-umiditate-
dht11.html
[6] https://www.optimusdigital.ro/ro/componente-electronice-microcontrollere/641-microcontroller-atmega328p-
pu-.html
[7]http://incearca.softwareliber.ro/2008/06/30/arduino-platforma-gratuita-pentru-pasiona%C8%9Bii-de-
electronica/
[8] https://microcontrolere.wordpress.com/arduino/arduino-software/
[9] http://ro.sz-kuongshun.com/uno/uno-board-shield/ds3231-at24c32-iic-module-precision-rtc-module.html