INHOUDSOPGAWE:

Cardio Data Logger: 7 stappe (met foto's)
Cardio Data Logger: 7 stappe (met foto's)

Video: Cardio Data Logger: 7 stappe (met foto's)

Video: Cardio Data Logger: 7 stappe (met foto's)
Video: Штукатурка стен - самое полное видео! Переделка хрущевки от А до Я. #5 2024, November
Anonim
Cardio data logger
Cardio data logger

Alhoewel daar tans baie draagbare toestelle (slimbande, slimhorlosies, slimfone, …) beskikbaar is wat die hartklop (HR) kan opspoor en spooranalise kan uitvoer, is stelsels wat gebaseer is op die borsband (soos die in die boonste deel van die prentjie) steeds beskikbaar wydverspreid en gebruik, maar het nie die moontlikheid om die spoor van die metings aan te teken en uit te voer nie.

In my vorige Instructable Cardiosim het ek 'n simulator van 'n borsband (Cardio) aangebied wat verduidelik dat een van my volgende stappe was om 'n hartklopdatalogger te ontwikkel. Ek is nou gereed om dit in hierdie instruksies aan te bied. Die funksie van hierdie draagbare eenheid is om die HR -sein te ontvang wat deur 'n borsband (of die Cardiosim -simulator) gestuur word tydens 'n oefensessie (oefensessie/fietsry/hardloop, …) en om die spoor op 'n SD -kaart op te teken om voer 'n na-opleiding prestasie-analise uit (sien besonderhede in die laaste hoofstuk).

Die eenheid word aangedryf deur 'n herlaaibare batterystelsel, insluitend 'n laaikring en 'n DC -versterkingsreguleerder.

Uit my "pakhuis" van ongebruikte materiaal het ek 'n geskikte plastiekkas (135mm x 45mm x 20mm) opgevang en daarby die uitleg van die kring aangepas om bymekaar te pas, wat 'n werkende prototipe maak wat aan my behoeftes voldoen (maar waarvan die besef ruimte laat vir verbetering:-))

Stap 1: Kort beskrywing

Raadpleeg stap 1 van die Cardiosim Instructable vir 'n vinnige inleiding oor die LFMC (lae frekwensie magnetiese kommunikasie) tegnologie wat deur hierdie soort toestelle gebruik word.

My eerste bedoeling was om die Sparkfun RMCM01 -module as ontvanger -koppelvlak te gebruik, maar hierdie produk is nie meer beskikbaar nie (laat staan dat dit in elk geval redelik duur was).

Toe ek op die WEB kyk, het ek hierdie interessante tutoriaal gevind, wat 'n paar alternatiewe oplossings toon om die RMCM01 te vervang. Ek het die derde opsie gekies ("Peter Borst Design", dankie Peter!), En ek het 'n uitstekende resultaat behaal met dieselfde L/C -komponente van die Cardiosim, maar ook hier gekoppel as parallelle resonante tenk. Die bespeurde sein word versterk, "skoongemaak", gedekodeer en na 'n Arduino Pro Mini -mikrobeheerder gestuur. Die program bekragtig die ontvangde pulse, meet die hartklop (of beter die interval tussen twee opeenvolgende pulse) en stoor alle gemete intervalle in 'n ASCII -tekslêer (een reël per geldige pols, 16 karakters elk, insluitend interval, tydstempel en LF/CR) op die microSD -kaart. Gestel van 'n gemiddelde HR van 80 bpm, benodig 'n uur -opname slegs (4800 teksreëls x 16 karakters) = 76800 /1024 = 75kBytes, en selfs 'n goedkoop SD -kaart van 1 GB bied baie opnamekapasiteit.

Tydens die opname kan u merkerlyne invoeg om die spoor te verdeel en verskillende sessiefases afsonderlik te evalueer.

Stap 2: LiPo -kragtoevoer - skema's, onderdele en samestelling

LiPo -kragtoevoer - skema's, onderdele en samestelling
LiPo -kragtoevoer - skema's, onderdele en samestelling
LiPo -kragtoevoer - skema's, onderdele en samestelling
LiPo -kragtoevoer - skema's, onderdele en samestelling

Die kragtoevoer beslaan die onderkant van die saak. Behalwe vir die trimpot, is geen komponent meer as 7 mm hoog nie, wat ruimte bied om die HR -ontvanger en mikrobeheerkring bo die kragtoevoer te monteer.

Ek het die volgende dele gebruik:

  • 3.7V LiPo -battery (enige telefoonbattery kan herwin word, verminderde kapasiteit is hier nie 'n probleem nie)
  • USB TP4056 laai module, ek het dit hier gekoop
  • SX1308 DC boost converter, ek het dit hier gekoop
  • Klein prototipe bord 40 x 30 mm
  • Kabel met JST -aansluiting 2, 54 mm 2 -pen, soos hierdie
  • (opsioneel) JST -aansluiting 2 mm 2 pen, soos hierdie
  • (opsioneel) Kabel met JST -aansluiting 2 mm 2 pen, soos hierdie

Die gebruik van die laaste twee items hang af van die battery wat u gaan gebruik en die manier waarop u dit met die laaier wil koppel. Ek stel die 2 mm JST -aansluiting voor, want baie batterye word met 'n reeds aangehegte kabel en 'n 2 mm -prop voorsien, maar enige ander oplossing is voldoende, solank dit die battery maklik kan vervang indien nodig. Wees in elk geval versigtig om kortsluitings tussen die batterypale tydens die montering te vermy.

Die TP4056-module word aangedryf deur 'n mikro-USB-poort en is ontwerp vir die laai van herlaaibare litiumbatterye met behulp van die laaimetode met konstante stroom / konstante spanning (CC / CV). Benewens die veilig laai van 'n litiumbattery, bied die module ook die nodige beskerming wat litiumbatterye benodig.

Die SX1308 is 'n hoë -effektiewe DC/DC Step Up verstelbare omskakelaar wat die uitgangsspanning konstant hou op +5V met 'n minimum insetspanning van 3V, wat die batterykapasiteit volledig kan benut. Pas die uitgangsspanning met die trimpot by +5V aan voordat u die mikrobeheerkring aansluit!

Die totale verbruik van die datalogger is ongeveer 20mA, dus kan selfs 'n gebruikte battery met 'n restkapasiteit van 200mAh (<20% van die aanvanklike kapasiteit van 'n nuwe telefoonbattery) 10 uur se opname toelaat. Die enigste nadeel is dat die stilstaande stroom van die SX1308 ongeveer 2mA is, sodat u die battery beter kan ontkoppel as u die data -logger nie lank gebruik nie.

Vanweë die klein grootte moet albei modules deur middel van kort stukke koperdraad vasgemaak word met behulp van die verbindingsgate, beide vir elektriese en meganiese verbinding met die prototipe bord. Op sy beurt word die bord met 'n 3 mm x 15 mm -skroef aan die onderkant van die omhulsel vasgemaak (die lengte is genoeg om die mikrobeheerkring hierbo met dieselfde skroef vas te maak). Die bord huisves die JST 2 mm -aansluiting vir die battery (slegs beskikbaar in SMD -weergawe, maar as u die penne vertikaal vou, kan u dit in 'n PTH -weergawe "draai") en al die bedrading volgens die skema. Net om seker te wees, het ek die liggaam van die connector aan die bord vasgemaak om 'n goeie meganiese seël te verkry.

Die battery word in die oorblywende gedeelte van die onderkant van die omhulsel plat geplaas, en daaragter is 'n tweede skroef van 3 mm x 15 mm met 'n 8 mm vertikale afstandhouer om kontak tussen die bokant van die battery (wat in elk geval geïsoleer is) en die onderkant van die boonste kring.

Stap 3: HR -ontvanger en datalogger - skema's, onderdele en samestelling

HR -ontvanger en datalogger - skema's, onderdele en samestelling
HR -ontvanger en datalogger - skema's, onderdele en samestelling
HR -ontvanger en datalogger - skema's, onderdele en samestelling
HR -ontvanger en datalogger - skema's, onderdele en samestelling
HR -ontvanger en datalogger - skema's, onderdele en samestelling
HR -ontvanger en datalogger - skema's, onderdele en samestelling

Die hoofbord bestaan uit:

  • Prototipe bord 40mm x 120mm
  • Induktansie 39mH, ek het BOURNS RLB0913-393K gebruik
  • 2 x Kondensator 22nF
  • Kondensator 4.7nF
  • Kondensator 47nF
  • Kondensator 39pF
  • Elektolitiese kondensator 10uF/25V
  • Elektrolitiese kondensator 1uF/50V
  • 3 x Weerstand 10K
  • 2 x Weerstand 100K
  • 3 x Weerstand 1K
  • 4 x Weerstand 220R
  • Weerstand 1M
  • Weerstand 47K
  • Weerstand 22K
  • Trimpot 50K
  • Diode 1N4148
  • LED 3 mm blou
  • 2 x LED 3 mm groen
  • LED 3 mm geel
  • LED 3 mm rooi
  • Dubbele lae-geraas JFET-ingang operasionele versterkers TL072P
  • Hex Inverting Schmitt Trrigger 74HC14
  • JST -aansluiting 2.54mm 2 pen, soos hierdie
  • 2 x mikroskakelaars, tipe Alcoswitch
  • Mikrokontroleur Arduino Pro Mini, 16MHz 5V
  • Micro SD -kaartmodule SPI 5V van DFRobots

Die resonansfrekwensie van die parallelle resonante tenk wat deur L1 en C1 saamgestel is, is ongeveer 5,4 kHz, wat ooreenstem met die 5,3 kHz van die magnetiese velddraer van die gestuurde sein om dit in 'n spanning te omskep. Onthou dat die draer in die meeste gevalle gemoduleer is op die basis van 'n eenvoudige OOK (On-OFF Keying) -formaat, waar elke hartpuls die draer ongeveer 10 ms aanskakel. Die bespeurde sein is baie swak (tipies 'n 1mV sinusgolf op 'n afstand van 60-80 cm van die bron, mits die as van die induktansie behoorlik in lyn is met die magnetiese veld), daarom moet dit versigtig versterk word om interferensies en valsheid te voorkom opsporing. Die voorgestelde kring is die gevolg van my beste pogings en ure se toetsing in verskillende omstandighede. As u belangstel om hierdie aspek te verdiep - en miskien te verbeter - kyk dan na die volgende stap, anders kan u dit oorslaan.

Die volgende Schmitt Trigger -hekke voer die digitalisering en 'n piekopsporingsfunksie uit, en herstel die oorspronklike modulerende sein wat na die Arduino Pro Mini gestuur word.

Die Pro Mini -mikrokontrollerbord is perfek vir hierdie projek, omdat die kristal aan boord 'n hoë presisie van die metings moontlik maak (wat noodsaaklik is onder die 'mediese' oogpunt, sien die laaste stap), en terselfdertyd is dit vry van enige ander meting toestel wat nie nodig is nie, wat 'n lae kragverbruik tot gevolg het. Die enigste nadeel is dat u 'n FTDI -koppelvlak benodig om die kode te laai om die Pro Mini aan die USB -poort van u rekenaar te koppel. Die Pro Mini is gekoppel aan:

  • Skakelaar S1: begin opname
  • Skakelaar S2: voeg Merk in
  • Blou LED: flits wanneer 'n geldige polsslag waargeneem word
  • Groen LED: opname begin
  • Geel LED: merker ingevoeg (kort knipoog) / Timeout (vas)
  • MicroSD -kaartmodule (via SPI -bus)

Anders as baie SD -kaartmodules wat op 3.3V werk, werk die DFRobot -module teen 5V, dus is daar geen vlakverskuiwing nodig nie.

Wat die samestelling betref, sien u miskien dat ek die prototipe -bord in twee stukke verdeel het, verbind met twee klein "brûe" van stewige 1 mm koperdraad. Dit was nodig om die MicroSD -kaartmodule tot 'n derde "konstruksievlak" te verhoog en in lyn te bring met die uitsparing wat ek op die omhulsel gesny het, net bokant die spleet vir die USB -poort. Verder het ek drie uitsparings op die bord self gekerf, een om toegang te verkry tot die potensiometer van die DC/DC -omskakelaar, 'n ander om toegang tot die aansluiting van die seriële bus van die Arduino Pro Mini (gemonteer "onderkant"), en die derde vir die induktansie.

Stap 4: HR -ontvanger - spesery -simulasie

HR -ontvanger - speserye -simulasie
HR -ontvanger - speserye -simulasie

Uitgaande van die ontwerp van Peter Borst wat ek voorheen genoem het, was my doel om die detectiebereik so veel as moontlik uit te brei, terselfdertyd die sensitiwiteit vir interferensies en die opwekking van valse pulse te beperk.

Ek het besluit om die oorspronklike enkele Op-Amp-oplossing te verander omdat dit bewys is dat dit te sensitief is vir interferensies, waarskynlik omdat die waarde van die 10M terugvoerweerstand te hoog is, en om die algehele wins in twee fases te verdeel.

Beide fases het 'n GS -versterking G = 100, wat ongeveer 70 @5.4KHz afneem, maar met verskillende insetimpedansie om die sensitiwiteit te optimaliseer.

Kom ons neem aan dat die spanning van die swakste sein wat deur die LC -tenk gegenereer word, 1mV is.

As ons die hele ontvanger -kring in 'n speseryomgewing omskakel (ek gebruik ADIsimPE) deur die LC -parallelle stroombaan met 'n sinusgenerator met dieselfde spanning en frekwensie (5.4KHz) te vervang en die simulasie uit te voer, sien ons dat die uitsetspanning V1 vanaf die 1ste versterker is steeds 'n sinusgolf (as gevolg van skaalfaktor is die insetsinusgolf nie merkbaar nie), as die versterker in die lineêre sone werk. Maar na die tweede fase toon die uitgangsspanning V2 dat ons nou die versadiging bereik (Vhigh = Vcc-1.5V / Vlow = 1.5V). Trouens, die TL07x -familie is nie ontwerp vir die bereik van spoor tot spoor nie, maar dit is genoeg om beide die drempelvlakke van die Schmitt Trigger -hek met 'n veilige marge te oorskry en 'n skoon vierkantgolf (V3) te genereer.

Stap 5: sagteware

Sagteware
Sagteware

Vanweë die hoë versterking van die ontvangerfase, en ondanks die piekdetektorstadium wat basies as 'n laagdeurlaatfilter optree, kan die insetsein op pen D3 van die Arduino Pro Mini steeds sterk versteur word en digitaal vooraf verwerk moet word deur 'n geldigheidstoets teen valse opsporing. Die kode verseker dat aan twee voorwaardes voldoen word om 'n pols as geldig te beskou:

  1. Die polsslag moet minstens 5 ms duur
  2. Die minimum aanvaarbare interval tussen twee opeenvolgende pulse is 100 ms (wat ooreenstem met 600 bpm, ver buite die limiet van ernstige tagikardie!)

Sodra die pols gevalideer is, word die interval (in ms) van die vorige een gemeet en op die SD -kaart gestoor in 'n lêer "datalog.txt", tesame met 'n tydstempel in hh: mm: ss -formaat, waar 00:00: 00 verteenwoordig die tyd van die laaste herstel van die mikrobeheerder. As die SD -kaart ontbreek, brand die rooi LED wat 'n fout aandui.

'N Nuwe opnamespoor kan met die Start/Stop -skakelaar S1 begin/gestop word, en sal onderskeidelik aan die begin en aan die einde van die tekslêer geïdentifiseer word met 'n "; Start" en "; Stop" merkerlyn.

As daar vir 'n tyd langer as 2400 ms (25 bpm) geen polsslag bespeur word nie, word 'n merkerlyn "; Timeout" in die lêer geplaas en die geel LED D4 word aangeskakel.

As die merkerskakelaar S2 ingedruk word tydens die opname, word 'n ekstra merklyn in die formaat "; MarkerNumber", met outomatiese toename van die merkernommer vanaf 0, in die lêer geskryf, en die geel LED flits kort.

Heg die volledige Arduino -kode aan.

Stap 6: Aanvanklike opstelling en toetsing

Image
Image
Aanvanklike opstelling en toetsing
Aanvanklike opstelling en toetsing

Stap 7: Gebruik - Mediese seinanalise

Gebruik - Mediese seinanalise
Gebruik - Mediese seinanalise

Die vorm van die omhulsel wat ek gebruik het, is naby genoeg aan die van 'n slimfoon, sodat u baie bykomstighede op die mark kan vind om dit aan te trek of om dit op 'n oefentoerusting te monteer. In die besonder vir die fiets kan ek die universele slimfoonhouer met die naam "Finn" voorstel, vervaardig deur die Oostenrykse Bike Citizens -onderneming. Goedkoop (€ 15, 00) en maklik om te monteer, dit is regtig universeel en soos u op die foto kan sien, is dit ook perfek vir die Cardio Data Logger

Die eenvoudigste manier om die rou data wat deur die Data Logger aangeteken is, te gebruik, is om dit in 'n grafiek te teken met behulp van standaard rekenaarprogramme (bv. Excel). Deur die vergelyking van grafieke wat dieselfde oefening herhaal word, te vergelyk of die korrelasie tussen HR -variasies en fisiese inspanning te ontleed, kan u die dosis kragte tydens die aktiwiteit optimaliseer.

Maar die grootste belangstelling is die studie van die HR, en veral die HR -veranderlikheid (HRV), vir mediese doeleindes. Anders as 'n EKG -baan, bevat die HR -spoor nie direkte inligting oor die werking van die hartspier nie. Die ontleding daarvan vanuit 'n statiese oogpunt maak dit egter moontlik om ander inligting van kliniese belang te bekom.

Die mees omvattende kennisbron oor HRV is die Finse KUBIOS -onderneming. Op hul webwerf kan u baie inligting oor biomediese seine vind, en u kan 'KUBIOS HRV Standard' aflaai, 'n gratis sagteware vir die analise van hartklopveranderlikheid vir nie-kommersiële navorsing en vir persoonlike gebruik. Met hierdie instrument kan u nie net grafieke uit 'n eenvoudige tekslêer teken nie (u moet die tydstempels verwyder), maar ook om statistiese en wiskundige evaluerings (insluitend FFT) uit te voer en 'n ongelooflike gedetailleerde en waardevolle verslag op te stel, soos die hieronder aangeheg.

Onthou dat slegs 'n gespesialiseerde dokter kan besluit watter eksamens op enige vlak vir sportoefeninge nodig is en die uitkomste daarvan kan evalueer.

Hierdie instruksies is geskryf met die uitsluitlike bedoeling om belangstelling en plesier te skep in die toepassing van elektronika op gesondheidsorg.

Ek hoop julle het dit geniet, kommentaar is welkom!

Aanbeveel: