Hvordan måler jeg pulsen ved hjelp av pulssensor?

Hjertefrekvens eller puls er den viktigste parameteren som måles innen medisin. Det er to måter pulsen kan måles på. Det ene er å manuelt sjekke håndleddet ved hjelp av et stetoskop og gjette hjertefrekvensen, den andre metoden er å bruke en pulssensor. En pulssensor får noen avlesninger av pulsen og sender et elektrisk signal til mikrokontrolleren, disse målingene blir deretter beregnet og den nøyaktige pulsen vises.

Hvordan en pulssensor måler pulsen?

Som vi vet hva vi skal gjøre, så la oss begynne å jobbe med dette prosjektet.

Trinn 1: Samle komponentene

Å lage en liste over komponenter og studere hvordan disse komponentene fungerer, er den beste tilnærmingen før du starter et prosjekt. Følgende er komponentene som skal brukes i prosjektet vårt:

Trinn 2: Kjenne komponentene som brukes

Da vi har listen over apparater som vi skal bruke. La oss nå se hvordan disse komponentene fungerer.

Arduino Uno er et mikrokontrollerkort som brukes til å kontrollere forskjellige kretser. Den bruker en C-kode som gir den instruksjonene for å utføre en oppgave. Andre erstatninger for dette mikrokontrollerkortet som er tilgjengelig i markedet er Arduino Nano, Node MCU, ESP32, etc.

SEN-11574 er en plug and play-pulsfrekvenssensor som er integrert med Arduino. Den har to sider. På den ene siden er en ledd plassert som avgir lys. Denne ledningen skal plasseres direkte på toppen av en blodåre. Som vi vet at volumet av blod i venen er større når hjertet pumper, så når det er mer blod i venen, vil mer lys reflekteres til sensoren. Denne endringen i lyset som mottas av sensoren blir analysert over tid og pulsen måles. På den andre siden av sensoren er det en krets som er ansvarlig for forsterkning og støyfjernelse av det mottatte signalet.

Trinn 3: Montering av komponentene

  1. Som vi vet at huden er av en menneskekropp, er den fuktig eller fet noen ganger. Dette kan resultere i kortslutning av sensoren som gir falske målinger. Det er bedre å legge et lag med et vinylklistremerke på LED-siden av sensoren for å forhindre at den blir fuktig på huden.
  2. Etter å ha gjort dette, ta et stykke svart vektortape og lim det på den andre siden av sensoren. Dette vil forhindre at lys fra omgivelsene forstyrrer lyset fra sensorene.
  3. Koble nå Vcc og jordpinnen til sensoren til Arduino og den analoge pinnen til sensoren til A0 av Arduino.

Alt apparatet er nå satt og klart til bruk. Vi vil sette sensoren direkte på venen, enten på fingeren eller øret for å måle hjertefrekvensen.

Trinn 4: Komme i gang med Arduino

Hvis du ikke har jobbet med Arduino IDE før, ikke bekymre deg fordi fremgangsmåten for å brenne en kode på mikrokontrollerkortet ved hjelp av Arduino IDE er gitt nedenfor.

  1. Etter at du har koblet Arduino-kortet til PC-en, går du til Kontrollpanel> Maskinvare og lyd> Enheter og skrivere for å sjekke navnet på porten som Arduino er koblet til. Det er forskjellig på forskjellige datamaskiner.
  2. Åpne Arduino IDE og sett brettet som Arduino / Genuino UNO.
  3. Still nå porten du observerte før i kontrollpanelet.
  4. Last ned koden nedenfor og åpne den. Brenn koden på Microcontroller-kortet ved å klikke på Laste opp knapp.

Klikk her for å laste ned koden.

Trinn 5: Kode

Koden for å måle pulsfrekvensen er litt lang og komplisert. En del av koden er forklart nedenfor.

1. I starten defineres alle pinnene som skal brukes. Alle variablene som skal brukes i forskjellige funksjoner og avbruddsrutinen (ISR).

