This is an old revision of the document!
Proiectul la care m-am gândit este un dispozitiv care îți măsoară pulsul și oxigenul din sânge când pui degetul pe un senzor. Rezultatele apar pe un ecran OLED unde poți vedea valorile live, iar dacă ceva nu e în regulă, un LED se face roșu și un buzzer sună. Datele se trimit prin Bluetooth într-o pagină web deschisă în browser unde poți vedea graficul pulsului în timp real.
Scopul proiectului este de a crea un dispozitiv accesibil pentru monitorizarea unor parametri vitali de bază, fără echipamente medicale scumpe. Ideea a pornit de la utilitatea unui pulsoximetru simplu, extinsă cu conectivitate wireless și vizualizare modernă a datelor.
Proiectul este util deoarece:
Sistemul este compus din mai multe module care interacționează între ele. Senzorul MAX30102 citește datele prin I2C și le trimite la Arduino, care le procesează și le afișează pe ecranul OLED. Simultan, datele sunt trimise prin UART la modulul Bluetooth HC-05, care le transmite wireless pe telefon sau browser. LED-urile și buzzerul oferă feedback imediat în funcție de valorile măsurate.
Schema bloc:
Modulele utilizate:
| Modul | Interfață | Rol în sistem |
|---|---|---|
| Arduino Uno | — | Unitatea centrală, coordonează toate celelalte module |
| Senzor MAX30102 | I2C | Citește pulsul (BPM) și saturația de oxigen (SpO2) |
| Ecran OLED SSD1306 | I2C | Afișează valorile în timp real |
| Modul Bluetooth HC-05 | UART | Transmite datele wireless către telefon sau PC |
| LED-uri (v/g/r) | GPIO/PWM | Indică vizual starea: verde=normal, galben=atenție, roșu=alarmă |
| Buzzer pasiv | PWM | Alertă sonoră la valori critice |
| Buton tactil | Întrerupere | Pornește/oprește măsurătoarea |
Concepte din laborator utilizate:
| Protocol | Concept | Utilizare |
|---|---|---|
| I2C | I2C | MAX30102 + OLED pe același bus |
| UART | Serială | Transmitere date prin HC-05 Bluetooth |
| INT0 | Întreruperi | Detectare apăsare buton pe pin D2 |
| Timer1 | Timere | Citire senzor periodic la fiecare 100ms |
| PWM | PWM | Control buzzer și LED-uri |
| # | Componentă | Model / Specificație |
|---|---|---|
| 1 | Microcontroller | Arduino Uno (ATmega328P) |
| 2 | Senzor puls + SpO2 | MAX30102 modul |
| 3 | Ecran OLED | SSD1306, 0.96”, I2C |
| 4 | Modul Bluetooth | HC-05 |
| 5 | Buzzer | Buzzer pasiv |
| 6 | LED verde | 5mm, 20mA |
| 7 | LED galben | 5mm, 20mA |
| 8 | LED roșu | 5mm, 20mA |
| 9 | Buton tactil | 6x6mm |
| 10 | Rezistențe 220Ω | 1/4W |
| 11 | Rezistențe 10kΩ | 1/4W |
| 12 | Breadboard | 830 puncte |
| 13 | Fire jumper M-M | diverse culori |
| 14 | Fire jumper M-F | diverse culori |