Spisu treści:

Rejestrator danych Cardio: 7 kroków (ze zdjęciami)
Rejestrator danych Cardio: 7 kroków (ze zdjęciami)

Wideo: Rejestrator danych Cardio: 7 kroków (ze zdjęciami)

Wideo: Rejestrator danych Cardio: 7 kroków (ze zdjęciami)
Wideo: Świetne zdjęcie w 7 krokach - lista rzeczy, które robię zanim wykonam zdjęcie 2024, Lipiec
Anonim
Rejestrator danych cardio
Rejestrator danych cardio

Chociaż obecnie dostępnych jest wiele urządzeń przenośnych (smartbandy, smartwatche, smartfony, …), które mogą wykrywać tętno (HR) i przeprowadzać analizę śladową, systemy oparte na pasach na klatkę piersiową (takie jak ten w górnej części obrazu) są nadal rozpowszechniony i używany, ale bez możliwości rejestracji i eksportu śladu pomiarów.

W moim poprzednim Instructable Cardiosim przedstawiłem symulator pasa na klatkę piersiową (Cardio) wyjaśniając, że jednym z moich kolejnych kroków było opracowanie rejestratora tętna. Jestem teraz gotowy, aby przedstawić to w tym Instruktażowym. Funkcją tego przenośnego urządzenia jest odbieranie sygnału tętna wysyłanego przez pas piersiowy (lub symulator Cardiosim) podczas sesji treningowej (trening/jazda na rowerze/bieganie, …) oraz rejestrowanie śladu na karcie SD, w celu przeprowadzić analizę wyników po treningu (szczegóły w ostatnim rozdziale).

Urządzenie jest zasilane przez system akumulatorów, w tym obwód ładowania i regulator doładowania DC.

Z mojego „magazynu” niewykorzystanego materiału wyłowiłem odpowiednią plastikową obudowę (135mm x 45mm x 20mm) i dostosowałem do niej układ obwodu tak, aby pasował do siebie, tworząc działający prototyp spełniający moje potrzeby (ale którego wykonanie pozostawia miejsce na poprawa:-))

Krok 1: Krótki opis

Proszę odnieść się do kroku 1 instrukcji Cardiosim, aby szybko zapoznać się z technologią LFMC (Low Frequency Magnetic Communication) używaną przez tego rodzaju urządzenia.

Moim pierwszym zamiarem było użycie modułu Sparkfun RMCM01 jako interfejsu odbiornika, ale ten produkt nie jest już dostępny (nie mówiąc już o tym, że i tak był dość drogi).

Jednak patrząc w sieci znalazłem ten interesujący samouczek, który pokazuje kilka alternatywnych rozwiązań do zastąpienia RMCM01. Wybrałem trzecią opcję ("Peter Borst Design", dzięki Peter!), osiągając doskonały wynik przy użyciu tych samych komponentów L/C Cardiosim, jednak połączonych tutaj jako równoległy zbiornik rezonansowy. Wykryty sygnał jest wzmacniany, „czyszczony”, dekodowany i przekazywany do mikrokontrolera Arduino Pro Mini. Program weryfikuje odebrane impulsy, mierzy częstość akcji serca (lub lepiej odstęp między dwoma kolejnymi impulsami) i przechowuje wszystkie zmierzone odstępy w pliku tekstowym ASCII (jedna linia na ważny impuls, każdy 16 znaków, w tym interwał, znacznik czasu i LF/CR) na karcie microSD. Zakładając, że średni HR wynosi 80bpm, wystarczy godzinne nagranie (4800 linii tekstu x 16 znaków) = 76800/1024 = 75kBytes, dlatego nawet tania karta SD o pojemności 1 GB oferuje dużą pojemność zapisu.

Podczas nagrywania można wstawić linie znaczników, aby podzielić ślad i osobno ocenić różne fazy sesji.

Krok 2: Zasilacz LiPo – schematy, części i montaż

Zasilacz LiPo - schematy, części i montaż
Zasilacz LiPo - schematy, części i montaż
Zasilacz LiPo - schematy, części i montaż
Zasilacz LiPo - schematy, części i montaż

Zasilacz zajmuje spód obudowy. Poza trimpotem żaden element nie przekracza 7 mm wysokości, co daje miejsce na zamontowanie odbiornika HR i układu mikrokontrolera nad zasilaczem.

Użyłem następujących części:

  • Bateria LiPo 3,7 V (każda bateria telefonu może zostać poddana recyklingowi, zmniejszona pojemność nie stanowi tutaj problemu)
  • Moduł ładowania USB TP4056, kupiłem go tutaj
  • Konwerter doładowania DC SX1308, kupiłem go tutaj
  • Mała płytka prototypowa 40 x 30 mm
  • Kabel ze złączem JST 2, 54mm 2 pin, taki jak ten
  • (opcjonalnie) Złącze JST 2mm 2 pin, jak to
  • (opcjonalnie) Kabel ze złączem JST 2mm 2 pin, taki jak ten

Wykorzystanie dwóch ostatnich elementów zależy od używanego akumulatora i sposobu, w jaki zamierzasz podłączyć go do modułu ładowarki. Proponuję złącze JST 2mm, ponieważ wiele baterii jest dostarczanych z już dołączonym kablem i wtyczką 2mm, każde inne rozwiązanie jest odpowiednie, o ile pozwala na łatwą wymianę baterii w razie potrzeby. W każdym razie należy uważać, aby podczas montażu uniknąć zwarć między biegunami akumulatora.

Moduł TP4056 zasilany jest z portu micro USB i przeznaczony jest do ładowania akumulatorów litowych metodą stałego prądu / stałego napięcia (CC/CV). Oprócz bezpiecznego ładowania baterii litowej moduł zapewnia również niezbędną ochronę wymaganą przez baterie litowe.

SX1308 to wysokowydajny, regulowany konwerter DC/DC Step Up, który utrzymuje stałe napięcie wyjściowe na poziomie +5 V przy minimalnym napięciu wejściowym 3 V, co pozwala na pełne wykorzystanie pojemności akumulatora. Wyreguluj napięcie wyjściowe za pomocą potencjometru na +5V przed podłączeniem obwodu mikrokontrolera!

Całkowite zużycie rejestratora danych wynosi około 20mA, więc nawet używana bateria o pojemności resztkowej 200mAh (<20% początkowej pojemności nowej baterii telefonu) pozwoli na 10 godzin nagrywania. Jedyną wadą jest to, że prąd spoczynkowy SX1308 wynosi około 2mA, więc lepiej odłączyć akumulator, jeśli nie używasz rejestratora danych przez dłuższy czas.

Ze względu na niewielkie rozmiary oba moduły muszą być mocowane za pomocą otworów połączeniowych zarówno do elektrycznego, jak i mechanicznego połączenia z płytką prototypową za pomocą krótkich odcinków drutu miedzianego. Z kolei płytkę mocuje się do podstawy obudowy za pomocą śruby 3mm x 15mm (długość wystarcza do przykręcenia tą samą śrubą układu mikrokontrolera powyżej). Na płytce znajduje się złącze JST 2mm do akumulatora (dostępne tylko w wersji SMD, ale składając piny w pionie można je "obrócić" w wersji PTH) oraz całe okablowanie wg schematów. Dla pewności przykleiłem korpus złącza do płytki uzyskując dobre uszczelnienie mechaniczne.

Akumulator jest umieszczony płasko w pozostałej części dna obudowy, a za nim znajduje się druga śruba 3 mm x 15 mm z pionową przekładką 8 mm, aby uniknąć kontaktu między górną częścią akumulatora (która i tak jest nasłoneczniona) a dnem obudowy. górny obwód.

Krok 3: Odbiornik HR i rejestrator danych - schematy, części i montaż

Odbiornik HR i rejestrator danych - schematy, części i montaż
Odbiornik HR i rejestrator danych - schematy, części i montaż
Odbiornik HR i rejestrator danych - schematy, części i montaż
Odbiornik HR i rejestrator danych - schematy, części i montaż
Odbiornik HR i rejestrator danych - schematy, części i montaż
Odbiornik HR i rejestrator danych - schematy, części i montaż

Płyta główna składa się z:

  • Tablica prototypowa 40mm x 120mm
  • Indukcyjność 39mH, użyłem BOURNS RLB0913-393K
  • 2 x kondensator 22nF
  • Kondensator 4,7nF
  • Kondensator 47nF
  • Kondensator 39pF
  • Kondensator elektrolityczny 10uF/25V
  • Kondensator elektrolityczny 1uF/50V
  • 3 x rezystor 10K
  • 2 x rezystor 100K
  • 3 x rezystor 1K
  • 4 x rezystor 220R
  • Rezystor 1M
  • Rezystor 47K
  • Rezystor 22K
  • Potencjometr 50K
  • Dioda 1N4148
  • Dioda LED 3mm niebieska
  • 2 x dioda LED 3mm zielona
  • LED 3mm żółty
  • Dioda LED 3mm czerwona
  • Podwójne, niskoszumowe wzmacniacze operacyjne JFET TL072P
  • Sześciokątny wyzwalacz Schmitta 74HC14
  • Złącze JST 2,54 mm 2 piny, takie jak ten
  • 2 x mikroprzełączniki typu Alcoswitch
  • Mikrokontroler Arduino Pro Mini, 16MHz 5V
  • Moduł karty micro SD SPI 5V firmy DFRobots

Częstotliwość rezonansowa równoległego obwodu rezonansowego złożonego z L1 i C1 wynosi około 5,4 kHz, co jest wystarczająco bliskie 5,3 kHz nośnika pola magnetycznego przesyłanego sygnału, aby przekształcić go w napięcie. Pamiętaj, że w większości przypadków nośna jest modulowana na podstawie prostego formatu OOK (włączanie-wyłączanie), w którym każdy impuls serca włącza nośną na około 10 ms. Wykrywany sygnał jest bardzo słaby (zwykle sinusoida 1mV w odległości 60-80cm od źródła, pod warunkiem, że oś indukcyjności jest odpowiednio zrównana z polem magnetycznym), dlatego należy go starannie wzmocnić, aby uniknąć zakłóceń i fałszywych wykrycia. Proponowany obwód jest wynikiem moich najlepszych wysiłków i godzin testów w różnych warunkach. Jeśli interesuje Cię pogłębienie tego aspektu – a może jego udoskonalenie – spójrz na następny krok, w przeciwnym razie możesz go pominąć.

Następujące bramki Schmitt Trigger wykonują cyfryzację i funkcję wykrywania szczytów, przywracając oryginalny sygnał modulujący, który jest przekazywany do Arduino Pro Mini.

Płytka mikrokontrolera Pro Mini jest idealna do tego projektu, ponieważ kryształ na płytce pozwala na wysoką precyzję pomiarów (które są niezbędne z „medycznego” punktu widzenia, patrz ostatni krok), a jednocześnie jest wolny od wszelkich innych niepotrzebne urządzenie, co skutkuje niskim zużyciem energii. Jedyną wadą jest to, że aby załadować kod, potrzebujesz interfejsu FTDI, aby podłączyć Pro Mini do portu USB komputera. Pro Mini jest podłączony do:

  • Przełącznik S1: rozpocznij nagrywanie
  • Przełącznik S2: wstaw znacznik
  • Niebieska dioda LED: miga po wykryciu prawidłowego impulsu
  • Zielona dioda LED: nagrywanie rozpoczęte
  • Żółta dioda LED: Znacznik włożony (krótkie mignięcie) / Limit czasu (stały)
  • Moduł kart microSD (poprzez magistralę SPI)

W przeciwieństwie do wielu modułów kart SD, które działają przy napięciu 3,3 V, moduł DFRobot działa przy napięciu 5 V, więc nie jest potrzebny przełącznik poziomu.

Jeśli chodzi o montaż, możecie zauważyć, że podzieliłem płytkę do prototypowania na dwie części, połączone dwoma małymi „mostkami” ze sztywnego drutu miedzianego 1mm. Było to konieczne, aby przenieść moduł karty MicroSD na trzeci „poziom konstrukcyjny” i wyrównać go z wgłębieniem, które wyrzeźbiłem na obudowie, tuż nad szczeliną na port USB. Ponadto na samej płytce wyrzeźbiłem trzy wgłębienia, jedno umożliwiające dostęp do potencjometru przetwornika DC/DC, drugie umożliwiające dostęp do złącza magistrali szeregowej Arduino Pro Mini (zamontowane „do dołu”), a trzecie dla indukcyjność.

Krok 4: Odbiornik HR - symulacja przypraw

Odbiornik HR - symulacja przypraw
Odbiornik HR - symulacja przypraw

Wychodząc od konstrukcji Petera Borsta, o której wspomniałem wcześniej, moim celem była próba maksymalnego rozszerzenia zasięgu detekcji, przy jednoczesnym ograniczeniu wrażliwości na zakłócenia i generowanie fałszywych impulsów.

Zdecydowałem się zmienić oryginalne rozwiązanie pojedynczego wzmacniacza operacyjnego, ponieważ okazało się, że jest zbyt wrażliwe na zakłócenia, prawdopodobnie dlatego, że wartość rezystora sprzężenia zwrotnego 10M jest zbyt wysoka, i aby podzielić ogólne wzmocnienie na dwa etapy.

Oba stopnie mają wzmocnienie DC G = 100, zmniejszające się o około 70 przy 5,4 KHz, ale z inną impedancją wejściową w celu optymalizacji czułości.

Załóżmy więc, że napięcie najsłabszego sygnału generowanego przez zbiornik LC wynosi 1mV.

Jeśli transponujemy cały obwód odbiornika w środowisku Spice (ja używam ADIsimPE) zastępując obwód równoległy LC generatorem sinusoidalnym o tym samym napięciu i częstotliwości (5,4 kHz) i uruchomimy symulację, zauważymy, że napięcie wyjściowe V1 z 1 wzmacniacz nadal jest falą sinusoidalną (ze względu na współczynnik skali sinusoida wejściowa nie jest zauważalna), ti wzmacniacz pracuje w strefie liniowej. Ale po drugim etapie napięcie wyjściowe V2 pokazuje, że teraz osiągamy nasycenie (Vhigh = Vcc-1.5V / Vlow = 1.5V). W rzeczywistości rodzina TL07x nie jest zaprojektowana dla zakresu mocy od szyny do szyny, ale jest to wystarczające, aby z bezpiecznym marginesem przekroczyć oba poziomy progowe bramki Schmitta Trigger i wygenerować czystą falę prostokątną (V3).

Krok 5: Oprogramowanie

Oprogramowanie
Oprogramowanie

Ze względu na wysokie wzmocnienie stopnia odbiornika i pomimo tego, że stopień detektora szczytowego działa zasadniczo jako filtr dolnoprzepustowy, sygnał wejściowy na pinie D3 Arduino Pro Mini może nadal być silnie zakłócony i musi zostać wstępnie przetworzony cyfrowo przez sprawdzanie poprawności pod kątem fałszywych wykryć. Kod zapewnia, że spełnione są dwa warunki, aby uznać impuls za ważny:

  1. Impuls musi trwać co najmniej 5 ms
  2. Minimalny akceptowalny odstęp między dwoma kolejnymi impulsami to 100 ms (co odpowiada 600 uderzeń na minutę, daleko poza granicę ciężkiego tachykardii!)

Po walidacji impulsu, interwał (w ms) od poprzedniego jest mierzony i zapisywany na karcie SD w pliku „datalog.txt” wraz ze znacznikiem czasu w formacie gg:mm:ss, gdzie 00:00: 00 oznacza czas ostatniego resetu mikrokontrolera. W przypadku braku karty SD zapala się czerwona dioda LED wskazując błąd.

Nowy ślad zapisu można uruchomić/zatrzymać za pomocą przełącznika Start/Stop S1 i będzie on oznaczony odpowiednio linią znacznika „;Start” i „;Stop” na początku i na końcu pliku tekstowego.

Jeżeli przez czas dłuższy niż 2400 ms (25 bpm) nie zostanie wykryty impuls, w pliku umieszczany jest znacznik „;Timeout” i zapala się żółta dioda LED D4.

W przypadku naciśnięcia Marker Switch S2 podczas zapisu do pliku zostanie zapisana dodatkowa linia znacznika w formacie ";MarkerNumber", z automatycznym zwiększaniem numeru znacznika począwszy od 0, a żółta dioda LED zamiga krótko.

Dołączony kompletny kod Arduino.

Krok 6: Wstępna konfiguracja i testowanie

Image
Image
Wstępna konfiguracja i testowanie
Wstępna konfiguracja i testowanie

Krok 7: Użycie - analiza sygnałów medycznych

Zastosowanie - Analiza sygnałów medycznych
Zastosowanie - Analiza sygnałów medycznych

Zastosowana przeze mnie forma obudowy jest na tyle zbliżona do smartfona, że na rynku można znaleźć mnóstwo akcesoriów do jej noszenia lub mocowania na sprzęcie treningowym. W szczególności do roweru mogę zaproponować uniwersalny uchwyt do smartfona o nazwie „Finn”, wyprodukowany przez austriacką firmę Bike Citizens. Tania (15,00 €) i łatwa w montażu, jest naprawdę uniwersalna i jak widać na zdjęciu idealna również do Cardio Data Logger

Najprostszym sposobem wykorzystania surowych danych zarejestrowanych przez Data Logger jest wykreślenie ich na wykresie za pomocą standardowych programów komputerowych (np. Excel). Porównując wykresy uzyskane podczas powtarzania tego samego ćwiczenia lub analizując korelację między zmianami HR a wysiłkiem fizycznym, możesz zoptymalizować dawkowanie sił podczas aktywności.

Jednak największym zainteresowaniem cieszy się badanie HR, aw szczególności zmienności HR (HRV), do celów medycznych. W przeciwieństwie do śladu EKG, zapis HR nie zawiera bezpośrednich informacji o funkcjonowaniu mięśnia sercowego. Jednak jego analiza ze statystycznego punktu widzenia pozwala na uzyskanie innych informacji o znaczeniu klinicznym.

Najbardziej wszechstronnym źródłem wiedzy na temat HRV jest fińska firma KUBIOS. Na ich stronie można znaleźć wiele informacji o Sygnałach Biomedycznych oraz pobrać "KUBIOS HRV Standard", darmowe oprogramowanie do analizy zmienności rytmu serca do niekomercyjnych badań i do użytku osobistego. To narzędzie pozwala nie tylko wykreślać wykresy z prostego pliku tekstowego (musisz usunąć znaczniki czasu), ale także przeprowadzać oceny statystyczne i matematyczne (w tym FFT) i tworzyć niezwykle szczegółowe i wartościowe raporty, takie jak ten załączony poniżej.

Pamiętaj, że tylko lekarz specjalista jest w stanie zdecydować, jakie egzaminy są potrzebne do uprawiania sportu na każdym poziomie i ocenić ich wyniki.

Ta instrukcja została napisana wyłącznie w celu wywołania zainteresowania i zabawy w stosowaniu elektroniki w opiece zdrowotnej.

Mam nadzieję, że Wam się podobało, mile widziane komentarze!

Zalecana: