Differences

This shows you the differences between two versions of the page.

Link to this comparison view

pm:prj2022:avaduva:temperature [2022/05/14 11:55]
vlad.neculai
pm:prj2022:avaduva:temperature [2022/05/27 09:16] (current)
vlad.neculai
Line 7: Line 7:
 ===== Descriere generală ===== ===== Descriere generală =====
  
-Dispozitivul este unul destul de simplist din punct de vedere al componentelor,​ dar si al cunostiintelor in programare. Acesta, format dintr-un senzor de temperatura si umiditate model DHT11, citeste cu usurinta informatiile esentiale, afisandu-le pe un display, conectat la placuta Arduino. ​Ledurile ​montate pe breadboard au ca scop afisarea intr-un mod diferit temperatura existenta in camera. ​+Dispozitivul este unul destul de simplist din punct de vedere al componentelor,​ dar si al cunostiintelor in programare. Acesta, format dintr-un senzor de temperatura si umiditate model DHT11, citeste cu usurinta informatiile esentiale, afisandu-le pe un display, conectat la placuta Arduino. ​LED-urile ​montate pe breadboard au ca scop afisarea intr-un mod diferit temperatura existenta in camera. ​
  
 ==== Schema bloc ==== ==== Schema bloc ====
  
-{{ :​pm:​prj2022:​avaduva:​schema_bloc_neculaivlad1220fa_.jpg?​nolink&​800 |}}+{{ :​pm:​prj2022:​avaduva:​schema_bloc_neculaivlad1220fa_.jpg?​nolink&​600 |}}
  
 ===== Hardware Design ===== ===== Hardware Design =====
  
-Componente necesare proiectului+Pentru crearea acestui dispozitiv s-au folosit urmatoarele componente:
   * Arduino Uno R3   * Arduino Uno R3
   * Senzor temperatura si umiditate DHT11   * Senzor temperatura si umiditate DHT11
   * Breadboard   * Breadboard
-  * 3 x Leduri ​colorate (rosu, verde, galben)+  * 3 x LED-uri ​colorate (rosu, verde, galben)
   * 3 x Rezistori de 1 Ohm   * 3 x Rezistori de 1 Ohm
   * Fire de conectare   * Fire de conectare
Line 25: Line 25:
  
  
-==Schema electrica==  +==== Schema electrica ==== 
-{{ :​pm:​prj2022:​avaduva:​arduino.png?​nolink&​800 |}}+ 
 +{{ :​pm:​prj2022:​avaduva:​arduino.png?​nolink&​600 |}}
  
 ===== Software Design ===== ===== Software Design =====
  
 +Pentru realizarea acestui proiect am folosit ca si mediu de dezvoltare programul Arduino IDE, in care am selectat din meniul Tools placa de baza utilizata. De asemenea, pentru realizarea conexiunii intre placa si display-ul I2C, am importat de pe internet libraria "​LiquidCrystal_I2C",​ iar pentru utilizarea corecta a senzorului de temperatura si umiditate DHT11 am inclus librariile "​DHT"​ si "​Wire"​.
  