2. ugyldig oppsett () er en funksjon der Pins er definert til å brukes som INPUT eller OUTPUT. baudrate er også satt i denne funksjonen. Baudrate er hastigheten som mikrokontrolleren kommuniserer med andre komponenter. ISR kalles også i denne funksjonen.

3. ugyldig sløyfe ()er en funksjon som løper kontinuerlig i en syklus. Her blir pulsen funnet og den bestemmer når ledningen skal falme når et hjerterytme blir funnet.

ugyldig sløyfe () {serialOutput (); hvis (QS == true) {// Et hjerterytme ble funnet // BPM og IBI har blitt bestemt // Kvantifisert selv "QS" sant når arduino finner et hjerterytme fadeRate = 255; // Gjør LED-blekningseffekten til å skje // Still 'fadeRate' Variabel til 255 for å falme LED med puls serialOutputWhenBeatHappens (); // A Beat Happened, send det til serie. QS = falsk; // tilbakestill det kvantifiserte selvflagget for neste gang} ledFadeToBeat (); // Gjør at LED-lyseffekten skjer forsinkelse (20); // ta en pause }

4. ugyldig serialOutput ()er en funksjon som bestemmer hvordan du skal vise utdata på den serielle skjermen.

ugyldig serialOutput () {switch (outputType) {case PROCESSING_VISUALIZER: sendDataToSerial ('S', Signal); // går til sendDataToSerial funksjonsbrudd; sak SERIAL_PLOTTER: // åpne Arduino Serial Plotter for å visualisere disse dataene Serial.print (BPM); Serial.print (","); Serial.print (IBI); Serial.print (","); Serial.println (Signal); gå i stykker; standard: pause; }}

5. ISR er et avbrudd som genereres av maskinvaren og sendes til CPU for behandling. når avbruddet genereres, stopper prosessen som allerede pågår og avbruddet behandles. etter at avbruddet er behandlet, fortsetter den forrige prosessen.

void interruptSetup () {// CHECK UT Timer_Interrupt_Notes TAB FOR MER PÅ AVBRYT #ifndef ESP32 // Initialiserer Timer2 for å kaste et avbrudd hver 2.mS. TCCR2A = 0x02; // Deaktiver PWM PÅ DIGITALE PINS 3 OG 11, OG GÅ TIL CTC-MODUS TCCR2B = 0x06; // IKKE KRAV SAMMENLIGN, 256 PRESCALER OCR2A = 0X7C; // SETT TOPPEN AV TELLEN TIL 124 FOR 500Hz PRØVEKURS TIMSK2 = 0x02; // AKTIVER AVBRYTNING PÅ KAMPEN MELLOM TIMER2 OG OCR2A sei (); // KONTROLLER AT GLOBALE AVBRYTNINGER ER AKTIVERT // Lag semafor for å informere oss når tidtakeren har avfyrt #else timerSemaphore = xSemaphoreCreateBinary (); // Bruk første timer på 4 (regnet fra null). // Still 80 skillelinje for prescaler (se ESP32 Technical Reference Manual for mer // info). timer = timerBegin (0, 80, true); // Fest onTimer-funksjonen til timeren vår. timerAttachInterrupt (timer, & onTimer, true); // Still alarmen til å ringe påTimer-funksjon hvert sekund (verdi i mikrosekunder). // Gjenta alarmen (tredje parameter) timerAlarmWrite (timer, 2000, sant); // Start en alarmtimerAlarmEnable (timer); #slutt om }

Applikasjoner:

Nå som vi vet hvordan vi måler pulsen ved hjelp av en pulssensor. Nå kan vi bruke den til å lage forskjellige prosjekter for eksempel

  1. Helsebånd.
  2. Angstmonitor.
  3. Søvnsporing.
  4. Fjern pasientovervåking / alarmsystem.
  5. Avanserte spillkonsoller
Facebook Twitter Google Plus Pinterest