Talaan ng mga Nilalaman:

Cardio Data Logger: 7 Hakbang (na may Mga Larawan)
Cardio Data Logger: 7 Hakbang (na may Mga Larawan)

Video: Cardio Data Logger: 7 Hakbang (na may Mga Larawan)

Video: Cardio Data Logger: 7 Hakbang (na may Mga Larawan)
Video: How to Invest in Crypto - The Ultimate Beginners Guide 2024, Nobyembre
Anonim
Cardio Data Logger
Cardio Data Logger

Bagaman sa kasalukuyan maraming mga portable device (smartband, smartwatches, smartphone,…) ay magagamit na maaaring makita ang Heart Rate (HR) at magsagawa ng pagsusuri sa pagsubaybay, mga system na batay sa sinturon ng mga strap ng dibdib (tulad ng nasa itaas na bahagi ng larawan na thr) ay pa rin. laganap at ginamit, ngunit kulang sa posibilidad na maitala at ma-export ang bakas ng mga sukat.

Sa aking nakaraang Instructable Cardiosim nagpakita ako ng isang chest strap belt (Cardio) na simulator na nagpapaliwanag na ang isa sa aking mga susunod na hakbang ay upang makabuo ng isang rate ng rate ng rate ng rate ng puso. Handa na akong ipakita ito sa Instructable na ito. Ang pagpapaandar ng portable unit na ito ay upang makatanggap ng signal ng HR na ipinadala ng isang belt ng strap ng dibdib (o ang Cardiosim simulator) sa panahon ng isang traning session (pag-eehersisyo / pagbibisikleta / pagtakbo,…) at upang maitala ang bakas sa isang SD card, upang magsagawa ng pagsusuri sa pagganap pagkatapos ng pagsasanay (tingnan ang mga detalye sa huling kabanata).

Ang yunit ay pinalakas ng isang rechargeable system ng baterya, kabilang ang singilin na circuit at DC boost regulator.

Mula sa aking "warehouse" ng hindi nagamit na materyal ay pinangisda ko ang isang naaangkop na plastic case (135mm x 45mm x 20mm) at inangkop dito ang layout ng circuit upang magkakasama, gumagawa ng isang gumaganang prototype na tinutupad ang aking mga pangangailangan (ngunit ang pagsasakatuparan ay nag-iiwan ng lugar para sa pagpapabuti:-))

Hakbang 1: Maikling Paglalarawan

Mangyaring mag-refer sa Hakbang 1 ng Cardiosim Instructable para sa isang mabilis na pagpapakilala tungkol sa teknolohiya ng LFMC (Mababang Frequency Magnetic Communication) na teknolohiya na ginagamit ng ganitong uri ng mga aparato.

Ang aking unang hangarin ay gamitin ang module ng Sparkfun RMCM01 bilang interface ng tatanggap, ngunit ang produktong ito ay hindi na magagamit (pabayaan mag-isa na medyo mahal pa rin ito).

Gayunpaman, pagtingin sa WEB, nahanap ko ang kagiliw-giliw na Tutorial na ito, na nagpapakita ng ilang mga alternatibong solusyon upang mapalitan ang RMCM01. Pinili ko ang ika-3 na pagpipilian ("Peter Borst Design", salamat Peter!), Nakamit ang isang mahusay na resulta gamit ang parehong L / C na mga bahagi ng Cardiosim, gayunpaman ay konektado dito bilang parallel resonant tank. Ang napansin na signal ay pinalakas, "nalinis", na-decode at ipinasa sa isang Arduino Pro Mini microcontroller. Pinapatunayan ng programa ang natanggap na mga pulso, sinusukat ang rate ng puso (o mas mahusay ang agwat sa pagitan ng dalawang sunud-sunod na pulso) at iniimbak ang lahat ng sinusukat na agwat sa isang ASCII text file (isang linya bawat wastong pulso, 16 na character bawat isa kabilang ang agwat, timestamp at LF / CR) sa microSD card. Ipagpalagay na isang average HR ng 80bpm, ang isang oras na pag-record ay kailangan lamang (4800 mga linya ng teksto x 16 na mga character) = 76800/1024 = 75kBytes, samakatuwid kahit na ang isang murang 1GB SD card ay nag-aalok ng maraming kapasidad sa pagrekord.

Sa panahon ng pag-record maaari mong ipasok ang mga linya ng marker upang hatiin ang bakas at suriin nang hiwalay ang iba't ibang mga phase ng session.

