Semmelweis Egyetem
Budapesti M szaki és Állatorvostudományi Egyetem Gazdaságtudományi Egyetem
Tóth Norbert
Többfunkciós élettani jelszimulátor
Tanszéki konzulens: dr. Jobbágy Ákos
2002.
Tartalomjegyzék 1. Bevezetés .................................................................................................................1 1.1.
Általános áttekintés....................................................................................................1
1.2.
A készülék kifejlesztésének szükségessége...............................................................2
1.3.
Célkit zések................................................................................................................6
2. Irodalmi áttekintés..................................................................................................7 2.1.
A legfontosabb élettani jelek, paraméterek .............................................................7
2.1.1.
EKG jelek ......................................................................................................................... 7
2.1.2.
Vérnyomás...................................................................................................................... 15
2.1.3.
Légzés............................................................................................................................. 18
2.1.4.
Oxigén-szaturáció ........................................................................................................... 20
2.1.5.
H(mérséklet.................................................................................................................... 22
2.1.6.
Egyéb szokásos paraméterek .......................................................................................... 23
2.2.
Élettani jeleket tartalmazó adatbázisok.................................................................24
2.3.
Paciens modellek ......................................................................................................28
2.4.
Kereskedelmi jelgenerátorok ..................................................................................31
3. A berendezés tervezése..........................................................................................41 3.1.
Hardver tervezés ......................................................................................................41
3.1.1.
Digitális rész ................................................................................................................... 42
3.1.2.
Analóg rész ..................................................................................................................... 51
3.1.3.
Egyéb hardver megfontolások ........................................................................................ 70
3.2.
A berendezés m ködtet, szoftvere .........................................................................71
3.3.
A felhasználható adatbázisok..................................................................................77
3.4.
Személyi számítógépes szoftver...............................................................................78
4. Továbbfejlesztési lehet ségek...............................................................................82 5. Összefoglalás ........................................................................................................84 6. Mellékletek............................................................................................................86
Bevezetés
1. Bevezetés EKG készülékek, (rz(monitorok fejlesztésénél, tesztelésénél gyakran használt eszköz a paciens különböz( élettani jeleit, paramétereit szimuláló berendezés. A diplomaterv célja olyan önállóan és számítógéppel együtt m7köd( jelszimulátor kidolgozása, melynek segítségével a leggyakrabban mért élettani jelek a rendelkezésre álló adatbázisok alapján el(állíthatók. Diplomamunkám feladatául egy, a fenti célokat ellátó berendezés tervezését választottam. Munkámat az Innomed Medical Orvostechnikai Fejleszt( és Gyártó Részvénytársaságnál végeztem, a Budapesti M7szaki Egyetem Méréstechnika és Információs Rendszerek Tanszékének segítségével. Ezúton is szeretnék köszönetet mondani dr. Jobbágy Ákosnak, aki vállalta a tanszéki konzulens szerepét, valamint kollégáimnak, akik ötleteikkel, épít( jelleg7 hozzászólásaikkal segítették dolgozatom elkészítését.
1.1. Általános áttekintés A megtervezend( berendezés els(sorban az EKG készülékeknél és (rz(monitoroknál leginkább vizsgált élettani jelek, paraméterek szimulálását szolgálja. A berendezés f(leg a fenti készülékek fejlesztési stádiumában alkalmazható a hardver, de leginkább a készülékeket m7ködtet( szoftver fejlesztése és tesztelése során, önállóan off-line, illetve személyi számítógéphez csatlakoztatva on-line szimulációra alkalmas. Kifejlesztését az indokolja, hogy egy olyan univerzális paciens szimulátorra van szükség az említett területen, mely a kereskedelemben kapható készülékekkel ellentétben széles skáláját nyújtja a különféle jeleknek, és a valós életben el(forduló m7termékeknek, valamint segítségével élettani jeleket tartalmazó adatbázisokból származó jelek egy vizsgált készülékbe táplálhatók. A berendezés önmagában egy el(z(leg személyi számítógép segítségével megfelel( adatokkal feltöltött memóriakártyáról képes a legkülönfélébb EKG, vérnyomás, légzés és egyéb jelek el(állítására. Számítógéppel összekapcsolva bonyolult események szimulálása és ezek dokumentálása is lehetséges.
Bevezetés
1.2. A készülék kifejlesztésének szükségessége EKG készülékek illetve beteg(rz( monitorok fejlesztése során igen gyakran szükség van a humán biológiai jelek, paraméterek el(állítására. Mivel ezen készülékek feladata f(ként a kóros, egészségest(l eltér( esetek vizsgálata, értékelése, ezért nagy az igény olyan berendezésre, amely a fejlesztési, és az azt követ( tesztelési stádiumban a különféle egészséges és patológiás humán, valamint az állatgyógyászati célú készülékek esetében állati biológiai jeleket képes el(állítani, amit az EKG készülékek illetve (rz(monitorok képesek fogadni. Munkahelyemen, az Innomed Medical Rt.-nél kifejlesztett (rz(monitor részére már készítettem egy, a fenti célokat f(ként szoftver úton megvalósító szimulátort, mely az (rz(készülék analóg egységeit és az analóg-digitális átalakítót, valamint a jelek el(feldolgozását magába foglaló mér(fej szimulációját végzi el. Ezzel a szoftverrel lehet(vég van az (rz(készülék összes mért jelének illetve paraméterének a készülékbe juttatására úgy, mintha a jelek valódi forrásból származnának. A fiziológiai jeleket tartalmazó adatbázisból származó jeleket a program a mér(fej specifikációja által el(írt formátumba konvertálja, és a jelek soros vonalon, az (rz(készülék mér(fejének megfelel( formátumban a tesztelend( készülékbe kerülnek. A szoftver valódi jelekkel történ( ellátása egy adatbázis fájlból történik. Az adatbázis forrása a http://www.physionet.org címen [2] fellelhet( internetes adatbázis, ahol komplex élettani jelek állnak ingyen letölthet(en rendelkezésre. A jelek mellett különféle segédprogramok, az adatbázissal kapcsolatos dokumentációk is letölthet(k. Az adatbázisokra, azok használatára egy kés(bbi pontban visszatérek. A kereskedelemben számos jelszimulátor kapható. Ezek legtöbbje fixen el(re eltárolt rövid mintákat ismétel, így állítva el( például normál 70 ütés / perc frekvenciájú szinuszritmusnak megfelel( EKG jelet, melyet az EKG készülékek fogadni képesek. Az egyszer7bb felépítés7 generátorok ilyen módon csak meglehet(sen korlátozott számú jelek el(állítására alkalmasak. Néhány gyártmányról kés(bb említést teszek. Olyan alkalmazásokban, ahol fontosak a jelek tényleges információtartalmán kívül egyéb, a valós életben a mérést negatívan befolyásoló tényez(k (artefaktok), fontos, hogy ezeket is el( lehessen állítani. Egy beteg(rz(
2
Bevezetés
monitor esetében továbbá nagyon sok összefonódás fedezhet( fel a különböz( jelek, paraméterek között. Könnyen belátható, hogy a véres vérnyomás csatornákon mért nyomásgörbe az EKG csatornákon mérhet( potenciál változásokkal igen szoros összefüggésben van. A két jel között ok-okozati összefüggés van, szinkronban vannak, de közöttük id(beli eltolódás érzékelhet(. Hasonló jelenség tapasztalható az EKG jel és a perifériás szövetek oxigén-szaturációját mér( pulzoximéter csipesz jele között, hiszen a pulzushullám véges sebességgel terjed az érrendszerben. Ezen eltolódás pedig a keringési rendszer bizonyos paramétereit(l, többek között a vérnyomástól is függ. Elképzelhet( például egy beteg(rz( monitorban olyan megoldás,
hogy
a
paciens
vérnyomását
mér(
neminvazív
mandzsettás
vérnyomásmér( indítását éppen azzal váltjuk ki, hogy a jelek közti eltolódás idejének megváltozását figyeljük. Ez esetben szükség lehet a generátorban e késleltetés változtatására.
A
kereskedelmi
típusok
a
gyárilag
beprogramozott
jelek
változtathatatlanságán túl azzal a hátránnyal is rendelkeznek, hogy az eredeti
Fiziológiai jeleket tartalmazó adatbázis Az (rz( riasztásai, mért/számított paraméterek (HR, Resp, ST, BP, stb.)
Szimulátor Parancsok a szimulátornak CFC
Szimulált analóg jelek
PC
Irz(monitor Compact FLASH kártyán tárolt görbeadatok
Szimulációt vezérl(, értékelést és dokumentálást végz( program
1.ábra. A szimulátor felhasználási környezete
kiépítésen változtatni nem lehetséges. Irz(készülékek szoftver tesztelése során például gyakori probléma, hogy olyan összetett jelenségeket kell egyszerre vizsgálni,
3
Bevezetés
mint amilyen az EKG elektródákon mérhet( paciens impedancia megváltozása, az EKG elektródák leesése, a legkülönfélébb zajok rendszerbe kerülése, az egyes EKG elvezetések amplitúdójának megváltozása, nagy DC-ofszetek hatása, stb. Egy olyan bonyolultságú hardver-szoftver rendszer, mint egy beteg(rz( monitor ezeket a különböz( információkat, küls( körülményeket érzékelve dönt a szükséges intézkedésekr(l, például riasztás indításáról, különféle tesztek végrehajtásáról, tehát látható, hogy ezen jelenségek ellen(rzött körülmények között történ( létrehozása mindenképpen szükséges a szoftver tesztelési, illetve különféle validálási folyamatokban. Bizonyos jelfelismerési feladatok, mint például egy fibrilláció nagy biztonsággal történ( felismerésének ellen(rzése megköveteli hosszabb idej7 jelfolyamok el(állításának a lehet(ségét. Természetesen az ilyen típusú szoftver modulok tesztelése tisztán számítógépes úton megtörténhet a fejlesztés kezdeti szakaszában, hiszen egy szoftveres tesztel( környezetet kialakítva a valós id(nél nagyobb sebességgel történhet a nagyméret7 adatbázisokkal végrehajtott tesztelés. Azonban a végleges szoftverek hierarchikus felépítéséb(l adódóan nem mindig célszer7 ez a fajta, tisztán szoftveres tesztelés. Az összetett, multitaszkos szoftver által m7ködtetett készülékek esetén el(fordulhatnak olyan rejtett szoftver hibák, amelyek csak a tényleges szoftverkörnyezetben deríthet(k ki. Ilyenek lehetnek például a futási id(kb(l adódó anomáliák, az adott taszk számára engedélyezett memóriaterületb(l történ( kiírások, stb. Mivel ezeket a rejtett szoftver hibákat esetenként csak egy meghatározott tulajdonságokkal bíró bemen( jel hozza el(, szükséges a sokféle jellel történ( minél szélesebb kör7 tesztelés. Egy EKG vagy (rz(készülék új szoftver-verziójának kiadása, a gyártásba való bevezetése el(tt teljes kör7, hosszadalmas funkcionális tesztelésre van szükség. Ezt a kritikus, medikai célú termékek esetében többek között a min(ségbiztosítási el(írások is kötelez(vé teszik. A teljes rendszert újra kell tesztelni még akkor is, ha például csak egy új nyelvi verziójú készülékszoftver kiadása történik meg, és a paciens biztonságáért felel(s szoftver modulokban (veszélyes arrhythmia detektálás, EKG feldolgozás, riasztások kezelése) nem történt változtatás. Ez esetben nincs értelme pusztán az egyes szoftver modulok ellen(rzésér(l beszélni. A teljes rendszer ellen(rzéséhez mindenképpen szükséges a jelek szimulálása és a mesterségesen el(állított jeleket a vizsgálandó készülékre kapcsolva történ( tesztelés. A szimulátor ilyen célú felhasználását szemlélteti az 1.ábra. Az el(bbiekben már említett összetett m7ködésb(l kifolyólag a 4
Bevezetés
teljes rendszer eredményes tesztelése érdekében szükséges a tényleges, a valós m7ködés során el(álló helyzeteket minél tökéletesebben modellez( jelszimulátor. Léteznek olyan további speciális EKG alkalmazások, melyek szükségessé teszik az igen nagy mennyiség7, hosszú ideig tartó EKG jel el(állítást, például egy terheléses EKG vizsgálatra alkalmas rendszer, vagy egy Holter rendszer tesztelésénél. Egy átlagos terheléses vizsgálat id(ben tíz perces nagyságrend7, s közben jellemz(en szimultán 12 elvezetéses felvétel készül. Holter monitorozásnál általános a folyamatos 24 órás felvétel készítése (full disclosure Holterek) kevés (jellemz(en egy-két) elvezetéssel, de manapság létezik 12 elvezetéses típus is. A kifejlesztend( jelszimulátor tervezése során ezen szempontokat is figyelembe vettem. A fejlesztés szükségességének további indoklása céljából röviden érdemes megvizsgálni, hogy a megtervezend( szimulátor és egy EKG teszter között milyen különbségek vannak mind szolgáltatás, mind felhasználási terület szempontjából. Erre jó példa lehet az EKG készülékek esetén alkalmazott, szabvány szerinti DCt7rés mérésére szolgáló eljárás ismertetése. Az IEC TC62D ajánlásban – mely egy lehetséges kiindulási alap lehet a teszterek kialakítására – részletes el(írások vannak a különféle mérések kivitelezésére, így a mérést lehet(vé mér(eszköz felépítésére is. A DC-t7rés vizsgálata például egy ellenállásokból és kondenzátorokból álló mér(hálózat segítségével történik. A mérés során egy kis jelszintre leosztott néhány Hz frekvenciájú szinuszjelet ültetnek a változtatható DC-szintre. A DC-ofszet növelése közben figyelik a szinuszjel torzítatlan, levágásoktól mentes átvitelét, így meghatározható a DC-t7rés. Érdemes felfigyelni arra a tényre, hogy a mérés során EKG jel, vagy ahhoz hasonló jel nem szerepel, helyette a hasonló amplitúdójú és frekvenciájú szinuszjelet alkalmazzák. Ezzel ugyanis jól látható a vágás bekövetkezése. A szimulátor célja egészen más. Itt olyan jelek el(állítása a cél, amelyek „éles helyzetekben” kerülnek az EKG illetve (rz(készülékekre. Nem szempont a nagy pontosságú, kalibrált jelek el(állítása, annak vizsgálata például viszont igen, hogy egy kezdetben normál, majd kamrai tachykardiába, végül kamrafibrillációba átmen( jel esetén a készülék mikor riaszt, milyen teszteket indít el, egyáltalán hogy reagál erre a jelfolyamra. Nem cél tehát a bemérést, hardver ellen(rzést szolgáló teszter megvalósítása.
5
Bevezetés
1.3. Célkit zések Diplomamunkám célja a mér(berendezés megtervezése, a fejlesztési lépesek ismertetése. •
A
szimulálandó
élettani
jelek,
paraméterek
tulajdonságainak
áttekintése, •
a
jelek
el(állításának
lehetséges
módszerei,
az
elektronikus
implementációk megvizsgálása, •
korszer7, mikroprocesszor-vezérelt, PC-hez illeszthet( többfunkciós élettani jelszimulátor kifejlesztése,
•
a berendezés személyi számítógéphez történ( csatlakoztatásához szükséges szoftver megtervezése.
6
Irodalmi áttekintés
2. Irodalmi áttekintés 2.1. A legfontosabb élettani jelek, paraméterek A munkám témáját képez( szimulátor leend( f( felhasználási területe az EKG készülékek és a beteg(rz( monitorok fejlesztése, tesztelése közbeni jelgenerálás. A szimulálandó jelek, paraméterek skáláját ennek ismeretében kell megállapítani. A legtöbb diagnosztikai célú EKG berendezés esetében a maximum 12 elvezetéses EKG, esetleg pulzoximéter opció az általános. Az egyszer7bb készülékek esetén csak a görbék megjelenítése, valamint azok papírra történ( regisztrálása a készülék feladata, míg bonyolultabb EKG berendezések képesek számos EKG paraméter kiértékelésére, az egyes jellegzetes hullámok amplitúdójának és idejének táblázatos formában történ( megjelenítésére (analízis funkció) illetve az esetleges
kóros
elváltozásokra
vonatkozó
diagnózisok
felállítására
is.
Irz(készülékek esetén már lényegesen több paraméter mérése szükséges. Az EKG, oxigén-szaturáció, légzés, invazív és nem invazív vérnyomás, h(mérséklet mérése valamint kiértékelése az alapfunkciók közé sorolható. Ezen jelekb(l egy adott készülék tudásának megfelel(en számos – a paciens állapotát tükröz(, a biztonsága és állapotának nyomon követhet(sége érdekében fontos – paramétert képes kiszámítani és megjeleníteni. A még több szolgáltatással rendelkez( paciens monitorok képesek olyan paraméterek mérésére is, mint amilyen például a kilélegzett leveg(ben található széndioxid parciális nyomása, oxigén és altatógáz koncentrációk, a kering( vér perctérfogata, s(t léteznek EEG-t monitorozó és spirometriai mérések elvégzésére is alkalmas készülékek. Ezen paraméterek azonban már túlmutatnak e diplomamunka határain.
2.1.1.
EKG jelek Mivel a kifejlesztend( berendezés legfontosabb szolgáltatása az EKG jelek
el(állítása, így az EKG jelek kialakulásával, tulajdonságaival foglalkozom a legrészletesebben. Einthoven munkássága óta tudjuk, hogy a m7köd( szív ingerületi folyamatainak
következményeképpen
az
ingerelhet(
sejtekben
keletkez(
potenciálváltozások a testfelszínr(l elvezethet(, és regisztrálható formában is jelen 7
Irodalmi áttekintés
vannak. A testfelszínr(l, illetve bizonyos speciális esetekben a szív felszínér(l vagy annak
lumenéb(l
elvezethet(
potenciálingadozásokat
nevezzük
elektrokardiogramnak, röviden EKG-nak. A meghatározott anatómiai pontokból elvezethet( EKG jelek kialakulásának többféle elmélete ismeretes. A szív feladata, a vérkeringés fenntartása pumpafunkciót követel meg, mely a kering( vértérfogatot meghatározott
mozgásra
kényszeríti.
Ez
a
pumpafunkció
a
szív
fontos
tulajdonságának, a kontrakció-képességnek köszönhet(. A kontrakció – mint a szervezetben minden más esetben, így itt is – elektromos aktivitás következtében jön létre. Ez az elektromos aktivitás azonban magából a szívb(l származik, így tehát a szív képes önállóan, mindenféle küls( ingerlés nélkül is a m7ködésre. Ezt a tulajdonságot az a tény teszi lehet(vé, hogy a szívben olyan struktúrák találhatók, amelyek automatikus ingerképzésre képesek. Az egyik ilyen képlet a jobb pitvar oldalán elhelyezked( szinuszcsomó, melynek ingerületeit az ingerületvezet( rendszer a további szövetekre, így a pumpafunkcióért felel(s szívizomzatra továbbítja. A szinuszcsomón kívül az ingerületvezet( rendszer is rendelkezik az önálló ingerképzés tulajdonságával, úgy, hogy az ingerület terjedésének láncában minél inkább a végén áll az adott képlet, annál alacsonyabb az automatikus ingerképzés, a pacemaker funkció frekvenciája. A szinuszcsomó, az ingerületvezet( rendszer tagjai (A-V csomó, His-köteg, Tawara-szárak) és a szívizomzat m7ködésük közben mind elektromos teret létesítenek maguk körül, melyet az Einthoven-féle teória szerint egy dipólusként képzelhetünk el, a kés(bbi kutatások alapján azonban multipólusként kell kezelni. Az ún. ekvivalens generátor teória szerint az emberi test homogén vezet( közeg, a szív dipólus, mely a közeg középpontjában helyezkedik el, és a szív m7ködése során a dipól helyzete nem változik. A valóságban ezen feltételek egyike sem
teljesül
maradéktalanul,
azonban
a
klinikai
gyakorlatban
jelenleg
legelterjedtebben alkalmazott konvencionális 12-elvezetéses EKG felvételek esetében ezekt(l az eltérésekt(l eltekintünk. A szívben található sejtek egyenként létrehozott elektromos terét egy adott pillanatban vektoriálisan összegezve egy ered( vektort kapunk. A dipólteória értelmében feltételezzük, hogy ez az ered(-, ún. integrálvektor, mely egy adott pillanatban adott nagyságú és irányú, hozza létre a felszínr(l elvezethet( potenciálváltozást. Attól függ(en, hogy a testfelszín mely pontjain helyezzük el a feszültségváltozások elvezetését szolgáló EKG-elektródákat, az integrálvektor különböz( síkú vetületeihez juthatunk. A pontosabb vizsgálatokat 8
Irodalmi áttekintés
lehet(vé tev( felületi térképezés módszere képes a szív multipólus modelljének tükrében is információt szolgáltatni a potenciálváltozásokról. A vizsgálat viszonylagos bonyolultságát figyelembe véve az átlagos EKG berendezések illetve (rz(monitorok nem képesek ilyen felvételek készítésére, továbbá tény, hogy az elektrokardiológia ismeretanyagának igen jelent(s hányadát teszi ki a 12-elvezetéses felvételek alapján megszerzett tudás, így a továbbiakban csak a hagyományosnak mondható 12-elvezetéses EKG-ra korlátozom a vizsgálatokat. A konvencionális 12 elvezetés tartalmazza az Einthoven-féle ún. standard elvezetéseket, melyek a jobb kar, bal kar valamint a bal láb között mérhet( potenciálváltozásokat tükrözik, elnevezésük I., II. és III. Ezen elvezetések a szív elektromos aktivitásának a frontális síkú vetületét adják. Ugyancsak a frontális síkú vetületr(l adnak információt a Goldberger-féle elvezetések (aVL, aVR, aVF) melyek ugyanezekr(l a végtagokról elvezetett potenciálingadozásokból kiszámíthatók, egyszer7 matematikai összefüggésben állnak az Einthoven-féle elvezetésekkel. A maradék hat elvezetés pedig a V1-V6, Wilson-féle unipoláris elvezetés, melyek hozzávet(legesen a horizontális síkú vetület potenciálingadozásait teszik mérhet(vé. A V1-V6 elvezetések regisztrálását lehet(vé tev( elektródákat a mellkas anatómiailag
2.ábra. A konvencionális 12 elvezetés
pontosan definiált pontjaira helyezik és az egyes elvezetések tényleges feszültsége a három végtag pillanatnyi potenciáljának átlaga és az adott mellkasi pont potenciáljának különbsége (2.ábra.) Összesen tehát kilenc elvezetési pont van: jobb
9
Irodalmi áttekintés
kar (RA), bal kar (LA), bal láb (LL), valamint a hat mellkasi elvezetés pontjai, melyeket C1-C6 elnevezéssel illetünk. Szokásos továbbá a jobb lábra (RL) is felhelyezni egy elektródát, ennek célja azonban csak a közös módusú zavaró jelek ellenni védekezés, ez a pont tehát az EKG készülék által meghajtott, innen nem vezetünk el jelet. A továbbiakban kétféle terminológiát használok: az elvezetéseket és az elvezetési pontokat. Az elvezetési pontok a paciensre helyezett elektródákat jelentik, míg az elvezetések az elvezetési pontok között mérhet( feszültségeket. Elvezetési pont tehát például az RA, LA, elvezetés pedig például a közöttük mérhet( I. elvezetés. A konvencionális 12 elvezetésen túl bizonyos esetekben a Wilson-féle mellkasi elvezetésekhez hasonlóan a mellkas jobb oldalán illetve a háton is alkalmaznak elvezetéseket, s(t léteznek nyel(cs( elvezetések is. Ezek célja a szív akciós potenciáljainak más síkra történ( leképezése és regisztrálása, melyre speciális esetekben – mint például bizonyos szívizom területek infarktusa – van szükség. A konvencionális elvezetéseket a háti elvezetésekkel kombinálva meghatározható az integrálvektor X, Y és Z tengelyre es( vetülete. Ez utóbbi speciális elvezetésekkel a már említett okokból kifolyólag nem foglalkozom. A konvencionális 12 elvezetés tehát az említett végtagok és a mellkas bizonyos pontjai (összesen 9 pont) között mért feszültségkülönbség, illetve a pontok potenciáljaiból lineáris matematikai m7veletekkel származtatható feszültségérték. Az elvezetések származtatásának matematikai leírására kés(bb térek ki. Látható, hogy egy 12-elvezetéses EKG készülékhez csatlakoztatható jelszimulátor esetén kilenc pont feszültségének el(állítását kell megoldani. A továbbiakban szükséges az EKG jelek tipikus tulajdonságainak megismerése, hogy ennek tükrében lehessen a megvalósítandó feladatokat definiálni. Fontos továbbá a különféle zavaró tényez(k – artefaktok – tulajdonságainak megismerése is, hiszen az életszer7 szimuláció érdekében ezeket a zavarokat is el( kell tudni állítani. Mivel a cél a testfelszínr(l elvezethet( EKG jelek el(állítása, így azok
tulajdonságait
vizsgálom.
A
testfelszínen
regisztrálható
EKG
jelek
természetesen az egyes sejtekben végbemen( akciós potenciálváltozások vektoriális összegeként
alakulnak
ki.
A
sejtekben
néhány
tíz
mV
nagyságrend7
feszültségváltozások mérhet(k, mely feszültségek a sejtek sokaságában vektoriálisan összeadódnak, így keltik a szív elektromos terét. A testfelszínre ebb(l mV
10
Irodalmi áttekintés
nagyságrend7 feszültség jut, a környez( szövetek sönthatása és a véges vezet(képesség miatt. A kamrai munkaizomzat m7ködése közben – ami az EKG görbén (3.ábra) az ún. QRS komplexusnak felel meg – tipikusan 1-1.5mV feszültségváltozás mérhet( a II. elvezetésben. Ha bármely elvezetésben a legnagyobb hullám amplitúdója eléri a 2mV-ot, high voltage-r(l beszélünk. Ennek tipikus oka a kamrai hipertrófia, azaz a kamra izomzatának, falának megvastagodása. Kivételes esetben el(fordulhat akár 5mV-os változás is. A legkisebb, a diagnosztika
3.ábra. Egészséges EKG jel a II elvezetésben
szempontjából még fontos jelamplitúdó µV-os nagyságú. Az szívinfarktus utáni hirtelen szívhalál egyik el(jelz(je lehet az ún. kés(i potenciálok megjelenése, melyekre a µV-os amplitúdó a jellemz(. Speciális EKG berendezések képesek ezen kés(i potenciálok regisztrálására is. A standard EKG analízis során 5µV/bit felbontás a minimálisan el(írt érték. Az EKG készülékek általában 2-2.5µV/bit felbontást tesznek lehet(vé, bár például egy kifejezetten a kés(i potenciálok megfigyelésére szolgáló EKG berendezés 1µV/bit felbontású. Ezt a felbontást célszer7 a szimulátor tervezése során is szem el(tt tartani. Az el(állítandó jelek amplitúdója mellett a másik fontos paraméter a jelek frekvenciatartománya. A 3. ábrán bemutatott 300Hz mintavételezési frekvenciával rögzített EKG jel frekvenciatartományát mutatja a 4.ábra. A jel spektrumán jól látható a bekapcsolt 50Hz-es lyuksz7r( hatása. Az el(állítás szempontjából a fels( határfrekvencia a lényeges, amit tulajdonképpen az EKG jelek jelemelkedési sebessége határoz meg. A legnagyobb amplitúdójú és egyben a legmeredekebb felfutású EKG hullám a kamraizomzat depolarizációját tükröz( QRS komplexus alatt a Q-R átmenet. A V5 elvezetésben például a Q-R távolság tipikusan 50ms körüli id(. Fontos, hogy az amplitúdó torzulások elkerülése végett ezt a meredek jelet a készülékek képesek legyenek feldolgozni. Az általánosan
11
Irodalmi áttekintés
használt EKG készülékek esetében a fels( határfrekvenciát szabvány szerint 150Hzre választják, de az esetleges izomzajok kiküszöbölésére 35Hz-es alulátereszt( sz7r(t
4.ábra. Az el$z$ EKG jel spektruma 300Hz-es mintavétellel, 50Hz-es lyuksz+r$vel
is használnak, mely szükség esetén bekapcsolható. A jelszimulátor tervezése során az EKG jelekre nézve az itt ismertetett tulajdonságokat tartom kiinduló paraméternek. Az EKG jelekre a gyakorlatban különféle nem kívánt zavaró jelek szuperponálódnak. Három fontos artefaktról kell említést tenni. Ezek közül az egyik – a váltakozó áramú hálózatból származó zaj – nem a vizsgált paciensb(l származik, az izomzaj a paciens izomaktivitásának következtében áll el(, az alapvonal vándorlást pedig mind a paciens (légzés, mozgás) mind a jelek elvezetését lehet(vé tev( elektródák tulajdonságai okozzák. A hálózati zaj egy szinuszos jelleg7, de felharmonikusokat is b(ven tartalmazó zavarjel, mely a paciensen a hálózathoz és a földhöz történ( kapacitív csatolások következtében jelenik meg. Els(sorban ún. közös jelként jelentkezik, ami azt jelenti, hogy a jel az egész paciensen van a földhöz képest, de különféle okokból az EKG készülékekben ez a közös jel szimmetrikussá alakulhat, így az egyes elvezetésekben a hálózati zaj megjelenik. Frekvenciája az adott országnak megfelel(en 50 vagy 60 Hz lehet. Amplitúdója igen változó. A gyakorlatban rossz esetben az egyes elvezetésekben magával az EKG jellel összemérhet( a zavaró jel szimmetrikus komponense, így tehát ha csak a zavarnak a hasznos jelre mért hatását akarjuk szimulálni, akkor elég néhány mV-os szimmetrikus jelet el(állítani. Az EKG er(sít(k ellen(rzésekor, bemérésekor azonban több tíz voltos – közös módusú – jelet kapcsolnak a mért berendezésre a
12
Irodalmi áttekintés
közös módusú elnyomás megfelel( értékelésének érdekében. Ezzel azonban a továbbiakban nem foglalkozom, hiszen a jelszimulátornak nem célja az ilyen jelleg7 jelek el(állítása. Az alapvonal vándorlás, mely egy lassú, de az EKG jelnél akár jóval nagyobb amplitúdójú zavaró jel, többféle okból kifolyólag jöhet létre. A paciens b(rére felhelyezett speciális anyagú elektróda, melynek célja az ionos áramvezetés elektronossá alakítása, rendelkezik azzal a tulajdonsággal, hogy polarizálódni képes, azaz a különböz( elvezetési pontok elektródái között egyenfeszültség keletkezik. Ez a feszültség azonban id(ben nem állandó, az elektródák elmozdulása a feszültség megváltozását vonja maga után. Így a paciens mozgása, légzése, az elektródák elmozdulása képes az alapvonal vándorlás létrehozására. Ez a fajta zavar a hullámalakok kiértékelhet(ségét rontja, ellene különböz( töréspontú felülátereszt( sz7r(kkel védekezhetünk. Sajnos ezek a sz7r(k viszont magára a hasznos EKG jelre is hatással vannak, olyan fontos tulajdonságokat változtatva meg, mint amilyen az S és T hullámok közti szakasz meredeksége, és az alapvonalhoz képest elfoglalt helyzete. Az alapvonal vándorlásra az 1Hz alatti frekvencia jellemz(, a zavaró jel amplitúdója itt is a néhány mV-os tartományba esik. Extrém esetben, például az elektródák
felhelyezésének
pillanatában
sokkal
nagyobb
feszültségek
is
el(fordulhatnak. A szabvány által meghatározott nagyságú egyenfeszültség7 ofszet esetén a készüléknek az EKG jeleket torzítatlanul fel kell dolgozniuk. Mivel akár több száz mV nagyságú DC-eltolódások gyakran el(fordulnak a valós életben, célszer7 a jelszimulátort ezen artefaktok el(állítására is alkalmassá tenni. A szintén zavaró hatású izomzaj a paciens izmai elektromos aktivitásának a következménye. A szív és az elvezetési pontok között található izmok m7ködésük során éppúgy feszültségingadozásokat keltenek, mint maga a szív és ezek a jelek a hasznos jelre szuperponálódva az EKG elvezetésekben is megjelennek. A hasznos jelt(l leginkább frekvenciatartományban különíthet(k el, bár az izomzaj meglehet(sen széles sávú. A miográfiás jelek frekvenciaspektrumának fels( határa a kHz-es tartományba nyúlik, viszont a jel spektrumában vannak az EKG jelek frekvenciatartományába es( komponensek is. A jel szimulálása szempontjából a legtöbb esetben eltekinthetünk a magas frekvenciás összetev(kt(l, figyelembe véve az EKG készülékeknél szokásos 150Hz-es fels( határfrekvenciát. Van azonban egy kivétel: a legtöbb mai EKG készülék a jeleket digitalizálja, így jeleníti meg, dolgozza fel, illetve regisztrálja azokat. Ha a készülék nem tartalmaz megfelel( elnyomású átlapolás-gátló sz7r(t, 13
Irodalmi áttekintés
akkor a mintavételi törvény értelmében a mintavételi frekvencia felénél nagyobb frekvenciájú komponensek az alapsávba lekeveredve kés(bb már nem távolíthatók el a jelb(l. A készülékek ilyen téren történ( vizsgálata érdekében tehát szükség lehet a valódi szélessávú izomzaj el(állítására is. A jel amplitúdója a szokásos elvezetésekben pár mV-os nagyságrend7, a jelalak pedig sztohasztikus, zaj szer7. További zavaró jel a szívritmus-szabályzós betegekr(l elvezethet( EKG jelek esetében a pacemaker impulzus. Az EKG szabvány el(írja, hogy a testfelszínen jelen lev( max. 700mV amplitúdójú, 2ms széles pacemaker impulzust az EKG jel torzulása nélkül le kell tudni kezelni. A legtöbb készülék tartalmaz olyan áramkört, amely ezt a nagy meredekség7, nagy amplitúdójú jelet érzékeli és nem engedi továbbjutni az EKG er(sít( láncban, elkerülend( a jelent(s túlvezérlést, ezáltal a jel torzulását, valamint a további feldolgozás számára egy jelet biztosít, aminek hatására a jel kirajzolásánál egy marker kerül az EKG görbére, jelezve a pacemaker impulzus helyét. A pacemaker tüske el(állítása tehát a jelszimulátorban a fenti funkció tesztelése érdekében célszer7. Az impulzus amplitúdójának és szélességének változtathatónak kell lenni. Az EKG elektródák között mérhet( feszültségváltozáson kívül az elektródák közti impedancia sem közömbös. Mint arra a légzés cím7 pontban kitérek, az impedancia kismértékben változik a légzési ciklus során. Az elektródák közti egyenáramú ellenállás kiloohm nagyságrendbe esik, mely az elektróda állapotának (nedvesítés, gélezés) függvénye, valamelyest függ a b(r ellenállásától, a bels( szövetek ellenállása gyakorlatilag állandónak tekinthet(. Az elektródák közti ellenállás értéke két szempontból érdekes: Egyrészt a légzésmérés egy bizonyos alap-impedancia
tartományban
m7ködik
megfelel(en,
másrészt
f(leg
az
(rz(készülékek esetében az EKG bemenetek el vannak látva olyan áramkörökkel, amelyek lehet(vé teszik a nem megfelel( elektróda felhelyezés vagy kábel-leesés következtében kialakuló túl nagy paciens impedancia érzékelését. Ezért a jelszimulátorban célszer7 a paciens impedancia változtatását lehet(vé tenni a pár száz ohm és tíz kiloohm közötti tartományban. Ennél nagyobb paciens impedancia esetében a gyakorlatban biztosan nem kapunk megfelel( min(ség7 EKG jelet, hiszen ez tipikusan a rossz min(ség7, kiszáradt, rosszul felhelyezett elektródák esetében fordul el(.
14
Irodalmi áttekintés
2.1.2.
Vérnyomás A szervezet illetve az azt alkotó sejtek m7ködéséhez szükséges anyagok
célba juttatását, valamint a sejtek által termelt végtermékek elszállítását, a sejtek anyagcseréjét a magasabb szint7 állatokban – és az emberben is – a vérkeringés teszi lehet(vé. A vér keringését, az erekben történ( meghatározott irányú mozgását a szív pumpafunkciója teszi lehet(vé. Ahhoz, hogy a kering( vérmennyiség az adott keringési ellenállás mellett egy meghatározott tömegárammal haladjon az erekben, a rendszerben nyomáskülönbségnek kell fennállnia, a hidrosztatikai Ohm-törvénynek ( P=Q·R) megfelel(en. A P nyomáskülönbség jelen esetben az aortában és a vena cavaban mérhet( nyomás különbsége. A szív szakaszos m7ködésének következtében a nyomás a szívciklusnak megfelel(en az id( függvényében változik. A szívcikluson belül a nyomás, a legmagasabb ún. szisztolés és a legalacsonyabb, diasztolés nyomás között ingadozik, bár az érrendszer nem minden pontján mérhet( számottev(en pulzáló nyomás, bizonyos pontokon szinte statikus nyomásokkal találkozhatunk. A szövetekbe történ( perfúzió és az Ohm-törvény szempontjából azonban a szívciklusok idejére integrált átlagos nyomás, a középnyomás a mérvadó. Az érrendszer egyes pontjain – amint az a fenti nyomáskülönbségb(l is sejthet( – másmás nyomásértékek mérhet(k. A szisztolés és diasztolés nyomás közti különbség, az ún. pulzusnyomás is változó a mérés helyének függvényében. Az egyes betegségek valamint a paciens állapotának megítélése szempontjából a beteg(rz( monitorok esetében nagy jelent(ség7 a vérnyomás és egyéb keringési paraméterek monitorozása, hiszen a vérnyomás a keringés általános állapotáról rendkívül sok információt elárul. A vérnyomás mérésére több megoldás kínálkozik, a legalapvet(bb csoportosítás az alapján végezhet(, hogy a mérést invazív úton, tehát a vérkeringésbe fizikailag bekapcsolódva, vagy neminvazív módon, azaz kívülr(l, az érrendszerbe való bekapcsolódás nélkül végezzük. Ez utóbbi esetben – rendszerint a Riva-Rocci módszer alapján mandzsettás vérnyomásmérést alkalmazva – csak a vérnyomás egyes paraméterei, úgymint szisztolés-, diasztolés- és középnyomás, valamint a pulzusszám határozható meg. Ez a módszer mindamellett, hogy a pacienst nem kell invazív vizsgálatnak kitenni, azaz nem kell megszúrni, nem biztosít kell( pontosságot és nem teszi lehet(vé a valós idej7 mérést. A másik lehetséges megoldás a vér nyomásának tényleges megmérése oly módon, hogy egy megfelel( nyomás-
15
Irodalmi áttekintés
átalakító szenzor nyomásbementét a vérkeringés megfelel( pontjára illesztjük. Ez történhet úgy, hogy egy megfelel( katétert fiziológiás sóoldattal feltöltve a kívánt pontba vezetünk, miközben a katéter testen kívül elhelyezked( végéhez csatlakoztatjuk a nyomásmér( szenzort. Újabban azonban alkalmaznak olyan szenzorokat is, melyek a katéternek azon a végén helyezkednek el, amelyiket az érbe betolnak, és a már helyben elektromos jellé alakított, a nyomásértéket reprezentáló elektromos jel hagyja el a katétert. A két módszer közül a neminvazív vérnyomásméréssel a továbbiakban nem foglalkozom, mert a mandzsettás vérnyomásmérés
szimulálása
egy
meglehet(sen
bonyolult,
precíz
elektropneumatikus rendszerrel lehetséges és e célra rendelkezésre állnak megfelel( vérnyomás szimulátorok. Az általam tárgyalt jelszimulátor feladata tehát kizárólag az invazív nyomásmérés (IBP – Invasive Blood Pressure) esetén használt átalakító kimeneti jelének szimulálása. Ezen szenzorok hídba kapcsolt, nyomás függvényében változó ellenállásokat alkalmaznak a nyomás-feszültség átalakításra. Az invazív nyomásmérés során valójában nem csak vérnyomás mérésér(l illetve szimulálásáról kell beszélni, hiszen a nyomás-átalakító szenzorok olyan egyéb nyomásértékek mérésére is alkalmasak, mint például a koponya7ri nyomás. A vérnyomás monitorozása, regisztrálása során leginkább kétféle artefaktra kell számítani. A vérnyomás átalakítóknak van egy csekély nullhibájuk, azaz nulla nyomás mellett (a nyomásokat mindig a légköri nyomáshoz kell viszonyítani) nullától különböz( kimen(feszültség keletkezik a hídon. Ezt a gyakorlatban úgy küszöbölik ki, hogy az átalakító nyomásbemenetén található kis csapot olyan állásba hozzák, hogy a szenzor nyomásmentes legyen, és az ekkor mért értékkel korrigálják a tényleges mérést. Egy ilyen ofszet szimulálása egyszer7en megvalósítható. A másik fontos zavaró tényez( a légzésnek a vérnyomás pillanatnyi értékére tett befolyásoló hatása. A belégzés során például a vena cava superiorban a vérnyomás csökken – akár negatív értéket is felvehet – kilégzéskor pedig n(. A vérnyomásmérés során – legyen az invazív vagy neminvazív – artefaktként értékelhet( a hidrosztatikai nyomás hatása, mely a szívmagasság és a mérési pont közötti folyadékoszlop nyomásából származik, de ennek hatását figyelembe veszik a mérés során, illetve olyan körülményeket teremtenek, hogy a jelenség ne lépjen fel.
16
Irodalmi áttekintés
Mivel a vérnyomás id(függvénye alapvet(en pulzáló jelleg7, és ezt a pulzálást a szív szakaszos összehúzódása hozza létre, alapkövetelmény az EKG jelek és a vérnyomás egymáshoz képest szinkron el(állítása. Az elektromos szisztolét jelent( QRS komplexus és az érrendszer egy adott pontján mérhet(, a szisztolénak megfelel( nyomásmaximum között helyt(l és a keringési rendszer állapotától függ( késleltetés tapasztalható, hiszen a szív összehúzódása is késleltetett az elektromos szisztoléhoz képest, és a nyomáshullám terjedési sebessége is véges. A késleltetési id( esetleges változtathatósága szükséges lehet bizonyos mérések, tesztelések során, de a szinkronitást mindenképpen biztosítani kell a szimulátorban. Míg az EKG jelek szimulálása során egy aktív eszközt, egy bioelektromos generátort kell szimulálni, addig a vérnyomás szimulálása során – hacsak nem tényleges nyomást szimulálnánk – magát a vérnyomás-átalakító szenzort kell szimulálni, úgy, mintha egy valódi szenzorra a meghatározott nyomás hatna. A manapság használatos vérnyomás-átalakítók azon az elven m7ködnek, hogy a nyomás egy membránt deformál, amellyel mechanikai kapcsolatban lev( megfelel( deformációra érzékeny ellenállások találhatók. Az ellenállásokat hídkapcsolásban üzemeltetve a híd kimenetén a hidat tápláló gerjeszt(feszültség, a pillanatnyi nyomás és az átalakító érzékenységének függvényében (az átalakító nyomástartományában) a nyomással egyenes arányosságban álló feszültség keletkezik. A különböz( vérnyomás-átalakítók érzékenysége nem egyforma, a gyakorlatban f(leg kétféle érzékenység7 átalakítót alkalmaznak. Az érzékenységet úgy definiálják, hogy megadják az egy higanymilliméter nyomás hatására, egy volt hídfeszültség mellett mérhet( kimen( feszültséget. Ez tipikusan 5µV/V/mmHg, illetve 40µV/V/mmHg érték7. Ha a hidat gerjeszt( feszültség ismert, akkor a feladat megoldható úgy, hogy a nyomással arányos feszültséget hozunk létre a szimulátorral. Mivel a tesztelend( (rz(készülék által szolgáltatott híd-gerjeszt( feszültség értéke nem ismert, illetve készülékr(l-készülékre változó lehet, a szimulációt olymódon kell megoldani, hogy ezen paraméter el(zetes ismerete ne legyen szükséges a jel el(állítása során. A gerjeszt(feszültség szokásos értéke 2-15V közé tehet(. A hidat esetenként nem egyenárammal gerjesztik, a szimulátor tervezésekor ezt a körülményt is mérlegelni kell. Ezek a problémák különösebb nehézség nélkül megoldhatók, a további körülményekre, problémákra a tényleges megvalósítást részletez( pontban térek ki.
17
Irodalmi áttekintés
A szimuláció során továbbá tekintettel kell lenni arra, hogy az érrendszer egyes pontjain a légkörinél alacsonyabb pillanatnyi nyomás is kialakulhat, tehát negatív nyomás szimulálása is szükséges. Az említett érzékenységek ismeretében elmondható, hogy a vérnyomás átalakítók meglehet(sen kis jelfeszültséget szolgáltatnak, tehát a jeleiket érzékeny bemenet7 eszközök fogadják. Mivel a vérnyomás csatornák sávszélessége 100Hz körüli, a hálózatból származó zavarok az EKG-hoz hasonlóan itt is problémákat okozhatnak. A legtöbb készülékben a nyomáscsatornán nincs hálózati lyuksz7r(, a zavaró jelek kiküszöbölését a kell(en nagy közös módusú elnyomással érik el, így a szimulátorban nem kívánok hálózati zavaroknak a vérnyomás jelekre történ( szuperponálásával foglalkozni.
2.1.3.
Légzés Kritikus állapotú, esetleg öntudatlan betegek monitorozása során fontos
szerepet kap a paciens légzésének monitorozása. Legf(képpen azt kell figyelni, hogy a beteg percenkénti légzésszáma mennyi, illetve, hogy nincs –e apnoe, azaz a légzés hosszabb kimaradása. A légzés, légzésszám figyelésére szintén több megoldás lehetséges. Ismeretesek olyan megoldások, amikor a be- és kilélegzett leveg( h(mérsékletét figyelve ellen(rzik a légzést, az ilyen megoldások hátránya azonban az, hogy valamilyen újabb érzékel(t kell a paciensen elhelyezni. A légzés légz(mozgásokkal jár együtt, ami leginkább a mellkas periodikus mozgásában nyilvánul meg. Ennek a mozgásnak az érzékelésére is több megoldás képzelhet( el. A mozgás során a mellkas helyzete változik, ez például a fémb(l készült ágyhoz, mint földhöz képest mérhet( kapacitás megváltozását okozza. Természetesen a légz(mozgásokon kívül más mozgások is jelent(sen befolyásolják a kapacitást, így ez a módszer nem ad megfelel( eredményt. A gyakorlatban leginkább használt módszer azt a jelenséget használja ki, hogy belégzéskor a tüd( megtelve leveg(vel kitágul, így a tüd(szövet impedanciája megn(. A mellkason impedanciát mérve ennek az impedancia-változásnak az érzékelése lehet(vé teszi a légzés tényének megállapítását, s(t a légzés amplitúdójára vonatkozó kvalitatív következtetések is levonhatók (felületes vagy mélyebb légzés). A legtöbb beteg(rz( monitorban ezt a megoldást alkalmazzák a légzés figyelésére, mivel a paciensen már amúgy is fent lev( EKG elektródák felhasználásával egyben a légzés is monitorozható. Az EKG 18
Irodalmi áttekintés
jelekr(l szóló pontban már szó esett az elektródák közti impedanciáról. Megfelel(en felhelyezett jó min(ség7 elektródák esetén a mellkas két széls( pontja között pár száz ohm – pár kiloohm körüli ellenállás mérhet(. A légzés hatására ez az ellenállás néhány ohmot változik, tehát látható, hogy a relatív ellenállás-változás meglehet(sen csekély. Mivel a szabványok a paciensen átfolyó ún. segédáramokra egyenáramon szigorú megkötéseket tesznek, a szokásos megoldásokban a paciens impedanciát nagyfrekvencián, pár tíz – száz kilohertzen mérik. Ekkor a helyzetet bonyolítja az impedancia nem tisztán valós volta, hiszen kapacitásváltozás a hozzávezet( EKG kábelek elmozdulása során is bekövetkezik. Így az impedanciának csak a valós részét kell figyelembe venni, a jelszimulátorban pedig csak valós impedancia-változást kell
5.ábra. EKG elektródák felhelyezése légzés monitorozásához
tudni el(állítani. A szokásos készülékek csak egy vagy két elvezetésben képesek a légzés következtében változó impedancia mérésére. A mérést a végtagi elvezetéseken
végzik,
hiszen
az
impedancia
változás
itt
a
legnagyobb.
Irz(monitorok esetében a végtagi elektródákat nem a végtagokra, hanem a hónaljvonal magasságába szokás helyezni (5.ábra) a minél kisebb mozgási artefakt és minél nagyobb légzésjel elérése érdekében. Abban az esetben, amikor két elvezetésben monitorozható a légzés, általában átkapcsolhatóan választható ki a jobb légzésjelet adó elvezetés. A szimuláció során így csak a végtagi elvezetésekhez tartozó végtagi pontok közötti impedanciát érdemes finoman változtathatóra kiképezni.
19
Irodalmi áttekintés
2.1.4.
Oxigén-szaturáció A magasabb rend7 él(lények, köztük az ember esetében is a szervezetet
alkotó sejtek m7ködéséhez szükséges gázcsere a légzés során a vérben található hemoglobin tüd(ben történ( oxigenációja, majd a szövetekben az oxigén leadása közben történik. A hemoglobin oxigénköt( képessége többek között az oxigén parciális nyomásától és néhány élettani paramétert(l függ. Ennek megfelel(en az összes hemoglobinnak csak egy meghatározott része a ténylegesen oxigént szállító oxihemoglobin. Az oxigenált hemoglobinnak az összes hemoglobinhoz viszonyított aránya az ún. oxigén-szaturáció, amit szokás egyszer7en csak szaturációnak is nevezni. Ezt a perifériás szövetekben mérve SpO2-vel jelölik. A
szaturáció
monitorozása
a
beteg(rz(
készülékek
esetében
alapkövetelmény. Ezen túl egyes EKG készülékek is képesek szaturáció mérésére. A legáltalánosabban használt ún. pulzoximéterek m7ködési elve azon a felismerésen alapul, hogy az oxihemoglobin és a hemoglobin a különböz( hullámhosszú fényt más-más mértékben engedi át. A szokásos szenzorok, melyek a perifériás vér oxigénszaturációját tudják mérni, a perifériás szövetet (például ujjat, fülcimpát) kétféle hullámhosszúságú fénnyel világítják át, miközben a vizsgált szöveten áthaladó fények intenzitását mérik, vagy a szövetet megvilágítva a szövetb(l reflektált fény er(sségét
érzékelik.
Általában
ujj-
vagy
fülcsipeszt
használnak,
de
állatgyógyászatban nyelvre is szokás a csipeszt helyezni, s(t létezik rectalis típus is. A reflexiós elven m7köd( szenzorokat a b(rfelületre ragasztják. A szenzorok kialakítása egyszer7, egy infravörös és egy vörös LED-b(l, valamint egy fotodiódából állnak. A két LED másodpercenként kb. százszor felváltva világítja meg a fotodiódát, így azzal a szöveteknek és benne a vérnek a kétféle hullámhosszon tapasztalható fényátereszt( képessége mérhet(vé válik. A két megvilágításhoz tartozó fotodióda-áramból, ami az adott hullámhosszhoz tartozó fényátereszt( képesség függvénye, a szaturáció kiszámítható, míg az infravörös tartományban történ( méréssel a pulzusgörbe (PLETH - Plethismograph) jeleníthet( meg. A két hullámhosszhoz tartozó abszorpciók aránya és a szaturáció közti összefüggést az ún. R-görbe adja meg. Ez a görbe elméletben (a Beer-Lambert törvény szerint) közel lineáris, a gyakorlatban azonban egy empirikusan korrigált görbét használnak,
20
Irodalmi áttekintés
(6.ábra) ami gyártótól, az adott szenzortól és a pulzoximéter modultól is függhet.
6.ábra. Csillapítási arány – oxigén-szaturáció görbék
A pulzoximéterek teszteléséhez használható szimulátor megvalósítására több megoldás ismert. Az egyik megoldás szerint egy speciális folyadékot tartalmazó m7ujjra helyezik az érzékel(t. A folyadék pulzálásáról a vizsgálatot végz( személy gondoskodik úgy, hogy a m7ujjat az ujjával finoman nyomkodja, vagy ezt a pumpálást egy berendezés végzi, változtatható pulzusszámmal. A m7ujjban található folyadék összetételét(l függ a két vizsgált hullámhosszon az abszorpció, így néhány (a BC Group Finger Phantom terméke esetén például 80%, 90% és 97%) szaturáció értéknek megfelel( m7ujj készíthet(. A felhasznált folyadékokban lev( pigment bomlása miatt a m7ujjak kb. 1 évig, 20-30ºC között tekinthet(k hitelesnek. Az elektronikus megoldás szerint a szimulátor m7ujjában elhelyezett detektorok figyelik, hogy a vizsgálandó készülékhez csatlakoztatott szenzorban az adott pillanatban melyik LED világít. Ennek megfelel(en az ugyancsak a m7ujjba beépített LED a mérend( szenzor fotodiódáját megvilágítja. A megvilágítás amplitúdója az adott pillanatban függ attól, hogy éppen az infravörös vagy a vörös tartomány abszorpcióját kell szimulálni, az abszorpció pillanatnyi értéke pedig a szimulálni kívánt szaturációtól illetve a pulzusgörbét(l függ. Természetesen lehetséges a szimuláció úgy is, hogy szenzort nem alkalmazunk, pusztán a vizsgálandó berendezés LED-meghajtó jeleit figyelve állítjuk el( a fotodiódának megfelel( jelet. Az elektronikus szimuláció során esetleg különféle R-görbéket kell tudni szimulálni
21
Irodalmi áttekintés
az egyes szenzoroknak illetve pulzoximétereknek megfelel(en, ha a szaturáció pontossága követelmény, azaz ha kalibrált m7szerre van szükség. Az artefaktok közül a mozgási artefakt az abszorpció változását vonja maga után, ezzel zavarva a pulzusgörbét. A szaturáció értékére elvben a mozgás nincs hatással, hiszen mindkét hullámhosszon ugyanúgy változik a mozgás hatására a fényáteresztés. További artefakt a túlságosan er(s küls( megvilágítás, aminek hatására az érzékel( fotodióda telítésbe megy, így nem tudja a feladatát, a LED-ek által kibocsátott és a szövetek által csillapított fényt megfelel(en érzékelni. További zavaró tényez( lehet a mesterséges megvilágítás hálózati frekvenciával történ( modulálásának hatása. Az 50 illetve 60 Hz-es moduláció ugyanis megjelenik az érzékel( fotodiódáján is, ezzel zavarva a mérést. Tulajdonképpen nem artefakt, de a mérést szintén befolyásoló – és a szimuláció során figyelembe veend( – tényez( a szövetek pulzustól független abszorpciója, ami a b(r színét(l, vastagságától stb. függ.
2.1.5.
H<mérséklet A testh(mérséklet mérése nem csak a lázas állapot indikálására szolgál,
hanem fontos szerepe van a hypothermiában végzett m7tétek során is. Nyitott szívm7tét során például 29°C körüli h(mérséklet7re h7tik a paciens testét, nehogy a csökkent vagy id(legesen leállított vérkeringés következtében szöveti károsodás alakuljon ki. Magát a szívet pedig még ennél is alacsonyabb h(mérséklet7re h7tik. Ez esetben nyilván fontos a pontos h(mérséklet ismerete. Bizonyos terápiás eljárások során pedig éppen a testh(mérséklet megemelése a cél, ekkor rendkívül fontos a szervezetben található fehérjékre káros magas h(mérséklet elkerülése, tehát ezekben az esetekben is pontosan, megbízhatóan kell tudni a h(mérsékletet mérni. Rossz általános állapotú betegek esetében is nagy jelent(sége van a testh(mérséklet normál tartományon belüli értékének. A h(mérséklet mérését továbbá dokumentálási célból is végzik. Az (rz(készülékek, m7téti monitorok esetén a leggyakrabban használt h(mér( átalakítók m7ködése a h(mérsékletfügg( ellenállásokon alapul. A Yellow Springs cég által bevezetett és ma világszerte alkalmazott YSI400 és az ezzel kompatibilis átalakítók egy NTC ellenállást tartalmaznak. Az ellenállás méréséb(l
22
Irodalmi áttekintés
különböz( számítások, táblázatok felhasználásával a h(mérséklet jobb, mint 0.1°C pontossággal mérhet(. A másik gyakran használt szenzor az YSI700 kompatibilis átalakító, mely két NTC ellenállást tartalmaz. Ilyen átalakítókból számos kivitel létezik,
b(rfelületen elhelyezhet(, nyel(cs(be, szájnyílásba vagy rectalisan
bevezethet(. Speciális típusok képesek az áramló vér h(mérsékletét mérni úgy, hogy az érzékel( egy fém cs(höz illeszkedik, a csövön pedig küls( keringetés esetén a vért átvezetik. A h(mérséklet mérésekor a következ( megfontolásokat tartják szem el(tt, tehát a szimuláció során a következ(kre kell ügyelni: A h(mér( érzékel( jelét fogadó bemenet ismeretlen potenciálon van, nem biztos, hogy valamelyik pont földelt. Az érzékel(nek az átfolyó mér(áramból következ( saját melegedésének kiküszöbölése érdekében kis mér(áramot használnak, valamint szokás a mér(áramot csak a mintavételezés idejére egy rövid ideig bekapcsolni. A zajok hatásának eliminálása érdekében a mintavett jelen átlagoló sz7rést végeznek. A h(mér(szenzor szimulálása viszonylag egyszer7 feladatnak t7nik, hiszen csak egy vagy két ellenállásértéket kell el(állítani. A nehézség akkor jelentkezik, ha az el(állítandó h(mérséklet értékeknek kalibráltnak kell lenniük, ekkor ugyanis az ellenállást nagy pontossággal kell szimulálni. A kereskedelemben kapható szimulátorok legtöbbje esetében ezért a szimulálható h(mérséklet nem állítható be tetsz(leges értékre, hanem csak néhány fix érték közül választhatunk, hiszen a h(mér(csatornák esetében általában nem a szimuláció, hanem inkább a tesztelés, a pontosság ellen(rzése a cél. Ennek ellen(rzésére akár fix, kalibrált ellenállások is megfelelnek. Mivel a kifejlesztend( szimulátor célja nem a hardver tesztelése, hanem alapvet(en a szoftver-rendszer fejlesztése során történ( tesztelés, ezért célszer7 a sok lépcs(ben beállítható, de esetleg pontatlanabb h(mérséklet-szimuláció mellett dönteni.
2.1.6.
Egyéb szokásos paraméterek
Beteg(rz( illetve m7téti monitorok a következ( paramétereket képesek az eddigiekben felsoroltakon kívül mérni: M7téti monitorokban, f(leg anaesthesiológiai felhasználásnál a készülékek fontos feladata a gázkoncentrációk (ki- és belélegzett oxigén, szén-dioxid, altatógázok stb.) mérése. A már említett EEG és spirometria
23
Irodalmi áttekintés
sokkal ritkábban fordul el( szolgáltatásként. Gyakorta igény viszont a perctérfogat (Cardiac Output) mérése, amit leginkább a termodilúciós módszerrel végeznek. Ez a feladat a monitor részér(l h(mérsékletek szélesebb tartományban történ( pontos mérését és ennek alapján különböz( számítások elvégzését igényli. Speciális többlumen7 katéter segítségével – a katéter elején lév( nyomást folyamatosan figyelve, s így következtetve a katéter helyére – eljutnak a megfelel( érszakaszba, majd ekkor egy folyadék bolust, melynek h(mérsékletét folyamatosan mérik, a katéter egy pontján bejuttatják a vérkeringésbe, és a katéternek egy – a vérkeringés szempontjából távolabbi – pontján a h(mérséklet változást mérik. Ehhez a méréshez tehát két h(mérséklet és egy nyomás mérése szükséges. A perctérfogat mérés szimulációját a kés(bb ismertetend( Lionheart 3C készülék képes elvégezni. Ezen paraméterek megemlítésére csak a jelek áttekintésének kedvéért került sor, szimulálásukkal a továbbiakban nem foglalkozom, a szimulátorban történ( megvalósítást jelenleg nem tervezem. Természetesen vannak további monitorozott jelek, paraméterek, de célom a leggyakrabban felhasznált, megfigyelt jelek tulajdonságainak megismerése volt.
2.2. Élettani jeleket tartalmazó adatbázisok A biológiai jeleket tartalmazó adatbázisokat rendszerint referencia célból alkotják. [1] Az adatbázisok létrehozásával kapcsolatban számos kérdés merül fel. Azon túl, hogy az egyes jeleket milyen készülékekkel rögzítik, szükséges a mintavételi frekvencia és a felbontás meghatározása is. Szintén lényeges, hogy a jeleket hány alanyról veszik fel, és rajtuk hány mérést kell végezni. Fontosak lehetnek a földrajzi körülmények is, lehet(ség szerint földrajzilag minél szélesebb területr(l kell az alanyokat kiválogatni ahhoz, hogy a minta kell(en reprezentatív legyen. Megfelel( körültekintéssel a felállítható a szükséges kritérium-rendszer. Mivel a biológiai jeleket tartalmazó adatbázisokat tudományos és referencia célokra használják, az egyik cél a lehet( legjobb jelmin(ség elérése. Ennek biztosítására fontos lenne megfelel( el(írásokat megfogalmazni, egyel(re azonban ilyen általános irányelvek nincsenek felállítva. Általában az adatbázisokba kerül( felvételeket több helyen készítik, így ügyelni kell a hasonló feltételek kialakítására. Legtöbbször a biológiai jelek rögzítésének célja els(dlegesen nem az adatbázisok el(állítása, hanem 24
Irodalmi áttekintés
például intenzív (rz(ben a betegek megfigyelése, diagnózis felállítása és csak másodlagos szempont a jelek archiválása, az adatbázis el(állítása, így az el(álló jelek nagyban függenek az els(dleges céltól. A nyers fiziológiai jelek rögzítésekor kapott eredmény nagyban függ az er(sít(k és sz7r(k beállításaitól, ami a jel/zaj viszonyt és a jelek kés(bbi felhasználhatóságát befolyásolja. A hasonló beállítások ellenére a különféle készülékekkel felvett minták gyakran különböznek, ami a különböz( gyártók szenzorainak, er(sít(inek és sz7r(inek különböz( megvalósításában rejlik. Különösen igaz ez a nagyon kis szint7, például EEG jelek esetén, így az adatbázisokban rögzíteni kell ezen információkat is. Fontos a különböz( tulajdonságú, esetleg külön készülékekkel rögzített élettani jelek egymáshoz történ( szinkronizációja is. Intenzív (rzés esetén a külön készülékekb(l származó jelek esete gyakran el(fordul. Az adatbázisok kapcsán fontos kérdés az adatok tárolásának struktúrája. Ahhoz, hogy a rögzített jelekhez és a hozzájuk rendelt annotációkhoz szisztematikusan hozzá lehessen férni, szükséges a formátumok egységesítése. A poliszomnográfiás vizsgálatoknál például elterjedt az ún. EDF (European Data Format) formátum. Ennél egy állomány tartalmazza az egész felvételt, amelyben a jelek különböz( felbontásúak, mintavételi frekvenciájúak lehetnek, valamint a paciens adatainak, eseményeknek, annotációknak a tárolása is lehetséges. Az EDF formátumon kívül még számos formátum létezik, ezekre itt csak felsorolás szintjén térek ki: A f(leg EKG adatok rögzítésére kifejlesztett CEN/ENV 1064, más néven SPC-ECG formátum, a HL-7 kórházi nyelvvel együttm7köd( ASTM formátum, ami f(ként neurofiziológiai jelek tárolására szolgál, valamint a CEN-TC251/FEF formátum, amely (rz(k, altató egységek, egyéb jelforrások jeleinek tárolására használható. Ezeken kívül léteznek egyéb, kevésbé elterjedt formátumok is, például az EBS (Extensible BioSignal format), melyet f(ként epilepszia vizsgálatokra, EEG és EMG jelek tárolására fejlesztettek ki. A SIGIF formátum egyforma frekvenciával mintavett jelek tárolására alkalmas többféle ábrázolás szerint. Az MIT-BIH által használt formátum is egy újabb ábrázolási mód.
25
Irodalmi áttekintés
A tényleges rögzítés során az amplitúdó felbontás és a mintavételi frekvencia a szükséges kiinduló paraméterek. Természetesen ezen paraméterek igen er(sen függenek a rögzíteni kívánt élettani jelt(l. Például EKG felvételek esetében a 12-14 bites felvételek az általánosak, légzés, pulzusgörbe ábrázolásához ennél kisebb felbontás is elegend(. A mintavételi frekvenciával kapcsolatos követelmények még egy adott típusú jel esetében is változnak annak függvényében, hogy az adatbázist milyen alkalmazásra szánják. Például egy alvásvizsgálat során nyilván nem szükséges olyan felbontású EKG rögzítés, mint egy terheléses EKG készítése közben. A következ(kben röviden áttekintem az általam is használt PhysioNet által szolgáltatott adatbázisokat. Mint említettem, a PhysioNet egy ingyenesen elérhet(, web-alapú adatbázis forrás. Mind a különböz( jelek, mind a feldolgozásukhoz szükséges szoftverek – GNU GPL nyílt forráskóddal – rendelkezésre állnak (PhysioToolkit). Ezen felül egyéb információk, segédletek is elérhet(k. Jelenleg különféle kardiopulmonáris, neurális és egyéb többparaméteres adatbázisok tölthet(k le, egészséges és beteg emberekr(l készített felvételekkel. Számos elváltozást, eseményt rögzítettek, például hirtelen szívhalált, epilepsziás rohamot, rendezetlen járásmintákat, alvási apnoét. A PhysioBank nev7 adatbázis mintegy 40GB rögzített jelet tartalmaz, melyeket 21 csoportba soroltak. Ezek felsorolásától most eltekintek, helyette csak a téma szempontjából érdekes adatbázisokat emelem ki: Az MIMIC adatbázis 72 darab, (rz(készülékr(l rögzített, egyenként 40 órás felvételt tartalmaz. 500Hz mintavételezés7 EKG jeleket, véres vérnyomás görbéket, légzésjelet, valamint az (rz(készülékek által számított paramétereket, eseményeket tartalmazzák az egyes rekordok. Ez a szimulátor szempontjából az egyik legérdekesebb adatbázis. A csak EKG adatbázisok közül említésre érdemes az MIT-BIH arrhythmia adatbázis, amely 48, egyenként fél órás felvételt tartalmaz. Ez volt az els(, nagyobb publicitású EKG adatbázis, melyet 1975 és 1979 között rögzítettek, és az 1980-as években prezentáltak digitális formában. Az adatbázis kifejleszt(i ma azonban már úgy gondolják, hogy ez az adatbázis már megtette azt – s(t többet is – amire létrehozásának idején szánták, szükséges új adatbázisok készítése. További hasznos adatbázis az MIT-BIH Noise Stress Test adatbázis, mely els(sorban az automatikus EKG feldolgozó eszközök zajt7résének vizsgálatát szolgálja. Az Európai ST-T
26
Irodalmi áttekintés
adatbázis – mely 90 félórás felvételt tartalmaz – célja különféle ST-szintet kiértékel( algoritmusok tesztelése. Irz(monitorok tesztelésére rendkívül hasznos a veszélyes kamrai arrhythmiákat tartalmazó MIT-BIH Malignant Ventricular Arrhythmia Database. Ez 22 darab 35 perces felvételt tartalmaz, 42 fibrillációval, 60 flutterrel, 89 kamrai tachykardiával. Az adatbázis ritmus és jelmin(ség annotációkat tartalmaz. Hasonló a Creighton University Ventricular Tachyarrhythmia Database (CUDB) is. Az MIT-BIH adatbázisok között létezik még szupraventrikuláris arrhythmiákat és pitvarfibrillációkat, ST elváltozásokat, hosszúidej7 (Holter) EKG felvételeket, normál szinusz ritmust tartalmazó adatbázis is. Az említett PhysioToolkit szoftvercsomagban az adatbázisokat konvertáló, megjelenít(, feldolgozó programok találhatók. A nyílt forráskód lehet(vé teszi a saját szoftverekbe történ( integrálást is. A Windows alá írt WVIEW programmal a
7.ábra. A PhysioToolkit WVIEW programja
különböz( adatbázisok jeleit lehet megtekinteni. A konverter programokkal lehetséges az összes adatbázis jeleit a kívánt mintavételi frekvenciával egy, a jeleket szövegfájl formájában tartalmazó állománnyá alakítani. A szimulátor a továbbiakban ezekb(l az állományokból dolgozhat. A 7. ábrán az MIMIC adatbázisból származó, (rz(készülékr(l rögzített jelek láthatók. A 473-es rekord 3 csatorna EKG-t, egy véres vérnyomás-görbét, pulzusgörbét és légzésgörbét tartalmaz. 27
Irodalmi áttekintés
2.3. Paciens modellek A szimulációk során fontos, hogy a megfelel(, a valóságot a mérések szempontjából minél jobban megközelít( paciens modellekb(l induljunk ki. A különféle szimulálandó jelek esetében más-más megfontolásokat kell szem el(tt tartani. Az EKG jelek szimulációja során számos kérdés merül fel. Mint arról már az EKG jelek keletkezésével és tulajdonságaival foglalkozó pontban említést tettem, a szokásos EKG készülékeket és (rz(monitorokat figyelembe véve cél a 12 konvencionális elvezetés el(állítása. Ha egyel(re csak a hasznos EKG jelek el(állítása a cél, akkor is több megoldás képzelhet( el a konvencionális elvezetések el(állítására. Mint azt beláttuk, a konvencionális elvezetésekkel az integrálvektor frontális és horizontális síkú összetev(it kapjuk meg. Ha az integrálvektor id(beli változását térben képesek vagyunk el(állítani a triaxiális szisztéma XYZ vektorkomponenseivel, akkor lineáris matematikai m7veletekkel el(állítható bármely elvezetésnek megfelel( jel. Mint az a létez( kereskedelmi EKG generátorok esetében megfigyelhet(, már két megfelel( vektorkomponens ismeretében is jó közelítéssel el(állíthatók a konvencionális elvezetések. Ekkor tehát csak két id(függvény tárolására és el(állítására van szükség, a tényleges elvezetések pedig egy ellenálláshálózat segítségével állíthatók el(. Ennek a megoldásnak az el(nye abban rejlik, hogy az elvezetési pontok között ellenállásokon keresztül elektromos kapcsolat van, így az egyik ponton megjelen( küls( jel adott leosztással megjelenik a többi ponton is. Ez a tulajdonság akkor lehet fontos, ha olyan készüléket vizsgálunk a jelszimulátorral, amely az elektródák leesését úgy érzékeli, hogy valamelyik elektródra adott vizsgálójel megjelenését más elektródákon detektálja. A megoldás egyszer7sége miatt (nyolc helyett csak két független jelet kell el(állítani) ez az elv nyer alkalmazást az olcsóbb árfekvés7 EKG generátorok esetében. A másik lehetséges megoldás az egyes elvezetések, pontosabban az elvezetési pontok feszültségének egymástól függetlenül történ( el(állítása. Ez a módszer nyilván nagyobb befektetést igényel, hiszen a konvencionális elvezetéseket figyelembe véve kilenc elvezetési pont feszültségét kell el(állítani. Digitális megvalósítást feltételezve tehát több digitál-analóg átalakítóra és az el(állítandó jeleket tároló nagyobb memóriára van szükség. A megoldás el(nye azonban az, hogy a meglév( jel28
Irodalmi áttekintés
adatbázisok közvetlenül felhasználhatók, hiszen azok az egyes elvezetéseken mintavételezett jeleket tartalmazzák. Az is fontos tényez(, hogy így az egyes elvezetések külön-külön kézben tarthatók, tehát például szoftver tesztelés során számos tényez( hatása szimulálható. Így lehetséges például az egyes elvezetésekben mérhet( jelek amplitúdójának, DC-eltolásának független beállítása. Ezen el(nyöket figyelembe véve az EKG jelek el(állítására ezt a megoldást választottam. Az EKG felvételek készítése során rendkívül fontos az ionos vezetést elektronossá alakító elektródák szerepe. A különféle típusú elektródok a b(rfelülettel érintkezve elektromos helyettesít( képekkel modellezhet(k. EKG elektród céljára ma leginkább ezüst-ezüstkloridot és rozsdamentes acélt alkalmaznak, de el(fordul különleges vezet(gumiból készített elektród is. A különféle helyettesít( kapcsolások rezisztív és kapacitív elemeket tartalmaznak, melyek a frekvencia-átvitelt befolyásolják. Mivel ezek a jelúttal sorosan kapcsolódnak, megfelel( nagyságú bemen(-impedancia esetén hatásuk nem zavaró. Sokkal nagyobb a helyettesít( képekben szerepl( feszültségforrások szerepe. A szív és a küls( hámréteg között elhelyezked( szövetek gyakorlatilag rezisztív impedanciaként modellezhet(k. A b(rre felhelyezett elektródákat a jobb kontaktus és jel-zaj viszony miatt gélezni szokás. A gél szintén rezisztív tagként fogható fel. A hámréteg és a gél, valamint a gél és az elektród közötti átmenet azonban már tartalmaz soros feszültségforrást is. Az elektród felületén kialakuló kett(s réteg a felhelyezés után az elektród típusától függ( id( múlva alakul ki, ekkor áll be az elektródpotenciál egy bizonyos értékre. Az elektródák csekély elmozdulása is a feszültség megváltozását eredményezi, bár a gélezés ezt a hatást valamelyest csökkenti. Ezen feszültségforrások feszültsége tehát hozzáadódik a ténylegesen mérend( fiziológiai jelhez, s mivel a feszültség változhat, a jelenség zavarja a mérést. A keletkez( feszültség a mérend( EKG jeleknél nagyságrendekkel nagyobb lehet. Az EKG készülékek esetén a szabvány ±300mV-ot ír el( DC-t7résnek, ekkora artefaktok el( is fordulnak a gyakorlatban. A konstans DC-szintnél sokkal nagyobb problémát az elektród mozgása következtében keletkez( folyamatosan változó feszültség jelenti, ami a felvételezés során alapvonalvándorlásban nyilvánul meg. Ez az EKG készülékek talán legnagyobb ellensége, igen sok problémát okoz, mivel a szabvány el(írja a diagnosztikai célú készülékek esetében az alsó határfrekvenciát is, ami 0.05Hz. Ezért a széles tartományban
29
Irodalmi áttekintés
beállítható DC-ofszet és annak finom változtathatósága is fontos követelmény a szimuláció során.
Ce
Re
U1
Rs
Cs
Rf Mérhet( jel
Rs’ Ub Mérend( biológiai jel (EKG)
Ce
Re
U2 Rf
8.ábra. Egy lehetséges EKG paciens modell (Warburg modell)
A paciens modellnek az EKG és a légzésmérés szempontjából része az elvezetések közötti impedancia változása is. A légzésmérés szempontjából els(sorban a nagyobb frekvencián (50-100kHz) mérhet( impedancia, annak is a valós része a lényeges. A valóságban az impedancia képzetes része is változik, hiszen a mozgás során az EKG jelek elvezetésére használt vezetékek egymáshoz és a paciens testéhez képest elfoglalt helyzete is változik, ez pedig az elvezetési pontok között mérhet( impedanciában a párhuzamos kapacitív tag megváltozását vonja maga után. Ha a légzésmér(ben csak az impedancia abszolút értékét mérjük, ez a kapacitás-változás hamis eredményt ad, hiszen befolyásolja a mérést. Ezért a légzésmér(knek csak az impedancia valós részének változását szabad figyelembe vennie. A hardver teszteléséhez szükséges lenne tehát a kapacitás változtatása is, és bár a feladat egyszer7en megoldható lenne, mivel a szimulátornak nem célja a hardver tesztelése, a jelenlegi konstrukció a kapacitív tag változtathatóságát nem támogatja. A véres vérnyomás mérésének szempontjából elektromos értelemben nem beszélhetünk paciens modellr(l, hiszen a ténylegesen mért jelet egy átalakító szolgáltatja, a paciens elektromosan nem befolyásolja a mérést. Amit figyelembe kell venni, az az EKG és a nyomásgörbe között fennálló ok-okozati összefüggés. A megvalósítás szempontjából fontos kiinduló paraméterek a szervezetben el(forduló
30
Irodalmi áttekintés
nyomásviszonyok, valamint azok id(beli változása, a változások sebessége. A gyakorlatban a –100…+300mmHg nyomástartomány elegend(, az id(beli változások leírására 100Hz sávszélesség tökéletesen megfelel(. A szimuláció során tehát a nyomás-átalakító m7ködését kell szimulálni. Ez abból áll, hogy a szimulálandó pillanatnyi
nyomásérték,
gerjeszt(feszültség
és
a
a
vizsgálandó
szimulálandó
készülék
által
nyomás-átalakító
szolgáltatott
érzékenységének
függvényében a szimulátornak megfelel( jelfeszültséget kell szolgáltatnia. Hasonló megállapítások érvényesek a pulzoximéterre is. A paciens itt sem elektromosan befolyásolja a mérést. A pulzoximéter m7ködési elvének megfelel(en a kétféle hullámhosszú fény csillapítása és ennek id(beli változása hordozza az információt. Ennek megfelel(en a szimuláció során a modellben fontos a csillapítások beállíthatósága, amivel a b(r és a szövetek vastagságát lehet modellezni. Fontos itt is hangsúlyoznom, hogy a szimulátor nem a pulzoximéter hardverének tesztelésére, pontosságának megállapítására szolgál, hanem egy pulzoximéterrel ellátott EKG vagy (rz(készülék szoftverének funkcionális tesztjét segíti. A cél tehát egy jellegében helyes pulzusgörbe el(állítása, melynek f(bb paraméterei beállíthatók, és változtatható késleltetéssel szinkronban van az EKG jellel, valamint egy változtatható, de nem kalibrált szaturáció érték szimulálása. A h(mérséklet esetében végképp nincs szükség paciens modellr(l beszélni, hacsak nem a h(mér(-érzékel( id(ben történ( beállását akarjuk modellezni. A feladat pusztán egy változtatható ellenállás létrehozása, mely ellenállás a szimulálandó h(mérséklettel meghatározott, nemlineáris összefüggésben áll. A modellek további pontosítására és egyéb megfontolásokra a berendezés analóg áramköreinek tervezésér(l szóló pontban térek ki.
2.4. Kereskedelmi jelgenerátorok A kereskedelemben kapható hasonló célú berendezések szolgáltatási szintje meglehet(sen széles skálán mozog. A legegyszer7bb készülékek egy konkrét gyártó berendezésének tesztelésére szolgálnak, igen egyszer7 módon.
31
Irodalmi áttekintés
Így például a Nellcor cég pulzoximéter tesztere [16] a cég oxigén-szaturációt mér( moduljának tesztelését végzi oly módon, hogy néhány el(re beállított pulzusamplitúdó és szívfrekvencia között választhatunk, beállíthatjuk a b(r illetve a szövetek fényátereszt( képességét, de magát az oxigén-szaturációt nem. Ez a készülék tehát nem is tekinthet( valódi jelszimulátornak, hiszen az el(állított élettani paraméter tényleges értéke nem állítható be egy kívánt értékre, inkább csak egy durva tesztelésre alkalmas. Általánosan használhatók azok az EKG jelgenerátorok, melyek akár a legegyszer7bb EKG jeleket el(állítják. A digitális technika térhódítása el(tt egyszer7 analóg eszközökkel valósították meg a stilizált EKG jelek el(állítását. Ezek a generátorok is leginkább csak az EKG készülékek alapvet( funkcionális ellen(rzésére szolgálnak, szinte csak azt az információt nyújtják, hogy a vizsgált berendezés a bemenetére kapcsolt jeleket a papír-regisztrálón vagy a képerny(n képes-e
megjeleníteni,
esetleg
egyszer7
QRS-detektor
ellen(rzésre
adnak
lehet(séget. A jel amplitúdójának illetve frekvenciájának beállításán kívül általában nincs más lehet(ség a kimen( jel befolyásolására. Ahogy az EKG készülékek és (rz(monitorok a digitális technika e területre történ( bevonulásával egyre intelligensebbek lettek, egy egyszer7 jelalak tesztelés egyre kevesebbet mond a vizsgált készülékr(l. Így tehát fontos szemponttá vált az el(állított, szimulált jelek minél több paraméterének változtathatósága, valamint – f(leg (rz(készülékek esetében – a minél több élettani jellemz( el(állíthatósága. Így a ma piacon lév( drágább, több szolgáltatást nyújtó EKG jelgenerátorok esetében számos paraméter beállítható. A hitelesített szívfrekvenciákon túl különböz( jelamplitúdók, a legkülönfélébb EKG elváltozások (arrhythmiák, ST-elváltozás stb.) valamint artefaktok közül választhatunk. A következ( kategóriában a kifejezetten (rz(monitorok tesztelésére készített paciens szimulátorok találhatók. Ezek a készülékek egy (rz(monitor szinte összes funkciójának tesztelésére alkalmasak. Így lehet(vé teszik számos EKG elváltozás, artefakt el(állítását, légzés szimulációt (változtatható alapimpedanciával, légzési ellenállás-változással, percenkénti légzésszámmal) invazív vérnyomás szimulációját, h(mér( csatornák ellen(rzéséhez h(mérséklet szimulációját.
32
Irodalmi áttekintés
Az alábbiakban néhány, a kereskedelemben kapható berendezést tekintek át, a számomra rendelkezésre állókat behatóbban megvizsgálva, ezek felépítésére is kitérek a felsorolásban. A Medi Cal cég 430-as típusszámú készüléke [3] egy egyszer7 EKG jelgenerátor. F(bb tulajdonságai a következ(k: •
csak EKG szinuszritmus szimulátor,
•
12 elvezetés 6 különböz( frekvenciájú szinusz ritmus 6 különböz( amplitúdóval,
•
QRS indikáló LED,
•
négyszögjel kimenet.
A Müller&Sebastiani cég Phantom 320-as EKG generátora, [5] melyet alkalmam volt közelebbr(l részletesen is megvizsgálni, a következ( tulajdonságokkal rendelkezik, illetve segítségével a következ( jelek szimulálhatók: •
csak EKG szimulátor,
•
12 elvezetés (nem független),
•
8 különböz( frekvenciájú szinusz ritmus,
•
bradycardia, tachycardia, arrhythmiák,
•
ST-elváltozások,
•
pacemakerek,
•
hálózati zajok.
A készülék meglehet(sen egyszer7 felépítés7, intelligenciát (mikroprocesszor, mikrokontroller) nem tartalmaz. Egy kvarcvezérelt órajelgenerátor jelét egy osztólánc a mintavételi frekvenciáig leosztja, és egy címszámlálót hajt meg. A címszámláló kimenetei EPROM-ok címzését végzik. Az EPROM-ok kiválasztásában és címzésében is szerepet játszik a két el(lapi kapcsoló, melyekkel a kívánt minta illetve a szívfrekvencia választható ki. Az EPROM-okban a minták 8 bitesen vannak tárolva, minden mintavételi ponthoz két 8 bites minta tartozik. A digitális jeleket egy kétcsatornás 8 bites digitál-analóg átalakító alakítja analóg jelekké. Az analóg jelek egy m7veleti er(sít(kb(l és ellenállás-hálózatból álló áramkörre kerülnek, amely el(állítja a 12 elvezetésnek megfelel( 9 elvezetési pont jeleit. További rendelkezésre
33
Irodalmi áttekintés
álló kimen( jel a nagyszint7 EKG kimenet, valamint az 1mV-os kalibráló impulzus. Egyéb mér(jeleket a készülék nem szolgáltat. Mivel az el(állított jelek eredete kizárólag a két digitál-analóg konverter, a pace impulzus korlátozott, az EKG jelhez hasonló amplitúdójú. Extra szolgáltatás a demó-üzemmód, amikor is a készülék az összes el(állítható jelet egymás után folyamatosan szolgáltatja küls( beavatkozás nélkül. Összességében a készülék legfeljebb egyszer7bb EKG készülékek tesztelésére alkalmazható. A DNI Nevada cég ECG200 típusú szimulátora [4] az el(bb ismertetett Phantom 320 készülékhez hasonló szolgáltatásokkal rendelkezik: •
csak EKG szimulátor, 12 elvezetéssel,
•
5 féle frekvenciájú szinuszritmus,
•
különféle arrhythmiák, pacer szimulálása,
•
változtatható EKG jel amplitúdó,
•
tesztjelek: kalibráló 1mV-os impulzus, szinuszjelek (határfrekvencia vizsgálathoz,
lyuksz7r(
vizsgálathoz)
háromszögjel
(linearitás
vizsgálatához). A 12 elvezetés az el(z( készülékhez hasonlóan szintén nem egymástól függetlenül áll el(, egyetlen analóg jelb(l, analóg úton történik az elvezetések származtatása. A Phantom 320-hoz képest többletszolgáltatás a jelek amplitúdójának változtathatósága, valamint a tesztjelek el(állításának lehet(sége. A szintén rendelkezésemre álló Biotek cég Lionheart 3C típusú készülékét [6] kifejezetten (rz(monitorok tesztelésére fejlesztették ki. Ez a készülék már számos jel, paraméter szimulálására alkalmas, és a különböz( értékek beállítására sok lehet(séget biztosít. •
12 független EKG elvezetés
•
néhány értékb(l választható fix EKG amplitúdók, szívfrekvenciák,
•
normál szinuszritmus esetén gyermek vagy feln(tt EKG jelek,
•
artefaktok: hálózati zaj, alapvonal vándorlás, légzés, izomzaj,
•
EKG
elváltozások:
ST-elváltozások,
különféle
arrhythmiák,
pacemakerek,
34
Irodalmi áttekintés
•
invazív vérnyomás: Kétféle transducer érzékenység, statikus és dinamikus nyomások négy csatornán különféle anatómiai helyekr(l, Swan-Ganz katéteres nyomások. Vérnyomás görbék az EKG-val szinkronban vannak,
•
légzés: Paciens impedancia kiválasztható néhány értékb(l, légzés amplitúdó változtatható, percenkénti légzésszám beállítható, apnoe lehet(ség,
•
h(mérséklet: fix h(mérséklet értékek YSI400 és YSI700 kompatibilis h(mér( bemenethez,
•
cardiac output szimuláció,
•
egyéb: Univerzális EKG csatlakozók, nagyszint7 EKG kimenet, különféle vizsgálójelek (szinusz, négyszög, háromszög stb.)
•
kezel(felület: 4*20 karakteres LCD, fóliabillenty7zet,
•
számítógéphez illeszthet( soros porton (RS232) keresztül,
•
egyéb funkciók: elemteszter, kábelteszter.
Ez a készülék meglehet(sen széles szolgáltatási területtel rendelkezik, kis méret7, jól használható többfunkciós szimulátor. Mikroprocesszor vezérelt, kezelése kényelmes, gyors beállítást tesz lehet(vé. Az LCD-n a beállított paraméterek jól áttekinthet(en jelennek meg. A soros kapcsolat lehet(vé teszi a PC-r(l történ( vezérlést, ez azonban csak annyit jelent, hogy a különféle beállításokat a készülék saját billenty7zetének használata helyett PC-r(l lehet elvégezni. A 12 EKG elvezetést független mintákból állítja el(, a minták felbontása itt is 8 bit, míg az invazív nyomáscsatornák 12 bites digitál-analóg átalakítókkal m7ködnek. A készüléket alkalmam volt részletesebben megvizsgálni, s mivel az általam tervezend( szimulátorhoz ez a típus áll a legközelebb, a készülék számunkra pozitív tulajdonságait a saját konstrukciómban is próbálom megvalósítani, az itt hiányolt funkciókat, lehet(ségeket pedig beillesztem a kifejlesztend( készülék specifikációjába. A Lionheart 3C készülék rendszer-szint7 felépítése megfelel( alap lehet a kifejlesztend( készülékhez. A benne alkalmazott konkrét megoldások is érdekesek, tanulságosak lehetnek a fejlesztés szempontjából. Ezért a következ(kben röviden ismertetem a készülék felépítését, helyenként az alkalmazott megoldásokra is kitérek. A készülék a következ( f(bb részekre tagolható: 35
Irodalmi áttekintés
•
a készülék vezérlését végz( digitális rész, mely tartalmaz egy mikrokontrollert, buszvezérl( áramkört és a készülék programját valamint a görbéket tartalmazó EPROM-ot,
•
4 soros, soronként 20 karakteres LCD,
•
fóliatasztatúra numerikus és néhány egyéb billenty7vel,
•
analóg rész, mely a digitális részt(l kapott, még digitális formában lev( görbéket, paramétereket a szimulációnak megfelel(en analóg jellemz(kké alakítja, valamint tartalmazza a tápegységet és az elemvalamint kábeltesztel( áramkört. Itt kapott helyet a hangszóró, amely a billenty7k megnyomásakor és hibás vagy értelmetlen beállítások esetén ad hangot. A soros port csatlakozója is ezen a panelon kapott helyet, valamint itt találhatók a véres vérnyomás, h(mérséklet, cardiac output csatlakozók is.
•
az EKG csatlakozókat hordozó és egyben a készülék egyik oldalát képez( panel.
Mivel a kidolgozandó jelszimulátor analóg funkciói részben hasonlítanak ehhez a készülékhez, az analóg részt részletesebben megvizsgáltam. A vizsgálat közben gy7jtött tapasztalatokat az alábbiakban ismertetem: Az analóg rész egy kétoldalas panelon foglal helyet. A legszembet7n(bb, hogy annak ellenére, hogy meglehet(sen kis szint7 jelek el(állításáról van szó, ahol a zaj szempontok mérvadóak, a nyák huzalozása nem t7nik túl átgondoltnak, táp és földsíkok nincsenek, a földvezeték vastagsága és ad hoc jelleg7 vezetése is kétségeket ébreszt(. A készülék tápellátását végz( 9V-os szárazelem illetve a küls( hálózati adapter feszültsége egy 5V-os stabilizátor IC-re jut. Err(l a feszültségr(l jár a digitális rész és az analóg rész is innen kapja a pozitív feszültséget. A negatív feszültséget egy szokásos töltéspumpás polaritásváltó átalakító állítja el(, ez táplálja az analóg részt a szükséges negatív feszültséggel. Az EKG jeleket egy 8 bites, 12 csatornás D/A konverter állítja el(, az IC referenciája maga az 5V-os tápfeszültség, ami szintén elgondolkodtató a zajok szempontjából. Néhány tápfeszültség-sz7r( kondenzátoron kívül gyakorlatilag semmilyen zajt csökkent( megoldással nem találkoztam. Közbevetve jegyzem meg, hogy mindemellett a készülék által szolgáltatott jel min(sége teljesen megfelel(. A D/A-k kimenete egyszer7 leosztás után kerül a
36
Irodalmi áttekintés
kimenetekre. A légzésjelet egy FET csatorna-ellenállásának változtatása teszi a megfelel( – kapcsolóval kiválasztható – végtagi elvezetésre. Az invazív nyomások szimulációja során a szükséges analóg jelet 4 db 12 bites D/A konverter állítja el( a négy IBP csatorna részére. A D/A konverterek a referencia-feszültségüket a mérend( küls( eszköz mér(híd-gerjeszt( feszültségéb(l kapják megfelel( szinteltolás, határolás után. Így a kimen( jel szükséges gerjeszt(feszültség függése megoldódik a szorzó típusú D/A-nak köszönhet(en. A h(mérséklet szimulációját – tekintettel a négy beállítható értékre – fix ellenállások analóg multiplexerrel a h(mér( csatlakozóra történ( kapcsolásával oldják meg. A készülékben a Cardiac Output mérés szimulációjánál szükséges változtatható ellenállást érdekes megoldással valósították meg. A változtatható ellenállást egy LED által megvilágított fotoellenállás képezi. Ilyen „optocsatolóból” kett(t alkalmazva a lineáris üzem biztosítható, azaz a változó ellenállás szabályozott, értéke az alkalmazott áramköri megoldással egy vezérl(feszültséggel egyenesen arányos lesz. Ezzel a megoldással lehet(vé válik a perctérfogat mérésének szimulálásánál szükséges, a katéterben lév( gyors h(mér( – amely, mint arról már szó esett, egy NTC ellenállás – ellenállásváltozásának szimulálása. A vizsgált készülék szolgáltatásai nagyjából megfelelnek a szükséges követelményeknek az EKG és (rz(készülék fejlesztés során is, a legnagyobb hátrány azonban a szimulált jelek, görbék paramétereinek, alakjának változtathatatlansága. A tervezend( jelszimulátor is nagyrészt ezen jeleket lesz képes el(állítani, viszont a cél az el(állított jelek, görbék teljes kör7 változtathatósága a különféle adatbázisok felhasználhatóságának köszönhet(en. A legutolsó, csak a készülék adatlapjának értékelésével történt vizsgálatomat a már említett DNI Nevada cég MedSIM 300 készülékén [7] végeztem. Ez a készülék az eddig említettek közül a legszélesebb szolgáltatási területtel rendelkezik. Az eddig felsorolt készülékekhez képest plusz szolgáltatás a jelek paramétereinek igen szerteágazó beállítási lehet(sége. A szolgáltatások rövid összefoglalása a következ( néhány pontban található: •
12 független EKG elvezetés 9 független kimeneti ponttal,
•
finoman beállítható EKG amplitúdók, 37
Irodalmi áttekintés
•
4 lépésben állítható paciens impedancia,
•
szívtengely állás beállítható,
•
terhes valamint újszülött / csecsem( EKG szimuláció,
•
artefaktok: hálózati zaj, alapvonal vándorlás, légzés, izomzaj,
•
EKG
elváltozások:
ST-elváltozások,
különféle
arrhythmiák,
változtatható paraméterekkel, gombnyomásra kiváltható korai ütés, •
pacemakerek, változtatható amplitúdóval (±700mV-ig) és id(kkel, aszinkron, AV szekvenciális, demand, stb.,
•
defibrillátor tréning, (például szinuszritmus, majd kamrai tachykardia, aztán kamrai fibrilláció, majd defibrillátor ütésre visszaáll a szinuszritmus)
•
4 invazív vérnyomás: Kétféle transducer érzékenység, statikus és dinamikus nyomások négy csatornán különféle anatómiai helyekr(l, Swan-Ganz katéteres nyomások. Vérnyomás görbék az EKG-val szinkronban vannak, még az arrhythmiás esetekben is.
•
az invazív vérnyomás csatorna kimenetek elektromosan leválasztottak a többi kimenett(l,
•
légzés: Paciens impedancia kiválasztható néhány értékb(l, légzés amplitúdó változtatható, percenkénti légzésszám beállítható, apnoe lehet(ség, beállítható légzéstípus (feln(tt, csecsem(, lélegeztet(gép) és belégzési/kilégzési arány,
•
h(mérséklet: fix h(mérséklet értékek YSI400 és YSI700 kompatibilis h(mér( bemenethez,
•
cardiac output szimuláció 3, 5 és 7 l/min perctérfogathoz fix görbék,
•
egyéb: Univerzális EKG csatlakozók, nagyszint7 EKG kimenet, különféle vizsgálójelek (szinusz, négyszög, háromszög stb.)
•
kezel(felület: 2*32 karakteres LCD, fóliabillenty7zet,
•
vezérlési lehet(ség soros porton keresztül (RS232).
Ez a készülék – a Lionheart 3C-hez hasonlóan – a tervezend( szimulátorhoz szolgáltatásaiban, illetve az el(állítható jelek tekintetében leginkább hasonlít, kivételt képez ez alól az, hogy a diplomamunka témáját képez( szimulátor esetében az
38
Irodalmi áttekintés
el(állítandó görbéket egy cserélhet( tároló tartalmazza, illetve a görbék on-line el(állítása is lehetséges egy küls( számítógép segítségével. Az el(bbiekben felsorolt szimulátorokról az 1.táblázat ad áttekintést:
EKG elvezetések
Medi Cal 430 12 elvezetés, nem független csak szinuszritmus
Phantom 320 12 elvezetés, két jelb(l származtatva szinuszritmus és arrhythmiák
6 érték
Biotek Lionheart 3C 12 elvezetés, független
DNI Nevada MedSIM 300 12 elvezetés, független
szinuszritmus és arrhythmiák
szinuszritmus (gyermek/feln(tt) és arrhythmiák
8 érték
5 érték
15 érték
szinuszritmus, feln(tt, csecsem(, terhes EKG, programozható paraméterekkel 8 érték
6 érték
fix
változtatható
fix, <150d
fix
fix
-
hálózati zaj
-
4 lépésben állítható 4 lépésben állítható hálózati (50/60Hz) és izomzaj, alapvonal vándorlás (légzési artefakt)
-
van, fix
van
-
-
-
-
-
-
-
-
-
EKG jelek Szívfrekvencia EKG amplitúdó Paciens impedancia
DNI Nevada ECG200 12 elvezetés, egy jelb(l származtatva
EKG m termékek
Pace jel
Véres vérnyomás
van, (aszinkron, demand, AVszekvenciás) az amplitúdó 210mV-ig állítható, az id( 0.1ms-tól 2ms-ig 4 csatorna, statikus és dinamikus nyomások, Swan-Ganz procedúra, artefaktok beállítható légzésszám és impedancia változás, apnoe
Légzés
H,mérséklet
4 fix h(mérséklet (YSI 400 és 700 szenzor)
finoman állítható 4 lépésben állítható hálózati és izomzaj, alapvonal vándorlás beállítható amplitúdóval mindegyik vagy csak egyes elvezetéseken beállítható amplitúdó (700mVig) és id(
4 csatorna, statikus és dinamikus nyomások, SwanGanz procedúra, légzési és egyéb artefaktok beállítható légzésszám és impedancia változás, apnoe, feln(tt, csecsem( üzemmód, be- és kilégzési arány állítható, lélegeztet(gép szimuláció 4 fix h(mérséklet (YSI 400 és 700 szenzor)
39
Irodalmi áttekintés
-
-
-
-
-
-
négyszögjel kimenet, QRS indikáló LED Medi Cal 430
-
szinusz-, háromszög-, négyszögjel, impulzus kimenet
Perctérfogat
PC kapcsolat
Egyéb
Phantom 320
DNI Nevada ECG200
a 3C-ben van, küls( hardver is szükséges a használatához. 3 perctérfogatérték, hibák, stb. csak funkcióválasztás lehetséges, görbék nem változtathatók elem és kábelteszter, mér(jelek
opció
csak funkcióválasztás lehetséges, görbék nem változtathatók IABP szimuláció, defibrillátor tréning, mér(jelek
Biotek Lionheart 3C
DNI Nevada MedSIM 300
1.táblázat. A felsorolt gyári szimulátorok áttekint$ táblázata
40
A berendezés tervezése
3. A berendezés tervezése A megtervezend( szimulátor – mint az a korszer7 elektronikus készülékek legtöbbjére jellemz( – mind hardver, mind szoftver összetev(t tartalmaz a m7ködése érdekében. Tekintettel arra, hogy a számítógéphez csatlakoztathatóság követelmény, valamint a jelek egyszer7, hatékony el(állításának érdekében a készülék vezérlését egy mikroprocesszor végzi, a megfelel( perifériáival együtt. A memóriában digitálisan reprezentált jelek tényleges szimulációját, azaz a vizsgálandó készülék által elvárt fizikai mennyiségekké történ( átalakítását pedig az analóg rész valósítja meg. A készüléket vezérl( mikroprocesszor m7ködtet( programja, valamint a szimulátornak egy küls( számítógéppel történ( vezérlését lehet(vé tev( program és az adatbázis jeleit a szükséges formátumba konvertáló program alkotják a rendszer szoftver elemeit. Tekintettel arra, hogy a diplomamunka írásának id(pontjában a berendezés kivitelezése – anyagbeszerzési és gyártási okokból (nyomtatott áramkörök gyártásának hosszú átfutási ideje, ritkán használt alkatrészek esetén akár 12 hetes szállítási határid(, stb.) – nem fejez(dött be, a prototípus tervezésének menetét és a prototípusban megvalósított áramköri, illetve szoftver megoldásokat ismertetem. A megtervezett áramkörök m7ködését mindenhol a szükséges számítások elvégzésével, valamint áramkörszimulációk futtatásával ellen(riztem, ennek ellenére elképzelhet(, hogy a végleges megoldásban a mellékletben található kapcsolási rajzokhoz képest apróbb részletekben változások történnek. A következ( pontokban bemutatom a készülék hardverének és szoftverének tervezési lépéseit, a specifikáció alapján a megvalósításhoz szükséges megfontolásokat.
3.1. Hardver tervezés Mint az említésre került, a készülék hardvere két f( részb(l, a digitális és az analóg részb(l áll. A digitális részhez tartozik a vezérlést végz( mikroprocesszor és környezete, a görbék tárolását végz( memóriával, valamint a kezel(i beavatkozást lehet(vé tev( input-output egységek, illetve a készülék m7ködéséhez szükséges vezérl(jeleket el(állító áramköri részletek. A digitális funkciókért felel(s áramkörök egy külön nyomtatott áramkörön kapnak helyet az analóg panel felett, ami a jobb helykihasználás és zaj szempontok miatt is célszer7 megoldás. A digitálisan 41
A berendezés tervezése
reprezentált jelek analóg feszültségértékké alakítását végz( D/A konverterek, és a feszültségeket a megfelel( fiziológiai mennyiségekké tovább alakító áramkörök és az ezek m7ködéséhez szükséges kiegészít( áramköri részletek, a kimeneti csatlakozók pedig az analóg panelen helyezkednek el. A következ( két pontban tehát a digitális és az analóg rész tervezésének menetére térek ki. E pontokban történik a specifikáció további pontosítása, a végleges paraméterek kialakítása is, figyelembe véve a szükséges szolgáltatásokat, valamint a rendelkezésre álló er(forrásokat, célszer7ségi szempontokat.
3.1.1.
Digitális rész A berendezés önálló m7ködését biztosító mikroszámítógéppel kapcsolatban a
legfontosabb annak az eldöntése, hogy mekkora számítási kapacitásra lesz szükség az adott applikációban. Szerencsére ma már számos gyártó széles termékpalettájáról választható ki a szükséges eszköz, kezdve a Microchip cég népszer7 PIC mikrovezérl(it(l az ARM processzorokig. A szükséges számítási kapacitás meghatározásához ismerni kell az elvégzend( feladatokat. A processzornak a következ( tevékenységeket kell ellátnia: •
folyamatosan szolgáltatnia kell a D/A konverterek részére a szükséges digitális mintasorozatot a megkívánt mintavételi frekvenciának megfelel( sebességgel,
•
ehhez olvasnia kell a jeleket tároló memóriát, illetve
•
aritmetikai m7veleteket kell végezni a jeleken,
•
szükség esetén fogadnia kell a PC fel(l érkez( adatokat, és azokat bufferelni kell, hogy pontos mintavételi frekvenciával lehessen a mintákat a D/A átalakítókra vezetni,
•
szintén a PC fel(l parancsokat kell fogadni, ezeket végre kell hajtani,
•
a felhasználó felé a szükséges kommunikációt biztosítani kell (kezelni kell a billenty7zetet és a kijelz(t, esetleg hangkelt( eszközt.)
Nyilván a feladat specifikálásakor még igen nehéz pontosan meghatározni azt, hogy mekkora teljesítmény7 processzorra lesz szükség. A feladatok igényein kívül fontos tényez( az is, hogy milyen nyelven készül a kérdéses szoftver. A gyorsabban futó, de
42
A berendezés tervezése
általában nehezebben áttekinthet( és fejleszthet( assembly nyelv7 programozással szemben egy magas szint7, például C nyelv7 program esetében kényelmesebb, követhet(bb fejlesztés, de lassabb végrehajtás áll. A következ(kben az általam ismert processzor és mikrokontroller családokból választom ki a feladat megoldásához elégséges eszközt. Amint azt a kés(bbiekben ismertetem, a szimulátor rugalmasságát és anyagi szempontból történ( megfontolásokat szem el(tt tartva, a jeleket, görbéket tároló memória nincs fixen a készülékbe beépítve. A nagy mennyiség7 adat tárolásának célrajára kommersz nemfelejt( tárolót alkalmazok, mégpedig a számos területen használt és ma már igen kedvez( áron beszerezhet( Compact Flash kártyát (CFC). Ezen kártya olvasása egy, az áramkörbe beépített EPROM olvasásához képest jelent(s többletfeladatot ró a processzorra a szabványos fájlrendszer kezeléséb(l kifolyólag. Az el(z(ekben ismertetett gyári szimulátoroktól eltér(en a szimuláció alatt valós id(ben magán a szimulált jelen is történik egy minimális szint7 jelfeldolgozás (amplitúdók állítása, zavarok rászuperponálása a jelekre, stb.) így ezeket a feladatokat is a processzornak kell ellátnia. Ezen követelmények ismeretében célszer7 egy középkategóriás mikrokontroller vagy mikroprocesszor mellett dönteni. Ha az említett aritmetikai feladatokat nem kellene elvégezni, a szimulátor
vezérlését
egy
közepes
teljesítmény7
PIC
mikrokontroller
is
elvégezhetné, így viszont a minden mintára elvégzend( szorzások, összeadások és a fájlrendszer olvasásához szükséges aritmetika miatt egy PIC teljesítménye több, mint valószín7, hogy nem lenne elegend(. A buffereléshez szükséges RAM, valamint a Compact Flash és a D/A konverterek buszra illeszthet( eszközök, s mivel a mikrokontrollereknek – így a PIC-eknek is – nincs valódi, kívülr(l elérhet( buszrendszerük, célszer7bb egy mikroprocesszor alkalmazása. A döntés mellett további érv a mikrokontrollerek meglehet(sen szerény aritmetikai képessége is, ami a PIC-ek esetén gyakorlatilag 8 bites összeadást, kivonást és logikai m7veletek elvégzésének lehet(ségét jelenti, a szimulátorban pedig meglehet(sen sok szorzás végrehajtása szükséges. A szorzásokat szoftverb(l megvalósítani – tekintettel a nagyszámú, másodpercenként több ezer 16 bites szorzásra – nem szerencsés, hiszen ez egy PIC esetén jelent(s processzorid(vel járna, az eddigi tapasztalataim alapján még tisztán assembly nyelv7 programozás mellett, a legnagyobb (20MHz órajel, 5MIPS) sebesség mellett sem lenne elegend( a teljesítmény. Az általam ismert és hozzáférhet( eszközök közül – egyéb, már elavultnak mondható processzorokat 43
A berendezés tervezése
elvetve – a Hitachi cég H8/3048 sorozatából a HD64F3048 típusú processzort [13] választottam. Mivel ezt a processzort munkahelyemen számos alkalmazásban használjuk és ez alapján elegend( információval rendelkezem mind a feladat igényeir(l,
mind
a
processzor
gyakorlatban
nyújtott
teljesítményér(l,
így
elmondhatom, hogy ez az eszköz biztosan elegend( lesz a feladat megoldásához. A kihasználatlan, többlet teljesítmény pedig el(ny a egy kés(bbi továbbfejlesztési igény esetén. Ez a processzorcsalád az alkalmazás szempontjából az alábbi fontos és el(nyös tulajdonságokkal rendelkezik: •
16 bites adatbusz, 24 bites címbusz lineáris címzéssel, bels( Chip Select lábak,
•
32 bites bels( architektúra, aritmetikai m7veletek (négy alapm7velet, logikai m7veletek,)
•
bels( 128kbyte FLASH memória a program tárolására, valamint 4kbyte bels( statikus RAM,
•
18MHz maximális órajel frekvencia, a legtöbb utasítás két ciklus alatt végrehajtódik,
•
számos beépített periféria (A/D, D/A konverterek, id(zít(k, DMA vezérl(, soros – párhuzamos port)
•
ingyenes
fejleszt(rendszer,
mellyel
C-nyelven
hatékonyan
programozható az eszköz. A fenti el(nyös tulajdonságok mellett apró hátránynak t7nik a processzor viszonylag magas fogyasztása, az említett középkategóriás PIC-ekhez képest a különbség körülbelül húszszoros. Ez az esetleges telepes, akkumulátoros üzem esetén lehet kedvez(tlen. A processzor kis helyigény7 100-lábú TQFP tokozásban foglal helyet, mely a méretek szempontjából kedvez(, de megnehezíti a prototípusok „deszkamodellek” fejlesztését a s7r7 lábelrendezés és az SMD technológia miatt feltétlenül szükséges többréteg7, jó min(ség7 nyák miatt. A beszerezhet(, gyári próbapanelek, evaluation board-ok pedig szinte még munkahelyi szinten is megfizethetetlenek, olcsóbb egy kész nyomtatott áramkör legyártatása. A család legújabb tagja a 3052-es processzor, amely a fenti processzorral gyakorlatilag egyenérték7, de nagyobb program-memóriát tartalmaz és 25MHz órajel-frekvenciáig m7ködtethet(. Ez abból a szempontból megnyugtató, hogy ha a kés(bbiekben mégis 44
A berendezés tervezése
sz7kössé válna a kiválasztott processzor, akkor különösebb átalakítás nélkül helyettesíthet( a nagyobb teljesítmény7 eszközzel. A szimulálandó jelek egy része (EKG, IBP, légzés, pletizmográf) tulajdonképpen egy-egy id(függvény, melyek el(állítása digitális minták analóggá alakításával oldható meg. A jelek keletkezésével és tulajdonságaival foglalkozó pontban a jelek sávszélességére vonatkozó adatokból kiindulva megállapítható, hogy a szükséges mintavételi frekvencia néhány száz Hz és egy kHz körüli. Mivel a létez( gyári készülékekkel ellentétben a szimulátor hosszú mintákkal dolgozik, és nem csak egy rövid minta (például egy szívciklus jelei) folyamatos ismételgetését végzi, ezért könnyen belátható, hogy tetemes tárolókapacitásra van szükség. Példaként egy tízperces terheléses EKG vizsgálat során 500Hz mintavétellel a 9 elvezetési pont jeleit
14
biten
ábrázolva,
a
14
bites
10·60[s]·9·500[Hz]·14[bit]/8[bit]=4.5Mbyte
adatokat
megfelel(en
adatmennyiséget
kapunk
pakolva további
tömörítés nélkül, és ez egy egyszer7bb, például differenciális tömörítés esetén sem csökken drasztikusan. Természetesen a szimulátor univerzális voltának egyik feltétele, hogy a tárolt mintákat könnyen lehessen változtatni, így látható, hogy például EPROM használata a görbeadatok tárolására teljesen kizárt. Lehetséges volna a készülékbe beépített FLASH memóriát alkalmazni, ekkor azonban gondoskodni kell arról is, hogy a tárolót kívülr(l fel lehessen tölteni a megfelel( adatokkal, és az így kapott megoldás a szükséges kapacitás ismeretében meglehet(sen drága is lenne. Ezért döntöttem a szintén FLASH memóriát használó Compact Flash Card használata mellett. Ezek az eszközök – talán a digitális fényképez(gépek
napjainkban
tapasztalható
robbanásszer7
terjedésének
köszönhet(en – igen jó teljesítmény/ár viszonnyal rendelkeznek. Egy 64 Mbyte kapacitású eszköz a diplomamunka írásának id(pontjában egy 4Mbyte kapacitású FLASH memória árával összemérhet(. A CFC-k f(bb tulajdonsága a következ(k: •
kis mechanikai méretek,
•
nagy tárolókapacitás, (jelenleg 1GB-ig)
•
nagy megbízhatóság, mozgó alkatrészt nem tartalmaz,
•
szabványos, könnyen kezelhet( ATA interfész, beépített vezérl(vel, valamint lineárisan címezhet( memóriaként történ( alkalmazás,
45
A berendezés tervezése
•
szabvány fájl formátumok alkalmazhatósága.
A CFC-k PC-vel történ( írására és olvasására kész megoldások kaphatók, így a szimulátorban csak a kártyák olvasását kell megvalósítani. Ezeket a készülékeket vagy USB porton lehet PC-hez csatlakoztatni, vagy a PCMCIA buszra illeszkednek. Mindkét megoldással lehetséges a kártyák kényelmes kezelése. Mivel a beépített ATA vezérl( a merevlemezes meghajtókhoz hasonlóan szektorszint7 elérést biztosít, a kártyákat tetsz(leges fájlrendszer szerint meg lehet formázni, azonban a szimulátorban az egyszer7ség kedvéért csak egyféle fájlrendszert (FAT16) implementálok. A ma létez( kapacitású kártyákhoz ez a fájlrendszer is b(ven elegend(. A Compact Flash kártyák nagy tárolókapacitása ellenére el(fordulhat, hogy speciális esetben akkora mennyiség7 adat alapján szükséges a szimuláció, amekkorát a CFC-k már nem tudnak tárolni. Tipikusan ilyen eset lehet egy Holter rendszer tesztelése, ahol 24 órás felvétel készítése a szokásos. Természetesen ebben az esetben – már csak a Holter memóriájának korlátaiból adódóan is – egyrészt nem mind a 12 elvezetést használják, (bár létezik ilyen készülék is) másrészt a tárolás el(tt a mintavett jelet tömörítik. Mivel a szimulátorban nem tervezek tömörítést alkalmazni (további számítási kapacitás, valamint az esetleges tömörítési veszteségek miatt,
az
egyszer7bb,
például
differenciális
kódolással,
aminek
kicsi
a
számításigénye, pedig nem lehet nagy tömörítési rátát megvalósítani) ésszer7bb megoldás a jelek on-line szimulálása úgy, hogy a görbepontokat egy PC szolgáltatja a szimuláció id(tartama alatt. Így nem kell a jelek betömörítésével sem foglalkozni, a rendelkezésre álló adatbázisok tömörítetlenek, a PC feladata ezek alapján csak a nagyméret7 fájl soros vonalon történ( átküldése. Mivel a PC fel(l érkez( adatfolyam pontos id(zítése és folyamatossága nem garantálható, szükséges az adatok bufferelése. A buffer méretének megválasztása annak függvénye, hogy mekkora az adatfolyam sebessége és mekkora kiesésre kell számítani a küld( részér(l. Figyelembe véve, hogy a PC-s szoftver Windows alapú lesz, az adatfolyam rövidebb idej7 kimaradásaira mindenképpen kell számítani. 128kbyte RAM felhasználása jó kompromisszum ár szempontból, és ekkora méret7 buffer már biztosan nem fog alulcsordulni. A processzor 16 bites felépítéséb(l adódóan célszer7 a RAM-ot is 16 bit szóhosszúságúra kiképezni, ezért a konstrukcióban két darab, egyenként 128kbyte
46
A berendezés tervezése
kapacitású RAM-ot használok. Ez azzal az el(nnyel is jár, hogy a programfejlesztés stádiumában ebbe a küls( RAM-ba tölthet( le a m7ködtet( szoftver is, amely így kényelmesen fejleszthet(, nem kell a processzor bels( FLASH memóriáját a sok letöltéssel elhasználni. (A bels( programtároló megfelel( m7ködése csak kb. 100 letöltésig garantált, ennél vélhet(en többre lesz szükség.) A felhasználandó processzor képes dinamikus RAM kezelésére, beleértve a frissítést is, azonban ilyen kis kapacitásigény mellett célszer7bb statikus RAM használata. A készüléknek a felhasználóval történ( kapcsolattartása a beépített kijelz(n és a billenty7kön keresztül történik. A kijelz(vel szemben támasztott igények nem magasak, mindössze rövid szöveges információk megjelenítésére van szükség. Így ezen a helyen egy saját kontrollerrel rendelkez( pontmátrixos karakteres LCD modul tökéletesen megfelel. Többféle változat létezik, különféle sor és oszlopszámmal, egy 2 vagy 4 soros 16 karakteres kijelz( erre a célra elegend(. A kijelz(k 4, vagy 8 bites buszra illeszkednek, írás-olvasás vezérl(jelet, engedélyez( jelet és egy regiszterválasztó jelet igényelnek, illesztésük tehát egyszer7. A billenty7zettel szemben sincsenek különösebb igények, egy numerikus billenty7zet nyilakkal és néhány egyéb billenty7vel (Enter, ESC stb.) elegend(. A billenty7zet kialakítása praktikusan mátrix rendszer7 lehet, pattanó membrános fóliatasztatúrával, mely egyedileg is kialakítható, jól kezelhet( billenty7zetet ad. A digitális rész – amely tulajdonképpen egy korszer7 mikrogép – blokkvázlata a 9. ábrán látható. A digitális rész tervezésér(l röviden a következ(eket érdemes elmondani: Programfejlesztési stádiumban – bár a processzor rendelkezik bels( 128kbyte méret7 FLASH programtárolóval és 4kbyte SRAM-mal – a küls( RAM-ból célszer7 futtatni a fejlesztés alatt álló programot. A bels( programtár kímélése (a már említett 100 letöltési lehet(ség miatt), valamint egy új verzió letöltési idejének csökkentése érdekében is érdemes ehhez a megoldáshoz fordulni. Figyelembe véve, hogy a készülékszoftvernek számos feladatok kell ellátnia, és ezek nagy részét nem érdemes assembly nyelven írni, valamint az ezzel a processzorral szerzett eddigi ismereteim alapján várható, hogy a szoftver mérete néhány 10kbyte méret7 lesz. A felhasznált GNU C-fordító egyébként igen jól optimalizálja a kódot, néha assemblyben sem lehetne tömörebben ugyanazt a feladatot megoldani. A
47
A berendezés tervezése
program fejlesztési stádiumban történ( tárolásán kívül a változók tárolásán, a verem megvalósításán felül a RAM-nak bufferelési szerepe is van. Ezen feladatok nem foglalnak túlságosan nagy méret7 memóriát (szintén 10kbyte nagyságrendr(l van szó), de mégis célszer7 két tokot felhasználni a RAM kialakítására. Ennek oka az, hogy így lehetséges a RAM 16 bites elérése, ami sebességnövekedést okoz. Éppen a szoftver RAM-ból történ( futtatása az a kritikus helyzet, amikor a RAM hozzáférési ideje fontos, hiszen nem mindegy, hogy a 18MHz-en járó processzornak mennyi id(t
LCD RAM Beeper Processzor
CFC csatlakozó D/A konverterek
Busz
Compact FLASH kártya
Billenty7zet
RS232 interface Digitális potméterek
9.ábra. A digitális rész tömbvázlata
kell töltenie a RAM-ra való várakozással. A rendelkezésre álló memóriákból ezért célszer7 a legkisebb elérési idej7, 55ns-os verziót választani. Ezekb(l a legkisebb kapacitású ma kapható eszköz 128kbyte méret7. Ezért döntöttem tehát a két darab, egyenként 128kbyte méret7 SRAM mellett. A processzor számára szükséges órajel el(állításáról a processzorba épített oszcillátor gondoskodik, frekvenciáját egy küls( kvarc határozza meg. A reset-jelet egy feszültségmonitor IC állítja el(, biztosítva azt, hogy a tápfeszültség felfutása alatt, és utána egy meghatározott ideig biztosan aktív legyen a reset-jel. A Compact FLASH kártya közvetlenül csatlakoztatható a 16 bites adatbuszra, ezen felül három címbit és néhány vezérl(jel biztosítása szükséges. A processzor a küls( egységeket memóriába ágyazottan kezeli. A címtartomány több 48
A berendezés tervezése
részre osztható a szószélességnek és a sebességnek megfelel(en, lehetséges tehát az, hogy bizonyos perifériák zero wait state elérés7ek, míg mások ennél lassabbak. A 16 bitesen illesztett eszközök esetében az olvasás egy vezérl(jel segítségével történik (RD), az írás pedig kett(vel (LWR, HWR). A legalsó címbit ez esetben nem az A0, hanem az A1 lesz. A kontrollerrel ellátott LCD-k 8 bites eszközök, így a készülékben használt LM016L, kétszer nyolc karakteres típus is. Az LCD illesztésénél a következ(ket kell betartani: A 8 bites perifériáknál a fels( 8 adatbitet használja a processzor, az írást pedig a HWR jellel jelzi. Mivel az LCD kontrollere meglehet(sen lassú, ennél a perifériánál szükség van wait state beiktatására is. Az LCD kezelése meglehet(sen egyszer7 a néhány kurzormozgató és kijelz(-törl( parancs segítségével, beépített karakter-generátorának köszönhet(en pedig a programozóra csak az a feladat hárul, hogy az ASCII karaktertáblának megfelel( kódokat a modulra küldje. A D/A konverterek szintén buszra illeszthet(ek, az általam választott típus (AD7841, [11]) esetében nem lehetséges a 14 bites regiszterek két menetben történ( feltöltése, így a konverterek is 16 bitesen vannak a buszra illesztve. A címbusz alsó három bitjével a nyolc kívánt D/A átmeneti regiszterek egyike választható ki, az LDAC vezérl(jelre pedig mind a nyolc átmeneti regiszter egyszerre írható D/A regiszterekbe, így az új minták pontosan egyszerre jelennek meg a kimeneteken. A digitális részhez tartozó többi funkció illesztése sem igényel további hardver elemeket, lévén a processzorban számos integrált periféria megtalálható. Ezek közül a soros I/O esetében van szükség némi illesztésre, erre azonban csak a PC RS-232 vonalához történ( szintillesztés miatt van szükség. E célra a szokásosnak nevezhet( MAX232-es áramkört használom fel, amely biztosítja a jelek szükséges invertálását, a szintillesztést és a megfelel( meghajtást, valamint beépített töltéspumpás feszültség-átalakítóval rendelkezik a ±10V-os feszültség el(állításához. A billenty7zet illesztése is egyszer7, a 4x4-es mátrixba kötött billenty7ket 4 portvezeték hajtja meg felváltva, és 4 másik portvezeték olvassa az állapotukat. A visszajelzésre szolgáló kis piezo hangszórót egy további portvezeték hajtja meg. Ezen portok a processzorba integráltak, tulajdonképpen egyes processzor-lábakat jelentenek, a portok mindegyikének bitenként beállítható az iránya. A felhasznált digitális potenciométerek (lásd az analóg résznél, a 3.1.2 pontban) kétféle interfésszel rendelkeznek. Mivel a felhasználás szempontjából hol a Maxim, hol az Analog Devices eszköze a megfelel(bb, mindkét esetet kezelni kell. 49
A berendezés tervezése
Az Analog Devices potméterek (AD5262) szinkron soros buszra (SPI busz) csatlakoznak. Ennél a típusnál megoldható az eszközök daisy chain-be kötése, azaz az adatbitek shiftelése során a kilép( bitek a következ( potméterbe lépnek be. A több potméter láncba kötésével kialakított hosszú shiftregiszter feltöltése után a közös CS jel inaktívvá tételével történik meg a shiftregiszterekb(l a potméterek tényleges beállítása. Így egy közös órajellel és egyetlen adat-bemeneti ponttal, valamint egy Chip Select vezetékkel megoldható a feladat, tehát csak egy szinkron SIO-ra van szükség, a processzor pedig két ilyen szinkron soros áramkört tartalmaz. A lánc kialakítása során érdemes a gyakrabban változtatott potmétereket (légzésjel el(állító potméterek) a lánc elejére tenni, hiszen így nem kell minden alkalommal az egész láncot végigshiftelni, bár ez nagyon gyorsan megtehet(. A Maxim digitális potenciométerek fel/le interfésszel rendelkeznek, esetükben további egyszer7 portvezetékek alkalmazása a célravezet(. Minden potméter esetében elmondható, hogy a szükséges frissítési gyakoriság, „mintavételi frekvencia” nem nagy, a legnagyobb a légzésjelet el(állító potméterek esetén, azonban itt is csak 25-50 minta szükséges másodpercenként, ezt a processzor illetve a szinkron soros illeszt( b(ven ki tudja szolgálni a soros átvitel mellett is. A Maxim eszközöknél, ahol programozott az adatátvitel, igen ritkán kell az ellenállás-értéket frissíteni, hiszen ezek a potméterek a h(mérséklet-mérés szimulációjában játszanak szerepet, tehát ez sem igényel számottev( processzor-er(forrást. A két darab 10kd pályaellenállású potenciométert tartalmazó MAX5451 [14] esetében mindkét potenciométer külön fel/le bemenettel, léptet(bemenettel, és Chip Select bemenettel rendelkezik. Ha az összes tok fel/le és léptet( lábait összekötjük, akkor csak az engedélyez( lábakat kell külön meghajtani. Az összesen szükséges két tokra való tekintettel egyedi portvezetékek is felhasználhatók e célra. Az analóg részben található analóg kapcsolók, analóg multiplexerek m7ködtetésére az adatbuszra kapcsolódó latch-ek kimeneteit használom fel. Ugyancsak innen vezérlem a h(mérséklet szimuláció során használt digitális potenciométereket. Az impedancia-beállító potméterek szinkron soros buszára csatlakoznak, a szükséges kiválasztó jeleket a processzor egyik portjáról meghajtott multiplexer állítja el(. A címdekódolás a processzor beépített dekóderének köszönhet(en egyszer7: Az LCD a lassú m7ködése miatt külön processzor Chip Select lábra került, így biztosítható a nagyobb wait-state A memóriákat egy másik Chip Select láb választja ki. Az össze többi periféria (CFC, 50
A berendezés tervezése
D/A-k, multiplexerek, latch-ek) kiválasztását egy harmadik Chip Select vezeték és egy demultiplexer végzi. A digitális részben speciális megoldásokat nem alkalmaztam, a fenti áttekintés mellett a kapcsolási rajzok nyújtanak további információt.
3.1.2.
Analóg rész Az analóg rész esetében számos feladat vet(dik fel, melyek egy része nem
fordul el( a mindennapi elektronikai gyakorlatban, így részletesebb megfontolást igényel. Az egyes szimulálandó élettani jelek, paraméterek más-más elektronikai megvalósítást igényelnek. Ebben a pontban történik az egyes jelek analóg szinten történ( szimulációjának kidolgozása, azaz a digitális formában tárolt jeleknek a vizsgálandó készülékek számára feldolgozható fizikai mennyiséggé történ( átalakításhoz szükséges elektronikai megvalósítások kidolgozása, valamint az el(z(ekben megismert el(állítandó jelek tulajdonságainak megfelel(en az analóg részek specifikációja. Az EKG jelek el(állítása érdekében – mint arra egy el(bbi pontban már utaltam – azt a megoldást választottam, hogy a szimulátor által kiszolgált EKG illetve (rz(berendezés EKG bemenetének minden egyes pontjának külön-külön el(állítom a feszültségét. A 12 elvezetéses konvencionális EKG vizsgálat 10 elvezetési pontot alkalmaz, melyek közül egy nem is elvezetési, hanem meghajtott pont. E pontra, melyet szokás szerint a jobb lábra helyeznek, a többi végtag feszültségéb(l képzett összegjel feler(sített, fázisfordított jelét kapcsolják, a közös módusú elnyomás növelése érdekében. A legtöbb gyári paciens szimulátor amely az EKG jeleket minden elvezetési pontra függetlenül állítja el(, a jobb lábhoz csatlakozó kimeneti ponthoz képest állítja el( az egyes pontok feszültségeit. A jobb láb kimeneti pontja tehát lehet a szimulátor, vagy legalábbis az EKG rész analóg földje. Ezek után vizsgáljuk meg, miként állíthatók el( a többi elvezetési pont jelei. Az el(állítandó EKG jel – ha csak a hasznos jelr(l beszélünk, amit a szív elektromos tere létesít az elvezetési pontok között – feszültségtartományát tekintve néhány mVos nagyságrend7. A szabvány el(írásai szerint, így a szokásos EKG er(sít(k esetében is a DC-összetev(t leszámítva ±8mV-os feszültségtartományú jelek kezelése a
51
A berendezés tervezése
feladat. A szükséges felbontást pedig meghatározza az az ajánlás, mely szerint egy diagnosztikai célú EKG berendezés esetében, amelyik képes analízist illetve diagnózist is szolgáltatni a mintavett jelek értékelésének eredményeképpen, minimum 5µV felbontással kell rendelkeznie. A szükséges átfogás és a felbontás minimum 12 bit felbontást követel meg, hiszen log2(2·8mV/5µV)=11.64, ebb(l adódik a legalább 12 bites felbontás. Azon gyári szimulátoroknál, amelyeknél lehet(ségem volt a hardver megvizsgálására, az EKG felbontás 8 bit volt, s ez a felbontás többször okozott problémát az EKG készülékek szoftver fejlesztése során, túl kevésnek bizonyulva. A többi, a felsorolásban említett készülék esetében pedig nem áll rendelkezésre a felbontásra vonatkozó adat. A D/A konverterek keresése során sikerült egy olyan IC-t találni, amely egy tokban nyolc egyedi D/A átalakítót tartalmaz. Az átalakítók kettes-négyes csoportokba vannak rendezve, csoportonként külön referencia bemenettel. Az IC közvetlenül feszültség-kimenet7, meghajtó m7veleti er(sít(t is tartalmaz. Ez az áramkör 14 bites, amely felbontás – mint azt még kés(bb részletezem – a szimulálandó paraméterek mindegyike esetében elegend(. 2µV/bit felbontást megcélozva ezzel a D/A-val 214·2µV/2=16.384mV, azaz kb. ±16mV átfogás érhet( el, ami b(ségesen elegend( az EKG jel ábrázolására. A jelent(s tartalék artefaktok szimulálására használható. 3-4mVpp amplitúdójú EKG jelet feltételezve 10mVpp amplitúdójú zavaró jelek az EKG jelekkel megegyez( maximális sávszélességig digitálisan, szoftverb(l rászuperponálhatók a hasznos jelre. Ezen artefaktok közé tartozhatnak a hálózati zajok, alapvonal-vándorlás, pacemaker impulzus és az izomzaj, természetesen az adott amplitúdó és sávszélesség határok figyelembe vételével. Ahhoz, hogy a szimulátor univerzálisan használható legyen, szükség van sokkal nagyobb amplitúdójú jelek el(állítására, s az EKG jelekre történ( rászuperponálására is. Például a pacemaker tüske tekintetében a szabvány el(írja, hogy az EKG készülékeknek és (rz(monitoroknak a 700mV amplitúdójú, 2ms id(tartamú tüskét oly módon kell tolerálniuk, hogy az EKG görbén alapvonal eltolódást az impulzus nem okozhat. A DNI Nevada cég MedSIM 300 készüléke képes ekkora impulzus el(állítására, változtatható el(jellel, (max. ±700mV) az amplitúdó és az impulzusszélesség beállítható. Belátható, hogy ekkora átfogást közvetlenül a D/A átalakítóval nem célszer7 megvalósítani, hiszen ez esetben 19-20 bites átalakítókra lenne szükség, a már említett és célul kit7zött 2µV/bit felbontást figyelembe véve. Szintén hasonló problémát vet fel az elektródpolarizációból 52
A berendezés tervezése
származó DC-ofszet is. Ennek a DC-jelnek a nagysága pár 100mV nagyságrend7, a szabvány el(írja ezen ofszet toleranciáját. Amplitúdóban a hálózati zaj is meglehet(sen változó. A lyuksz7r(k hatásosságának vizsgálatára az EKG jellel összemérhet(, de annál nagyobb amplitúdójú, szimmetrikus módusú mér(jelet használnak, de a közös módusú elnyomás vizsgálatát több volt esetleg 10-20V amplitúdójú, közös módusú jellel végzik, tekintettel a 80-100dB közös módusú elnyomásra. Ekkora jelfeszültség el(állítását azonban a szimulátorban nem tervezem, tekintettel arra, hogy ekkora feszültségek el(állításához hasonlóan nagy tápfeszültség is szükséges, másrészt a szimulátornak nem célja egy EKG készülék bemérését, a hardver szabvány szerinti tesztelését lehet(vé tev( célm7szer feladatainak ellátása – ez más kategória. További megfontolásra érdemes az izomzaj szimulálása is. A miográfiás zajok amplitúdója az EKG jelek nagyságrendjébe esik, sávszélességük azonban számottev(en nagyobb, egy EMG készülék kHz-es sávszélességgel rendelkezik. Az miográfiás zajok szélessávú szimulációja els(sorban az EKG készülékek hardver sz7r(inek ellen(rzése, egy adott konstrukció min(ségének megállapítása szempontjából érdekes. Mivel a miográfiás zaj tartalmaz az EKG jelek frekvenciatartományába es( komponenseket is, az EKG készülékekben els(sorban a magasabb frekvenciájú, 30 Hz feletti összetev(k hatékony távoltartása a cél. A valódi, ténylegesen több kHz sávszélesség7 izomzaj el(állítása – bár többlet ráfordítással lehetséges volna – szintén nem volt célom, ezért az izomzajt az EKG jeleket el(állító D/A konverterekkel állítom el(, ami egyszer7bb hardver felépítést tesz lehet(vé és a gyakorlat során nem jelentkezik számottev( hátránnyal, hiszen e helyen sem cél a hardver tesztelése. Természetesen ez esetben az izomzaj sávszélessége elméletileg maximum az EKG jeleket el(állító D/A konverterek mintavételi frekvenciájának felét érheti el. Ennek kapcsán most célszer7 a szükséges mintavételi frekvencia, frekvenciák megállapítása. Az EKG készülékek illetve az (rz(monitorok EKG csatornája esetében általános az 500Hz – 1kHz körüli mintavételi frekvencia. Általában olyan értéket szokás választani, amelynek mind 50, mind 60 osztója, a hálózati feszültség frekvenciájának megfelel(en. Az EKG felvételeket tartalmazó adatbázisok is ennek megfelel( mintavételezéssel készülnek, általánosak a 250, 360 illetve 500Hz mintavételi frekvenciával készített felvételek. Kiindulásként a készülék tervezése során 1kHz-es mintavételi frekvenciát veszek figyelembe, ami természetesen csak azt jelenti, hogy az EKG jel el(állítását végz( 53
A berendezés tervezése
D/A átalakítók maximum ezer mintát alakítanak másodpercenként analóg jellé, nem pedig a ténylegesen tárolásra, feldolgozásra kerül( jelek mintavételi frekvenciáját. Mivel
az
adatbázisokban
található
jelek
1kHz-nél
általában
alacsonyabb
mintavétellel készültek, és így is vannak tárolva, ezért szükséges a jel mintavételi frekvenciájának átkonvertálása. Ezt a konvertálást végezheti a szimulátor processzora, vagy a CFC kártyán már 1kHz-es mintavételezés7 jelet kell tárolni, ez esetben egy PC-s szoftver gondoskodhat a konverzióról. Mindkét megoldásnak vannak el(nyei és hátrányai egyaránt. Ha a szimulátor végzi az újramintavételezést, akkor a tárolandó adatok mennyisége csökken, és a tárolóból kisebb adatátviteli sebességgel olvashatók ki az adatok, viszont jelent(s többlet processzor er(forrást igényel az újraminavételezés elvégzése. Ha a tárolóban már a végleges mintavételi frekvenciával tároljuk a görbepontokat, akkor a processzornak csak egyszer7en ki kell olvasnia az adatokat és azokat a D/A konverterre kell küldeni. Ebben az esetben természetesen mind a tárolandó adatmennyiség, mind a tároló és a processzor közti adatátviteli
sebesség
igény
megnövekszik.
Tekintettel
arra,
hogy
az
újramintavételezés nagyobb processzor-er(forrás igény7, célszer7bbnek tartom a minták végleges mintavételi frekvencia szerinti tárolását. Ez az elképzelés kés(bb, ha megfelel( processzor-er(forrás áll még rendelkezésre, megváltoztatható, és az újramintavételezés valós id(ben, a szimulátor processzorának feladatává válhat. Visszatérve a hasznos EKG jelnél jóval nagyobb amplitúdójú artefaktok el(állítására, a következ( nehézségek vet(dnek fel. Az EKG jel el(állítását az említett 2µV/bit felbontással úgy célszer7 megvalósítani, hogy a D/A konverterek egy-egy nagyszint7 jelet állítanak el(, ahol a feszültség legnagyobb értéke volt nagyságrend7. Ezekb(l a nagyszint7 jelekb(l megfelel( leosztással nyerhet(k a kisszint7 EKG jelek. Ez a megoldás azért el(nyös, mert a nagyszint7 jel osztásának arányában csökkenek a D/A átalakítókból származó különféle zajok. Természetesen a nyomtatott áramkör kialakításánál kell( figyelmet kell fordítani a megfelel( alkatrész-elrendezésre, a jó földelésre, esetleg árnyékolásra. A D/A átalakító adatlapja is részletesen kitér a föld- és tápsíkok használatának fontosságára, a megfelel(
csatolásmentesít(
kondenzátorok
elhelyezésére,
a
nyák
rajzolat
kialakítására – például arra, hogy az IC alatt nem ajánlatos jelvezetékeket vezetni az áthallások elkerülése érdekében – hiszen a nagy felbontásnak csak megfelel(en
54
A berendezés tervezése
alacsony zajszint mellett van létjogosultsága. Ezek figyelembe vételével zaj szempontból is kihasználható az elméletileg tervezett felbontás, azaz a kimeneteken megjelen( zaj elfogadható lesz az ábrázolható legkisebb feszültség-lépcs(höz, az 1 LSB-hez képest. A feladat ezek ismeretében az, hogy erre a kisszint7, alacsony (leosztott) zajú jelre egy nagyszint7, több száz mV-os jelet kell szuperponálni. Ez azért jelent gondot, mert a megfelel( jel/zaj viszony megtartása érdekében ennek a jelnek is ugyanolyan kis zajúnak kell lenni, mint a már leosztott EKG jelnek. A feladat megoldásához szükséges ismerni a D/A-k zajának keletkezését, természetét. A létrás D/A konverterek kimenetén tapasztalható zaj a következ( forrásokból származhat: •
a referencia feszültség zaja,
•
a D/A átalakítókban található analóg kapcsolók átkapcsoláskor keletkez( tüskék (glitch-ek),
•
egyéb digitális jelekb(l történ( áthallás okozta zaj,
•
a nem végtelen tápfeszültség-elnyomásból származó zaj,
•
a feszültség-kimenet7 D/A-k esetében a kimeneti m7veleti er(sít( zaja.
Ezen zajok ellen hatékony védekezési mód a magasabb frekvenciás komponensek kisz7rése, hiszen f(leg impulzusszer7 zajokról van szó, amelyek f( forrásai a bármilyen jó földelési és tápfeszültség-sz7rési rendszer mellett is létrejöv( digitális áthallások. Ezen zajösszetev(k megfelel(en alacsony töréspontú és a zárótartományban nagy elnyomást biztosító alulátereszt( sz7r(kkel eltávolíthatók a jelb(l. Szerencsére a nagy amplitúdójú artefaktok alacsony frekvenciásak, tipikusan kisebb, mint 1Hz sávszélesség7ek, illetve DC-jelek, mint például az elektród polarizáció következtében jelen lév( DC-szint, mely csak igen lassan változhat. Egy ilyen jól sz7rt, lassú, de nagyobb amplitúdójú komponenssel tehát a DC-ofszet és az ennek driftjéb(l következ( alapvonal-vándorlás szimulálható. A lassan változó nagy amplitúdójú, „kvázi DC” artefaktok mellett azonban a pacemaker-impulzus egy gyors és nagy amplitúdójú jel. Ennek szimulálására egy másik lehet(séget használok ki, nevezetesen azt, hogy a bizonytalan zajú, pacemaker-tüskét reprezentáló feszültséget csak addig a rövid ideig kapcsolom a kimenetre, ameddig a tüske tart, tehát a nagyobb zajszint7 jel csak arra az id(re terheli az EKG jelet zajjal, amikor az 55
A berendezés tervezése
az EKG készülékek számára amúgy is a feldolgozhatóság határán kívülre esik, és csak a hardver pace-detektor észleli az impulzust. A hardver pace-detektorok az EKG jelet differenciálják, így kiemelik a gyors változásokat, majd a differenciált jelet egy ablak-komparátorra vezetve és ennek jelével monostabilokat vezérelve jól detektálhatók a gyors, keskeny tüskék. A hardver detektor azért fontos, mert elképzelhet(, hogy a mintavételezés miatt a mintavett jelen a pace-tüske nem is érzékelhet(. Mivel a szabvány által el(írt feszültség, amit a készülékeknek tolerálniuk kell 700mV, ezért ekkora feszültséget a szimulátorban el( kell tudni állítani. A felbontás nem kritikus, akár egy 8 bites D/A konverter is megfelel( erre a célra, természetesen abban az esetben, ha nyolc átalakítót tartalmazó tok közül még van kihasználatlan kimenet, célszer7bb azt felhasználni. Érdemes továbbá megtartani a lehet(ségét annak, hogy ezzel a D/A-val egyéb, nem impulzus jelleg7 jelet is az EKG jelre szuperponálhassunk, például nagy amplitúdójú hálózati zajt. Az ilyen durva artefakt alatt szintén nem szempont a tiszta EKG jel jó jel/zaj viszonya – hiszen éppen a zaj szimulálása a cél – így a zaj bekeverésére is alkalmazható a pacetüske el(állítására használt módszer. Az EKG elvezetési pontokon el(állítandó feszültségek tehát három összetev(b(l állnak: •
a 14 bites D/A konverterek leosztott jele, ±16mV full scale értékkel,
•
lassú, sz7rt, „kvázi” DC-szint, kb. ±1V full scale értékkel,
•
kapcsolható feszültség, sz7rés nélkül, kb. ±1V full scale értékkel.
Az els( két összetev(t elvezetési pontonként, azaz kilencszer el( kell állítani. A harmadik komponens esetében csak az a követelmény, hogy a jel amplitúdója változtatható legyen, és csak a kívánt elvezetési ponton illetve pontokon jelentkezzen a jel, valamint az el(jele beállítható legyen. A konverter által el(állított analóg jel a megfelel( pillanatban az analóg kapcsolók segítségével a kívánt elvezetési pontra kapcsolható. Az el(jel kiválaszthatósága érdekében elvezetésenként két analóg kapcsolót alkalmazok, így lehet(ség van elvezetésenként meghatározni a pace impulzus el(jelét. Az összes elvezetési ponton külön-külön beállítható pace-impulzus amplitúdó a gyakorlatban nem biztosítana számottev( el(nyt, viszont a szükséges D/A konverterek számát jelent(sen növelné, ezért ezt a megoldást elvetettem. Így tehát egy D/A konverter és egy fázisfordító er(sít( erre a célra elegend(. A három különféle természet7 jel összekeverése során több probléma is felmerül. Ha csak a
56
A berendezés tervezése
tiszta EKG jel el(állítása volna a feladat, akkor megfelel( lenne egy egyszer7 ellenállásosztó, melynek alsó tagja 500d körüli érték, hogy egy másik elvezetési pont osztójának ellenállásával a vonatkoztatási ponton keresztül (jobb láb) az elvezetés impedanciája kb. 1kd legyen, ami egy valós paciens impedancia értéknek
RxRA
RRA-LA
RxLA
LA
10.ábra. A paciens impedancia kialakítása
megfelel(. Az osztó fels( tagját a szükséges osztási viszony és a D/A konverter full scale értékének, azaz a nagyjel7 EKG jel amplitúdójának ismeretében kell megválasztani. Az EKG jelen túl a pacemaker impulzus hozzákeverése ez esetben nem jelent problémát, mindössze az osztó közepére kell az analóg kapcsolóval csatlakozni. Az analóg kapcsoló ellenállását (párszor tíz ohm és pár száz ohm között) az osztó alsó tagja miatt figyelembe kell venni, ha a pace impulzus amplitúdóját pontosan kézben kell tartani. A kikapcsolt állapotban mérhet( kis szivárgóáram és kapacitás az osztót, mint terhelést figyelembe véve elhanyagolhatóvá teszi az áthallást, tehát a kikapcsolt kapcsoló nem okoz zaj problémát. A sz7rt DC-szint jelhez keverésével kapcsolatban a következ( problémák merülnek fel: egy passzív alulátereszt( sz7r(t nem szabad terhelni a megfelel( sz7r(hatás elérése érdekében, valamint az összegzés megfelel( végrehajtása érdekében a források impedanciájának alacsonynak kell lennie. Ebb(l látszik, hogy pusztán passzív úton a feladat nem oldható meg. Aktív elem használata esetén viszont újra zaj problémák merülhetnek fel. M7veleti er(sít(t alkalmazva olyan típust kell választani, melynek megfelel(en alacsony a zaja, s a zaj alacsonyfrekvenciás tartományban is kell(képpen specifikálva van. Erre a célra a Linear Technology LT1114 típusú, négy er(sít(t tartalmazó integrált áramkörét [12] választottam ki. Egy ilyen m7veleti er(sít(vel megvalósított alacsony (1Hz körüli) töréspontú másodfokú alulátereszt( sz7r(vel el(állítható a szükséges lassan változó, megfelel( zajszint7 jel. A szükséges 57
A berendezés tervezése
összetev(k el(állítása után már csak azok összegzését kell megoldani. Ez kivitelezhet( egy egyszer7 ellenállás-hálózattal, ahol a szükséges súlyozásnak megfelel( ellenállásokkal elvégezhet( az összegképzés. Természetesen a szükséges relatíve kis kimen( impedancia miatt (pár száz ohm) az összegzést alacsony impedancián kell végrehajtani, azaz a súlyozó ellenállások értéke is kicsi azokra a jelekre nézve, amelyeket nem kell nagymértékben leosztani. Mivel a súlyozó ellenállásokkal
a
generátorimpedanciák
sorosan
kapcsolódnak,
azoknak
elhanyagolhatónak kell lenniük. Az aktív alulátereszt( sz7r( kis impedanciás kimenet7, az EKG jelet a mV-os tartományra redukáló osztó szintén méretezhet( viszonylag kis impedanciájúra, de az analóg kapcsolók bekapcsolási ellenállása már jelent(s lehet. A passzív összegz(nél gondot jelent a különféle jelek egymásra hatása is. E problémák miatt célszer7 az összegzésre is aktív áramkört felhasználni, szintén egy kiszajú m7veleti er(sít( felhasználásával. Az összeadó áramkör bemeneteinek állandó lezárásáról gondoskodni kell, máskülönben a súlyozási együtthatók is változni fognak, ami nem kívánatos. Az aktív összegz( el(nyös tulajdonsága, hogy nagyobb impedanciával fogadja a jeleket, így egy passzív alulátereszt( sz7r( egyszer7en az EKG jeleket el(állító D/A konverterek kimenetére illeszthet(. Az összegz( áramkör kimenetét képez( m7veleti er(sít( kimenetét egy további osztóval illesztem a kimen( pontok felé, így, ha az összegz( kimenetén a kimeneti pontokon kívántnál nagyobb jelet állítunk el(, a zaj tovább csökkenhet, valamint a megfelel( kimen( impedancia is beállítható. Ha a maximálisan szükséges 1V-os kimen( jel helyett 5V-ot állítunk el(, és ezt a jelet öttel leosztjuk, akkor a m7veleti er(sít( saját zaja is ötödére csökken. Az osztó els(dleges szerepe azonban a föld felé biztosítandó impedancia beállítása. Mivel az EKG elvezetési pontok impedanciája nem lényegtelen a mérések szempontjából, foglalkozni kell a kimen( impedanciák változtatásával is, amely változás, mint említettem, az (rz(monitorokban a légzés figyelésének alapja is. A kimeneti pontok impedanciájának változtathatósága tehát követelmény. A végtagi elvezetési pontokon, ahol a légzést mérik a készülékek, az impedanciát finoman, 2-3fpp nagyságrendben kell tudni változtatni a légzés függvényében, lévén ekkora a valóságban is a paciens-impedancia változása a légzés következtében. E mellett minden elvezetésnél 1kf és 100kf körüli impedancia között kell változtatni az alap-impedanciát. Ennek célja az elvezetés-vizsgálat, azaz az EKG kábelek megfelel( min(ség7 csatlakozásának ellen(rzését végz( 58
A berendezés tervezése
áramkörökön keresztül az elvezetés- vizsgálatot kezel( szoftver-részek és az ez által vezérelt további szoftver funkciók tesztelése. Az alap-impedancia a szokásos pár tízszáz kHz-es mér(frekvencia mellett 1-2kf körüli, a légzésmér(k ebben a tartományban m7ködnek megfelel(en. Feladat tehát minden elvezetési pont impedanciájának durva beállítása, valamint a végtagi elvezetések esetén az impedancia finom változtatási lehet(sége. Az általam vizsgált Lionheart 3C gyári szimulátor esetében az impedanciának a légzés függvényében történ( finom változtatását egy FET csatorna-ellenállásának a Gate-Source feszültséggel történ( változtatásával érik el. A légzésmérésre használt elvezetés egy kapcsolóval választható ki az RA-LL illetve RA-LA elvezetések közül, azaz a változtatható impedancia egyik pontját a kapcsoló vagy a bal kar, vagy a bal láb pontjára kapcsolja. Az alap-impedancia beállítására csak a végtagi pontok esetében – azok közül is a légzésmérés számára kapcsolóval kiválasztott elvezetésnél – van lehet(ség, és az impedancia csak négy érték közül választható ki, amit egy egyszer7 analóg multiplexer fix ellenállásokkal tesz lehet(vé. A tervezend( szimulátorban ennél univerzálisabban használható megoldást próbáltam alkalmazni. A változtatható impedancia – jelen esetben valós ellenállás – megvalósítására több módszer használható. Az említett FET-es megoldás hátránya, hogy az UGS-RDS karakterisztika nemlineáris és h(mérsékletfügg(, ráadásul az UGS feszültség beállítása szinteltoló áramkört igényel, hiszen a FET Source elektródája nem biztos, hogy nulla potenciálon
van.
Lehetséges
LED-fotoellenállás
kombinációját
alkalmazó
„optocsatoló” felhasználása is, azonban mindamellett, hogy ilyen eszköz nincs kereskedelmi forgalomban, így csak házi körülmények között lehetne el(állítani és a mechanikai méretek sem lennének túl szerencsések, szintén linearizálást igényelne, például a már említett módon két ilyen eszköz és megfelel( negatív visszacsatolás alkalmazásával.
Alkalmazható
továbbá
a
fenti
analóg
multiplexerb(l
és
ellenállásokból álló megoldás is, bár ez légzésjel el(állítására nem alkalmas, hiszen ott folyamatosan, de legalábbis sok kicsi lépésben állítható ellenállásra van szükség. Létezik azonban egy olyan megoldás, amely az analóg kapcsolók és ellenállások sokaságát integráltan, kisméret7, olcsó eszközben tartalmazza, ez pedig a digitális potenciométer. Ezen eszközök egy valódi potenciométert utánoznak úgy, hogy tartalmaznak egy ellenállás-láncot, amelynek két vége ki van vezetve az eszközb(l, a lánc közbüls( pontjaira pedig analóg kapcsolók csatlakoznak, melyekkel a lánc egy 59
A berendezés tervezése
pontját a digitális érték által kiválasztva szintén az egyik kivezetésre, a „csúszkára” kapcsolják. A valódi potenciométerekhez képest a digitális potenciométerek néhány olyan tulajdonsággal rendelkeznek, amit a konstrukció szempontjából figyelembe kell venni, mégpedig a nem nulla csúszka-ellenállást, az eszköz diszkrét m7ködését, valamint a potméter föld kivezetéséhez képest az ellenállás-pályán elviselhet( maximális feszültséget. Bizonyos típusok csak pozitív, mások negatív feszültséget is tudnak kezelni, a földhöz képest megengedett feszültség 5-15V közötti érték7. A ma kapható digitális potméterek legnagyobb felbontása 8 bit, azaz 256 „csúszkapozíció” lehetséges, a csúszka-ellenállás pedig a felhasznált analóg kapcsolók miatt 50-500f közötti. Az „ellenálláspálya” értéke gyártónként általában három értékre korlátozódik, 10-200kf közötti értékekb(l választhatunk. A különböz( gyártók termékei között böngészve a légzés- és EKG impedancia beállító áramkörnél az Analog Devices cég AD5262 terméke [10] mellett döntöttem, mert ez az eszköz az általam ismertek közül a legkisebb csúszkaellenállással (60f tipikusan) rendelkezik, valamint csak ez képes bipoláris m7ködésre, tehát negatív feszültség7 jeleket is képes kezelni, ami az alkalmazás szempontjából elengedhetetlen. Az eszközben két független 8 bites potenciométer található, 20, 50 és 200kf-os verzióban kapható. A digitális adatok bevitele szinkron soros interfészen keresztül lehetséges, több eszköz ún. daisy chain-be köthet(, ekkor az összes potméterhez mindössze két digitális vonal szükséges. A potméterek önmagukban csak az alap-impedancia beállítására alkalmazhatók, a légzés során történ( változás csekély mértéke miatt még egy potenciométerre szükség van, amit egy megfelel(en megválasztott ellenállás hidal át, így biztosítva a kell( ellenállás-átfogást. 20kf-os potenciométert felhasználva és ezzel egy 330f-os ellenállást párhuzamosan kapcsolva kb. 10f átfogást érünk el, megfelel( felbontás mellett. A légzésjel felbontásának, a tulajdonképpeni ellenállásváltozásnak nem kell nagyon nagy felbontásúnak lenni, hiszen a légzésmér(k felépítésénél fogva a kapott jelet igen er(sen sz7rik, tehát a 8 bites felbontás is – ami a párhuzamos ellenállás miatt nem használható ki teljesen – b(ségesen elegend(. A mellkasi elvezetési pontokat szimuláló áramköri részletek megegyeznek a végtagiakkal, annyi különbségt(l eltekintve, hogy pontonként csak egy potméterre van szükség, hiszen légzésjelet ezeken az elvezetéseken nem kell el(állítani. A fentiek ismeretében egy elvezetési pontot meghajtó áramkör tömbvázlata a 11. ábrának megfelel(: 60
A berendezés tervezése
EKG jel a D/A-ról LPF
EKG ofszet a D/A-ról pozitív pace-jel engedélyezés pozitív pace-jel a D/A-ról negatív pace-jel engedélyezés
:30
g kimeneti pont
LPF
csak a végtagi elvezetési pontoknál
negatív pace-jel a D/A-ról
11.ábra. Egy elvezetési pont jelének el$állítása
A szimulátorban megvalósítandó következ( funkció a véres vérnyomást mér( IBP átalakító szimulálása. Egészen pontosan az átalakító kimeneti jelének szimulálása a cél, úgy, hogy a vizsgált készülék által szolgáltatott, az átalakítót gerjeszt( feszültséget a szimulációhoz úgy használjuk fel, mint ahogyan az a valódi átalakítóval történ( mérés esetén is történik. Az élettani jelekr(l szóló részben már szó esett a vérnyomás-átalakítók m7ködésér(l, tulajdonságairól, most pedig arra térek ki, hogy ezek szimulációja elektronikus úton miként lehetséges. A nyomás függvényében változó ellenállások az átalakítóban egy teljes hidat alkotnak. A hidat egyenfeszültség, esetleg váltakozó feszültség táplálja az egyik átlóban, a másikban pedig levehet( a nyomással a specifikált nyomástartományban egyenesen arányos jelfeszültség. Az átalakítók meglehet(sen kis szimmetrikus feszültségváltozást adnak az el(forduló nyomásértékek és hídgerjeszt( feszültségek mellett. A két kimen( pont feszültsége nyomásmentes esetben – egy meghatározott ofszetfeszültségt(l eltekintve – szimmetrikus módus tekintetében zérus, közös módus tekintetében pedig a hidat gerjeszt( feszültségek számtani középértéke. Nyomás megjelenése esetén az egyik kimenet feszültsége csökken, a másiké n( a nyomásmentes esethez képest, a köztük lév(
feszültség
pedig
a
nyomással
lesz
arányos.
Általános
esetben:
61
A berendezés tervezése
U out + =
U exc + + U exc + U exc + 2
U exc
)
é 2
(P
+ Pofs )
U out =
U exc + + U exc 2
U exc
)
é 2
(P
+ Pofs )
(
(U
exc +
vér
vér
ahol Uexc+ és Uexc- a hidat gerjeszt( pozitív és negatív feszültségek, az Uout+ és Uoutpedig a híd másik átlójának, a kimenetnek a feszültségei, é az átalakító érzékenysége, Pvér és Pofs pedig a vérnyomás, illetve a híd tökéletlenségéb(l származó ekvivalens nyomás-ofszet. A feladat ezek után az, hogy a gerjeszt(feszültségek felhasználásával a szimulálandó IBP értékek illetve ezek id(beli változásának, a vérnyomás-görbének a függvényében a két kimeneti feszültséget el(állítsuk. A fenti kifejezésben jól látszik, hogy a kimen(feszültségek egyrészt a hidat gerjeszt( feszültségek számtani középértékei, másrészt az ehhez hozzáadódó illetve kivonódó nyomásfügg( érték, ami a nyomással, a szimulálandó átalakító érzékenységével és a hidat tápláló teljes feszültséggel egyenesen arányos. A két els( mennyiség szorzata digitálisan áll el( a szimuláció során, a harmadik mennyiséget, a hidat gerjeszt( feszültséget pedig a D/A konverter referenciájaként használva a fenti kifejezés második tagját megkapjuk. Így a két szükséges szorzás egyikét digitálisan valósítjuk meg, a másikat pedig a szorzó típusú D/A valósítja meg. A D/A konverter referencia-feszültsége az adatlapjában megadott határt nem lépheti túl, ezért megfelel( limitálás szükséges a meghibásodások elkerülése és a megkívánt m7ködés elérése érdekében. A gyakorlatban használatos gerjeszt(feszültségek nagyságrendjébe es( D/A referenciafeszültség esetében a kimen( feszültség a referencia-feszültséghez hasonló nagyságú lesz, holott az átalakítók a gyakorlatban el(forduló nyomásértékekre sokkal kisebb feszültséget adnak. A referencia túlzott mérték7 leosztása jel-zaj viszony miatt nem megengedhet(, ezért a konverter kimenetén megjelen( feszültséget célszer7 leosztani. Ugyanakkor el(fordulnak akkora hídgerjeszt(-feszültségek, amelyek a D/A-ra megengedett referencia-feszültségnél nagyobbak, ezért egy kisebb osztás itt, a referencia-ágban is szükséges. A szükséges er(sítések, leosztások, valamint a D/A felbontását a következ(képpen határozhatjuk meg. Az (rz(készülékek általában a -100…+300mmHg tartományban mérnek. ±400mmHg átfogás tehát biztosan megfelel(, 1mmHg felbontás pedig követelmény. A kétféle átalakító-érzékenység közül a nagyobbik és a legnagyobb nyomásérték figyelembe vételével a szükséges 62
A berendezés tervezése
átfogás, a kisebb érzékenység és a nyomás felbontásra vonatkozó feltétel alapján pedig
a
szükséges
bitszám
meghatározható.
Így
a
(40[µV/V/mmHg]/5[µV/V/mmHg])·(±400[mmHg]/1[mmHg]) kifejezést kiértékelve ±3200 szükséges lépcs( adódik, ami log2(2·3200)=12.64 értelmében legalább 13 bites átalakítót követel meg. Lévén az EKG jel el(állítására használt D/A konverterb(l kett( kell a szükséges csatornaszám miatt, és így viszont kihasználatlan átalakítók maradnak, célszer7 ezeket az IBP jel el(állítására felhasználni. A 14 bites bipoláris átalakító pedig a számítások szerint a célra megfelel. A maximális gerjeszt(feszültséget
±10V-ban
meghatározva
azt
kapjuk,
hogy
a
gerjeszt(feszültségek különbségképzése el(tt a két feszültséget néggyel kell leosztani. Ekkor a különbségképzés után a maximális 20V-os gerjesztésre 5V referencia-feszültség áll el(. A felhasznált D/A konverter felépítéséb(l adódóan ekkor ±10V full scale érték adódik. Ezt a feszültséget azonban az alkalmazott analóg tápfeszültség ±8V-os értéke nem teszi lehet(vé, de erre nincs is szükség, hiszen ez az érték több, mint 1000mmHg esetén állna el(. A maximális 400mmHg esetén viszont csak kb. 3.9V feszültség keletkezik a D/A kimenetén, amit már az adott körülmények között teljesíteni tud az eszköz. A kimen( feszültség szükséges leosztását a következ(képpen határozhatjuk meg: Az osztási viszony szempontjából a gerjeszt(feszültség nyilván közömbös, legyen például az el(bb említett maximum, ±10V. Ekkor például 40µV/V/mmHg érzékenység és például 400mmHg nyomás mellett
pontosan
2·10[V]·40[µV/V/mmHg]·400[mmHg]=0.32V
szimmetrikus
kimen(feszültséget kapunk, azaz az egyes kimenetek feszültsége pozitív illetve negatív irányba 0.16V-ot mozdul el. A szimulátor esetében a fentieket figyelembe véve
a
D/A
kimen(feszültsége
a
következ(
képlet
szerint
alakul:
2·10[V]/4·(40[µV/V/mmHg]/5[µV/V/mmHg])·400[mmHg]/(214/2[LSB])·2=3.90625V lesz,
a
szükséges
0.16V
helyett,
a
szükséges
osztási
arány
tehát
3.90625V/0.16V=24.4140625. Ha ezt az osztási arányt pontosan megvalósítjuk, akkor 1LSB változásra 5µV/V/mmHg érzékenységnél 1mmHg változás adódik, a 40µV/V/mmHg-os érzékenységnél nyilván nyolcszor finomabb lesz a felbontás. A fenti megfontolások után az IBP szimulációt megvalósító analóg áramköri részlet tömbvázlata a 12. ábrán látható.
63
A berendezés tervezése
Sajnos ez a megvalósítás magában rejt egy negatív tulajdonságot, nevezetesen azt, hogy az áramkör csak abban az esetben m7ködik megfelel(en, ha a gerjeszt(feszültséget fogadó bemeneteken megfelel( polaritással jelentkezik a gerjeszt(feszültség. Váltóáramú gerjesztés esetén tehát a szimulátor nem m7ködik. Ennek oka kizárólag az, hogy a D/A konverter a Vref+ bemenetén csak pozitív, a Vref-
Uexc+ pozitív gerjeszt( feszültség +
g
+ –
–
g 2
DAC
:24.4
g
Uout+
g
Uout-
+
–
Uexc- negatív gerjeszt( feszültség
12.ábra. Az IBP átalakító kimen$ jelét szimuláló áramkör
bemenetén csak negatív feszültséget képes feldolgozni az adatlap szerint, fordított polaritású jel esetére az adatlap semmiféle információt nem közöl. A bels( struktúra alapján elképzelhet(, hogy ez esetben is m7ködik az átalakító, természetesen fordított polaritású kimen( feszültséggel – ez a szimuláció szempontjából helyes eredményt adna – de nem kizárt, hogy ez az üzemmód nem ad megfelel( eredményt, esetleg az átalakító tönkre is mehet. Ennek elkerülése érdekében a bemenetet a fordított polaritású feszültség ellen diódák védik. A bemeneti osztó ellenállásai úgy lettek megválasztva, hogy a szükséges leosztáson túl a meghajtás felé a szimulátor 400d terhelést mutasson, ugyanis hasonló a helyzet egy valódi átalakító esetében is, illetve a kimeneten is ellenállások biztosítják a valósághoz hasonló impedanciaviszonyokat. Itt érdemes szót ejteni arról a körülményr(l, hogy a valóságban az IBP átalakító szigetelt, azaz a pacienssel – így az EKG elvezetésekkel – nincs galvanikus kapcsolatban. A jelenlegi megoldásomban az IBP jel szimuláció, így a kimenet sem leválasztott a többi kimenett(l. A Lionheart 3C készülék esetében is van galvanikus kapcsolat az EKG és az IBP csatornák között, azonban ott az IBP átalakító szimulálása nem a földhöz képest szimmetrikusan van megvalósítva. Más 64
A berendezés tervezése
készülékek, például a MedSIM 300 szigetelt IBP kimenetekkel rendelkezik. Az IBP kimenet leválasztatlansága a munkahelyemen kifejlesztett (rz(monitor esetében problémát okoz, lévén az (rz(készülékben az IBP átalakítót tápláló hídfeszültség aszimmetrikus, és az egész IBP áramkör közös földön van az EKG er(sít(vel. A Lionheart 3C készüléket használva az (rz(höz az EKG elektródák leesését figyel( áramkör nem m7ködik megfelel(en a galvanikus kapcsolat következtében kialakuló DC-viszonyok miatt, s ez a használat során sok kellemetlenséget okoz. Az általam alkalmazott megoldásban a gerjeszt(feszültségek egyike sincs földelve és a kimenetek is szimmetrikusak, ezért itt ilyen probléma nem fog fellépni. Elképzelhet( azonban, hogy más konstrukciójú készülékek esetében a közös földb(l kifolyólag problémák merülnek fel. Ez ellen leválasztással lehet védekezni, azaz az IBP szimuláció részére külön leválasztott tápfeszültséget kell biztosítani, amit egy kisteljesítmény7 transzformátoros átalakító képes ellátni, valamint IBP csatornánként egyedi D/A átalakítót kell használni, amelyek a digitális rész felé is le vannak választva, célszer7en optocsatolók segítségével. Ebb(l következik, hogy célszer7 soros digitális interfésszel rendelkez( D/A konvertert választani, hogy a szükséges optocsatolók száma alacsony (tipikusan csatornánként kett() maradhasson. Tény továbbá az is, hogy a mai (rz(készülékek esetében biztonsági okokból többnyire maga az IBP csatorna is leválasztott a többi áramkört(l, ez esetben a szimulátor leválasztatlansága nincs hatással a mérésre. Továbbfejlesztési lehet(ségként azonban a leválasztott IBP kimenet kialakításának lehet(ségét érdemes mérlegelni. A következ( megvalósítandó szimulációs csatorna a h(mérséklet-csatorna. A tervezés során az egyszer7ség volt a legfontosabb szempont, így a legáltalánosabban használt YSI400 kompatibilis h(mér(szenzor szimulálását t7ztem ki célul. A szenzor szimulálásakor egy változó ellenállást kell megvalósítani. Az egyik lehetséges megoldás az, hogy néhány fix érték7 ellenállást analóg kapcsolóval a kimenetre kapcsolunk, ez esetben néhány h(mérséklet-érték szimulálása válik csak lehet(vé. Ez a megoldás sokkal inkább csak a mér(csatorna tesztelésére szolgál, mint valódi jelszimulációra, és ez a megoldás a készülékek szoftverének tesztelését kevéssé mozdítaná el(re. Ezért döntöttem a mellett, hogy a szimulátorral egy tágabb h(mérséklet-tartományban megfelel( felbontással lehessen a h(mérséklet érzékel( jelét szimulálni. A szokásos (rz(monitorokban 0.1hC felbontással ábrázolják a
65
A berendezés tervezése
h(mérsékletet, a lefedett h(mérséklet-tartomány általában 0-50hC. Kézenfekv(nek látszik a h(mér( ellenállásának szimulálására is digitális potenciométer alkalmazása. A h(mér( szenzor h(mérséklet-ellenállás karakterisztikája nem lineáris, de ha lineáris is lenne és létezne olyan pályaellenállású digitális potméter amivel közvetlenül, vagy egy soros ellenállással el(állítható lenne a h(mér(-szenzor ellenállás-tartománya, a 8 bites potméterek esetében akkor is csak 0.2hC felbontást lehetne realizálni. Az elérhet( digitális potméterek ellenállása végállásban jóval nagyobb, mint a szenzor ellenállása a kívánt h(mérséklet-tartományban. A kiválasztott Maxim MAX5451 típusú digitális potenciométerre éppen azért esett a választás, mert kereséseim eredményeképpen ez volt a legkisebb ellenállású eszköz,
8000
Ellenállás [Ohm]
7000 6000 5000 4000 3000 2000 1000 0 0
10
20
30
40
50
Hômérséklet [ºC]
13.ábra. A YSI400 h$mér$ szenzor h$mérséklet-ellenállás karakterisztikája
ami jelen esetben 10kf-ot jelent. Sajnos a csúszka ellenállás az EKG-légzés áramkörben használt potenciométeréhez képest nagyobb, tipikusan 225f és az eszköz csak maximum 5.5V feszültség7 jeleket képes kezelni. Eltér( továbbá a digitális interfész kialakítása is, itt fel/le léptet( bemeneteket találunk. A nagy ellenállásból adódó probléma áthidalható a potméterrel párhuzamosan kapcsolt ellenállással, ami viszont nemlinearitást visz a rendszerbe. Az említett h(mérséklet tartományban az YSI400 szenzor esetében az 50hC-os h(mérséklethez közeledve csökken az ellenállás-h(mérséklet görbe meredeksége, azaz itt van szükség az ellenállás finomabb beállítására annak érdekében, hogy a 0.1hC-os felbontást a teljes tartományban biztosítani lehessen. 50hC-nál az 0.1hC-os változáshoz csupán 3.1f
66
A berendezés tervezése
változás tartozik. A 10kf-os potméteren 1LSB kb. 39f-ot jelent, látszik tehát, hogy egy potméterrel a feladat nem oldható meg, bár a párhuzamos ellenállás következtében az 1LSB-re jutó változás némileg csökken. A szükséges tulajdonságú áramkör két ilyen párhuzamos potméter-ellenállás elrendezés soros kapcsolásával valósítható meg. A hálózat megtervezésekor természetesen figyelembe kell venni a megfelel( átfogást, a szükséges felbontást és a potméterek tulajdonságait (leszed(ellenállás nem zérus értéke, stb.) A kiválasztott potméterek felhasználásával némi iteráció után sikerült a 14.ábrán látható, a specifikációnak megfelel( összeállítást készíteni. A nemlinearitások miatt (f(ként a h(mérséklet-ellenállás
10kd
10kd
680d
20kd
390d
14.ábra. A h$mér$ szenzort szimuláló áramkör
karakterisztikája miatt) egy konkrét h(mérséklet-értékhez tartozó potméter állások matematikai úton történ( kiszámítása szinte lehetetlen, ezért a szükséges értékeket
a
szenzor
h(mérséklet-ellenállás
karakterisztikája
alapján
kell
meghatározni, majd azokat táblázatban tárolva a szimuláció során a kívánt h(mérséklethez tartozó ellenállás-érték el(állítható. A szimulátorban két h(mér( csatornát valósítok meg. A hardver kialakítása elvben lehet(vé teszi egy további fontos élettani paraméter, a perctérfogat termodilúciós, katéteres módszerrel történ( mérésének szimulációját is. Itt a nagyobb problémát a szoftver kialakítása okozza, egyel(re ezt a funkciót nem valósítom meg a szimulátorban, de továbbfejlesztési lehet(ségként érdemes megtartani. Az utolsó, (rz(monitorok esetében fontos szimulálandó jel a pulzoximéter jele. Az SpO2 szimuláció megvalósítása során els(sorban csak a jellegében helyes pulzusgörbe és a változtatható, de nem hitelesített szaturáció érték el(állítása a cél, mivel a szoftver tesztelések során ez többnyire elegend(, a hardver ellen(rzése, kalibrálása nem cél, az más témakörbe esik. Az egész szimulátor esetében egyébként sem cél a kalibrált jelek el(állíthatósága, és ennél a jelnél jelentkeznek a legnagyobb problémák a hitelesítéssel kapcsolatban. A jeleket úgy állítom el(, hogy közvetlenül 67
A berendezés tervezése
a tesztelend( készülék pulzoximéter csatlakozójára kapcsolódik a szimulátor, azaz a szenzor m7ködését, jelét szimulálja a készülék, akár csak a véres vérnyomás csatorna esetében. A mért jelek tulajdonságairól szóló pontban leírtak alapján a pulzoximéter szimulálható úgy, hogy egy fotodiódát megfelel( intenzitású fénnyel világítunk meg, amit egy optocsatolóval realizálni lehet. Azt, hogy adott pillanatban mekkora intenzitású fénnyel kell megvilágítani a diódát, a mérés elve szerint befolyásolja az éppen vizsgált hullámhossz, a szaturáció értéke és a pulzushullám pillanatnyi értéke. Az éppen vizsgált hullámhosszról a tesztelend( készülék által a pulzoximéter csipesz számára szolgáltatott LED-meghajtó áram el(jeléb(l következtethetünk. A pulzoximéter
csipeszekben,
szenzorokban
ugyanis
a
két
különböz(
hullámhosszúságú fény el(állítását két antiparallel kapcsolt LED (egy vörös és egy infravörös) végzi, ezek közül egyszerre egy világít, és hogy éppen melyik, azt az áram iránya dönti el. Ennek ismeretében kell a kimenetet képez( fotodiódával optikai csatolásban álló LED pillanatnyi áramát beállítani a két hullámhosszon szimulálandó csillapításnak megfelel(en. Mivel a tesztelend( készülék pulzoximéter-modulja a fotodióda áramát, mint a megvilágítással arányos jellemz(t használja fel a mérésre, szükség van a fotoáram pontos beállíthatóságára. Az optocsatoló nemlinearitásának
Pulzoximéter LED meghajtó feszültség IR LED jele RED LED jele
Pulzoximéter szimuláció vezérl( feszültsége Pulzoximéter LED meghajtó feszültség
Fotodióda kimen( jele
15.ábra. A pulzoximéter jelét szimuláló áramkör
kiküszöbölése érdekében ezért feltétlenül szükséges egy visszacsatoló linearizáló ág alkalmazása, amelyben egy másik, azonos típusú optocsatoló dolgozik. Így a 68
A berendezés tervezése
kimenetet képez( fotodióda fotoáramát megfelel( linearitással be lehet állítani. Ilyen, linearizált m7ködést megvalósító optocsatoló létez( termék, a szimulátorban történ( felhasználásra a közös tokba épített SLC800 típusú eszközt [15] választottam. Ez az eszköz egy LED-et és két fotodiódaként használható fototranzisztort tartalmaz, melyeket a LED azonos mértékben világít meg. Célszer7 olyan áramkört kiképezni, amelynél a bemen( feszültséggel lesz arányos a kimen( dióda fotoárama, így egy D/A konverter felhasználásával az infravörös/vörös LED meghajtásának ismeretében mindkét hullámhosszon külön-külön szimulálható a csillapítás. Természetesen a hardver mellett igen jelent(s feladata van a szoftvernek, ami a kívánt szaturáció értéknek, és a pillanatnyi pulzushullámnak megfelel( jeleket el(állítja. Ennek a szoftvernek a korrekt kifejlesztése és ellen(rzése a feladat nehézségét tekintve egy pulzoximéter modul szoftverének kifejlesztésével vetekszik. A feladatot tovább nehezíti az a tény, hogy a különböz( gyártók által készített szenzorok és pulzoximéter hardverek nem feltétlenül kompatibilisek egymással, (nem pontosan egyforma hullámhosszak és spektrális érzékenység, stb.) így a tisztán elektronikus úton történ( szimuláció sem lehet teljesen egzakt. Mivel cél csak a jellegét tekintve helyes pulzusgörbe el(állítása és egy változtatható, de nem kalibrált szaturáció érték szimulálása, kevesebb befektetéssel megvalósítható a szükséges hardver és szoftver. A pulzoximéter jelét szimuláló hardver tömbvázlata a 15.ábrán látható. A vizsgált készülékb(l érkez( LED-meghajtó feszültséget két antiparallel kapcsolt optocsatoló LED-je fogadja, így a terhelés megfelel a valódi pulzoximétercsipesz által képviselt terhelésnek. (Attól az eltérést(l eltekintve, hogy a csipeszben alkalmazott infravörös és vörös LED-ek nyitóirányú feszültsége egymástól eltér(.) Az optocsatolók fototranzisztorai annak megfelel(en nyitnak, hogy a LED-meghajtó áram az adott pillanatban milyen irányú. Ezt az információt pedig a szimulátort vezérl( processzor kapja meg. E jelek függvényében a szoftver a kívánt szaturáció alapján a fixen letárolt R-görbéknek és a pulzusgörbe pillanatnyi értékének megfelel(en a D/A konverter segítségével el(állít egy analóg feszültséget, amit a visszacsatolt linearizáló rendszer a kimenetet képez( optocsatoló fotodiódáján megfelel( fotoárammá alakít át. Ezt a jelet fogadja a vizsgálandó készülék pulzoximéter-elektronikája.
69
A berendezés tervezése
3.1.3.
Egyéb hardver megfontolások A hardver tervezése során a kis jelszintek és a szükséges nagy dinamika,
illetve jel/zaj viszony miatt néhány, a kivitelezéssel kapcsolatos megfontolást is figyelembe kell venni. Els(ként legfontosabb a megfelel( nyomtatott áramköri kialakítás, ami több (tipikusan 4) réteg7 nyákot feltételez. A középs( rétegekben valósíthatók meg a táp illetve földsíkok, melyek szükségességére a felhasznált AD7841-es D/A konverter adatlapja is nyomatékosan felhívja a figyelmet. Természetesen mint minden kevert digitális-analóg áramkör esetén, ahol a zajviszonyok fontosak, elengedhetetlen a külön digitális és analóg föld használata. Ez a földsík megfelel( kiképzésével megvalósítható, arra kell csak ügyelni, hogy az analóg és digitális föld egy ponton találkozzanak. Ugyancsak fontos, hogy a D/A konverterek alatt nem szabad digitális jelvezetékeket vezetni, mert így a chip egyes területei kapacitív csatolásba kerülnek azokkal, így zajokat vesznek fel. Az áramkörök tápfeszültség ellátását több tápegység részlet biztosítja. A bejöv( 12V egyenfeszültséget a digitális rész viszonylag nagyobb áramfelvétele (kb. 200mA) miatt egy kapcsolóüzem7 DC/DC átalakító csökkenti 5V érték7re. Szintén egy kapcsolóüzem7, de polaritásváltó konverter állítja el( a negatív tápfeszültséget. Az analóg fokozatok egy része (EKG elvezetés meghajtó m7veleti er(sít(k, IBP rész er(sít(i, D/A konverterek) a megfelel( kivezérelhet(ség érdekében ±8V feszültségr(l jár. Ezeket a tápfeszültségeket kisáramú disszipatív rendszer7 szabályzók állítják el(, a kis terhelésre való tekintettel. Szintén lineáris szabályzók biztosítják a ±5V-os tápfeszültséget az Analog Devices digitális potenciométerek számára. Ezek az eszközök ugyanis a ±8V-ot nem viselnék el. Az EKG kimenetek a legtöbb jelszimulátor esetén banándugók illetve patentes EKG csatlakozók csatlakoztatására alkalmas ún. univerzális csatlakozókkal vannak megoldva. Ez valóban hasznos abból a szempontból, hogy az egész rendszert – beleértve a kábelt is – végig lehet próbálni, de meglehet(sen kényelmetlen a fejlesztés során. Ezért a készülékre az univerzális csatlakozókon kívül egy D-SUB csatlakozót is terveztem, így megfelel( kábelekkel kényelmesen lehet a mérend( készülékhez csatlakoztatni.
70
A berendezés tervezése
3.2. A berendezés m ködtet< szoftvere A szimulátort m7ködtet( szoftver a teljes érték7 autonóm m7ködés elérése érdekében számos funkciót valósít meg. A túlságosan részletes ismertetés helyett célszer7bb a szoftver által elvégzend( egyes feladatokat elemezni, felállítani a szoftver
blokkos
rendszertervét,
és
az
egyes
blokkokra röviden
kitérni.
Természetesen ott, ahol valamilyen szempontból érdekesebb kérdés merül fel, az adott problémára érdemes egy kis kitér(t tenni. A készüléket vezérl( szoftver feladatai felsorolás szinten (a jelek el(állításának folyamatát végigkövetve) az alábbiak: •
kapcsolattartás a felhasználóval (billenty7zet, kijelz( és hangszóró kezelés),
•
a Compact FLASH kártyáról a fájlrendszer kezelésével adatok beolvasása,
•
soros vonalon küls( adatok fogadása,
•
a fájlból beolvasott és soros vonalon kapott adatok értelmezése, azok kiértékelése,
•
az el(állítandó jeleken jelfeldolgozás elvégzése (zajok hozzákeverése, amplitúdó változtatás, ofszet hozzáadása, stb.),
•
a jelek el(állítását végz( perifériák (D/A konverterek, digitális potenciométerek) kezelése.
Ezen feladatokat természetesen további részfeladatokra lehet és kell is bontani, mind a feladatok egzakt megfogalmazhatósága, mind a fejlesztés áttekinthet(sége érdekében. A szükséges program eléggé összetett lesz, ezért célszer7 réteges felépítésben gondolkodni. Az egyes rétegek jól definiált felületeken érintkezhetnek egymással. A szoftver blokkos rendszerterve a 16.ábra szerint épül fel. Tekintettel a sok párhuzamosan futtatandó feladatra, (fájl olvasás, kiértékelés, jelfeldolgozás, hardver kezelése) célszer7 egy – erre a processzorra már kidolgozott – multitaszkos ütemez( felhasználása a különféle feladatok egymás mellett futtatásának megvalósítására. (A „multitaszk” kifejezés helyett helyesebb lenne a
71
A berendezés tervezése
Windows-ból ismert „multithread” kifejezés használata, hiszen nem egymástól független programok futtatásáról van szó, hanem arról, hogy egy program több szálon
fut.)
Ez
mindenképpen
rugalmasabb
megoldás,
mint
egy tisztán
Realtime ütemez( mag
Felhasználói interfész
Fájlrendszer kezelés
Görbe-buffer kezelés
Jelszimulációt végz( modul
Konzol I/O
Szektorszint7 m7veletek
Memória manager
LCD driver
Billenty7zet driver
Beeper driver
D/A, digitális potméter, és multiplexer driver
CFC
RAM
LCD
KBD
Beeper
D/A, Egyéb potméterek vezérlések
Bufferelt Hardver SIO driver kezel( réteg
SIO
16.ábra. A szimulátor vezérl$ szoftverének blokkos rendszerterve
megszakításokra és/vagy pollingolásra épül( szerkezet. A munkahelyemen a felhasznált processzorra kidolgozott ütemez( preemptív multitaszkot valósít meg. Az egyes folyamatokat az ütemez( hívja, a folyamatok, ha nincs feladatuk, önként visszaadják a vezérlést az ütemez(nek, vagy ha ez nem következik be, az id(zít( megszakítása meghívja az ütemez(t, ami elveszi az éppen futó folyamattól a vezérlést. Természetesen ekkor a folyamat környezetének elmentése is megtörténik. Az id(zít( közbelépésének köszönhet(en garantált a taszkok körbefordulási ideje. Az id(zít( lejárásakor meghívódó ütemez( végrehajt egy ún. realtime taszkot, ami a nagyon magas prioritású, de rövid végrehajtási idej7 feladatokat végzi el. Ilyen például a D/A konverterek frissítése, hiszen a mintavételi frekvenciának megfelel(en
72
Hardver
A berendezés tervezése
az új minták konverzióját pontosan, folyamatosan végre kell hajtani. Ha egy folyamat önként adta vissza a vezérlést az ütemez(nek, az a következ( id(zít( megszakításig a következ( folyamatnak adja a vezérlést. Ez az ütemezés biztosítja tehát minden feladat végrehajtását. Már a szoftverfejlesztés kezdeti szakaszában szükséges a továbblépéshez a hardver kezelésének kidolgozása. A szimulátor szoftverében ezt a hardver kezel( réteg (tulajdonképpen eszköz meghajtók gy7jteményének is nevezhetjük) végzi. Ebben a rétegben található az összes hardver elem m7ködtetéséhez szükséges illeszt(felület. A fels(bb rétegeknek tehát nem kell azzal tör(dniük, hogy például az LCD-re történ( karakter kiíráshoz milyen szekvenciákat kell az LCD vezérl(jének elküldeni. A fels(bb réteg egyszer7en csak megadja, hogy melyik pozícióba milyen karaktert kell kiírni, a hardver kezel( réteg pedig gondoskodik a kijelz( megfelel( vezérlésér(l. A hardver kezelése az egész szoftverb(l mindig a hardver kezel( rétegen keresztül történik. Röviden áttekintem az egyes hardver meghajtó modulokat, azok feladatait. A szektor-szint7 m7veleteket végz( modul a Compact Flash kártya olvasását szolgálja, funkciója a PC-k BIOS-ának lemezes szolgáltatásaihoz hasonló. A CFC teljesen merevlemez-kompatibilis módban m7ködik, így mind szektor, mind fájl szinten ugyanazon eljárással érhet( el, mint a merevelemezek. A szimulátorban csak az olvasási funkciókat valósítom meg, a kártya írása küls( eszközzel történik. A szektorszint7 m7veletek ez esetben csak az egy szektor beolvasására korlátozódik. Itt a feladat egy adott fizikai szektor (melyet a sávszám, fejszám és a szektorszám – Cylinder, Head, Sector – azonosít) beolvasása a RAM-ban kialakított buffer területre. Szintén megvalósítandó a kártya paramétereinek lekérdezése is (autodetect-funkció). A szektor olvasás bemen( paraméterei a szektor fizikai elhelyezkedését megadó CHS értékek, eredménye a RAM-ban kialakított buffer feltöltése és a státusz beállítása. Az esetleges hibák, illetve a várakozás kérése is a státusz változón át érzékelhet(k. A blokkvázlat hardver kezel( rétegében tovább haladva a következ( modul a memória manager. Mivel itt csak a fizikailag megvalósított RAM kezelésér(l van szó, feladata az, hogy a szükséges bufferek kezelését elvégezze. Nyilvántartja, hogy hol található és mekkora az aktuális görbe buffer, hova mutatnak az író-olvasó pointerek. Ez esetben tehát tulajdonképpen egy fifo-objektumról van szó. Az LCD meghajtó feladata az LCD-re történ( karakter-szint7 kijelzés elvégzése.
73
A berendezés tervezése
Tartalmaz egy fifo-t, amiben a kiírandó karakterek addig gy7lnek, amíg ténylegesen nem kerülnek ki a kijelz(re. A fifo elemei pedig a kiírandó karakterek a pozícióikkal együtt. A modul figyeli, hogy a kijelz( szabad-e, azaz nincs-e éppen feldolgozás alatt az LCD vezérl(je által elkezdett feladat, és ha szabad, kiveszi a fifo-jából a következ( elemet, beállítja az LCD-n a pozíciót, és elküldi a karaktert. Ez a modul tartalmazza az LCD-t kezel( egyéb funkciókat, (például képerny(törlés, görgetés) is. A billenty7zet meghajtó a processzor portjainak megfelel( vezérlésével ciklikusan lekérdezi a billenty7zet-mátrixot, és meghatározza, hogy melyik billenty7 van lenyomva. A hangszórót meghajtó beeper driver a processzor egyik id(zít(jét programozza fel. Feladata mindössze egy sípoló hang el(állítása. A D/A konvertereket és a digitális potenciométereket kezel( modul és az egyéb, az analóg részben történ( vezérléseket ellátó modul feladata az analóg rész egységes kezelése. Segítségével lehet a D/A konverterekbe valamint a digitális potenciométerekbe új értéket betölteni, függetlenül a tényleges típusuktól. A fels(bb réteg feladata mindössze a megfelel( csatorna kiválasztása és a kívánt érték megadása. Itt történik a különböz( analóg multiplexerek, analóg kapcsolók kezelése is. Az utolsó modul, a bufferelt SIO meghajtó feladata pedig a PC fel(l érkez( adatoknak a bemeneti bufferbe történ( gy7jtése, illetve a PC felé történ( adat továbbítás a kimeneti bufferb(l. A következ( rétegben helyezkednek el az el(z( réteg szolgáltatásaira épül( funkciók. Ezek a tényleges szimulációt végz(, és a felhasználóval kapcsolatot tartó legfels( réteg „alá dolgoznak”. A fájlrendszer kezelés egy meglehet(sen bonyolult modul, segítségével – a szektorszint7 m7veletekre támaszkodva – lehetséges a Compact FLASH kártya fájl szint7 elérése. Egy operációs rendszerben található fájlkezel( rendszerhez képest számos egyszer7sít( tényez(vel élhetünk. Egyszerre ugyanis csak egy fájlt kell olvasni (bár vannak most helysz7ke miatt nem részletezett szempontok, amik ez ellen szólnak), írni egyáltalán nem kell, könyvtárszerkezetet nem kell kezelni, fájlban nem kell pozícionálni, a kártyán csak egy partíció lehet, stb. Funkcionálisan tehát az a feladat, hogy egy adott fájlnev7 állományból szekvenciálisan kell adatokat olvasni. Még ennek az egyszer7nek látszó feladatnak a pontos megfogalmazása is oldalakat venne igénybe, ezért itt csak igen röviden térek ki a fájl olvasás megvalósítására. [17] [18] [19] A mindig fix helyen található master
74
A berendezés tervezése
boot record kiértékelésével az els( partíciót leíró partíciós tábla helye meghatározható. A partíciós táblából a partíció fizikai kezdete és vége, valamint típusa állapítható meg. A partíció elején található a boot record, ami a partícióra vonatkozó további információkat tartalmaz. Ezután következik a FAT tábla, ami tartalmazza az egyes fájlokhoz tartozó területeket (ez nem fizikai címeket tartalmaz, a tényleges eléréshez további konverzió szükséges.) Ezután következik (a FAT mérete ismert) a gyökérkönyvtár (más könyvtár nem is lesz ebben az alkalmazásban) ami után a tényleges adatterület kezd(dik (ide mutatnak a FAT bejegyzései). A szükséges fájl nevének megfelel( konverziója után a név kikereshet( a gyökérkönyvtárból, és ha a fájl létezik (nincs „törölt” bejegyzéssel ellátva), a fájl bejegyzés mellett található mutató alapján meg kell keresni a FAT táblában a fájl els( darabját tartalmazó klasztert. A klasztereket fizikai CHS címekké kell konvertálni, és az els( szektorok ez alapján beolvashatók. A FAT-ben végig kell haladni a klaszter-mutatókon egészen a „fájl vége” jelzésig. Így a fájlban tárolt adatfolyam kinyerhet( a kártyáról. Ezen a rövid bemutatón keresztül is érzékelhet(, hogy számottev( mennyiség7 aritmetikára van szükség a fájl olvasása érdekében. A konzol I/O nev7 modul egyik feladata a szöveges és numerikus információk kezelése, karakterekké alakítása, ez tulajdonképpen string kezel( függvények gy7jteményét jelenti. A másik feladat a billenty7zet kezelése oly módon, hogy a hardver kezel( rétegt(l kapott billenty7 kódokat átalakítja, kezeli a több egyszerre lenyomott billenty7 esetét, és a kapott kódokat egy bufferbe gy7jti, ahonnan a felhasználói interfész igényei szerint képes azokat kiolvasni. A legmagasabb szinten elhelyezked( felhasználói interfész segítségével válnak lehet(vé a kezel(i beavatkozások. Ez kezeli a készülék egyszer7 menürendszerét, kínálja fel a beállítási lehet(ségeket. Ha a szimulátor mikrogépét képzeletben egy operációs rendszerrel rendelkez( PC-vel helyettesítenénk, akkor csak a szimulációt végz( modult, valamint ez a modult kellene megvalósítani. Az alsóbb rétegek tehát azoknak a lehet(ségeknek – a feladat szempontjából redukált – halmazát adják ezen rétegek számára, amit például egy PC-n DOS alatt C-nyelven fejlesztett szoftver esetében az operációs rendszer biztosít. A felhasználói interfész feladata tehát a szimuláció vezérlése. Ez a modul teszi lehet(vé, hogy a felhasználó kiválaszthasson egy fájt a Compact FLASH kártyáról, annak olvasását, azaz a szimulációt
75
A berendezés tervezése
kezdeményezze, azt megszakíthassa, beállíthassa a különböz( paramétereket. A beállítható paraméterek esetében numerikus bevitel és fel/le léptetés is lehetséges. Ezek közé tartozik az egyes elvezetések amplitúdójának, DC-ofszetjének a beállítása, az elvezetések impedanciájának megváltoztatása, h(mérséklet, szaturáció beállítása. Ugyanezek a funkciók a SIO vonalon fogadott parancsok segítségével is elérhet(k, így tehát a felhasználói interfész modulnak nem csak a billenty7zet, hanem a soros port is bemenete. A felhasználó felé az LCD-n illetve a hangszórón történik a visszajelzés, a PC felé történ( nyugtázás, adatküldés pedig a soros porton zajlik. E modulból a szimulációt vezérl( modulba jut az összes beállítással kapcsolatos információ. Ezen információkból, valamint a megfelel( formátumba konvertált adatbázis fájlból történik a tulajdonképpeni szimuláció, a jelek el(állítása. A szimulációt végz( modul ennek megfelel(en a fájlrendszer kezel(n és a görbe-buffer kezel(n keresztül éri el a szimuláció alapját képez( állományt illetve kapja a PC fel(l a jeleket reprezentáló adatfolyamot. A felhasználói interfész segítségével beállított paramétereket figyelembe véve (ofszetek, er(sítések, érzékenységek stb.) kalkulálja ki az egyes D/A konverterekre küldend( jeleket. Itt történik a CFC-n tárolt, az egyes elvezetésekben
mérhet(
feszültég-különbségeket
reprezentáló
adatok
visszaszámolása elvezetési pontok feszültségeivé, hiszen az ofszet és er(sítés
Név I. II. III. aVL aVR aVF V1 V2 V3 V4 V5 V6
Kiszámítás LA-RA LL-RA LL-LA = (LL-RA)-(LA-RA) = II-I RA-0,5*(LA+LL) = -(I+II)/2 LA-0,5*(LL+RA) = (I-III)/2 LL-0,5*(LA+RA) = (III+II)/2 C1-CT=C1-(LA+RA+LL)/3 C2=CT=C2-(LA+RA+LL)/3 C3-CT=C3-(LA+RA+LL)/3 C4-CT=C4-(LA+RA+LL)/3 C5-CT=C5-(LA+RA+LL)/3 C6-CT=C6-(LA+RA+LL)/3
2.táblázat. Az elevezetések számítása
beállítása így egyszer7bb. Ugyancsak itt kerül sor a hálózati zaj és az izomzaj el(állítására és az EKG jelhez történ( hozzákeverésére is. A hozzákeverés történhet az EKG csatornákhoz történ( hozzáadással és a pace-jelet bekever( ágon egyaránt. A pace impulzusok el(állítása is itt történik. Ez a modul végzi tehát a hardver illeszt( 76
A berendezés tervezése
rétegen keresztül a D/A konverterek frissítését, a digitális potenciométerek értékeinek feltöltését az említett adatok alapján, a modul tehát leginkább aritmetikai m7veleteket végez. Ugyancsak itt történik a pulzoximéter jeleinek el(állítása, ami az éppen vizsgált hullámhossz ismeretében a kívánt szaturáció és a pulzusgörbe pillanatnyi értékének megfelel(en táblázatokból állítható el(. Ugyancsak táblázatból határozható meg egy adott h(mérséklet értékhez tartozó ellenállás, illetve az ellenállás szimulálásához szükséges potenciométer-állások értéke. A vérnyomás és pulzoximéter görbék esetében azon túl, hogy az EKG jellel való szinkronitást a felvételek eleve biztosítják meg kell teremteni a lehet(ségét a késleltetési id( változtatásának is. Ez egyszer7en megtehet( úgy, hogy a D/A konvertereket tápláló bufferb(l megfelel( eltolással vesszük ki a jeleket. A légzésjelnek a vérnyomásra hatását ugyancsak ebben a modulban lehet megvalósítani, úgy, hogy a légzésjel megfelel( tényez(vel megszorozva tolja el a vérnyomás-görbét.
3.3. A felhasználható adatbázisok A szoftverrel foglalkozó pontban csak említést teszek a felhasználható adatbázisokról. A 2.2 pontban áttekintettem a létez(, élettani jeleket tartalmazó adatbázisokat. Ezek közül a szimulátor szempontjából azok érdekesek, amelyek olyan adatokat tartalmaznak, amelyeket a szimulátor képes a vizsgálandó készülék számára feldolgozható jellemz(kké alakítani. Így tehát az EKG görbéket, véres vérnyomás jeleket, pulzoximéter görbéket, légzésjelet tartalmazó adatbázisok érdekesek. Természetesen ezeknek a jeleknek nem kell mind egyszerre rendelkezésre állniuk, a szimulátor képes csak egy csatorna EKG jel el(állítására is. PhysioNet-r(l letölthet( adatbázisok közül így az (rz(monitorokról rögzített MIMIC adatbázis, az EKG adatbázisok közül a MIT-BIH arrhythmia és veszélyes kamrai arrhythmia, az Európai ST-T és a CUDB adatbázisok lehetnek a legérdekesebbek. Tulajdonképpen bármilyen forrásból származó adatbázis felhasználható, feltéve, hogy azok formátuma ismert, a konverzióhoz szükséges programok pedig rendelkezésre állnak, vagy a specifikáció alapján elkészíthet(k. A szimulációs rendszer részét képez( szoftver számára már a szöveges formátumban lév( adatállomány, valamint az azt leíró fejléc a bemen( paraméter, mindegy tehát, hogy az eredeti jelek honnan származnak.
77
A berendezés tervezése
A kész adatbázisokon kívül az (rz(monitor fejlesztésnél nagy jelent(sége lehet a saját adatbázisoknak is. A munkahelyemen kifejlesztett (rz(rendszer esetében a központi monitor képes a hozzá kapcsolódó ágymelletti monitorok összes jelének és paraméterének öt napon keresztül történ( tárolására. Rendkívül hasznos lehet, ha egy adott esetben az orvos vagy az ápoló személyzet elmondása alapján a tárolt jeleken beazonosítva egy bizonyos eseményt, majd a jeleket a rendszerb(l exportálva és azokat ellen(rzött körülmények között újra az ágymelletti monitorba táplálva képesek vagyunk az akkori körülmények között lejátszódó eseményeket megfigyelni. Ennek segítségével egészen ritka, de valós, megtörtént esetekben is lehetséges a rendszer vizsgálata, és ennek megfelel(en a szoftver esetleges módosítása. Összességében tehát elmondható, hogy mind a saját, mind a különféle forrásokból elérhet( adatbázisok használatának van létjogosultsága, és erre a rendszer lehet(séget is ad.
3.4. Személyi számítógépes szoftver A diplomaterv elején felvázolt, a szimulátor felhasználási környezetét vázoló ábrán egy PC is szerepel, ami a szimuláció felügyelését szolgálja. Szintén PC segítségével kerülnek a különféle forrásból származó adatbázisok jelei a Compact FLASH kártyára. Ezért röviden áttekintem a PC-re megírandó szoftverek feladatait, és azok felhasználási lehet(ségeit. A legfontosabb, a szimulátor m7ködéséhez nélkülözhetetlen PC-s szoftver a CFC-re kerül( állományok létrehozását végz( szoftver. Mint arra kitértem, a kártya már a legmagasabb mintavételi frekvenciájú jel szerinti mintavételezéssel tartalmazza a jeleket, blokkonként úgy, hogy egy adott blokkban található minták egy id(szelet alatt kerülnek a D/A konverterekbe. A kisebb memória-igény miatt az 1kHz-es EKG jelek mellett a például 100Hz-es pulzusgörbét és a 250Hz-es vérnyomás görbét úgy tárolom, hogy 2 pulzusgörbe pont, 5 nyomásgörbe és 20 EKG görbe pont képez egy blokkot. A fájl elején található fejléc tartalmazza azt, hogy a blokkokat hogy kell értelmezni, az 1ms-onként melyik D/A konverter latch-et kell újraírni. Így az alacsonyabb mintavételi frekvenciájú jelekre nincs átlagoló sz7rés. Természetesen lehetséges az is, hogy nincs minden lehetséges csatorna kihasználva,
78
A berendezés tervezése
így a fejlécnek tartalmaznia kell az aktív csatornákra vonatkozó jelzéseket is. Az adatbázisokból származó jeleket – PhysioNet-r(l letöltött állományokat figyelembe véve – el(ször a PhysioToolkit programjaival szöveges formátumúra kell alakítani. Itt az adatokat tartalmazó fájlhoz tartozó külön fejléc alapján beállíthatók az er(sítések. Minden jel ugyanazzal a – meghatározható – mintavételi frekvenciával kerül a szövegfájlba, melynek felépítése a következ(: Egy sorban tabulátorral elválasztva találhatók az egyes jelek mintavett pontjai, melyek egy adott id(pillanathoz tartoznak. Annyi tabulátorral elválasztott oszlop van egy sorban, ahány különböz( jelet az adott adatbázis tartalmaz. Ilyen sorokból pedig annyi van, ahány mintavételi pontot az egész rekord tartalmaz. Természetesen az adatbázisok nem feltétlenül azokat az EKG elvezetéseket tartalmazzák, amit a szimulátor el( tud állítani, s(t az MIMIC adatbázisban található (rz(készülékekr(l rögzített felvételeknél éppen az a jellemz(, hogy például a II., III., és egy V elvezetést tartalmaznak, ebb(l az I. elvezetést ki kell számítani, a V elvezetést például a V1-be másolni, a többi mellkasi elvezetést pedig vagy kinullázni, vagy ide is az adatbázis V elvezetését bemásolni. Szükséges tehát egy olyan konverter modul, ami ezeket a lineáris matematikai m7veleteket, és másolási, feltöltési feladatokat látja el. Ez egyszer7en megvalósítható. Ezek után a még mindig egyforma mintavételi sebesség7 jeleket a fent említett rendszer szerint blokkokba kell rendezni. Itt szükség van újramintavételezésre, de mivel a különböz( jelek mintavételi frekvenciáinak aránya kis egész számok halmazából kerül ki, ez igen egyszer7en megtehet(. Egyszer7 átlagolást kell csak végezni. A fent említett példa szerint a 20 EKG görbepontot kell letenni a blokkba, majd az ugyanehhez az id(intervallumhoz tartozó két pulzusgörbe pontot, és öt véres vérnyomásgörbe pontot. Mivel ez utóbbiakból is 20-20 pont van, így 10 illetve 4 pontra kell átlagolást elvégezni, hogy a szükséges 2 illetve 5 pontot megkapjuk. Ezeket a pontokat is a blokkhoz kell f7zni. Ezt a folyamatot az összes görbepontra el kell végezni. A sokkal ritkábban érkez( adatokat, melyek nem szerepelnek például az MIMIC adatbázisban (h(mérséklet, szaturáció) nem célszer7 blokkonként tárolni. Ezért ezeket az adatokat csak minden meghatározott számú blokk után tárolom el. Hogy pontosan hány blokk után következik egy ilyen adatokat tartalmazó csomag, és az pontosan mit tartalmaz, azt az állomány elején található fejléc határozza meg. Ezután el( kell állítani a fejlécet, ami a blokkok értelmezését, tartalmazza, és ez a fájl már az operációs rendszer eszközeivel a Compact FLASH 79
A berendezés tervezése
kártyára másolható. A kártyára kerül( állomány felépítése tehát röviden a következ(: A fájl elején található fejléc tartalmazza a görbe-blokk méretet ms-ban, majd az egyes D/A konverterek mintavételi frekvenciáit. Itt azonban nem tényleges frekvenciáról van szó, hanem arról, hogy az 1ms-os legs7r7bb frissítési id(köz hányszorosával kell az adott D/A csatornát frissíteni. Az 1kHz mintavételi frekvenciájú EKG jelek esetén ez az érték 1, a 250Hz-es vérnyomás görbék esetén pedig 4. Abban az esetben, ha az adott D/A csatorna számára a görbe-blokkok nem tartalmaznak adatot, a kérdéses érték 0. A 16 D/A csatornára továbbá meg kell határozni azt, hogy a görbe blokkon belül az els( minta milyen ofszetnél kezd(dik. Ezen információk alapján az id(ben gyorsabban változó jelek, tipikusan az EKG-, légzés-, vérnyomás- és pulzus görbék adatainak el(állításához minden rendelkezésre áll. A lassú blokknak nevezett, és a lassan változó adatokat (szaturáció, h(mérséklet) tartalmazó rész bizonyos számú görbe-blokk után következik. Azt, hogy hány görbeblokk után jön egy lassú-blokk, a „lassú blokk mintavétel” nev7 mez( adja meg. A lassú blokkban található adatok leírását a fejléc további része végzi. A lehetséges csatornákra vonatkozó ofszetek a görbe-blokkhoz hasonlóan vannak tárolva. Itt a nulla érték jelenti azt, hogy az adott csatornára a lassú blokkok nem tartalmaznak értékes adatot. Annyi helyen áll tehát nullától különböz( érték, ahány csatornára a lassú blokk adatot tartalmaz. A lassú blokkokat természetesen az azt megel(z( görbe-blokkal egyszerre kell olvasni és az értékeket frissíteni. A görbe-blokkok felépítése egyszer7. Elöl található a méretnek megfelel( számú minta a legnagyobb mintavételi frekvenciájú jelb(l (tipikusan EKG jel). Ilyen mintákból a blokkon belül annyi következik egymás után, ahány ugyanilyen mintavételi frekvenciájú jel van. Ezek után jönnek hasonló elrendezésben az alacsonyabb mintavételi frekvenciájú jelek. A 17. ábrán a feljebb említett példának megfelel( felépítés7 fájl szerkezete látható. Érdemes továbbá egy tesztelést felügyel( és azt dokumentáló szoftvert is készíteni, a különböz( EKG és egyéb jelfeldolgozó szoftver-modulok tesztelésére. Mint azt a bevezetésben említettem, ezeket a modulokat a legnagyobb biztonsággal a valódi környezetükben lehet – és a vonatkozó el(írások szerint kell is – tesztelni. Ennek a tesztelések az a célja, hogy a lehet( legtöbb jelre végigvizsgáljuk a tesztelend( készülék válaszait. A tesztel( szoftvernek tehát az a feladata, hogy egy megfelel(en
80
A berendezés tervezése
megszerkesztett script alapján különböz( jeleket, jelfolyamokat állíttasson el( a szimulátorral, a vizsgált készülék által adott válaszokat, eredményeket pedig letárolja. Ezután ezekb(l az adatokból értékelést lehet készíteni.
m. csatorna lassú ofszet
2. csatorna lassú ofszet 1. csatorna lassú ofszet lassú blokk mintavétel n. csatorna blokk-ofszet n. csatorna mintavétel
2. csatorna blokk-ofszet 2. csatorna mintavétel 1. csatorna blokk-ofszet 1. csatorna mintavétel Görbe-blokk méret
Lassú-blokk 2.
Görbe-blokk n+3.
Görbe-blokk n+2.
Görbe-blokk n+1.
Lassú-blokk 1.
Görbe-blokk n.
Görbe-blokk 3.
Görbe-blokk 2.
Görbe-blokk 1.
Fejléc
1-1 minta a h(mér(k értékeir(l
Szaturáció értéke
5 minta minden IBP csatornáról
2 minta a pulzusgörbe csatornáról
20 minta minden EKG csatornáról
17.ábra. A jeleket tartalmazó fájl felépítése
További PC-n futó, szimulációt segít( program lehet egy olyan kezel(i felület, amivel a szimulátor számos paraméterét lehet kényelmesen beállítani. Bár a szimulátor minden funkciója, paramétere beállítható a készülék billenty7zetén keresztül is, mégis kényelmesebb egy esztétikusan kialakított PC-s kezel(felületen elvégezni
ugyanezen
beállításokat.
Itt
konkrétan
az
egyes
elvezetések
amplitúdójának, impedanciájának, DC-ofszetjének beállítására gondolok. Lehetséges a PC-n tárolt scriptek összeállítása és végrehajtása is, így egyetlen mozdulattal összetett eseményeket lehet szimulálni.
81
Továbbfejlesztési lehet(ségek
4. Továbbfejlesztési lehet<ségek Ha a téma fejlesztésére b(séges er(forrás állna rendelkezésre, számos olyan funkció és tulajdonság kialakítható lenne, amik a mostani konstrukcióba nem kerültek bele, de értékesebbé tehetik a rendszert. A legtöbb felsorolt lehet(ség f(ként gazdaságossági megfontolásból került kihagyásra. A többlet befektetés és a cserébe kapott pozitív tulajdonságok nem lennének egymással arányosak. E lehet(ségeket itt most csak felsorolás szinten említem meg, b(vebb tárgyalásuk a diplomamunka szempontjából érdektelen lenne. Az egyik ilyen továbbfejlesztési lehet(ség a soros port helyett a napjainkban egyre inkább el(retör( USB port használata. Ezzel az alkalmazás szempontjából alacsonynak tekinthet( 115kbaud-os soros port sebességénél jelent(sen nagyobb átviteli sebességet lehet elérni, így lehet(vé válna a teljesen on-line szimuláció az összes jelre nézve. A feladat – figyelembe véve az USB szabványt, az ajánlásokat – vélhet(en igen jelent(s ráfordítást igényelne mind a PC, mind a szimulátor oldaláról. A szimulátor bels( szoftverének továbbfejlesztéseképpen lehet(ség nyílna el(re eltárolt protokollok szerint különféle jelek el(állítására, ezáltal a vizsgált készülékek funkcionális tesztje számottev(en egyszer7södhetne. Az EKG jelek szimulációjánál az izomzaj nagy sávszélesség7 el(állítása, és a paciens impedancia pontosabb, összetettebb modellezése (kapacitás változtatás, a DC- és nagyfrekvenciás út impedanciájának külön-külön történ( beállítása) lenne továbblépési irány. Az invazív vérnyomás jelet el(állító áramkörnél a már említett leválasztott m7ködéshez szükséges hardver módosítás is egy lehetséges továbbfejlesztési lehet(ség, valamint érdemes lenne a változó el(jel7 gerjeszt(-feszültség kezelését is megoldani. Elképzelhet( olyan megoldás is, hogy ténylegesen változó nyomást hozunk létre, amit tetsz(leges készülék tetsz(leges nyomás-átalakítójával mérni lehet.
82
Továbbfejlesztési lehet(ségek
A h(mér( érzékel( szimulációjánál a digitális potenciométer korlátainak (földhöz képest kezelhet( maximális feszültség) kiküszöbölése, valamint a YSI400 szenzoron kívül más szenzorok szimulációja lehet a kit7zend( cél. Az el(bbit például leválasztás alkalmazásával lehetne elérni. Elképzelhet( olyan univerzális digitális kimenet (például konfigurálható soros port), amellyel az (rz(készülékhez digitálisan illesztett küls( szenzor, például egy kapnográf m7ködését lehet szimulálni. Ez természetesen megtehet( egy PC-vel is, de például kiállítások alkalmával, amikor cél egy készülék tudásának átfogó bemutatása, hasznos lehet egy ilyen funkció. A jelenlegi megoldások szerint a szimulátor csak a kártyán vagy PC-n tárolt görbéket tudja szimulálni. Elképzelhet( olyan szoftver b(vítés, hogy a szimulátorban tárolt egyszer7bb görbék paraméterezhet(k lennének, így egyéni, adatbázisokban nem szerepl( görbék, jelek is el(állíthatók lennének.
83
Összefoglalás
5. Összefoglalás Diplomamunkám célkit7zése egy paciens szimulátor kifejlesztése volt. A rendszer els(sorban EKG készülékek és (rz(monitorok szoftver fejlesztésénél, valamint a min(ségbiztosítási eljárások során szükséges tesztelésnél alkalmazható különféle élettani jelek szimulációjára. A készülék 12 elvezetéses EKG jeleket, 2 invazív nyomásmér( jeleit, pulzoximéter jelét, valamint 2 h(mérséklet érzékel( jelét képes szimulálni. A szimulációhoz élettani jeleket tartalmazó adatbázisok használhatók fel, ez biztosítja a készülék univerzális felhasználhatóságát. Ezáltal lehetséges különféle adatbázisokon validáció céljából végzett tesztelés. A berendezés önállóan is m7köd(képes annak köszönhet(en, hogy a szimulálandó jeleket egy nagy kapacitású memóriakártyán tárolja, de személyi számítógéphez is csatlakoztatható, így a rendszerrel tetsz(leges id(tartamú jelek is el(állíthatók. Számítógéphez csatlakoztatva összetett jelenségek automatikus szimulációjára is lehet(ség nyílik, valamint lehetséges a tesztelések automatizálása, jegyz(könyv készítése is, sok munkát takarítva meg a vizsgált készülékek ellen(rzése során. A készülék alkalmas továbbá a különféle EKG és (rz(készülékek szolgáltatásainak demonstrálása során a készülékek által feldolgozható jelek el(állítására is.
84
Összefoglalás
Summary The purpose of this work was to design a multi-parameter patient simulator. The developed system can simulate physiological signals used for testing the software of ECG devices, patient monitors during the software development phase and the quality assure procedures. The device can simulate 12 lead ECG signals, the signals of 2 invasive blood pressure transducers, one pulseoximeter, and 2 temperature sensors. The origins of the simulated signals are physiologic signal databases, which guarantees the universal use of the device. Hereby testing for validation purposes with various databases become possible. The signals are stored on a high capacity memory card, so the standalone working is possible, and the simulator also can be connected to a PC, thus long-term simulation is possible. Connected to a PC, complex events can be simulated automatically, and the testing procedures can be make automatic, with reporting the results, hereby saving many time and work. The simulator can also demonstrate the ability of ECG devices and patient monitors.
85
Mellékletek
6. Mellékletek Irodalomjegyzék [1]
IEEE Engineering in Medicine and Biology: Acquisition of Biomedical Signals Databases, 2001/05-06 25-31 old.
[2]
Research Resource for Complex Physiologic Signals http://www.physionet.org/
[3]
Model
430,
12
Lead
ECG
Simulator
Medi
Cal
Instruments,
http://www.ecgsimulators.com/prod02.htm [4]
ECG200 Specifications, DNI Nevada Biomedical Solutions Company, http://www.dninevada.com/spec_sheets/ecg200_s.htm
[5]
Phantom 320 ECG Simulator, Müller & Sebastiani Elektronik GmbH, http://ourworld.compuserve.com/homepages/OscarSebastiani/phant2_e.htm
[6]
Lionheart 3 Multiparameter Simulator Specifications, Biotek Biomedical Equipments, http://www.biotek.com/biomed_product.asp?pid=30#Features
[7]
MedSim300B Multi-parameter Patient Simulator, DNI Nevada Biomedical Solutions Company, http://www.dninevada.com/spec_sheets/medsim_s.htm
[8]
Hainzmann - Varga - Zoltai: Elektronikus áramkörök, Tankönyvkiadó, 1992.
[9]
Tietze-Schenk: Analóg és digitális áramkörök, M7szaki Könyvkiadó, 1993.
[10] AD5260/AD5262 1-/2-Channel 15V Digital Potentiometers Analog Devices Data Sheet, 2002. [11] AD7841 Octal 14-Bit, Parallel Input, Voltage-Output DAC Analog Devices Data Sheet, 2000. [12] LT1112/LT1114 Dual/Quad Low Power Precision Picoamp Input Op Amps Linear Technology Data Sheet, 1992. [13] Hitachi Single-Chip Microcomputer H8/3048 Series Hardware Manual Hitachi Data Sheet, 1999.
86
Mellékletek
[14] MAX5450-MAX5455
Dual,
256-Tap,
Up/Down
Interface
Digital
Potentiometers Maxim Data Sheet, 1997. [15] SLC800 Linear Optocoupler Solid State Optronics Data Sheet, rev 1.0 [16] Nellcor Pulse Oximeter Tester Model SRC-2 Technical Manual Mallinckrodt Inc., 2000. [17] Abonyi Zsolt: PC hardver kézikönyv, 262-269 old. Computer Books, 1996. [18] Peter Norton: Az IBM PC programozása M7szaki Könyvkiadó, 1994. [19] Jack
Dobiash:
FAT16
Structure
Information,
1999.
http://www.teleport.com/~brainy/fat16.htm [20] Antalóczy Zoltán: Elektrokardiológia az orvosi gyakorlatban, Medicina Könyvkiadó, 1987.
87
Mellékletek
Kapcsolási rajzok
18.ábra. A végtagi elvezetési pontok áramkörei
88
Mellékletek
19.ábra. A C1-C4 mellkasi elvezetési pontok áramkörei
89
Mellékletek
20.ábra. A C5-C6 mellkasi elvezetési pontok áramkörei
90
Mellékletek
21.ábra. A véres vérnyomás szimuláció áramkörei
91
Mellékletek
22.ábra. A D/A konverterek és környezetük
92
Mellékletek
23.ábra. A pulzoximéter szimuláció áramköre
93
Mellékletek
24.ábra. A h$mérséklet szimuláció áramköre
94
Mellékletek
25.ábra. A tápellátás áramkörei
95
Mellékletek
26.ábra. A processzor és környezete
96
Mellékletek
27.ábra. A készülék csatlakozói
97
Mellékletek
Nyilatkozat Alulírott, Tóth Norbert, a Budapesti M7szaki Egyetem hallgatója kijelentem, hogy ezt a diplomatervet meg nem engedett segítség nélkül, saját magam készítettem, és a diplomatervben csak a megadott forrásokat használtam fel. Minden olyan részt, melyet szó szerint, vagy azonos értelemben, de átfogalmazva más forrásból átvettem, egyértelm7en, a forrás megadásával megjelöltem.
Tóth Norbert
98