This is an old revision of the document!


ErgoDesk Assistant

Autor: Mantu Ionut Gabriel

Grupa: 333CA

Introducere

ErgoDesk Assistant este un dispozitiv ergonomic de birou conceput pentru a monitoriza in timp real doi indicatori asociati unei pozitii necorespunzatoare in timpul lucrului la birou: distanta prea mica fata de monitor si inclinarea unui suport de referinta. Sistemul ofera feedback local printr-un afisaj LCD, un LED RGB si un buzzer, astfel incat utilizatorul sa poata corecta rapid pozitia detectata ca problematica.

Ideea proiectului a pornit de la o problema reala intalnita frecvent atat de studenti, cat si de persoanele care lucreaza mult timp la calculator: apropierea excesiva de monitor si mentinerea unei pozitii incomode pentru perioade lungi. Proiectul isi propune sa ofere un mecanism simplu de avertizare si constientizare a acestor obiceiuri.

Dispozitivul poate fi util atat pentru utilizatorul final, cat si pentru mine, deoarece combina senzori, procesare locala si feedback vizual si sonor intr-un produs embedded cu aplicabilitate practica.

Descriere generala

Schema bloc

Mod de functionare

Sistemul are la baza o placa compatibila Arduino Uno, care colecteaza datele de la senzori si genereaza feedback local in functie de starea detectata.

Componentele principale conectate la microcontroler sunt:

  • HC-SR04 – masoara distanta fata de utilizator. Daca utilizatorul ramane prea aproape de ecran pentru mai mult de cateva secunde, sistemul trece in stare de avertizare.
  • MPU6050 – masoara inclinarea si unghiul unui suport de referinta. O inclinare care depaseste pragul ales este interpretata ca indiciu al unei pozitii necorespunzatoare.
  • Fotorezistor – masoara lumina ambientala si permite adaptarea comportamentului sistemului in functie de conditiile de iluminare, de exemplu reducerea intensitatii feedback-ului seara.
  • LCD 1602 cu interfata I2C – afiseaza valorile citite de la senzori, starea curenta a sistemului si mesajele de avertizare.
  • LED RGB – ofera feedback vizual rapid:
    • verde = pozitie normala
    • galben = apropiere de limita
    • rosu = avertizare
  • Buzzer pasiv – ofera feedback sonor atunci cand starea problematica persista.
  • Buton – utilizat pentru calibrare, reset sau schimbare mod.

Functionarea sistemului este bazata pe citirea periodica a senzorilor si pe compararea valorilor obtinute cu praguri predefinite sau calibrate de utilizator.

Hardware Design

Bill of Materials

Componenta Cantitate Link Pret unitar (RON)
Placa compatibila Arduino Uno 1 kit personal 0
Senzor ultrasonic HC-SR04 1 kit personal 0
Modul accelerometru/giroscop MPU6050 1 eMAG 15.46
Afisaj 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 legatura mai multe kit personal 0
Rezistente 220 ohm 3 kit personal 0
Rezistenta 10k ohm 1 kit personal 0

Pret total: 37.24 RON

Schema electrica

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 si D6 prin rezistente de 220 ohm
    • pinul comun va fi conectat in functie de tipul LED-ului
  • Fotorezistor
    • conectat intr-un divizor de tensiune
    • valoarea este citita pe pinul A0
  • Buton
    • conectat la D2 si GND
    • citit folosind INPUT_PULLUP

Software Design

Mediul de dezvoltare utilizat pentru proiect va fi Arduino IDE.

Firmware-ul proiectului va realiza:

  • citirea periodica a distantei cu HC-SR04
  • citirea unghiului si a inclinarii cu MPU6050
  • citirea luminii ambientale prin ADC de la fotorezistor
  • compararea valorilor citite cu pragurile definite
  • afisarea informatiilor si avertizarilor pe LCD
  • semnalizarea vizuala prin LED RGB
  • semnalizarea sonora prin buzzer
  • intarzierea avertizarilor pentru a evita alarmele false la schimbari scurte de pozitie
  • calibrare, reset sau schimbare mod din buton

La nivel de concepte din laborator, proiectul foloseste:

  • Timere / PWM pentru controlul LED-ului RGB, pattern-ul buzzer-ului si temporizarea avertizarilor
  • ADC pentru citirea fotorezistorului
  • I2C pentru LCD si MPU6050

Rezultate Obţinute

In aceasta etapa au fost alese componentele principale ale proiectului si a fost definita arhitectura generala hardware si software. Au fost achizitionate si verificate modulele esentiale pentru implementare: LCD 1602 cu I2C, MPU6050 si restul componentelor necesare prototiparii pe breadboard. A fost creata pagina de documentatie si a fost stabilita lista de conexiuni principale dintre module.

Concluzii

ErgoDesk Assistant este un proiect embedded cu aplicabilitate practica, orientat catre monitorizarea unor indicatori simpli asociati unei pozitii necorespunzatoare la birou. Proiectul combina senzori, logica de decizie si feedback local intr-o aplicatie utila si usor de demonstrat.

Download

Repository:

Jurnal

  • 06.05.2026 - Alegerea temei proiectului si stabilirea directiei generale.
  • 06.05.2026 - Completarea formularului de alegere a proiectului.
  • 06.05.2026 - Crearea paginii de documentatie pe wiki.
  • 06.05.2026 - Achizitionarea si verificarea componentelor principale: LCD 1602 I2C si MPU6050.
  • 06.05.2026 - Definirea arhitecturii generale hardware si software.
  • 06.05.2026 - Completarea documentatiei pentru prima etapa.

Bibliografie/Resurse

Resurse Hardware

  • Datasheet HC-SR04
  • Datasheet MPU6050
  • Documentatie LCD 1602 I2C
  • Documentatie Arduino Uno

Resurse Software

  • Arduino IDE
  • Documentatie Wire library
  • Documentatie LiquidCrystal_I2C
  • Documentatie DokuWiki
pm/prj2026/victor.stoica0203/ergodeskassistant.1778067307.txt.gz · Last modified: 2026/05/06 14:35 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