Hakbang 2: Supply ng Lakas ng LiPo - Mga Skematika, Bahagi at Assembly

LiPo Power Supply - Mga Skema, Bahagi at Assembly
LiPo Power Supply - Mga Skema, Bahagi at Assembly
LiPo Power Supply - Mga Skema, Bahagi at Assembly
LiPo Power Supply - Mga Skema, Bahagi at Assembly

Sinasakop ng Power Supply ang ilalim ng kaso. Maliban sa trimpot walang sangkap na lumampas sa 7 mm taas, na nagbibigay ng puwang upang mai-mount ang HR receiver at microcontroller circuit sa itaas ng power supply.

Ginamit ko ang mga sumusunod na bahagi:

  • 3.7V LiPo na baterya (ang anumang baterya ng telepono ay maaaring ma-recycle, ang nabawasan na kapasidad ay hindi isang isyu dito)
  • Module ng singilin ang USB TP4056, binili ko ito rito
  • SX1308 DC boost converter, binili ko ito rito
  • Maliit na prototyping board 40 x 30 mm
  • Cable na may konektor na JST 2, 54mm 2 pin, tulad ng isang ito
  • (opsyonal) JST konektor 2mm 2 pin, tulad ng isang ito
  • (opsyonal) Cable na may konektor ng JST 2mm 2 pin, tulad ng isang ito

Ang paggamit ng huling dalawang item ay nakasalalay sa bateryang gagamitin mo at sa paraang nais mong ikonekta ito sa module ng charger. Iminumungkahi ko ang 2mm JST konektor dahil maraming mga baterya ang naihatid na naka-attach na cable at 2mm plug, anumang iba pang solusyon ay sapat hangga't pinapayagan nito ang isang madaling kapalit ng baterya kung kinakailangan. Sa anumang kaso, mag-ingat upang maiwasan ang mga maikling circuit sa pagitan ng mga poste ng baterya sa panahon ng pagpupulong.

Ang module na TP4056 ay pinalakas mula sa isang micro USB port at idinisenyo para sa pagsingil ng mga rechargeable na baterya ng lithium gamit ang pare-pareho / kasalukuyang-boltahe (CC / CV) na pamamaraan ng pagsingil. Bilang karagdagan sa ligtas na pagsingil ng isang baterya ng lithium ang module ay nagbibigay din ng kinakailangang proteksyon na kinakailangan ng mga baterya ng lithium.

Ang SX1308 ay isang mataas na kahusayan DC / DC Hakbang Up Adjustable Converter na pinapanatili ang output boltahe pare-pareho sa + 5V na may isang minimum na boltahe ng pag-input ng 3V, kaya pinapayagan ang kumpletong pagsasamantala sa kapasidad ng baterya. Ayusin ang output boltahe gamit ang trimpot sa + 5V bago ikonekta ang microcontroller circuit!

Ang kabuuang pagkonsumo ng Data Logger ay nasa paligid ng 20mA, sa gayon kahit na ang isang ginamit na baterya na may isang natitirang kapasidad na 200mAh (<20% ng paunang kapasidad ng isang bagong baterya ng telepono) ay magpapahintulot sa 10 oras na pagrekord. Ang tanging sagabal ay ang kasalukuyang quiescent ng SX1308 ay nasa paligid ng 2mA, kaya mas mahusay mong idiskonekta ang baterya kung hindi mo ginagamit ang Data Logger sa mahabang panahon.

Dahil sa maliit na sukat, ang parehong mga module ay kailangang maayos gamit ang mga butas ng koneksyon pareho para sa elektrikal at mekanikal na koneksyon sa prototyping board, sa pamamagitan ng mga maikling piraso ng kawad na tanso. Sa turn ang board ay nakakabit sa base ng kaso na may isang 3mm x 15mm na tornilyo (ang haba ay sapat upang ikabit ang circuit ng microcontroller sa itaas na may parehong tornilyo). Ang board ay nagho-host ng konektor ng JST 2mm para sa baterya (magagamit lamang sa bersyon ng SMD, ngunit natitiklop ang mga pin nang patayo maaari mong "i-on" ito sa isang bersyon ng PTH) at lahat ng mga pag-wirings alinsunod sa mga eskematiko. Upang matiyak lamang, idinikit ko ang katawan ng konektor sa board na nakakamit ang isang mahusay na mekanikal na selyo.

