Съдържание:

Кардио регистратор на данни: 7 стъпки (със снимки)
Кардио регистратор на данни: 7 стъпки (със снимки)

Видео: Кардио регистратор на данни: 7 стъпки (със снимки)

Видео: Кардио регистратор на данни: 7 стъпки (със снимки)
Видео: Навигация 7 инча 2024, Ноември
Anonim
Кардио регистратор на данни
Кардио регистратор на данни

Въпреки че в днешно време са налични много преносими устройства (смарт ленти, интелигентни часовници, смартфони …), които могат да открият сърдечната честота (HR) и да извършат анализ на следите, системите, базирани на колани на гръдния колан (като тази в горната част на снимката) все още са широко разпространени и използвани, но без възможност за записване и експортиране на следите от измерванията.

В предишния си Cardiosim с инструктиране съм представил симулатор на колан за гръдния колан (Cardio), обяснявайки, че една от следващите ми стъпки е да разработя регистратор на данни за сърдечната честота. Вече съм готов да го представя в тази инструкция. Функцията на това преносимо устройство е да приема HR сигнала, изпратен от колан за гръдна лента (или симулатора Cardiosim) по време на тренировъчна сесия (тренировка/колоездене/бягане, …) и да записва следата на SD карта, за да направете анализ на ефективността след тренировка (вижте подробности в последната глава).

Устройството се захранва от акумулаторна батерийна система, включваща верига за зареждане и DC усилващ регулатор.

От моя „склад“от неизползван материал извадих подходящ пластмасов калъф (135 мм х 45 мм х 20 мм) и го приспособих към схемата на схемата, така че да съвпадне, правейки работещ прототип, който отговаря на моите нужди (но чиято реализация оставя място за подобрение:-))

Стъпка 1: Кратко описание

Моля, вижте стъпка 1 от Cardiosim Instructable за кратко въведение относно технологията LFMC (нискочестотна магнитна комуникация), използвана от този вид устройства.

Първото ми намерение беше да използвам модула Sparkfun RMCM01 като интерфейс за приемник, но този продукт вече не се предлага (да не говорим, че така или иначе беше доста скъп).

Въпреки това, разглеждайки WEB, намерих този интересен урок, който показва някои алтернативни решения за замяна на RMCM01. Избрах третия вариант ("Peter Borst Design", благодаря Петър!), Постигайки отличен резултат, използвайки същите L/C компоненти на Cardiosim, но свързани тук като паралелен резонансен резервоар. Откритият сигнал се усилва, "почиства", декодира и препраща към микроконтролер Arduino Pro Mini. Програмата валидира получените импулси, измерва сърдечната честота (или по -добре интервала между два последователни импулса) и съхранява всички измерени интервали в ASCII текстов файл (по един ред на валиден импулс, по 16 знака, включително интервал, времева отметка и LF/CR) в microSD картата. Ако приемем, че средният HR е 80 удара в минута, един час запис се нуждае само (4800 текстови реда x 16 знака) = 76800 /1024 = 75 kBytes, следователно дори евтина SD карта с 1 GB предлага голям капацитет за запис.

По време на записа можете да вмъкнете маркери, за да разделите проследяването и да оцените отделно различните фази на сесията.

Стъпка 2: LiPo захранване - Схеми, части и монтаж

LiPo захранване - Схеми, части и монтаж
LiPo захранване - Схеми, части и монтаж
LiPo захранване - Схеми, части и монтаж
LiPo захранване - Схеми, части и монтаж

Захранващият блок заема дъното на корпуса. С изключение на тримпота, нито един компонент не надвишава 7 мм височина, което дава възможност за монтиране на HR приемника и микроконтролерната верига над захранването.

Използвах следните части:

  • 3.7V LiPo батерия (всяка батерия на телефона може да се рециклира, намаленият капацитет не е проблем тук)
  • USB модул за зареждане TP4056, купих го тук
  • SX1308 DC усилващ преобразувател, купих го тук
  • Малка дъска за прототипиране 40 x 30 мм
  • Кабел с JST конектор 2, 54 мм 2 пина, като този
  • (по избор) JST конектор 2 мм 2 пина, като този
  • (по избор) Кабел с JST конектор 2 мм 2 пина, като този

