Differences

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

Link to this comparison view

pm:prj2021:amocanu:pulsoximetru [2021/06/02 23:36]
petru.sicoe
pm:prj2021:amocanu:pulsoximetru [2021/06/02 23:45] (current)
petru.sicoe
Line 21: Line 21:
 iar in cazul nostru hemoglobina absoarbe lumina. De asemenea, hemoglobina transportatoare de oxigen iar in cazul nostru hemoglobina absoarbe lumina. De asemenea, hemoglobina transportatoare de oxigen
 absoarbe mai mult lumina infrarosie decat lumina rosie, iar hemoglobina care nu transporta oxigen absoarbe mai mult lumina infrarosie decat lumina rosie, iar hemoglobina care nu transporta oxigen
-absoarbe mai mult lumina rosie decat infrarosie. Astfel, cu 2 LED-uri si un fotodetector se poate masura ​+absoarbe mai mult lumina rosie decat cea infrarosie. Astfel, cu 2 LED-uri si un fotodetector se poate masura ​
 saturatia de oxigen din sange. saturatia de oxigen din sange.
 </​note>​ </​note>​
Line 65: Line 65:
   * Functii implementate   * Functii implementate
       * **setup():​** sunt initializate LCD-ul si display-ul OLED, iar pe LCD este printat titlu proiectului. Dupa aceea este verificat daca senzorul este initializat corect. In cazul in care este, se afiseaza mesajul '​SUCCESS',​ este setat fontul pentru OLED, este pornit senzorul si este setata functia de callback pentru fiecare bataie detectata. Daca initializarea esueaza, pe OLED va aparea mesajul '​FAILED'​ si se intra intr-un loop. La final mai sunt setate ledurile GREEN si RED si buzzerul ca OUTPUT.       * **setup():​** sunt initializate LCD-ul si display-ul OLED, iar pe LCD este printat titlu proiectului. Dupa aceea este verificat daca senzorul este initializat corect. In cazul in care este, se afiseaza mesajul '​SUCCESS',​ este setat fontul pentru OLED, este pornit senzorul si este setata functia de callback pentru fiecare bataie detectata. Daca initializarea esueaza, pe OLED va aparea mesajul '​FAILED'​ si se intra intr-un loop. La final mai sunt setate ledurile GREEN si RED si buzzerul ca OUTPUT.
-      * **loop():** masurarea propriu-zisa incepe abia dupa 2 secunde de la terminarea functiei de setup. Dupa aceea la fiecare secunda vor fi facute masuratorile dorite. Cu functiile de biblioteca getHeartRate() si getSPO2() aflu pulsul, respectiv concentratia de SPO2 din sange. Atunci cand nu este detectat niciun deget pe senzor (cand SPO2 masurat este zero), se aprinde ledul rosu si stins ledul verde. Analog, atunci cand degetul este detectat pe senzor, ledul verde se aprinde si ledul rosu se stinge. Daca degetul este detectat, valorile masurate sunt printate pe display. Altfel, va fi printat mesajul '​SPO2...',​ sugerand faptul ca degetul nu este detectat sau ca nu s-a terminat masurarea valorilor dorite.+      * **loop():** masurarea propriu-zisa incepe abia dupa 2 secunde de la terminarea functiei de setup. Dupa aceea la fiecare secunda vor fi facute masuratorile dorite. Cu functiile de biblioteca getHeartRate() si getSPO2() aflu pulsul, respectiv concentratia de SPO2 din sange. Atunci cand nu este detectat niciun deget pe senzor (cand SPO2 masurat este zero), se aprinde ledul rosu si se stinge ​ledul verde. Analog, atunci cand degetul este detectat pe senzor, ledul verde se aprinde si ledul rosu se stinge. Daca degetul este detectat, valorile masurate sunt printate pe display. Altfel, va fi printat mesajul '​SPO2...',​ sugerand faptul ca degetul nu este detectat sau ca nu s-a terminat masurarea valorilor dorite.
       * **onBeatDetected():​** functie care este apelata de fiecare data cand este detectata o bataie a inimii. Aceasta afiseaza pe display un bitmap cu o inima si apeleaza functia buzz().       * **onBeatDetected():​** functie care este apelata de fiecare data cand este detectata o bataie a inimii. Aceasta afiseaza pe display un bitmap cu o inima si apeleaza functia buzz().
       * **buzz():** functie care face buzzerul sa sune. Sunetul este produs prin apelarea de 80 de ori a digitalWrite de HIGH/LOW pe portul 8 la o frecventa mare.       * **buzz():** functie care face buzzerul sa sune. Sunetul este produs prin apelarea de 80 de ori a digitalWrite de HIGH/LOW pe portul 8 la o frecventa mare.
Line 74: Line 74:
  
 ===== Concluzie ===== ===== Concluzie =====
-Proiectul la PM a fot pentru mine in mod cert o experienta interesanta care mi-a oferit multa satisfactie la final. M-a ajutat sa imi solidific cunostiintele dobandite in cadrul laboratorului intr-un mod practic si faptul ca la final am ceva care chiar merge imi ofera multa incredere si motivatie sa incerc pe viitor ceva mai complex. Greutatile intampinate la mine fost sa gasesc o biblioteca potrivita cu tipul senzorului pe care il am si sa integrez functionalitatea senzorului in cadrul proiectului. Cel putin la functia de setup am petrecut ceva timp pe partea de debug, deoarece senzorul nu putea fi initializat.+Proiectul la PM a fost pentru mine in mod cert o experienta interesanta care mi-a oferit multa satisfactie la final. M-a ajutat sa imi solidific cunostiintele dobandite in cadrul laboratorului intr-un mod practic si faptul ca la final am ceva care chiar merge imi ofera multa incredere si motivatie sa incerc pe viitor ceva mai complex. Greutatile intampinate la mine au fost sa gasesc o biblioteca potrivita cu tipul senzorului pe care il am si sa integrez functionalitatea senzorului in cadrul proiectului. Cel putin la functia de setup am petrecut ceva timp pe partea de debug, deoarece senzorul nu putea fi initializat.
  
 ===== Bibliografie/​Resurse ===== ===== Bibliografie/​Resurse =====
pm/prj2021/amocanu/pulsoximetru.1622666196.txt.gz · Last modified: 2021/06/02 23:36 by petru.sicoe
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