This is an old revision of the document!


ErgoDesk Assistant

Autor: Mantu Ionut Gabriel

Grupă: 33XCA

Introducere

ErgoDesk Assistant este un dispozitiv ergonomic de birou conceput pentru a monitoriza în timp real doi indicatori asociați unei poziții necorespunzătoare în timpul lucrului la birou: distanța prea mică față de monitor și înclinarea unui suport de referință. Sistemul oferă feedback local printr-un afișaj LCD, un LED RGB și un buzzer, astfel încât utilizatorul să poată corecta rapid poziția detectată ca problematică.

Ideea proiectului a pornit de la o problemă reală întâlnită frecvent atât de studenți, cât și de persoanele care lucrează mult timp la calculator: apropierea excesivă de monitor și menținerea unei poziții incomode pentru perioade lungi. Proiectul își propune să ofere un mecanism simplu de avertizare și conștientizare a acestor obiceiuri.

Dispozitivul poate fi util atât pentru utilizatorul final, cât și pentru mine, deoarece combină senzori, procesare locală și feedback vizual și sonor într-un produs embedded cu aplicabilitate practică.

Descriere generală

Schemă bloc

Mod de funcționare

Sistemul are la bază o placă compatibilă Arduino Uno, care colectează datele de la senzori și generează feedback local în funcție de starea detectată.

Componentele principale conectate la microcontroler sunt:

  • HC-SR04 – măsoară distanța față de utilizator. Dacă utilizatorul rămâne prea aproape de ecran pentru mai mult de câteva secunde, sistemul trece în stare de avertizare.
  • MPU6050 – măsoară înclinarea și unghiul unui suport de referință. O înclinare care depășește pragul ales este interpretată ca indiciu al unei poziții necorespunzătoare.
  • Fotorezistor – măsoară lumina ambientală și permite adaptarea comportamentului sistemului în funcție de condițiile de iluminare, de exemplu reducerea intensității feedback-ului seara.
  • LCD 1602 cu interfață I2C – afișează valorile citite de la senzori, starea curentă a sistemului și mesajele de avertizare.
  • LED RGB – oferă feedback vizual rapid:
    • verde = poziție normală
    • galben = apropiere de limită
    • roșu = avertizare
  • Buzzer pasiv – oferă feedback sonor atunci când starea problematică persistă.
  • Buton – utilizat pentru calibrare, reset sau schimbare mod.

Funcționarea sistemului este bazată pe citirea periodică a senzorilor și pe compararea valorilor obținute cu praguri predefinite sau calibrate de utilizator.

Hardware Design

Bill of Materials

Componentă Cantitate Link Preț unitar (RON)
Placă compatibilă Arduino Uno 1 kit personal 0
Senzor ultrasonic HC-SR04 1 kit personal 0
Modul accelerometru/giroscop MPU6050 1 eMAG 15.46
Afișaj LCD 1602 cu I2C 1 eMAG 21.78
LED RGB 1 kit personal 0
Buzzer pasiv 1 kit personal 0
Fotorezistor 1 kit personal 0
Buton 1 kit personal 0
Breadboard 1 kit personal 0
Fire de legătură mai multe kit personal 0
Rezistențe 220 ohm 3 kit personal 0
Rezistență 10k ohm 1 kit personal 0

Preț total: 37.24 RON

Schema electrică

Conexiuni principale

  • LCD 1602 I2C
    • VCC → 5V
    • GND → GND
    • SDA → A4
    • SCL → A5
  • MPU6050
    • VCC → 5V
    • GND → GND
    • SDA → A4
    • SCL → A5
  • HC-SR04
    • TRIG → D7
    • ECHO → D8
    • VCC → 5V
    • GND → GND
  • Buzzer pasiv
    • + → D9
    • - → GND
  • LED RGB
    • conectat la pinii D3, D5 și D6 prin rezistențe de 220 ohm
    • pinul comun va fi conectat în funcție de tipul LED-ului
  • Fotorezistor
    • conectat într-un divizor de tensiune
    • valoarea este citită pe pinul A0
  • Buton
    • conectat la D2 și GND
    • citit folosind INPUT_PULLUP

Software Design

Mediul de dezvoltare utilizat pentru proiect va fi Arduino IDE.

Firmware-ul proiectului va realiza:

  • citirea periodică a distanței cu HC-SR04
  • citirea unghiului și a înclinării cu MPU6050
  • citirea luminii ambientale prin ADC de la fotorezistor
  • compararea valorilor citite cu pragurile definite
  • afișarea informațiilor și avertizărilor pe LCD
  • semnalizarea vizuală prin LED RGB
  • semnalizarea sonoră prin buzzer
  • întârzierea avertizărilor pentru a evita alarmele false la schimbări scurte de poziție
  • calibrare, reset sau schimbare mod din buton

La nivel de concepte din laborator, proiectul folosește:

  • Timere / PWM pentru controlul LED-ului RGB, pattern-ul buzzer-ului și temporizarea avertizărilor
  • ADC pentru citirea fotorezistorului
  • I2C pentru LCD și MPU6050

Rezultate Obţinute

În această etapă au fost alese componentele principale ale proiectului și a fost definită arhitectura generală hardware și software. Au fost achiziționate și verificate modulele esențiale pentru implementare: LCD 1602 cu I2C, MPU6050 și restul componentelor necesare prototipării pe breadboard. A fost creată pagina de documentație și a fost stabilită lista de conexiuni principale dintre module.

Concluzii

ErgoDesk Assistant este un proiect embedded cu aplicabilitate practică, orientat către monitorizarea unor indicatori simpli asociați unei poziții necorespunzătoare la birou. Proiectul combină senzori, logică de decizie și feedback local într-o aplicație utilă și ușor de demonstrat.

Download

Repository:

Jurnal

  • 06.05.2026 - Alegerea temei proiectului și stabilirea direcției generale.
  • 06.05.2026 - Completarea formularului de alegere a proiectului.
  • 06.05.2026 - Crearea paginii de documentație pe wiki.
  • 06.05.2026 - Achiziționarea și verificarea componentelor principale: LCD 1602 I2C și MPU6050.
  • 06.05.2026 - Definirea arhitecturii generale hardware și software.
  • 06.05.2026 - Completarea documentației pentru prima etapă.

Bibliografie/Resurse

Resurse Hardware

  • Datasheet HC-SR04
  • Datasheet MPU6050
  • Documentație LCD 1602 I2C
  • Documentație Arduino Uno

Resurse Software

  • Arduino IDE
  • Documentație Wire library
  • Documentație LiquidCrystal_I2C
  • Documentație DokuWiki
pm/prj2026/victor.stoica0203/ergodeskassistant.1778067190.txt.gz · Last modified: 2026/05/06 14:33 by ionut_gabriel.mantu
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