-<note tip> +{{ :​pm:​prj2022:​avaduva:​librarii_dht_neculaivlad.png?​nolink&​300 |}} 
-Descrierea codului aplicaţiei ​(firmware): + 
-  * mediu de dezvoltare ​(if any) (e.gAVR StudioCodeVisionAVR+Din punct de vedere al complexitatii,​ codul este unul relativ simplu, fiind alcatuit din doua functii ​("​setup"​ si "​loop"​). Inainte de implementarea celor doua functii am declarat pinii LED pe care i-am folosit, display-ul I2C, dar si senzorul de umiditate.  
-  * librării şi surse 3rd-party (e.g. Procyon AVRlib+ 
-  * algoritmi şi structuri ​pe care plănuiţi să le implementaţi +{{ :pm:​prj2022:​avaduva:​definire_dht_neculaivlad.png?​nolink&​300 |}} 
-  * (etapa ​3) surse şi funcţii implementate + 
-</​note>​+In functia "​Setup"​ pentru inceput am declarat ce rol au cele trei LED-uri, acela de OUTPUT. Pe urma am pornit display-ul cu functiile init() si backlight()Pentru afisarea textului, in primul rand am selectat randurile pe care vreau sa fie scris textul (setCursor()) si dupa le-am printat pe acestaDe asemeneapentru a nu avea un text suprapus cu informatiile pe care le ofera dispozitivul,​ resetez display-ul si pornesc senzorul (functia begin()). 
 + 
 +{{ :​pm:​prj2022:​avaduva:​setup_dht_neculaivlad.png?​nolink&​300 |}} 
 + 
 +Functia "​Loop"​ este functia unde are loc tot procesul de determinare al temperaturii si al umiditatii. In aceasta functie primul pas pe care l-am facut a fost cel in care am declarat doua variabile ​(humidity si temperature) care citesc valorile din senzorFunctia readTemperature(are ca parametru valoarea false deoarece am decis sa afisez temperatura in grade Celsius. Daca valoarea era true, pe ecran imi era afisata in grade Fahrenheit. ​ 
 + 
 +Stiind ca temperatura maxima ​pe care o poate citi senzorul DHT11 este de 50 grade Celsius, m-am folosit de cele trei LED-uri impartit valoarea maxima la pentru a putea crea trei intervale de temperatura. ​ 
 + 
 +Pe parcursul rularii programului,​ LED-ul de culoare rosie se aprinde atunci cand temperatura din incapere depaseste valoare de 32 de grade celsius, LED-ul de culoare galben se aprinde in intervalul de temperatura 27-32 de grade, iar LED-ul de culoare verde atunci cand temperatura este sub 27 de grade. 
 + 
 +Pentru afisarea pe display am folosit aceeasi metoda ca in functia "​Setup"​.  
 + 
 +{{ :​pm:​prj2022:​avaduva:​loop_dht_neculaivlad.png?​nolink&​300 |}}
  
 ===== Rezultate Obţinute ===== ===== Rezultate Obţinute =====
  
-<note tip> +Videoclipul DEMO poate fi vizionat accesand urmatorul link: 
-Care au fost rezultatele obţinute în urma realizării proiectului vostru. +[[https://​youtu.be/1xni9wQD-_o]]
-</note>+
  
-===== Concluzii =====+Poze de la rezultate:
  
-===== Download =====+{{ :​pm:​prj2022:​avaduva:​rezultat1_neculaivlad.jpg?​nolink&​600 |}}
  
-<note warning>​ +{{ :pm:​prj2022:​avaduva:​rezultat2_neculaivlad.jpg?​nolink&​600 |}}
-O arhivă (sau mai multe dacă este cazul) cu fişierele obţinute în urma realizării proiectuluisurse, scheme, etc. Un fişier README, un ChangeLog, un script de compilare şi copiere automată pe uC crează întotdeauna o impresie bună ;-).+
  
-Fişierele se încarcă pe wiki folosind facilitatea **Add Images or other files**. Namespace-ul în care se încarcă fişierele este de tipul **:​pm:​prj20??:​c?​** sau **:​pm:​prj20??:​c?:​nume_student** (dacă este cazul). **Exemplu:​** Dumitru Alin, 331CC -> **:​pm:​prj2009:​cc:​dumitru_alin**. 
-</​note>​ 
  
-===== Jurnal ​=====+===== Concluzii ​=====
  
-<note tip> +Proiectul "​Humidity & Temperature Station"​ este un proiect ​de dificultate mica spre medie, pe care il recomand cu caldura tuturor celor care vor sa inteleaga usor cum functioneaza microprocesoarele si tot ce inseamna partea ​de montaj si cod. M-am distrat foarte mult in crearea acestui ​proiect ​si am reusit sa inteleg de pe urma acestuia cum functioneaza intreg sistemul conceput.  
-Puteți avea și o secțiune ​de jurnal în care să poată urmări asistentul ​de proiect ​progresul proiectului+ 
-</​note>​+===== Download ===== 
 + 
 +Arhiva se poate accesa folosind acest link de descarcare:  
 + 
 +{{:​pm:​prj2022:​avaduva:​humidity_temperature_station_-_neculai_vlad_1220af.rar|}}
  
 ===== Bibliografie/​Resurse ===== ===== Bibliografie/​Resurse =====
  
-<​note>​ +DHT 11 Humidity & Temperature Datasheet: [[https://​www.mouser.com/​datasheet/​2/​758/​DHT11-Technical-Data-Sheet-Translated-Version-1143054.pdf]] 
-Listă cu documente, ​datasheet-uri, resurse Internet folosite, eventual grupate pe **Resurse Software** şi **Resurse Hardware**+ 
-</note>+Display I2C Datasheet: [[http://​www.handsontec.com/​dataspecs/​module/​I2C_1602_LCD.pdf]]
  
 <​html><​a class="​media mediafile mf_pdf"​ href="?​do=export_pdf">​Export to PDF</​a></​html>​ <​html><​a class="​media mediafile mf_pdf"​ href="?​do=export_pdf">​Export to PDF</​a></​html>​
pm/prj2022/avaduva/temperature.1652518537.txt.gz · Last modified: 2022/05/14 11:55 by vlad.neculai
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