Kuidas pulssi mõõta südamelöögisensori abil?

Pulss või pulss on kõige olulisem parameeter, mida meditsiinivaldkonnas mõõdetakse. Südame löögisagedust saab mõõta kahel viisil. Üks on randme käsitsi kontrollimine stetoskoobi abil ja südame löögisageduse arvamine, teine ​​meetod on pulsianduri kasutamine. Pulsisensor saab impulsi mõned näited ja saadab mikrokontrollerile elektrisignaali, seejärel arvutatakse need näidud ja kuvatakse täpne pulsisagedus.



Südame löögisageduse mõõtmine

Kuidas pulsiandur pulssi mõõdab?

Kuna teame, mida teeme, alustame selle projektiga tööd.



1. samm: komponentide kogumine

Komponentide loendi koostamine ja nende töö uurimine on parim viis enne mis tahes projekti alustamist. Meie projektis kasutatakse järgmisi komponente:



  • Arduino UNO
  • Pulsisensor
  • Hüppaja juhtmed
  • Must lint

2. samm: kasutatud komponentide tundmine

Kuna meil on nimekiri aparaatidest, mida kavatseme kasutada. Vaatame nüüd, kuidas need komponendid töötavad.



Arduino Uno on mikrokontrolleri plaat, mida kasutatakse erinevate vooluahelate juhtimiseks. See kasutab C-koodi, mis annab juhised ülesande täitmiseks. Selle mikrokontrolleri plaadi muud turul saadaval olevad asendajad on Arduino Nano, Node MCU, ESP32 jne.

SEN-11574 on pistikupesaga pulsiandur, mis on integreeritud Arduinoga. Sellel on kaks külge. Ühele küljele asetatakse valgust kiirgav led. See led tuleks asetada otse veeni ülaosale. Kuna teame, et südame pumpamisel on veeni vere maht suurem, siis kui veenis on rohkem verd, peegeldub andurile rohkem valgust. Seda muutust anduri vastuvõetud valguses analüüsitakse aja jooksul ja mõõdetakse südame löögisagedust. Anduri teisel küljel on vooluahel, mis vastutab vastuvõetud signaali võimendamise ja müra eemaldamise eest.

3. samm: komponentide kokkupanek

  1. Kuna teame, et nahk on inimkeha, on see mõnikord niiske või õline. Selle tulemuseks võib olla anduri lühis, mis annab valesid mõõtmisi. Anduri LED-poolele on parem kleepida vinüülkleebise kiht, et vältida naha niiskust.
  2. Pärast seda tehke tükk musta vektorlinti ja kleepige see anduri teisele küljele. See väldib ümbritseva valguse häirimist andurite valguses.
  3. Nüüd ühendage anduri Vcc ja maandatud tihvt Arduinoga ja anduri analoognupp Arduino A0-ga.

Kõik seadmed on nüüd seadistatud ja kasutamiseks valmis. Südame löögisageduse mõõtmiseks paneme anduri otse veenile, kas sõrmele või kõrva.



4. samm: Arduinoga alustamine

Kui te pole varem Arduino IDE-ga töötanud, ärge muretsege, sest allpool on toodud protseduur koodi kirjutamiseks mikrokontrolleri plaadil Arduino IDE abil.

  1. Pärast Arduino plaadi arvutiga ühendamist minge juhtpaneelile> Riistvara ja heli> Seadmed ja printerid, et kontrollida selle pordi nime, millega Arduino on ühendatud. Erinevates arvutites on see erinev.

    Sadama leidmine

  2. Avage Arduino IDE ja määrake plaat selliseks Arduino / Genuino UNO.

    Laua määramine

  3. Nüüd määrake juhtpaneelil port, mida varem täheldasite.

    Pordi seadistamine

  4. Laadige alla antud kood ja avage see. Kirjutage kood oma mikrokontrolleri plaadile, klõpsates nuppu Laadi üles nuppu.

    Laadi üles

Klõpsake nuppu siin koodi allalaadimiseks.

5. samm: kood

Pulsisageduse mõõtmiseks mõeldud kood on natuke pikk ja keeruline. Mingi osa koodist on selgitatud allpool.

1. Alguses on kõik kasutatavad tihvtid määratletud. Kõik muutujad, mida kasutatakse erinevates funktsioonides ja teenuse katkestamise rutiin (ISR).

2. kehtetu seadistamine () on funktsioon, milles tihvtid on määratletud kasutamiseks sisendina või väljundina. selles funktsioonis on määratud ka baudikiirus. Baudi kiirus on kiirus, mille abil mikrokontroller suhtleb teiste komponentidega. Selles funktsioonis nimetatakse ka ISR-i.

3. void loop () on funktsioon, mis töötab tsüklis pidevalt. Siit leitakse pulsisagedus ja see otsustab, millal ledi tuhmuda, kui leitakse südamelöök.

void loop () {serialOutput (); kui (QS == true) {// Leiti südamelöök // BPM ja IBI on kindlaks määratud // Kvantifitseeritud ise 'QS' on tõene, kui arduino leiab südamelöökide fadeRate = 255; // paneb LED-i hajumise efekti toimuma // Määra 'fadeRate' muutuvaks väärtuseks 255, et LED-i tuhmumine impulssseerialOutputWhenBeatHappens (); // Beat juhtus, väljastage see seeriasse. QS = vale; // lähtestage kvantifitseeritud enese lipp järgmiseks korraks} ledFadeToBeat (); // paneb LED-i hajumise efekti juhtuma (20); // tee paus }

Neli. void serialOutput () on funktsioon, mis otsustab, kuidas väljundit seeriamonitoril näidata.

void serialOutput () {switch (outputType) {juhtum PROCESSING_VISUALIZER: sendDataToSerial ('S