Ang baterya ay inilalagay nang patag sa natitirang lugar ng ilalim ng kaso, at sa likod nito ay mayroong pangalawang 3mm x 15mm na tornilyo na may isang 8mm na patayong spacer upang maiwasan ang mga contact sa pagitan ng tuktok ng baterya (na kung saan ay pa rin naka-insolate) at sa ilalim ng itaas na circuit.

Hakbang 3: Tagatanggap ng HR at Data Logger - Mga Skematika, Bahagi at Assembly

HR Receiver at Data Logger - Mga Skema, Bahagi at Assembly
HR Receiver at Data Logger - Mga Skema, Bahagi at Assembly
HR Receiver at Data Logger - Mga Skema, Bahagi at Assembly
HR Receiver at Data Logger - Mga Skema, Bahagi at Assembly
HR Receiver at Data Logger - Mga Skema, Bahagi at Assembly
HR Receiver at Data Logger - Mga Skema, Bahagi at Assembly

Ang pangunahing board ay binubuo ng:

  • Prototyping board 40mm x 120mm
  • Inductance 39mH, gumamit ako ng BOURNS RLB0913-393K
  • 2 x Kapasitor 22nF
  • Kapasitor 4.7nF
  • Kapasitor 47nF
  • Capacitor 39pF
  • Electolytic Capacitor 10uF / 25V
  • Electrolytic Capacitor 1uF / 50V
  • 3 x Resistor 10K
  • 2 x Resistor 100K
  • 3 x Resistor 1K
  • 4 x Resistor 220R
  • Resistor 1M
  • Resistor 47K
  • Resistor 22K
  • Trimpot 50K
  • Diode 1N4148
  • LED 3mm Blue
  • 2 x LED 3mm Green
  • LED 3mm Dilaw
  • LED 3mm Red
  • Dobleng Mababang-Ingay JFET-Input Operational Amplifiers TL072P
  • Hex Inverting Schmitt Trrigger 74HC14
  • Ang konektor ng JST 2.54mm 2 Pin, tulad ng isang ito
  • 2 x microswitches, uri ng Alcoswitch
  • Microcontroller Arduino Pro Mini, 16MHz 5V
  • Micro SD card module SPI 5V mula sa DFRobots

Ang dalas ng resonance ng parallel na resonant tank na binubuo ng L1 at C1 ay nasa 5.4kHz, na tumutugma sa sapat na 5.3kHz ng magnetic field carrier ng naihatid na signal upang i-convert ito sa isang boltahe. Tandaan na, sa karamihan ng mga kaso, ang carrier ay naka-modulate sa base ng isang simpleng format na OOK (On-OFF Keying), kung saan binabago ng bawat pulso ng puso ang carrier na "ON" nang halos 10ms. Ang napansin na signal ay napaka mahina (tipically isang 1mV sinewave sa layo na 60-80cm mula sa pinagmulan, sa kondisyon na ang axis ng inductance ay maayos na nakahanay sa magnetic field), sa gayon kinakailangan itong maingat na palakasin upang maiwasan ang mga panghihimasok at pekeng mga pagtuklas. Ang iminungkahing circuit ay ang resulta ng aking pinakamahusay na pagsisikap at ng mga oras ng pagsubok sa iba't ibang mga kundisyon. Kung interesado ka sa pagpapalalim ng aspetong ito - at marahil ay pagpapabuti nito - tingnan ang susunod na hakbang, kung hindi maaari mo itong laktawan.

Ang sumusunod na mga pintuang Schmitt Trigger ay nagsasagawa ng digitalisasyon at isang pag-andar sa rurok ng pagtuklas, na pinapanumbalik ang orihinal na modulate signal, na ipinapasa sa Arduino Pro Mini.

Ang board ng Pro Mini microcontroller ay perpekto para sa proyektong ito dahil ang kristal sa board ay nagpapahintulot sa isang mataas na katumpakan ng mga sukat (na kung saan ay mahalaga sa ilalim ng "medikal" na pananaw, tingnan ang huling hakbang), at sa parehong oras libre ito mula sa anumang iba pang hindi kinakailangan na aparato, na nagreresulta sa isang mababang paggamit ng kuryente. Ang tanging sagabal ay upang mai-load ang code kakailanganin mo ang isang FTDI interface upang ikonekta ang Pro Mini sa USB port ng iyong computer. Ang Pro Mini ay konektado sa:

  • Lumipat S1: simulan ang Pagrekord
  • Lumipat S2: ipasok ang Marker
  • Blue LED: kumikislap kapag nakita ang isang wastong pulso
  • Green LED: Nagsimula ang pag-record
  • Dilaw na LED: Ipinasok ang marker (maikling blink) / Timeout (naayos)
  • Module ng MicroSD card (sa pamamagitan ng SPI bus)

Iba't ibang mula sa maraming mga module ng SD card na nagpapatakbo sa 3.3V, Ang module ng DFRobot ay nagpapatakbo sa 5V, kaya walang kinakailangang antas ng shifter.

Tungkol sa pagpupulong, maaari mong mapansin na hinati ko ang prototyping board sa dalawang piraso, na konektado sa dalawang maliit na "tulay" ng matigas na 1mm tanso na tanso. Ito ay kinakailangan upang itaas ang module ng MicroSD card sa isang pangatlong "antas ng konstruksyon" at ihanay ito sa recess na aking kinulit sa kaso, sa itaas lamang ng slit para sa USB port. Bukod dito, nag-ukit ako ng tatlong recesses sa board mismo, isa upang ma-access ang potentiometer ng converter ng DC / DC, isa pa upang ma-access ang konektor ng serial bus ng Arduino Pro Mini (naka-mount na "down down"), at ang pangatlo para sa inductance

Hakbang 4: HR Receiver - Spice Simulation

HR Receiver - Spice Simulation
HR Receiver - Spice Simulation

Simula mula sa disenyo ni Peter Borst na nabanggit ko dati, ang aking hangarin ay upang subukang pahabain ang saklaw ng pagtuklas hangga't maaari, sa parehong oras na nililimitahan ang pagkasensitibo sa mga pagkagambala at pagbuo ng mga maling pulso.

Napagpasyahan kong baguhin ang orihinal na solong solusyon na Op-Amp sapagkat napatunayan nitong maging masyadong sensitibo sa mga pagkagambala, marahil dahil ang halaga ng resistor ng 10M na feedback ay masyadong mataas, at upang hatiin ang pangkalahatang pakinabang sa dalawang yugto.

Ang parehong mga yugto ay may isang DC makakuha ng G = 100, na bumababa sa paligid ng 70 @ 5.4KHz, ngunit may iba't ibang input impedance upang ma-optimize ang pagiging sensitibo.

Ipagpalagay natin na ang boltahe ng pinakamahina na signal na nabuo ng tank ng LC ay 1mV.

Kung ibabago namin ang buong circuit ng tatanggap sa isang kapaligiran sa Spice (gumagamit ako ng ADIsimPE) na pinapalitan ang LC parallel circuit na may isang sine generator na may parehong boltahe at dalas (5.4KHz) at patakbuhin ang simulation, napansin namin na ang output voltage V1 mula sa ika-1 Ang amplifier ay pa rin ng isang sinewave (dahil sa scale factor ang input sinewave ay hindi napahahalagahan), mula sa amplifier ay gumagana sa linear zone. Ngunit pagkatapos ng pangalawang yugto, ipinapakita ng output voltage V2 na naaabot na namin ang saturation (Vhigh = Vcc-1.5V / Vlow = 1.5V). Sa katunayan, ang pamilya TL07x ay hindi idinisenyo para sa riles sa riles ouput saklaw, ngunit ito ay sapat na upang lumampas sa isang ligtas na margin sa parehong antas ng treshold ng Schmitt Trigger gate at makabuo ng isang malinis na squarewave (V3).

Hakbang 5: Software

Software
Software

Dahil sa mataas na nakuha ng yugto ng tagatanggap, at sa kabila ng yugto ng rurok ng detektor na kumikilos nang karaniwang bilang isang mababang pass filter, ang input signal sa pin D3 ng Arduino Pro Mini ay maaari pa ring mabalisa at kinakailangang paunang maproseso sa pamamagitan ng isang pagsusuri ng bisa laban sa maling pagtuklas. Tinitiyak ng code na ang dalawang mga kundisyon ay natutugunan upang isaalang-alang ang isang pulso bilang wasto:

  1. Ang pulso ay dapat tumagal ng hindi bababa sa 5ms
  2. Ang minimum na katanggap-tanggap na agwat sa pagitan ng dalawang sunud-sunod na pulso ay 100ms (naaayon sa 600 bpm, higit sa limitasyon ng isang matinding tachycardia!)

Kapag napatunayan ang pulso, ang agwat (sa ms) mula sa nakaraang isa ay sinusukat at nakaimbak sa SD card sa isang file na "datalog.txt", kasama ang isang timestamp sa format na hh: mm: ss, kung saan 00:00: Kinakatawan ng 00 ang oras ng huling pag-reset ng microcontroller. Kung nawawala ang SD card, ang pulang LED ay nag-iilaw na nagpapahiwatig ng error.

Ang isang bagong bakas ng pagrekord ay maaaring masimulan / itigil sa Start / Stop switch S1, at makikilala ng isang "; Start" at "; Stop" na marker line ayon sa pagsisimula at sa pagtatapos ng text file.

Kung walang napansin na pulso para sa isang oras na mas mahaba kaysa sa 2400 ms (25 bpm), isang marker line na "; Timeout" ay inilalagay sa file at ang dilaw na LED D4 ay nakabukas.

Kung ang Marker Switch S2 ay pinindot habang nagre-record ng isang karagdagang linya ng marker sa format na "; MarkerNumber", na may awtomatikong pagtaas ng marker number na nagsisimula sa 0, ay nakasulat sa file, at ang dilaw na LED ay kumikislap kaagad.

Ikinabit ang kumpletong Arduino code.

Hakbang 6: Paunang Pag-set up at Pagsubok

Image
Image
Paunang Pag-set up at Pagsubok
Paunang Pag-set up at Pagsubok

Hakbang 7: Paggamit - Pagsusuri sa Pag-sign ng Medikal

Paggamit - Pagsusuri sa Pag-sign ng Medikal
Paggamit - Pagsusuri sa Pag-sign ng Medikal

Ang form ng enclosure na ginamit ko ay sapat na malapit sa isa sa isang smartphone upang maaari mong makita sa merkado ang maraming mga accessories upang magsuot nito o upang mai-mount ito sa isang kagamitan sa pag-eehersisyo. Sa partikular para sa bisikleta maaari kong magmungkahi ng unibersal na mount ng smartphone na pinangalanang "Finn", na ginawa ng kumpanya ng Austrian Bike Citizens. Mura (€ 15, 00) at madaling i-mount, ito ay talagang unibersal at tulad ng nakikita mo sa larawan na perpekto din para sa Cardio Data Logger

Ang pinakasimpleng paraan upang magamit ang hilaw na data na naitala ng Data Logger ay ang paglalagay ng mga ito sa isang grap na gumagamit ng mga karaniwang programa ng PC (hal. Excel). Sa pamamagitan ng paghahambing ng mga grap na nakuha na inuulit ang parehong ehersisyo, o pag-aralan ang ugnayan sa pagitan ng mga pagkakaiba-iba ng HR at pisikal na pagsisikap, maaari mong i-optimize ang dosis ng mga puwersa sa panahon ng aktibidad.

Ngunit ang pinakadakilang interes ay ang pag-aaral ng HR, at partikular ang HR Variablity (HRV), para sa mga medikal na layunin. Hindi tulad ng isang track ng ECG, ang bakas ng HR ay hindi naglalaman ng direktang impormasyon tungkol sa paggana ng kalamnan ng puso. Gayunpaman, ang pagsusuri nito mula sa isang statstical point of view ay nagbibigay-daan upang makakuha ng iba pang impormasyon ng klinikal na interes.

Ang pinaka-kumpletong mapagkukunan ng kaalaman tungkol sa HRV ay ang kumpanya ng Finnish KUBIOS. Sa kanilang site maaari kang makahanap ng maraming impormasyon tungkol sa mga Biomedical Signal at maaari mong i-download ang "KUBIOS HRV Standard", isang libreng software ng pagsusuri sa pagkakaiba-iba ng rate ng puso para sa pagsasaliksik na hindi pang-komersyo at personal na paggamit. Ang tool na ito ay hindi lamang pinapayagan kang magplano ng mga grap mula sa isang simpleng file ng teksto (dapat mong alisin ang mga timestamp) ngunit din upang maisagawa ang mga pagsusuri sa istatistika at matematika (kabilang ang FFT) at gumawa ng isang hindi kapani-paniwalang detalyado at mahalagang ulat, tulad ng isang nakakabit sa ibaba.

Tandaan na ang isang dalubhasang manggagamot lamang ang maaaring magpasya kung anong mga pagsusulit ang kinakailangan para sa pagsasanay sa palakasan sa anumang antas, at upang masuri ang kanilang mga kinalabasan.

Ang Instructable na ito ay naisulat na may nag-iisang hangarin na lumikha ng interes at kasiyahan sa paglalapat ng electronics sa pangangalaga ng kalusugan.

Inaasahan kong nasiyahan ka dito, maligayang pagdating sa mga komento!

Inirerekumendang: