Digitalizační rozhraní pro ultrazvukový detektor průtoku krve Ing. Martin Čížek Ing. Vlastimil Václavík Ústav biomedicínského inženýrství Fakulta elektrotechniky a komunikačních technologií Vysoké učení technické v Brně Většina příručních nesměrových ultrazvukových detektorů průtoku krve určených k diagnostice oběhového systému v končetinách je vybavena pouze akustickou indikací. Článek se věnuje popisu jednoho z možných technických řešení rozšíření takovéhoto detektoru o digitální výstup měřených dat, konkrétně aktuální hodnoty dopplerovského kmitočtu. Navržené zařízení využívá signálový procesor Freescale řady 56800 a umožňuje výstup dat přes sběrnici CAN nebo rozhrazní RS-232. Obsah: Úvod Teoretický základ Rozbor vstupního signálu Teoretický základ Zpracování a demodulace signálu Vývoj programového vybavení Cílový hardware Technické parametry Využití zařízení Závěr Literatura Úvod Tématem článku je zařízení pro digitální demodulaci výstupního signálu produkovaného ultrazvukovým detektorem průtoku krve. Jako jádro celého systému je použit digitální signálový procesor Freescale DSP56F805. Pro výstup dat je primárně využita sběrnice CAN představující široce podporovaný a dobře zdokumentovaný průmyslový standard. Kombinace výkonného DSP a moderního vývojového prostředí umožnila efektivní tvorbu a ladění algoritmů firmwaru zařízení v jazyce C. Teoretický základ Na obr. 1 je znázorněno typické blokové schéma nesměrového ultrazvukového detektoru průtoku krve. Zpracovávaný analogový signál pochází z výstupního nf zesilovače akustické indikace průtoku krve. Jedná se o směšovací produkt dvou signálů: vysílaného 3-1
nemodulovaného nosného signálu o frekvenci 4 MHz a odraženého signálu, jehož kmitočet je v důsledku Dopplerova jevu posunut v závislosti na rychlosti pohybujícího se média (krve). V ideálním případě lze frekvenci výsledného signálu vyjádřit patřičně upraveným vztahem pro Dopplerův jev (1) kde f D je dopplerovský kmitočet, f S vysílaný kmitočet, c rychlost šíření ultrazvuku v prostředí, v rychlost pohybujícího se média a ſ je úhel svíraný osou sondy a vektorem rychlosti v. Obr. 1: Blokové schéma jednoduchého nesměrového dopplerovského uzv. detektoru průtoku krve. Rozbor vstupního signálu Jak je patrné z obr. 2, spektrum zpracovávaného signálu z detektoru průtoku krve obsahuje kromě nejvýraznější složky o kmitočtu odpovídajícím rychlosti toku krve dle vztahu (1) i řadu jiných složek vzniklých např. jako směšovací produkty vyšších řádů ve směšovači přístroje či složkami vzniklými aliasingem směšovacích produktů vyšších řádů. 3-2
Obr. 2: 1) spektrum vstupního signálu ve vybraném časovém okamžiku; 2) závislost kmitočtu nejvýraznější složky spektra na čase; 3) časový průběh vstupního signálu Z rozboru na obr. 2 zároveň vyplývá, že užitečná oblast spektra vstupního signálu se nachází v rozsahu přibližně 250-2250 Hz. Rušivé špičky viditelné v časovém průběhu na obr. 1 jsou způsobeny přítomností složek o frekvencích nad 2250 Hz. Pokud je takováto složka vyhodnocena jako nejvýraznější, dojde k výskytu spičky. Zpracování a demodulace signálu Zvolený demodulační algoritmus v reálném čase analyzuje spektrum zpracovávaného signálu a vyhledává složku o největší amplitudě, výstupem je pak údaj o kmitočtu složky. K zamezení výskytu rušivých špiček, tedy chybného vyhodnocování vysokofrekvenčních složek jako nejvýraznějších, popsaných v předchozím odstavci je analyzované spektrum omezeno na pásmo 250-2250 Hz. Toto kmitočtové omezení nepředstavuje pro měření rychlosti průtoku krve žádný zásadnější problém. Předpokládáme-li maximálně nepříznivý modelový příklad, kdy osa sondy svírá s vektorem rychlosti nulový úhel ſ, tak maximalnímu dopplerovskému kmitočtovému zdvihu f D = 2250 Hz odpovídá maximální indikovaná rychlost průtoku krve v = 42 cm/s, což je hodnota ležící bezpečně nad rychlostmi průtoku krve vyskytujícími v končetinách. Spodní omezení měřeného kmitočtového zdvihu na 250 Hz rovněž nevadí, neboť pásmová propust detektoru složky do 250 Hz stejně nepropouští. Děje se tomu tak proto, že ve zmiňovaném pásmu se vyskytují dopplerovské signály vzniklé odrazem od pulzujících stěn cév a pomalu se pohybujících svalů s úrovní až o 10 db vyšší než je úroveň složek vzniklých odrazem od proudící krve [2], které jsou předmětem našeho zájmu. V akustické indikaci průtoku by pak pochopitelně relativně slabé užitečné složky nebyly patrné. Činnost algoritmu je znázorněna na obr. 3. Vzorky digitalizovaného signálu je plněn vstupní buffer 32-bodového algoritmu FFT. Po naplnění bufferu je proveden výpočet FFT, obraz vstupních vzorků je uložen do výstupního bufferu. Mezi vzorky odpovídajícími kmitočtovému rozsahu 250-2250 Hz je nalezen vzorek o maximální absolutní hodnotě a jeho index převeden na údaj o kmitočtu. Výstupem je tedy signál nesoucí informaci o kmitočtu složky spektra o maximální amplitudě vzorkovaný frekvencí 32-krát nižší než vzorkovací frekvence vstupního signálu. Konkrétně 250 Hz při vzorkování kmitočtem 8 khz. 3-3
Obr. 3: Algoritmus zpracování a demodulace signálu Výstupní signál je nutno filtrovat vhodným rekonstrukčním filtrem. Optimálního průběhu signálu bylo experimentálně dosaženo při volbě dolní propusti o mezním kmitočtu 10 Hz. Obr. 4: Ukázka naměřených dat. Časový průběh dopplerovského kmitočtu f D při detekci průtoku krve pažní tepnou. V tomto konrétním případě, kdy byl k dispozici pouze jednoduchý detektor průtoku krve, byl pro analýzu spektra signálu zvolen jako postačující 32-bodový algoritmus FFT. Pokud bychom digitalizovali signál z kvalitního analogového měřiče průtoku krve (tedy už ne pouhého detektoru), a tudíž by byl i větší požadavek na přesnost měření frekvence 3-4
dopplerovského signálu, je možné pro větší přesnost měření do daného typu DSP implementovat i 64 až 256-bodový algoritmus FFT. Jednalo by se jen o relativně jednoduchou změnu obslužného softwaru procesoru. Profesionální komerčně dostupné digitální měřiče průtoku krve běžně používají 128-bodový algoritmus FFT. Vývoj programového vybavení Výsledné softwarové řešení má několik součástí: program pro ověření a prezentaci činnosti algoritmů zpracování signálu simulující běh navrhovaného systému v reálném čase, aplikaci pro vizualizaci měřených dat na PC a nakonec samotné softwarové vybavení pro hardware s digitálním signálovým procesorem DSP56F805. Zdrojový kód všech částí softwaru je vytvořen v programovacím jazyce C, což zaručuje jeho snadnou přenositelnost. To umožňuje ve všech variantách programového vybavení použít stejný zdrojový kód pro digitální zpracování signálu, bez ohledu na skutečnost, zda běží v prostředí Windows na PC nebo na hardwaru s digitálním signálovým procesorem. Pro vývojové a posléze demonstrační účely byla vytvořena aplikace simulující výstup z digitalizačního zařízení při práci v reálném čase. Vstupní data tvoří signál z ultrazvukového detektoru navzorkovaný za stejných podmínek, za jakých je provozována cílová aplikace. K vzorkování testovacího signálu byl tedy využit 12-bitový A/D převodník signálového procesoru DSP56805 a dále nijak nezpracovávaná data byla odeslána do počítače a zaznamenána do souboru. Celkově bylo navzorkováno asi 60 sekund pokusného signálu za různých podmínek: korektní měření průtoku krve, slabý signál, špatně zaměřená sonda, atd. Kód aplikace byl vytvořen v integrovaném vývojovém prostředí Borland C++ Builder verze 6.0. Relevantní části odladěného přenositelného kódu této aplikace byly převedeny do cílových aplikací, jak je znázorněno na obr. 4. Algoritmy pro zpracování signálu v reálném čase byly využity při tvorbě programového vybavení pro signálový procesor v prostředí Metrowerks CodeWarrior. Grafické rozhraní bylo využito při tvorbě programu pro vizualizaci dat přijímaných z digitalizačního zařízení. Obr. 5: Postup při vývoji programového vybavení. Demonstrace přenositelnosti kódu psaného v jazyce C. 3-5
Cílový hardware Díky integraci všech potřebných rozhraní přímo v DSP bylo možno navrhnout digitalizační zařízení s minimálním počtem externích součástek. Výsledné zapojení využívá 12-bitový A/D převodník obsažený v DSP. Pro výstup dat lze zvolit buď sběrnici CAN nebo sériové rozhraní RS-232, procesor má hardwarovou podporu obou komunikačních standardů. Obr. 6: Blokové schéma zapojení Jak je patrné z blokového schématu na obr. 6, samotný procesor společně s dalšími nezbytnými obvody integrován v hotovém aplikačním modulu MDSP. Pro potřeby konkrétní aplikace bylo pouze třeba navrhnout základní desku pro modul. Ta zajišťuje funkce specifické pro navrhované zařízení, konkrétně přizpůsobení analogových vstupů procesoru, napájení modulu a převod úrovní rozhraní RS-232 na úrovně 5V logiky. Celé zařízení je koncipováno jako modul určený k zabudování do bateriového prostoru v těle komerčně dostupného detektoru průtoku DOPPY 4 vyráběného italskou firmou Fazinni. Uspořádání je patrné z fotografie na obr. 7. Obr. 7: Modul připravený k zabudování do bateriového prostoru přístroje DOPPY 4. 3-6
Technické parametry Relevantní technické parametry zařízení jsou shrnuty v tabulce 1. K napájení je třeba použít zdroj 5 V schopný dodat proud 300 ma. Parametr Hodnota Jednotka min typ max Napájecí napětí 4,5 5 5,5 V Odebíraný proud - 300 - ma Úroveň vstupního signálu 0,2-2 V Š-Š Vstupní odpor - 10 - kω Zpracovávané pásmo frekvencí 250-2250 Hz Vstupní vzorkovací kmitočet - 8 - khz Výstupní vzorkovací kmitočet - 250 - Hz Rozlišení vstupního A/D - převodníku 12 - bit Rozlišení výstupních vzorků - 16 - bit Zpoždění zpracováním signálu - 84 - ms Přenosová rychlost CAN 10 250 800 kbit/s Přenosová rychlost RS-232-9600 - bit/s Z parametrů uvedených v tabulce vyžaduje podrobnější vysvětlení pouze zpoždění způsobené zpracováním signálu. Skládá se ze dvou částí: 4 ms potřebných pro naplnění vstupního bufferu algoritmu FFT 32 vzorky při vzorkovací frekvenci 8 khz a skupinového zpoždění výstupního filtru, které pro FIR filtr 40. řádu při vzorkovací frekvenci 250 Hz činí 80 ms. Znalost údaje o zpoždění je nutná pro správné nastavení synchronizace průběhů při vícekanálovém měření při použití různých přístrojů, viz dále. Využití zařízení Díky implementaci rozhraní sběrnice CAN lze uzv detektor průtoku krve začlenit do komplexnějších systémů využívajících vícekanálový sběr dat. Zařízení tedy může nalézt uplatnění například při výuce laboratorních úloh, kdy několik přístrojů vyšetřujících jeden zkoumaný objekt (pacienta) sdílí společnou CAN sběrnici. Studenti pak mají na svých pracovních stanicích, připojených ke stejné sběrnici, možnost kombinovat zobrazení měřených dat z různých přístrojů. Typická možnost takovéto kombinace biomedicínských přístrojů je naznačena na obr. 7. Zde konkrétně je detektor průtoku krve využíván jako pomůcka pro měření krevního tlaku. Celý vícekanálový systém pro sběr dat je synchronizován signálem z EKG. 3-7
Obr. 7: Vyžití zařízení při vícekanálovém sběru dat Další možné výukové využití zařízení spočívá v jeho roli jakožto přípravku pro demonstraci využití moderních digitálních signálových procesorů. Díky zvolené modulární koncepci je poskytnut prostor pro další vývoj a vylepšování. Závěr Digitalizační rozhraní najde využití jako náhrada akustické indikace v příručních nesměrových detektrorech průtoku krve používaných pro orientační měření při diagnostice oběhového systému v končetinách. Navržené zařízení je díky své jednoduché konstrukci vhodné pro výukové účely. Použití algortimu FFT namísto klasické detekce průchodu nulou má za následek zvýšení odolnosti vůči přítomnosti rušivých signálů a umožňuje dosahovat akceptovatelných výsledků měření i v neideálních podmínkách, např. při používání méně zkušeným personálem - typicky, špatné držení sondy studenty při výuce. Budoucí rozšíření stávajícího designu mohou spočívat v implentaci komunikačního protokolu CANOpen či zvýšení rozlišení měřeného kmitočtu implementací 64, 128 nebo 256-bodového algoritmu FFT. Tato práce byla podpořena výzkumným programem Vysokého učení technického v Brně č. MSM 0021630513. 3-8
Literatura [1] ČÍŽEK M., VÁCLAVÍK V. Blood Flow Detector Output Signal Digitalization In Applied Electronics 2006, Sborník referátů mezinárodní konference. Applied Electronics 2006. Plzeň: 2006, s. 19-22, ISBN 80-7043-442-2 [2] LILEY D. The Physics of Doppler Ultrasound. Swinbourne: Swinbourne University of Technology, 1998. http://marr.bsee.swin.edu.au/lectures/het408/doppler.pdf 3-9