Използването на последните два елемента зависи от батерията, която ще използвате, и от начина, по който възнамерявате да я свържете към зарядния модул. Предлагам 2 мм JST конектор, тъй като много батерии се доставят с вече прикрепен кабел и 2 мм щепсел, всяко друго решение е подходящо, стига да позволява лесна подмяна на батерията, ако е необходимо. Във всеки случай, внимавайте да избегнете късо съединение между полюсите на батерията по време на монтажа.

Модулът TP4056 се захранва от микро USB порт и е предназначен за зареждане на акумулаторни литиеви батерии, използвайки метода за зареждане с постоянен ток / постоянно напрежение (CC / CV). В допълнение към безопасното зареждане на литиева батерия, модулът осигурява и необходимата защита, необходима от литиевите батерии.

SX1308 е високоефективен DC/DC Step Up регулируем преобразувател, който поддържа изходното напрежение постоянно при +5V с минимално входно напрежение 3V, като по този начин позволява пълното използване на капацитета на батерията. Регулирайте изходното напрежение с тримпота при +5V, преди да свържете веригата на микроконтролера!

Общата консумация на регистратора на данни е около 20mA, така че дори използваната батерия с остатъчен капацитет от 200mAh (<20% от първоначалния капацитет на нова батерия на телефона) ще позволи 10 часа запис. Единственият недостатък е, че токът на покой на SX1308 е около 2mA, така че по -добре изключете батерията, ако не използвате Data Logger за дълго време.

Поради малкия размер и двата модула трябва да бъдат фиксирани с помощта на свързващите отвори както за електрическо, така и за механично свързване с прототипната платка, чрез къси парчета медна жица. От своя страна платката е прикрепена към основата на кутията с винт 3 мм х 15 мм (дължината е достатъчна за закрепване на веригата на микроконтролера по -горе със същия винт). Платката съдържа JST 2 мм конектор за батерията (наличен само в SMD версия, но сгъването на щифтовете вертикално можете да го "завъртите" в PTH версия) и всички проводници според схемите. Само за да съм сигурен, залепих тялото на конектора към платката, постигайки добро механично уплътнение.

Батерията е поставена плоска в останалата част на дъното на кутията, а зад нея има втори винт 3 мм х 15 мм с 8 мм вертикален дистанционер, за да се избегнат контакти между горната част на батерията (която така или иначе е изолирана) и долната част на горна верига.

Стъпка 3: HR приемник и регистратор на данни - Схеми, части и монтаж

HR приемник и регистратор на данни - Схеми, части и монтаж
HR приемник и регистратор на данни - Схеми, части и монтаж
HR приемник и регистратор на данни - Схеми, части и монтаж
HR приемник и регистратор на данни - Схеми, части и монтаж
HR приемник и регистратор на данни - Схеми, части и монтаж
HR приемник и регистратор на данни - Схеми, части и монтаж

Основната платка се състои от:

  • Дъска за прототипиране 40 мм х 120 мм
  • Индуктивност 39mH, използвах BOURNS RLB0913-393K
  • 2 x кондензатор 22nF
  • Кондензатор 4.7nF
  • Кондензатор 47nF
  • Кондензатор 39pF
  • Електролитичен кондензатор 10uF/25V
  • Електролитен кондензатор 1uF/50V
  • 3 x резистор 10K
  • 2 x резистор 100K
  • 3 x резистор 1K
  • 4 x резистор 220R
  • Резистор 1М
  • Резистор 47K
  • Резистор 22K
  • Trimpot 50K
  • Диод 1N4148
  • LED 3 мм син
  • 2 x LED 3 мм Зелено
  • LED 3 мм жълт
  • LED 3 мм червен
  • Двойни нискошумови JFET-входни операционни усилватели TL072P
  • Шестнадесетичен инвертиращ Schmitt Trrigger 74HC14
  • JST конектор 2.54 мм 2 ПИН, като този
  • 2 х микропревключватели, тип Алко превключвател
  • Микроконтролер Arduino Pro Mini, 16MHz 5V
  • Модул за Micro SD карта SPI 5V от DFRobots

Резонансната честота на паралелния резонансен резервоар, съставен от L1 и C1, е около 5,4 kHz, което съответства достатъчно близо до 5,3 kHz на носителя на магнитното поле на предавания сигнал, за да го преобразува в напрежение. Не забравяйте, че в повечето случаи носителят е модулиран въз основа на прост OOK (On-OFF Keying) формат, където всеки сърдечен импулс превключва носителя „ON“за около 10ms. Откритият сигнал е много слаб (типично 1mV синусоида на разстояние 60-80cm от източника, при условие че оста на индуктивността е правилно подравнена с магнитното поле), поради което трябва да бъде усилен внимателно, за да се избегнат смущения и фалшиви откривания. Предложената схема е резултат от моите най -добри усилия и часове тестване при различни условия. Ако се интересувате от задълбочаване на този аспект - и може би подобряване - погледнете следващата стъпка, в противен случай можете да го пропуснете.

Следните порти на Schmitt Trigger изпълняват дигитализацията и функцията за откриване на пикове, възстановявайки оригиналния модулиращ сигнал, който се препраща към Arduino Pro Mini.

Микроконтролерната платка Pro Mini е идеална за този проект, тъй като кристалът на борда позволява висока прецизност на измерванията (които са от съществено значение от „медицинска“гледна точка, вижте последната стъпка) и в същото време е свободна от всякакви други не е необходимо устройство, което води до ниска консумация на енергия. Единственият недостатък е, че за да заредите кода, ще ви е необходим FTDI интерфейс, за да свържете Pro Mini към USB порта на вашия компютър. Pro Mini е свързан към:

  • Превключвател S1: започнете запис
  • Превключвател S2: поставете маркер
  • Син светодиод: мига, когато бъде открит валиден импулс
  • Зелен светодиод: Записът започна
  • Жълт светодиод: Маркерът е поставен (кратко мигане) / Време за изчакване (фиксирано)
  • Модул за MicroSD карта (чрез SPI шина)

За разлика от много модули SD карта, които работят при 3.3V, модулът DFRobot работи при 5V, така че не е необходим превключвател на нивата.

Що се отнася до монтажа, може да забележите, че съм разделил прототипната платка на две части, свързани с два малки "моста" от твърда 1 мм медна тел. Това беше необходимо, за да се издигне модулът на MicroSD картата до трето „ниво на конструкция“и да се приведе в съответствие с вдлъбнатината, която съм издълбал върху кутията, точно над прореза за USB порта. Освен това издълбах три вдлъбнатини на самата платка, една за достъп до потенциометъра на DC/DC преобразувателя, друга за достъп до конектора на серийната шина на Arduino Pro Mini (монтирана „с лицето надолу“), а третата за индуктивност.

Стъпка 4: HR приемник - симулация на подправки

HR приемник - симулация на подправки
HR приемник - симулация на подправки

Изхождайки от дизайна на Питър Борст, който споменах по -рано, целта ми беше да се опитам да разширя максимално обхвата на откриване, като в същото време огранича чувствителността към смущения и генерирането на фалшиви импулси.

Реших да променя оригиналното единично решение за Op-Amp, защото се оказа твърде чувствително към смущения, вероятно защото стойността на 10M резистора за обратна връзка е твърде висока, и да разделя общата печалба на два етапа.

И двата етапа имат DC усилване G = 100, намаляващо около 70 @5.4KHz, но с различен входен импеданс за оптимизиране на чувствителността.

Така че нека приемем, че напрежението на най -слабия сигнал, генериран от LC резервоара, е 1mV.

Ако транспонираме цялата верига на приемника в среда на Spice (използвам ADIsimPE), замествайки LC паралелната верига със синусоидален генератор със същото напрежение и честота (5.4KHz) и стартираме симулацията, забелязваме, че изходното напрежение V1 от 1 -ви усилвателят все още е синусоидна вълна (поради мащаба факторът на входящата синусоида не е забележим), когато усилвателят работи в линейната зона. Но след втория етап, изходното напрежение V2 показва, че сега достигаме насищане (Vhigh = Vcc-1.5V / Vlow = 1.5V). Всъщност фамилията TL07x не е проектирана за изходен диапазон между железопътни и железопътни линии, но това е достатъчно, за да се надвишат със безопасна граница и двете нива на прага на вратата на Schmitt Trigger и да се генерира чиста квадратна вълна (V3).

