This shows you the differences between two versions of the page.
|
pm:prj2023:avaduva:health-monitor [2023/05/24 16:37] florin.barbalan0812 [Descriere generală] |
pm:prj2023:avaduva:health-monitor [2023/05/31 11:22] (current) florin.barbalan0812 [Download] |
||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | ====== Health Monitor ====== | + | ====== Thermostat ====== |
| ===== Introducere ===== | ===== Introducere ===== | ||
| - | La baza, device-ul isi propune sa masoare temperatura corpului, pulsul si oxigenul din sange. | + | La baza, device-ul este un termostat. Isi propune sa masoare temperatura mediului inconjurator si sa aprinda un LED si/sau sa porneasca un buzzer daca temperatura depaseste un anume prag. |
| - | Aceste valori vor fi: | + | Aceasta valoare va fi: |
| - | * afisate pe un display OLED, care se va afla, de preferat, la incheietura utilizatorului. | + | * afisata pe un display OLED. |
| - | * trimise prin bluetooth si afisate intr-o aplicatie mobila. | + | * trimisa prin bluetooth si afisata intr-o aplicatie mobila. |
| - | Device-ul este destinat persoanelor care doresc sa aiba control asupra sanatatii lor si sa aiba in permanenta si in timp real acces la informatii despre cum se comporta corpul lor. | + | Device-ul este destinat pentru aplicatiile in care e nevoie de monitorizarea temperaturii ambientale cu eroare <= 1 grad C si mentinerea acesteia sub un anumit prag. |
| ===== Descriere generală ===== | ===== Descriere generală ===== | ||
| Line 22: | Line 22: | ||
| === Schema bloc === | === Schema bloc === | ||
| - | {{:pm:prj2023:avaduva:health_monitor_132_diagram.png?700|}} | + | |
| + | {{:pm:prj2023:avaduva:thermostat_132_schema.png?700|}} | ||
| ===== Hardware Design ===== | ===== Hardware Design ===== | ||
| Line 28: | Line 29: | ||
| Componente folosite: | Componente folosite: | ||
| * Arduino Nano | * Arduino Nano | ||
| - | * Senzor puls si oxidometru GY MAX30100 | ||
| * Senzor temperatura LM35 | * Senzor temperatura LM35 | ||
| * Modul bluetooth HC05 | * Modul bluetooth HC05 | ||
| * Display OLED I2C | * Display OLED I2C | ||
| * Baterie 9V | * Baterie 9V | ||
| - | * Placuta PCB prototipare | ||
| === Schema electrica === | === Schema electrica === | ||
| - | {{:pm:prj2023:avaduva:health_monitor_132_schema_electrica.png?700|}} | + | {{:pm:prj2023:avaduva:thermostat_132_schema_electrica.png?700|}} |
| ===== Software Design ===== | ===== Software Design ===== | ||
| Line 43: | Line 41: | ||
| Functionalitate software: | Functionalitate software: | ||
| * Initializare display (I2C), senzor temperatura (analog), baud rate modul bluetooth (USART) | * Initializare display (I2C), senzor temperatura (analog), baud rate modul bluetooth (USART) | ||
| - | * Timer cu intreruperi la 1 sec. pentru masurarea temperaturii, in rest modulul va sta in low power mode | + | * Timer cu intreruperi la ~15ms si masurarea temperaturii la 5 sec., in rest modulul va sta in power save mode |
| * Functie pentru masurarea tensiunii la iesire a senzorului de temperatura cu CAN pentru a obtine temperatura in grade Celsius | * Functie pentru masurarea tensiunii la iesire a senzorului de temperatura cu CAN pentru a obtine temperatura in grade Celsius | ||
| * Functie pentru afisarea datelor pe display | * Functie pentru afisarea datelor pe display | ||
| * Functie pentru trimiterea datelor prin bluetooth | * Functie pentru trimiterea datelor prin bluetooth | ||
| - | * Functie care sa porneasca un buzzer cand temperatura depaseste un anumit prag | + | * Functie care sa aprinda un LED si/sau sa porneasca un buzzer cand temperatura depaseste un anumit prag |
| Biblioteci folosite: | Biblioteci folosite: | ||
| Line 55: | Line 53: | ||
| * SoftwareSerial.h -> pentru a initializa comunicatia USART cu modulul Bluetooth pe alte pinuri fata de pinurile fizice RX, TX de pe Arduino | * SoftwareSerial.h -> pentru a initializa comunicatia USART cu modulul Bluetooth pe alte pinuri fata de pinurile fizice RX, TX de pe Arduino | ||
| + | ===== Rezultate Obţinute ===== | ||
| - | <note tip> | + | {{:pm:prj2023:avaduva:thermostat_p1_132.jpg?700|}} |
| - | Descrierea codului aplicaţiei (firmware): | + | {{:pm:prj2023:avaduva:thermostat_p2_132.jpg?700|}} |
| - | * mediu de dezvoltare (if any) (e.g. AVR Studio, CodeVisionAVR) | + | {{:pm:prj2023:avaduva:thermostat_p3_132.jpg?700|}} |
| - | * 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 | + | |
| - | </note> | + | |
| - | ===== Rezultate Obţinute ===== | ||
| - | |||
| - | <note tip> | ||
| - | Care au fost rezultatele obţinute în urma realizării proiectului vostru. | ||
| - | </note> | ||
| ===== Concluzii ===== | ===== Concluzii ===== | ||
| + | Totul merge bine in afara de senzorul de temperatura care nu e foarte precis, avand marja de eroare de ~1 grad Celsius si necesita putin timp la pornirea circuitului pentru calibrare. | ||
| ===== Download ===== | ===== Download ===== | ||
| - | <note warning> | + | {{:pm:prj2023:avaduva:thermostat_source_132.zip|}} |
| - | 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**. | + | |
| - | </note> | + | |
| ===== Jurnal ===== | ===== Jurnal ===== | ||