Differences

This shows you the differences between two versions of the page.

Link to this comparison view

pm:prj2023:avaduva:health-monitor [2023/05/21 23:39]
florin.barbalan0812 [Software Design]
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ă =====
- 
-== Senzorul de puls MAX30100 == 
-Transforma energia luminoasa primita pe suprafata sa in frecventa, iar aceasta informatie este disponibila la iesirea circuitului sub forma de semnal digital. Utilizatorul trebuie sa tina senzorul pe incheietura si apoi sa astepte cateva secunde pentru ca aparatul sa inceapa sa masoare pulsul. 
  
 == Senzorul de temperatură LM35 == == Senzorul de temperatură LM35 ==
Line 25: 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 31: 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 46: 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 58: 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.gAVR 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 =====
pm/prj2023/avaduva/health-monitor.1684701547.txt.gz · Last modified: 2023/05/21 23:39 by florin.barbalan0812
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