This shows you the differences between two versions of the page.
pm:prj2021:dbrigalda:controlul-temperaturii [2021/05/26 23:11] ion_radu.patrascoiu [Jurnal] |
pm:prj2021:dbrigalda:controlul-temperaturii [2021/06/04 13:33] (current) ion_radu.patrascoiu [Rezultate Obţinute] |
||
---|---|---|---|
Line 18: | Line 18: | ||
====== Hardware Design ====== | ====== Hardware Design ====== | ||
* **Lista de Componente**: | * **Lista de Componente**: | ||
- | - Placuta Arduino UNO, pe care am conectat toate componentele menționate mai sus, folosind atât pinii digitali, cât și pe cei analogici, si pinii de alimentare 5V si masa GND.; | + | - Placuta Arduino UNO, pe care am conectat toate componentele menționate mai sus, folosind atât pinii digitali, cât și pe cei analogici, si pinii de alimentare 5V si masa GND; |
- Breadboard; | - Breadboard; | ||
- Fire conductoare; | - Fire conductoare; | ||
- | - Senzor de temperatură și umiditate DHT11, care are 4 pini dintre care doar 3 sunt folosiți, VCC prin care se face alimentarea la 3V – 5V, GND și DATA pe care l-am conectat pe plăcuța Arduino la un pin digital, datele preluate de către acesta fiind trimise către plăcuță prin intermediul acelui pin. De asemenea, temperatura citita va fi afișata pe afișajul LCD; | + | - Senzor de temperatură și umiditate DHT11, care are 4 pini dintre care doar 3 sunt folosiți, VCC prin care se face alimentarea la 3V – 5V, GND și DATA pe care l-am conectat pe plăcuța Arduino la un pin digital, datele preluate de către acesta fiind trimise către plăcuță prin intermediul acelui pin. De asemenea, temperatura citita va fi afișata atât pe afișajul LCD cat si trimisa prin comunicare seriala la o instanță Microsoft Excel unde va fi afișată într-un grafic in timp real; |
- Ventilator DC de 5V si 0.19A, conectat la un tranzistor pentru a putea fi comandat automat; | - Ventilator DC de 5V si 0.19A, conectat la un tranzistor pentru a putea fi comandat automat; | ||
- | - Doi tranzistori TIP122, fiecare având conectata baza la un pin digital al plăcuței Arduino, prin care se va trimite comanda de ON/OFF, colectorul fiind conectat la partea de GND a elementelor de încălzire/răcire, iar emitorul la GND.; | + | - Doi tranzistori TIP122, fiecare având conectata baza la un pin digital al plăcuței Arduino, prin care se va trimite comanda de ON/OFF, colectorul fiind conectat la partea de GND a elementelor de încălzire/răcire, iar emitorul la GND; |
- | - Afișaj LCD si modul I2C, pentru o implementare mai robusta a proiectului, fiind necesari doar 4 pini, dintre care unul conectat la alimentare, unul la GND si doi dintre ei la pini analog ai plăcuței.; | + | - Afișaj LCD si modul I2C, pentru o implementare mai robusta a proiectului, fiind necesari doar 4 pini, dintre care unul conectat la alimentare, unul la GND si doi dintre ei la pini analog ai plăcuței; |
- | - Doua butoane pentru a permite utilizatorului introducerea temperaturii de referința.; | + | - Doua butoane pentru a permite utilizatorului introducerea temperaturii de referința; |
- | - Trei rezistente de 68 ohmi, cu o putere maxima suportata de 3W pe fiecare. Legate in paralel si conectate la o tensiune de 5V, acestea au o putere de încălzire de 1,1W.; | + | - Trei rezistente de 68 ohmi, cu o putere maxima suportata de 3W pe fiecare. Legate in paralel si conectate la o tensiune de 5V, acestea au o putere de încălzire de 1,1W; |
- Rezistente de diferite valori folosite pentru tranzistoare, 15K si 17K, si de 10K pentru butoane. | - Rezistente de diferite valori folosite pentru tranzistoare, 15K si 17K, si de 10K pentru butoane. | ||
Line 32: | Line 32: | ||
{{:pm:prj2021:dbrigalda:schema_electrica_radupatrascoiu.png?600|}} | {{:pm:prj2021:dbrigalda:schema_electrica_radupatrascoiu.png?600|}} | ||
+ | |||
+ | Schema electrica Tinkercad: | ||
+ | |||
+ | {{:pm:prj2021:dbrigalda:schema_tinkercad_radupatrascoiu.png?600|}} | ||
====== Software Design ====== | ====== Software Design ====== | ||
Pentru a putea folosi componentele DHT11 si afisajul LCD cu modul I2C, in mediul de dezvoltare Arduino IDE a fost nevoie si de importarea bibliotecilor SimpleDHT.h, LiquidCrystal_I2C.h, Wire.h. Pentru setarea temperaturii referinta de catre utilizator, pinilor la care au fost conectate butoanele, au fost associate sisteme de intrerupere. Arduino UNO R3 permite sisteme de intrerupere hardware doar pentru pinii digitali 2 si 3. | Pentru a putea folosi componentele DHT11 si afisajul LCD cu modul I2C, in mediul de dezvoltare Arduino IDE a fost nevoie si de importarea bibliotecilor SimpleDHT.h, LiquidCrystal_I2C.h, Wire.h. Pentru setarea temperaturii referinta de catre utilizator, pinilor la care au fost conectate butoanele, au fost associate sisteme de intrerupere. Arduino UNO R3 permite sisteme de intrerupere hardware doar pentru pinii digitali 2 si 3. | ||
Line 37: | Line 41: | ||
{{:pm:prj2021:dbrigalda:screenshot_1.png?600|}} | {{:pm:prj2021:dbrigalda:screenshot_1.png?600|}} | ||
- | Variabilele stareA si stareU reprezinta starea in care sistemul se afla la momentul actual, respective starea urmatoare ce este calculata pe baza datelor primate de la sensor. Reglarea in bucla se face prin intermediul acestor doua variabile ale caror valori reprezinta 0 – Ambele OFF, 1 – Incalzirea ON; Racirea OFF, 2 – Racirea ON; Incalzirea OFF. | + | Variabilele stareA si stareU reprezinta starea in care sistemul se afla la momentul actual, respective starea urmatoare ce este calculata pe baza datelor primate de la sensor. Reglarea se face prin intermediul acestor doua variabile ale caror valori reprezinta 0 – Ambele OFF, 1 – Incalzirea ON; Racirea OFF, 2 – Racirea ON; Incalzirea OFF. |
{{:pm:prj2021:dbrigalda:screenshot_2.png?800|}} | {{:pm:prj2021:dbrigalda:screenshot_2.png?800|}} | ||
- | Din cauza limitarilor impuse de senzorul DHT11, care citeste doar valori intregi, pornirea sistemelor de incalzire/racire se face doar in momentul in care temperatura indicata de senzor este cu 2*C mai mica/mare decat cea dorita de client. Totodata, reglarea in bucla nu poate fi facuta cu o eroare stationara 0 deoarece sistemul ar fi foarte instabil iar la fiecare fluctuatie a senzorului. De aceea, sistemul este fortat sa mearga pana cand senzorul afiseaza o temperature mai mica cu 1*C fata de cea de referinta, din practica observand ca prima trecere a senzorului de la temperature T la T-1 este foarte sensibila, acesta indicand din nou T dupa mai putin de o secunda. | + | Din cauza limitarilor impuse de senzorul DHT11, care citeste doar valori intregi, pornirea sistemelor de incalzire/racire se face doar in momentul in care temperatura indicata de senzor este cu 2*C mai mica/mare decat cea dorita de client. De aceea, sistemul este fortat sa mearga pana cand senzorul afiseaza o temperature mai mica cu 1*C fata de cea de referinta, din practica observand ca prima trecere a senzorului de la temperature T la T-1 este foarte sensibila, acesta indicand din nou T dupa mai putin de o secunda. |
{{:pm:prj2021:dbrigalda:screenshot_3.png?600|}} | {{:pm:prj2021:dbrigalda:screenshot_3.png?600|}} | ||
Line 50: | Line 54: | ||
====== Rezultate Obţinute ====== | ====== Rezultate Obţinute ====== | ||
- | TODO | + | Proiectul si-a indeplinit scopul, acesta reusind sa incalzeasca/raceasca o incinta de dimensiuni mici(o cutie). |
+ | Mai jos este prezentata o imagine cu temperaturile citite de la senzorul de temperatura si fluctuatia acestora in raport cu timpul, atunci cand temperatura reala era de 26°C si cea dorita a fost setata la 28°C. | ||
+ | |||
+ | {{:pm:prj2021:dbrigalda:rezultate_radupatrascoiu.png?800|}} | ||
+ | |||
+ | |||
+ | Prezentare: | ||
+ | |||
+ | [[https://www.youtube.com/watch?v=kcfwS-v7vjs&ab_channel=RaduPatrascoiu|{{:pm:prj2021:dbrigalda:yt_radupatrascoiu.png?600|}}]] | ||
====== Concluzii ====== | ====== Concluzii ====== | ||
- | TODO | + | |
+ | Controlul temperaturii este un proiect bun si interesant pentru a invata PM. Totodata este si foarte edificator, deoarece iti arata toatalitatea lucrurile care pot sa mearga rau intr-un task simplu, lucruri de care nu s-a tinut cont. | ||
+ | |||
+ | |||
+ | **Mentiuni:** | ||
+ | Senzorul de temperatura nu citeste decat valori intregi, fiind destul de imprecis. | ||
+ | Firele sunt de proasta calitate si nu fac bine contact. | ||
+ | |||
+ | Pentru efectuarea prototipului s-au investit: 100 lei + ceva ore de munca ore de munca :) | ||
====== Download ====== | ====== Download ====== | ||
- | TODO | + | {{:pm:prj2021:dbrigalda:control_temperaturii_patrascoiu_ionradu_336cc.zip|}} |
====== Jurnal ====== | ====== Jurnal ====== | ||
Line 64: | Line 85: | ||
* __**20.05.2021**__: Codul finalizat si testat cu succes. | * __**20.05.2021**__: Codul finalizat si testat cu succes. | ||
* __**23.05.2021**__: Componentele hardware asezate in pozitia lor finala. | * __**23.05.2021**__: Componentele hardware asezate in pozitia lor finala. | ||
- | * __**28.05.2021**__: Finalizare documentatie ocw + prezentare youtube. | + | * __**29.05.2021**__: Finalizare documentatie ocw + prezentare youtube. |
====== Bibliografie și Resurse ====== | ====== Bibliografie și Resurse ====== |