Jste zde

Elektronický měřič krevního tlaku s obvody Freescale

Širokou nabídku integrovaných obvodů firmy Freescale lze snad nejlépe demonstrovat na nějakém praktickém příkladu konstrukce nějakého běžného zařízení. Jedním z přístrojů, kde je nutné "skloubit" dohromady jak senzory, tak procesorovou techniku, datové a uživatelské ovládací rozhraní, může být například elektronický měřič krevního tlaku. Ten může být buď v jednodušším provedení s MCU HCS08, jak to například známe z obchodů ze spotřební elektronikou nebo složitější s automatickým napouštěním / zvyšováním tlaku měřící manžety s 32bit. MCU ColdFire.

Jak se elektronicky měří krevní tlak ?

I když na první pohled vypadá pro technika nezasvěceného do problému návrh a realizace elektronického měřiče krevního tlaku možná až jako těžký úkol, tak při alespoň základním pochopení principu měření krevního tlaku, to už jako nepřekonatelný problém nevypadá. Prakticky nejde o nic jiného než nějak elektronicky zrealizovat postup, který dělá každá zdravotní sestra, která pacientovi měří tlak. Zatímco ona využívá pro zjištění závislosti změny tepu srdce na postupně klesající úrovni tlaku v manžetě (měřícím rukávu) svoje oči a sluch, elektronika si musí vystačit pouze z měřením změny tlaku, který však dokáže, na rozdíl od sestry, měřit velkou přesností a postřehnout změny, které by zdravotní sestra sledující pouze stupnici tlakoměru vůbec nezaznamenala. Jaký měřící proces se tedy skrývá pod označením "měření krevního tlaku" ?

Během vypouštění manžety (měřícího rukávu), upevněné na ruku měřené osoby (pacienta), je možné sledovat malé kolísání celkového tlaku v manžetě. Toto kolísání je dáno periodickými změnami tlaku uvnitř tepen od cirkulace krve (pumpování srdce). Pokud se tato kolísavá složka (signál) zesílí a odfiltruje se od nízkofrekvenční a stejnosměrné složky (tzv. trend) průchodem filtru typu horní propust s mezní frekvencí 1 Hz, získá se nejen hledaný průběh změny/kolísání tlaku, ale zároveň jeho analýzou také záznam průběhu funkce srdce, tedy z periody signálu kolísání tlaku zjištěnou změnu frekvence tlukotu srdce (tepu) v závislosti na čase. Docela jednoduchou filtrací přesně změřeného průběhu tlaku v manžetě je tedy možné zjistit to, k čemu zdravotní sestra zároveň potřebuje tlakoměr a stetoskop. Na následujícím obrázku 1 je pak typická ukázka průběhu celkového měřeného tlaku v měřící manžetě v čase (růžová závislost "Pressure") a z něho získaná časová závislost průběhu tlukotu srdce (modrý průběh "Heart Beat").

Obr. 1. Průběh krevního tlaku (růžový průběh "Pressure") a tepu srdce (modrý průběh "Heart Beat") v závislosti na čase a změny tlaku v měřící manžetě

Na modrém průběhu tepu srdce si lze všimnout třech vyznačených zkratek:

  • SBP (Systolic Blood Pressure) - systolický krevní tlak = měřená horní hranice tlaku
  • DBP (Diastolic Blood Pressure) - diastolický krevní tlak = měřená spodní hranice tlaku
  • MAP (Mean Arterial Pressure) - střední tlak artérie = zlomový bod, po jehož překročení se změní trend změny tepu

 

Měření systolického a diastolického tlaku pomocí MCU HCS08 a ColdFire V1

V praxi se pro vyhodnocení signálu tlukotu srdce a zjištění systolického (SBP) a diastolického (DBP) krevního tlaku využívá oscilometrické metody. Tu lze realizovat dvěma způsoby v závislosti na složitosti měřiče a požadovaném komfortu pro pacienta:

  • metoda sestupné změny - jednodušší metoda měření, ale méně příjemná pro pacienta
  • metoda náběžné změny - složitější metoda měření, která je však příjemnější do pacienta

Realizace té první jednodušší varianty je založena na poznatku, že amplituda signálu tlukotu srdce se mění s tím, jak se manžeta (rukáv) tlakuje přes bod SBP. Zatímco se rukáv vypouští, amplituda signálu roste až do doby překročení systolického tlaku pacienta. Jak je se tlak v manžetě dále snižuje, amplituda tlukotu srdce se zvyšuje až dosáhne maximálního pulsu známého jako MAP. Poté rychle klesá až do dosažení diastolického tlaku. Nevýhoda tohoto principu spočívá v tom, že manžeta na ruce pacienta musí být natlakována na úroveň vyšší, než je dopředu neznámý systolický tlak pacienta. Problém je tedy v tom, že dopředu nevíme, jak moc je nutné manžetu natlakovat a je tedy nutné manžetu přefouknout, aby bylo zajištěno, že opravdu došlo k jeho překročení bodu SBP. Často je to až zbytečně moc, což je nepohodlné pro pacienta. Regulace upouštění tlaku pomocí vzduchového ventilu z manžety i měření sestupného průběhu je však pro elektronickou realizaci jednodušší a lze v tomto případě použít jen jednodušší MCU HCS08.

Při použitím 32bitového MCU ColdFire V1 jako řídícího a výpočetního jádra systému je však možné nasadit tu druhou metodu, obrácenou verzi metody první, realizovanou pomocí reverzní oscilometrické metody. Problém je zde hlavně v tom, že se začíná měřit na velmi malém signálu a navíc je nutné odfiltrovat šum přístroje vznikající hlavně motorky provádějící tlakování manžety.

Základní popis zapojení měřiče tlaku

Jedním z příkladů možné konstrukce elektrického zapojení měřiče krevního tlaku je uvedeno na blokovém schématu na obrázku 2. Za základní prvky celého zapojení lze logicky považovat senzor tlaku, zde realizovaný univerzálním integrovaným senzorem tlaku Freescale MPXV5050GP a řídícím a vyhodnocovacím procesorem (mikrokontrolérem). Jak již bylo uvedeno výše, v případě jednoduššího principu měření (metoda sestupné změny) stačí použít 8bitové MCU, zde HCS08, zatímco u výpočetně náročnějšího reverzního principu (metoda náběžné změny), kdy se měří průběh při rostoucím tlaku v manžetě, je nutné použít již 32bitové MCU, například základní MCU ColdFire s jádrem V1. Oba obvody jsou z výrobního programu Freescalu. Protože se předpokládá napájení z baterie či akumulátoru, byla zvolena nízkopříkonová verze MCU Flexis QE128 (MCU MC9S08QE128), která se vyznačuje nejen sníženou spotřebou v plném běhu, ale i 3 stupni sníženého příkonu s různým omezením napájení a provozu různých částí chipu dle aktuální potřeby běhu aplikace / programu. Stupně jsou realizované módy spuštěné softwarově. Mimo tyto dvě součástky je pak dále nepostradatelný automaticky regulovaný mechanismus vypouštění, případně i napouštění (natlakování), měřící manžety a filtr typu horní propust, který by však v případě přesného mnohabitového A/D převodníku a výkonného DSP procesoru či MCU bylo patrně možné realizovat i softwarově (číslicový filtr). Ostatní obvody již více méně tvoří rozšiřující periferní části zařízení.

Obr. 2. Blokové schéma zapojení měřiče krevního tlaku se součástkami Freescale - podrobné schéma zapojení pro realizaci je uvedeno v souboru RDQE128BPMSCH.pdf

Samozřejmě každý měřič potřebuje i nějaké uživatelské rozhraní pro některé volby aktuálního stavu průběhu měření a hlavně zobrazení výsledků, zde realizované grafickým OLED displejem 128 x 64 pixelů připojeným k hlavnímu řídícímu MCU pomocí sériové sběrnice SPI a dotykovými tlačítky s nulovou ovládací silou realizovanými snímačem elektrostatického pole MC34940 z nabídky Freescalu. Zobrazená grafika a navigační menu na displeji je pak realizovaná programově v programu MCU definováním stavu jednotlivých pixelů.

Pak dále uvedené periferie, jako USB rozhraní realizované dalším malým MCU MC908JB8 pro přetažení naměřených dat uložených v MRAM paměti MR2A16A, nebo bezdrátová komunikace a přenos naměřených hodnot prostřednictvím standardu ZigBee realizované Freescale transceiverem MC13202 se SMAC protokolem, již nejsou úplně obvyklé, zvláště u spotřebních měřičů, ale u profesionálních zdravotnických přístrojů již mohou být nepostradatelné.

Kompletní podrobné zapojení měřiče uvedeného na blokové schématu na obrázku 2 je uvedeno ve 12 stránkovém schématu v souboru RDQE128BPMSCH.pdf. Zapojení a propojení těch nejdůležitějších částí si také můžete rovnou prohlédnout na obrázcích níže (pro zvětšení stačí kliknout na příslušný obrázek).

Obr. 3. Některé části zapojení z kompletního schématu - zapojení hlavního řídícího MCU MC9S08QE128 (nahoře vlevo), připojení OLED displeje (nahoře vlevo), zapojení senzoru tlaku (dole vlevo) a připojení E-Field senzoru pro dotyková tlačítka (dole vpravo) - pro zvětšení klikněte na obrázek

Popis programu měřiče tlaku pro MCU HCS08

Program vyvinutý pro zde uvedený měřič krevního tlaku byl navržen jako tzv. neblokující, tzn. že MCU má schopnost vykonávat najednou několik rozdílných úloh bez potřeby operačního systému (OS). Každý model pracuje jako nezávislý stavový automat, který se automaticky updatuje pokaždé, když MCU prochází jeho kódem nebo pracuje jako proces založený na přerušení (interrupt-based process). Kód napsaný v tomto stylu umožňuje MCU se vždy vrátit do hlavní programové smyčky a pokračovat v provozu rovněž, když nějaká úloha přestane správně pracovat. Na obrázku 4. je pak vývojový diagram znázorňující základní funkci programu. Když je do programu připojen nový modul, je do hlavní programové smyčky vložen inicializační kód a jednoduché volání (odskok) podprogramu, čímž je umožněna funkce i ostatním stejně realizovaným modulům.

Kompletní program pro MCU MC9S08QE128 zde popisovaného měřiče krevního tlaku z vývojového střediska firmy Freescale lze nalézt v souboru RDQE128BPMSW.zip.

Obr. 4. Obecný vývojový diagram / modulární struktura programu pro MCU MC9S08QE128 v měřiči krevního tlaku

Závěr

I když je zde popisovaná struktura možná až zbytečně složitá, je jak z pohledu hardwarového tak i softwarového řešena opravdu modulárně, takže vyjmutím některých bloků zapojení i kódu v programu pro řídícího MCU, lze celé řešení upravit dle vlastní potřeby. Cílem tohoto článku bylo nejen upozornit na použití integrovaných obvodů z nabídky Freescalu, ale i odhalení mechanismu elektronického měření krevního tlaku a upozornění na možnosti a výhody modulárního řešení programu pro MCU. Pro bližší technické informace o uvedených součástkách Freescale odkazuji přímo na stránky výrobce, kde lze nalézt podrobné datasheety, manuály i aplikační listy popisující použití obvodů a návrh / výpočet vnějších připojených součástek.

Antonín Vojáček

DOWNLOAD & Odkazy

Hodnocení článku: