This is an old revision of the document!


Smart Desk Companion

Introducere

📌 Ce face proiectul:

Dispozitivul monitorizează condițiile ambientale ale spațiului de lucru al utilizatorului, măsurând:

  • calitatea aerului (CO2 / COV) – prin senzorul MQ-135
  • temperatura și umiditatea aerului – prin senzorul DHT11
  • nivelul de iluminare ambientală – prin LDR (fotorezistor)

Atunci când un parametru depășește un prag prestabilit:

  • se activează buzzer-ul (alertă sonoră)
  • se aprinde LED-ul roșu de avertizare
  • LCD-ul afișează un mesaj de alertă prioritar

Timer-ul Pomodoro integrat:

  • se pornește/resetează printr-un buton fizic
  • LED-ul verde indică sesiunea activă (25 minute)
  • la finalul sesiunii, buzzer-ul emite un semnal distinctiv

🎯 Scopul și ideea de la care am pornit:

Mi-am propus să construiesc un dispozitiv accesibil care să ajute utilizatorii să mențină un mediu de lucru sănătos și productiv, printr-un sistem care:

  • avertizează discret asupra condițiilor ambientale necorespunzătoare
  • colectează și afișează date climatice în timp real
  • integrează o metodă dovedită de gestionare a timpului (tehnica Pomodoro)
  • funcționează complet autonom, fără conexiune internet sau aplicații externe

🤝 De ce cred că este util:

  • Pentru utilizatori individuali – ajută la menținerea unui mediu de lucru sănătos și la structurarea sesiunilor de lucru.
  • Pentru studenți și freelanceri – soluție all-in-one pentru monitorizare și productivitate fără costuri mari.
  • Pentru sănătate pe termen lung – semnalarea calității slabe a aerului sau a luminii insuficiente previne oboseala oculară și problemele respiratorii.

Descriere generală

Diagrama Bloc

Dispozitivul este format din următoarele componente:

  • 🌫️ Senzor MQ-135 (analogic) – detectează calitatea aerului (CO2, COV, amoniac)
  • 🌡️ Senzor DHT11 – măsoară temperatura și umiditatea relativă
  • 💡 LDR (Fotorezistor) – detectează nivelul de iluminare ambientală
  • 🖥️ LCD 16×2 cu interfață I2C – afișează datele în timp real
  • 🔔 Buzzer pasiv 5V – emite alerte sonore la depășirea pragurilor
  • 🔘 Buton tactil – declanșează/resetează timer-ul Pomodoro
  • 🟢 LED Verde – indicator vizual sesiune Pomodoro activă
  • 🔴 LED Roșu – indicator vizual alertă ambientală
  • 🧠 ATmega328P – citește toți senzorii, decide acțiunile și controlează output-urile
  • 🔋 Alimentare 5V (USB) – pentru toate modulele

Interacțiuni între module

Senzorul MQ-135 trimite un semnal analogic continuu pe pinul A0 al microcontrollerului. ATmega328P citește valoarea prin ADC și o compară cu un prag prestabilit. Dacă valoarea depășește pragul, se activează alertele (buzzer + LED roșu) și se afișează un mesaj de avertizare pe LCD.

ATmega328P:

  • compară valoarea de la MQ-135 cu un prag de calitate a aerului
  • compară nivelul de lumină de la LDR (A1) cu un prag minim de iluminare
  • citește temperatura și umiditatea prin protocol digital de la DHT11 (pinul D7)
  • actualizează periodic LCD-ul cu datele curente (rotație ciclică)
  • gestionează starea timer-ului Pomodoro pe baza întreruperii butonului (D2)

DHT11:

  • măsoară temperatura și umiditatea aerului
  • trimite datele microcontrollerului o dată la 2 secunde, în format digital

LCD-ul:

  • primește comenzi prin I2C (pinii A4-SDA și A5-SCL)
  • afișează ciclic: calitate aer, temperatură, umiditate, stare Pomodoro
  • mesajele de alertă au prioritate față de afișarea normală

Buzzer-ul:

  • se activează la depășirea pragului de calitate a aerului sau lumină insuficientă
  • emite un semnal distinct (mai lung) la expirarea intervalului Pomodoro

Butonul tactil:

  • conectat pe D2 cu rezistor pull-up extern de 10kΩ
  • la apăsare, pornește sau resetează sesiunea Pomodoro de 25 minute

Hardware Design

Bill of Materials (Lista Pieselor)

Nr. Componentă Descriere Cantitate
1 ATmega328P (Arduino Uno) Microcontroller 8-bit AVR – unitatea centrală 1
2 Senzor MQ-135 Senzor calitate aer (CO2, VOC, NH3) 1
3 Senzor DHT11 Senzor temperatură și umiditate 1
4 LDR (Fotorezistor) Detectare nivel luminos ambiental 1
5 LCD 16×2 cu modul I2C Afișare date în timp real 1
6 Buzzer pasiv 5V Alerte sonore (prag depășit, timer) 1
7 Buton tactil Declanșare/resetare timer Pomodoro 1
8 LED Verde Indicator sesiune Pomodoro activă 1
9 LED Roșu Indicator alertă ambientală 1
10 Rezistori 10kΩ Pull-up LDR și buton 2
11 Rezistori 220Ω Protecție LED-uri 2
12 Breadboard 400 puncte Placă de prototipare 1
13 Cabluri tată-tată Conectare componente ~30
14 Alimentare USB 5V Alimentare sistem 1

Schema Electrică

Schema electrică prezintă conexiunile dintre toate modulele și microcontrollerul ATmega328P. Alimentarea de 5V este comună tuturor componentelor, asigurată prin portul USB al plăcii Arduino Uno.

Tabel Legături Componente

Componentă Pin Modul Pin Arduino Funcție
Senzor MQ-135 AOUT A0 Semnal analogic calitate aer
VCC / GND +5V / GND Alimentare
Senzor DHT11 DATA D7 Date temperatură & umiditate
VCC / GND +5V / GND Alimentare
LDR + R 10kΩ Divizor tensiune A1 Nivel luminos ambiental
LCD 16×2 I2C SDA A4 Date I2C
SCL A5 Ceas I2C
VCC / GND +5V / GND Alimentare
Buzzer pasiv PIN D6 Alertă sonoră
GND GND Masă
Buton tactil PIN D2 Declanșare Pomodoro (INT0)
GND + R 10kΩ +5V / GND Referință pull-up
LED Verde Anod + R 220Ω D4 Indicator sesiune activă
LED Roșu Anod + R 220Ω D5 Indicator alertă ambientală

Software Design

Descrierea codului aplicaţiei (firmware):

  • mediu de dezvoltare (if any) (e.g. AVR Studio, CodeVisionAVR)
  • librării şi surse 3rd-party (e.g. Procyon AVRlib)
  • algoritmi şi structuri pe care plănuiţi să le implementaţi
  • (etapa 3) surse şi funcţii implementate

Rezultate Obţinute

Care au fost rezultatele obţinute în urma realizării proiectului vostru.

Concluzii

Download

O arhivă (sau mai multe dacă este cazul) cu fişierele obţinute în urma realizării proiectului: surse, 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.

Jurnal

Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului.

Bibliografie/Resurse

Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe Resurse Software şi Resurse Hardware.

Export to PDF

pm/prj2026/vlad.radulescu2901/cristina.iordache04.1778269082.txt.gz · Last modified: 2026/05/08 22:38 by cristina.iordache04
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