Стъпка 5: Софтуер

Софтуер
Софтуер

Поради високата печалба на приемника и въпреки, че етапът на пиковия детектор действа основно като нискочестотен филтър, входният сигнал на щифт D3 на Arduino Pro Mini все още може да бъде силно нарушен и трябва да бъде предварително обработен по цифров път чрез проверка на валидността срещу фалшиви откривания. Кодът гарантира, че са изпълнени две условия, за да се счита импулсът за валиден:

  1. Импулсът трябва да продължи поне 5ms
  2. Минималният приемлив интервал между два последователни импулса е 100 ms (съответстващ на 600 удара в минута, далеч над границата на тежка тахикардия!)

След като импулсът е валидиран, интервалът (в ms) от предишния се измерва и съхранява на SD картата във файл "datalog.txt", заедно с времева маркировка във формат hh: mm: ss, където 00:00: 00 представлява времето на последното нулиране на микроконтролера. Ако SD картата липсва, червеният светодиод светва, което показва грешка.

Нова проследяваща запис може да бъде стартирана/спряна с превключвателя Старт/Стоп S1 и ще бъде идентифицирана съответно с маркерни линии "; Старт" и "; Стоп" в началото и в края на текстовия файл.

Ако не се открие импулс за по -дълго от 2400 ms (25 bpm), във файла се поставя маркерна линия;; Timeout и жълтият светодиод D4 се включва.

Ако превключвателят на маркер S2 е натиснат по време на запис, във файла се записва допълнителен маркер във формат "; MarkerNumber", с автоматично увеличаване на номера на маркера, започващ от 0, и жълтият светодиод мига скоро.

Приложен е пълният код на Arduino.

Стъпка 6: Първоначална настройка и тестване

Image
Image
Първоначална настройка и тестване
Първоначална настройка и тестване

Стъпка 7: Използване - Анализ на медицински сигнал

Употреба - Анализ на медицински сигнали
Употреба - Анализ на медицински сигнали

Формата на корпуса, който използвах, е достатъчно близка до тази на смартфон, така че можете да намерите на пазара много аксесоари, които да носите или да го монтирате на тренировъчно оборудване. По -специално за мотора мога да предложа универсалната стойка за смартфон, наречена "Finn", произведена от австрийската компания Bike Citizens. Евтин (€ 15, 00) и лесен за монтиране, той е наистина универсален и както можете да видите на снимката идеален и за Cardio Data Logger

Най -простият начин да използвате необработените данни, записани от Data Logger, е да ги начертаете в графика, използвайки стандартни компютърни програми (например Excel). Сравнявайки графики, получени при повтаряне на едно и също упражнение, или анализирайки връзката между вариациите на ЧСС и физическите усилия, можете да оптимизирате дозата на силите по време на активността.

Но най -голям интерес представлява изследването на HR, и по -специално на HR Variablity (HRV), за медицински цели. За разлика от ЕКГ, HR следата не съдържа пряка информация за функционирането на сърдечния мускул. Анализът му от статистическа гледна точка обаче позволява да се получи друга информация от клиничен интерес.

Най -изчерпателният източник на знания за HRV е финландската компания KUBIOS. На техния сайт можете да намерите много информация за биомедицинските сигнали и можете да изтеглите "KUBIOS HRV Standard", безплатен софтуер за анализ на променливостта на сърдечната честота за некомерсиални изследвания и лична употреба. Този инструмент не само ви позволява да начертавате графики от обикновен текстов файл (трябва да премахнете времевите маркировки), но също така да извършвате статистически и математически оценки (включително FFT) и да създавате невероятно подробен и ценен доклад, като този, приложен по -долу.

Не забравяйте, че само специализиран лекар е в състояние да реши какви изпити са необходими за спортни практики на всяко ниво и да оцени техните резултати.

Тази инструкция е написана с единственото намерение да създаде интерес и забавление при прилагането на електроника в здравеопазването.

Надявам се да ви хареса, коментарите са добре дошли!

Препоръчано: