Debreceni Egyetem, Informatika kar [305983]

[anonimizat]ú orvosinformatikai nyomásmérő szenzorrendszer

Témavezető: Dr. Godó Zoltán Attila Készítette: Halász János

Adjunktus Mérnökinformatikus

Debrecen 2019

Bevezetés

Manapság az orvostudomány és mérnöki tudományok nagy sebességgel fejlődnek. A mérnöki terület egy meghatározó részévé az informatika vált, mivel szinte minden mérnöki területet nehéz elképzelni informatika nélkül. Ez az orvosi eszközök, rendszerek és alkalmazások esetében is igaz. Amennyiben orvosi informatikáról beszélünk meg kell említeni az orvosi képalkotást, diagnosztikai vagy tanácsadói rendszereket, de egy fontos része a területnek az elektronikusan mérhető információk mérése és feldolgozása is.

Különböző szenzorok alkalmazásával és az általuk szolgáltatott jelek feldolgozásával értékes információk nyerhetők egy adott műtét, kezelés során vagy azt követően.

A tanulmányaim során az elektronika és az informatika kapcsolata keltette fel leginkább az érdeklődésemet. A digitális elektronika a hardver szintjén, elektromos jelek érzékelése és feldolgozása továbbá a hardverközeli programozás.

A célom a szakdolgozatommal, egy olyan orvosinformatikai mérőrendszer fejlesztése és megépítése, amely nyomásmérő szenzorok alkalmazásával eredményesen képes a VAC Hartmann orvosi készülék hatékonyságának mérésre. Ehhez már rendelkezésre áll a szenzorrendszernek egy prototípusa, illetve néhány programrészlet. Ez azonban egy próbapanelen lett megépítve és ehhez nem tartozik semmilyen dokumentáció. Így viszont esetleges meghibásodás esetén a hiba nehezen található meg és hárítható el.

A szakdolgozatomat az előbbi célnak megfelelően több fő részre bontottam. Első részében bemutatom azt az orvosi problémát, melynek a hatékonyságát hivatott a szenzorrendszer mérni. A dolgozat következő részében bemutatom a szenzorrendszerben felhasznált szenzorokat és eszközöket. A dolgozat további részében áttekintést adok az rendszer hardverének felépítéséről és annak működéséről, mindemellett bemutatom a hardvert vezérlő szoftvert is. Végül a szenzorrendszer további fejlesztési lehetőségeit veszem sorra.

A szakdolgozat megírása során igyekeztem egy leírást adni magáról a szenzorrendszerről, ezáltal remélem, hogy a későbbiekben segítségül szolgál a vele kapcsolatos problémák megoldásában, valamint ez esetleges tovább fejlesztésében.

A szenzorrendszer elméleti háttere [1],[2]

Az emberi szervezet adott rekeszeiben megemelkedő nyomás, amelyek különböző okokra vezethetők vissza. Ez a rekeszben lévő szövetek vagy szervek kóros, vérhiányos állapotá[anonimizat] a szövetek elhalását és diszfunkcióját okozhatja, ezt a tünetegyüttest nevezhetjük kompartment szindrómának. Leggyakrabban végtagok rekeszeiben tapasztalható, de annak mintájára hasüregben, koponyában, de akár mellkasban is előfordulhat különböző esetekben.

A kialakulását növelő tényezők a kórelőzményben szereplő hasi műtét, a nagymennyiségű folyadékbevitel, különböző szervek elégtelensége, mint például máj, vese, tüdő. Ezen kívül a rizikófaktorok közé sorolható a hasi-medencei traumák, hasüregi vérzés vagy égési sérülések is.

Pontos osztályozása ismert az ok, a nyomás mértéke a kialakulás sebessége és a behatás időtartama alapján.

Ok alapján a következő 3 csoportra osztható fel:

[anonimizat]óma: Valamilyen gyulladás következtében, lehet hasnyálmirigy gyulladás vagy valamilyen hasi trauma.

[anonimizat]óma: Folyadék felszaporodás eredménye kép, ezáltal fellépő nyomásnövekedés következtében.

ismétlődő hasi kompartment-szindróma: Az előbb felsorolt két eset sebészeti ellátását követően ismételten kialakuló kórkép.

Időtartam szerint a következő osztályok lehetnek:

hiperakut: Az emelkedett nyomás érték másodperces, perces időtartamra áll fent.

akut: A fokozódott nyomás értéke több órán keresztül fokozatosan alakul ki egy hasi trauma például vérzés következtében.

szubakut: A nyomás fokozódás néhány nap alatt éri el a kóros értéket.

krónikus: A kóros értéket a nyomás hónapok, évek alatt éri el.

A nyomásviszonyok szerint megkülönböztethető 4 fokozat:

I. fok: 12-15 Hgmm

II. fok: 16-20 Hgmm

III. fok: 21-25 Hgmm

IV. fok: >25 Hgmm

A hasűrben keletkezett nyomás mérése rendelkezésre állnak direkt és indirekt technikák. Direkt módszer a hasi punctio, indirekt pedig a gastrictus és az intravesicalis nyomásmérés.

A kompartment-szindróma kezelésének több lehetséges eljárása is használatos a gyakorlatban. Egyik leggyakrabban használt technika az úgynevezett negatív-nyomás terápia. Itt a sebet egy habszerű kötszerrel fedik le majd csöveket helyeznek be, amellyel a nemkívánat folyadék elvezethető a területről és végül az egészet lefedik egy műtéti fóliával légmentesen. Így a nemkívánt folyadék kiszívásával negatív nyomás keletkezik, amely elősegíti a sebgyógyulást vagy a lehetőséget biztosít a további műtétek elvégzésére.

Ennek a technikának a hatékonyságának mérésére készült a szenzorrendszer, amely a negatív nyomás terápia során a kezelt területen a nyomásszenzorok segítségével méri az nyomás eloszlását. A mérőrendszer segítségével a javítható a kezelés hatékonysága.

A következő fejezetekben a szenzorrendszer megtervezésének és megvalósításának részeit mutatom be.

Felhasznált szenzorok, eszközök

Ebben a fejezetben a tervezett és a megépített szenzorrendszerhez felhasznált szenzorokat és eszközöket fogom bemutatni, azok működési elvét és általános paramétereit.

A nyomásmérő szenzorok [3],[4]

A nyomáskülönbség mérésére két elv létezik. Hidrosztatikai törvényt felhasználva a folyadék oszlop magasságából következtethetünk a nyomásra, vagy szilárd test deformációja során létrejött elektromos jel mérése alapján. A továbbiakban az elektronikus nyomásmérők működési elveit fogom részletesebben bemutatni, végül pedig az általam használt szenzor elvét és működését majd pedig részletesen az adott eszközt.

A villamos elvű nyomásmérő szenzorok működési elve

Az ilyen típusú szenzorok csoportosíthatok aszerint, hogy mihez képest határozzák meg az nyomás értékét. Egyes típusú eszközök a vákuumhoz míg mások relatív nyomáshoz viszonyítják a mérendő értéket.

Típusai:

Kapacitív elvű nyomásérzékelés: Az ilyen fajta szenzorok fő alkotó eleme egy membrán, ezen alapul a nyomásmérési elve. Az érzékelőben található egy membrán, amely egy kondenzátort alkot egy másik rögzített helyzetű lemezzel. Az így kialakított kondenzátor két fegyverzetének távolságából, azaz a membrán deformációjának következtében változik az így kialakított kondenzátor kapacitása. Ez a kapacitás érték arányos a nyomás változásával, valamint a fegyverzetek távolsága fordítottan arányos a kapacitás értékével. Működésük szempontjából ezek az eszközök lineárisak.

Induktív elvű nyomásérzékelés: Ezen típusú eszközök működésének elve a Bourdon csöves nyomásmérésen alapul. Felépítését tekintve szenzorban található egy transzformátor melynek vasmagja a nyomás hatására elmozdul, a két tekercs között változtatva az induktív csatolás mértékét. Ez a változás pedig arányos a mérendő nyomás értékével.

Ellenállás (piezorezisztív) elvű nyomásérzékelés: Alapját a membránra ható nyomás következtében történő deformáció adja. Amely során a deformálódott anyagnak megváltozik az elektromos ellenállása. A felvezető anyagok esetén ez a jelenség jobban érzékelhető.
A szakdolgozatomban is ilyen elvi működésű szenzorokat használok.

A felhasznált nyomásmérő szenzorok [5]

Az általam használt szenzorok MPX12DP típusú piezorezisztív elvű nyomásérzékelők. A szenzorrendszer által mérni kívánt nyomástartomány 0-35Hgmm. Ennek a szenzornak a méréstartománya teljes mértékben lefedi a mérni kívánt nyomástartományt, amely egy fontos szempont volt a kiválasztása során. Ez az eszköz differenciális nyomásérzékelő, amely kis nyomások mérésére alkalmas 0 és 10kPa (75Hgmm) között. A differenciál nyomásmérés pedig azt jelenti, hogy a nyomás érték egy másik nyomáshoz viszonyítja, mely jelen esetben a két bemenetén lévő nyomások különbsége. A nyomás mérés úgy lesz megvalósítva, hogy az egyik bemeneten szabadon lesz hagyva, így a mérés során a légköri nyomáshoz viszonyítva történik a mérés. A nyomás függvényében a kimeneti analóg feszültség lineárisan változik.

Az LCD Kijelző [6],[7]

Az ember és gép közötti kommunikáció egyik elengedhetetlen feltétele a kijelző. Minden rendszer fontos része. Jelen mérőrendszer esetében az egyes szenzorok által mért aktuális nyomásérték megjelenítését fogja végezni.

Az LCD kijelzők esetében a képernyő megadott számú sorból áll, amely adott számú karakter megjelenítésére alkalmas, egy karakter képpontokból áll, melyek működtetését egy vezérlő egység végez.

Az általam továbbfejlesztett eszközön előszőr egy 16×2 LCD kijelző volt a prototípus kipróbálására, majd később egy 20×4-es LCD kijelzőt szereltem bele. Mind a két kijelző rendelkezik tápfeszültség kivezetésekkel, a működéséhez szükséges feszültsége 5V. Van írás/olvasás, regisztert választó bemente, engedélyező lába és több adatbemenete. Az adatbementek használata esetében lehet mind a 8 adatbemenetet használni, ebben az esetben a vezérléshez 10 I/O lábat kell használni. 8 adatbemenet és két vezérlő lábat. Azonban az LCD kijelzők többsége támogatja a 4 bites üzemmódot is. Ebben az esetben a kijelző vezérléséhez és a rajta történő megjelenítéshez elegendő összesen 6 láb is, ilyen használat esetén csak 4 adatbement szükséges. Ilyenkor a felső négy adatlábat használjuk és félbájtonként lesz kiküldve a megjeleníteni kívánt érték.

Az írás és olvasás választás esetén érdemes figyelembe venni, hogy írás esetén a mikrovezérlő által szolgáltatott jel alapján jelenik meg karakter a kijelzőn, azonban olvasás üzemmódban ez megfordul. Ilyen üzemmódban a kijelző szolgáltat információt a mikrovezérlő számára. Mivel ahogy már említettem 5V-os tápfeszültség szükséges a kijelzőnek így az általa szolgáltatott jelszint értéke is 5V. Ez kárt tehet egy kisebb feszültségszintet használó mikrovezérlőben, ilyen esetben szintillesztés javasolt, vagy csak írásmódban érdemes használni az LCD kijelzőt, ahogy az én is alkalmazni fogom.

A mikrokontroller [8]

A szenzorrendszer vezérlését, valamint a rendszer által szolgáltatott adatok feldolgozását és továbbítását egy mikrokontroller végzi. Az általam használt mikrovezérlő egy BS2sx mikrokontroller. A BS2sx működéséhez szükséges feszültség 5-12V. A ki/bemeneteinek száma 16, valamint rendelkezik két soros kommunikációhoz dedikált lábbal, amelyre szükség van a projekt során. A processzora 50 MHz-es, amely több mint 10 000 utasítás végrehajtását teszi lehetővé másodpercenként, így közel valós idejű működést valósít meg. Kontrollerre feltöltött program tárolására 8*2Kb EEPROM áll rendelkezésre. Igy a tárolt program egészen addig a memóriában marad míg az felül nem íródik egy másik program feltöltése következtében. A mikrokontrollert soros porton keresztül lehet a számítógéphez csatlakoztatni, valamint ezen keresztül lehet a programot is rá feltölteni. A tápfeszültség rákapcsolása után a mikrokontrollerre feltöltött program végrehajtása egyből elkezdődik az első utasítástól.

A mikrokontroller a saját programozási nyelvén programozható. A PBASIC egy olyan programozási nyelv, amely mikrokontrollerek számára készült és a BASIC nyelv egy verziója. A nyelv tartalmazza a mikrokontrollerek alapvető funkcióját a PWM vezérlést mindemellett soros, 1-vezetékes és I2C kommunikációra is képes.

A nyelvben megtalálhatóak a hagyományos BASIC nyelv utasításai, mint például a DO LOOP, FOR NEXT ciklusok, IF és ENDIF szerkezet. Azonban tartalmaz olyan parancsokat mely a nyelv sajátossága. Ilyen például a DEBUG, SHIFTOUT, SHIFTIN, HIGH, LOW, WRITE, READ utasítások, melyek a programban is számos helyen használtam.

A mérőrendszer hardveres megvalósítása

A szenzorrendszer tervezése során már rendelkezésre állt egy prototípus, amely egy próbapanelen volt megépítve. Ez szolgált az általam tervezett szenzorrendszer alapjául. Azonban ehhez a nem tartozott semmi féle dokumentáció vagy leírás, így a tervezés során mindent elölről kellett kezdeni.

Első lépésként a rendelkezésre álló prototípust és a benne lévő kapcsolásokat vizsgáltam meg.
Feltérképeztem az benne alkalmazott áramköri elemeket és meg kellett értenem az ott alkalmazott kapcsolások működését és azok szükségességét. Ez eléggé nehézkes volt mivel a próbapanelen összevezetékezett kapcsolások átláthatatlanok voltak. Így elsőként megvizsgáltam a felhasznált IC-ket, az adatlapjaikat felhasználva megrajzoltam az egész rendszer kapcsolási rajzát. Ez a kapcsolási rajz a véleményem szerint a későbbiek során akár a szakdolgozatot követően is nagyon hasznos lesz. Segítségével az egész mérőrendszer átláthatóbb lesz és meghibásodása esetén a javítása is sokkal egyszerűbbé válik.

Ezen fejezet során a továbbiakban bemutatom a szenzorrendszerben alkalmazott kapcsolásokat, kitérek ezeknek a működésére és a rendszerben betöltött szerepükre, valamint szükségességükre. Végül pedig a nyomtatott áramkör megtervezését és elkészítésének folyamatát ismertetem.

Rendszer felépítése

A nyomásmérő szenzorrendszert a felépítését tekintve több kis egyégre bontottam, az alkalmazott kapcsolások és eszközök szerepe szerint. Ezeket a kapcsolásokat és eszközöket végül három főbb egységben helyeztem el.

A mérési folyamat alapján az első rész tartalmazza a szenzorokat, amelyek a mérendő jelet egy azzal arányos elektromos jellé alakítják. Tovább az érzékelők helyes, pontos működéséhez szükség van egy kiegészítő elektronika kapcsolásra.

Ezt követően a szenzorok által szolgáltatott elektromos jelnek a második fő egységben megtörténik a kondicionálása és feldolgozása.

Végül a harmadik nagy egység a kezelő felület és a megjelenítés.

Ezek részeket fogom ismertetni a következő részfejezetek során azokat tovább bontva és részletesen bemutatva azok működését.

A szenzorok [5]

A szenzorrendszer 12 darab nyomásmérő szenzort tartalmaz ezzel 6 ponton mérhető pozitív és negatív irányú nyomásváltozás.

A szenzorok egy nyomtatott áramköri panelhoz csatlakoznak, amely tartalmaz minden érzékelő számára egy kondenzátorotokból álló tápfeszültség függetlenítő kapcsolást, ezzel elkerülve a mérendő jelben a tápfeszültség ingadozás hatására bekövetkező kimeneti jelváltozást. Így a kondenzátorokból felépített kapcsolások passzív aluláteresztő szűrőként viselkednek. Valamint a kimeneten is elhelyezésre került egy kondenzátorokkal megvalósított passzív aluláteresztő szűrő, mely a szenzor kimeneti jeléhez hozzáadódó nagyfrekvenciás jelösszetevőket szűri ki, melyek zajként értelmezhetőek és ronthatják a mérések során az értékek pontosságát.

A főpanel

A főpanelen elhelyezkedő áramköri kapcsolások működésüket tekintve 5 szerkezeti egységre bonthatóak:

tápfeszültség és különböző feszültség szintek biztosítását szolgáló kapcsolások,

a szenzorok jeleinek útvonalválasztása és kondicionálása,

a jel analóg-digitális átalakítása,

I2C kommunikációs modul és az órajel modul

a mikrokontroller

A következőkben ezeket sorban fogom ismertetni.

A mérőrendszer feszültségellátása [9],[10]

A műszert egy 12V-os tápegység táplálja mely a hálózathoz csatlakozik, de a használt IC-k többsége csak 5V-os fesztültséget igényel melyet egy LM7805-ös feszültség szabályzó IC szolgáltat (9. ábra).

A feszültség szabályzó kapcsolásnak az a feladata a műszerben, hogy más áramkörök számára stabil állandó értékű tápfeszültséget biztosítson a terhelő áram és a környezet hőmérsékletétől függetlenül.

Elhelyeztem egy nagy kapacitású kondenzátort is a feszültség szabályzó chip után ezzel stabilizálva az esetleges feszültség ingadozást. A kondenzátor és a vezetősávok kis ellenállása együttesen egy aluláteresztő szűrőt valósít meg, mely az esetlegesen a tápfeszültségre kerülő zajt, feszültség ingadozást ki tudja küszöbölni.

Az analóg-digitális átalakításhoz, az átalakító IC számára szükséges egy 2,5V-os referencia feszültség, ezt a MAX6225 IC szolgáltatja. Ez egy nagy pontosságú konstans feszültséget biztosít az analóg-digitális átalakítás számra.

A referenciafeszültségre azért van szükség mivel az A/D átalakítás során az átalakítandó jel értékét ehhez a feszültséghez viszonyítva történik a digitális jellé való konverzió. Amennyiben ennek a feszültségnek az értéke ingadozna az átalakítás pontatlanná válna. Magára az A/D átalakítóra később részletesen ki fogok térni.

Mindezek mellett a kialakított rendszerben elhelyezésre került egy elem is, amely az órajel modul számára biztosít folyamatos tápfeszültséget. Ennek a modulnak a működéséhez szükséges feszültséget azért elem szolgáltatja, mert a mérés során, amely időtartama akár több óra is lehet elengedhetetlen a folyamatos időmérés és a mért értékekhez hozzárendelet időbélyeg. Ezáltal amennyiben a mérés során bármilyen okból megszűnne a tápfeszültség ellátás az órajel modul értéke kinullázódna, ezt küszöböli ki az elem alkalmazása.

Útvonalválasztás és jelkondicionálás [13],[14],[15]

A mérőrendszer összesen 12 nyomásmérő szenzor adatait dolgozza fel, amit egy darab mikrovezérlő végez. A mikrokontrolleren a lábak száma erősen korlátozott és mivel a felépítésből adódóan csak soros utasítás végrehajtásra képes így egyszerre nem lenne képes az összes szenzor értékét feldolgozni. Valamint a tervezett áramkört is nagyban egyszerűsiti, ha egyszerre csak egy jel feldolgozása történik. Ezért elég, ha a programban egymás után egy-egy kiválasztott szenzor értékét olvassuk le, ehhez multiplexert használok.

A multiplexerek kezelhetnek analóg vagy digitális jeleket. Amennyiben digitális jelekkel kell útvonal választást végezniük általában logikai kapukból épülnek fel, jelen esetben a szenzorok jelei analógok. A multiplexerek rendelkeznek több adat bemenettel, valamint egy adat kimenettel és ezen kívül az bemenetek választásához szükséges címzőbemenetekkel.

Az általam legkönnyebben beszerezhető multiplexer 8 adatbemenettel rendelkezik, mindegyik bemenet megcímzéséhez 3 címbemenettel kell rendelkeznie. Ahhoz, hogy az összes szenzor kiolvasható legyen 2 multiplexerre van szükség. Itt a későbbi egyszerűbb kezelhetőség és megcímezhetőség miatt az egyik a pozitív, a másik pedig a negatív értékeket mérő szenzorokat kapcsolja rá.

A szenzortól érkező jeleket egy multiplexer fogadja, melynek címzőbemeneteit a mikrokontroller címezni meg, aszerint, hogy melyik nyomásérzékelő szenzor által szolgáltatott analóg jel legyen rákapcsolva a további áramkörökre, ezzel végrehajtva az útvonalválasztást.

A jel ezt követően egy feszültségosztó után egy műveleti erősítő bemenetére kerül. Itt a jel kondicionálása történik meg. Ez szükséges, mert az analóg-digitális átalakításhoz biztosítja a lehető legpontosabb átalakítást, valamint a konvertáláshoz szükséges a jel megfelelő erősítése és bemeneti impedancia illesztése.

A műveleti erősítővel egy feszültségkövető kapcsolás került megvalósításra, amely egy olyan nem invertáló erősítő kapcsolás, ahol az erősítés egységnyi nagyságú. Tulajdonképpen a kimeneten megjelenő jel a bemeneti jel reprodukciója. Az erősítő kapcsolás nem változtatja meg a jel fázisát és erősítés sem történik.

Az előnye, hogy a kapcsolás bemenete magas impedanciájú, míg a kimenti jel alacsony impedancián jelenik meg a kimeneten, ezzel megvalósítva az impedancia illesztést, valamint teljesítmény erősítőként is funkcionál.

A jel analóg-digitális átalakítása [16],[17],[18]

Azért szükséges a kapcsolásba egy A/D átalakító beépítése mert a használt mikrovezérlő nem képes a bemeneteire érkező analóg jelek feldolgozására, csak digitális I/O lábakkal rendelkezik. Továbbá az itt használt konverter chip 16 bites nagypontosságú átalakításra képes, mely a mérés szempontjából nélkülözhetetlen.

Az analóg-digitális átalakító feladata az, hogy a kimenetén megjelenő digitális jel értéke megfeleljen az átalakító bemenetére érkező analóg jel pillanatnyi értékének. Ehhez az átalakításhoz szükség van egy referencia feszültségre, mely értékéhez képest viszonyítja a kimeneti feszültség maximális értékét. Analóg-digitális átalakítás során az analóg jelből meghatározott időpillanatokban mintát kell venni. Ezt azt értéket minél kisebb hibával egy digitális számhoz kell rendelni. A digitális érték annál pontosabban ábrázolja bemenő analóg jelet, minél nagyobb az átalakító felbontása, azaz a rendelkezése álló bitek számától függ, hogy mennyi bit van használva a számábrázoláshoz. Az alkalmazott AD átalakító 16 bit-es felbontással képes az analóg jelet digitálissá konvertálni. Ami azt jelenti, hogy a 0V és 5V között a 65535 különböző szintű feszültség értéket képes megkülönböztetni, azaz a bemeneti 0,0763mV feszültségváltozás a kimenetén bitváltozást eredményez.

A felhasznált AD7715-ös IC egy szigma-delta átalakító. Az ilyen típusú átalakítás a következőképpen történik. A bemenetére érkező jel egy integrátorra kerül, az integrátor kimenetét egy komparátoron keresztül figyeli a rendszer. Egy kapcsoló segítségével az integrátorra referencia feszültséget kapcsolva, úgy módosítja az integrátor kimeneti feszültségét, hogy az a zérus felé konvergáljon. Minél kisebb a bemeneti feszültség annál rövidebb időtartamra kell bekapcsolni a referencia feszültséget. Ennek következtében a kimeneten kevesebb 1-es bitet fog megjelenni. A bementén lévő analóg feszültség és a kimenetén adott egyes bitek számának aránya megegyezik.

A részegységek közötti kommunikáció [18],[19]

Az áramkörben lévő eszközöket a mikrokontroller vezérli, vezérlő lábainak száma korlátozott és így szükséges egy bővítő IC beépítése is. Ezzel megnövelve a vezérlő lábak számát. Ezt az IC-t a mikrovezérlő I2C protokoll segítésével irányítja és a vezérlésnek megfelelően a két multiplexert pedig digitális jelekkel vezérli, aszerint, hogy éppen melyik szenzor értékel legyen kiolvasható a mikrovezérlővel. Az I2C buszra kapcsolódik még az órajel IC is. Ez a modul egy külön, független tápfeszültséggel rendelkezik. Ezzel biztosítva a stabil és megbízható órajelet, amely a mérés során az mért adatok pontos dokumentálásához.

A I2C kommunikáció mellett a mikrokontroller rácsatlakoztatható soros porton keresztül számítógépre is. Soros kommunikációt megvalósítva pedig a számítógépen megjeleníthetőek, feldolgozhatóak és eltárolhatóak a mérés során mért adatok.

I2C kommunikáció

Az I2C egy Philips cég által kifejlesztett olyan kétirányú kétvezetékes protokollt valósít meg amely hatékony az integrált áramkörök közötti vezérlés megvalósítására. Fél-duplex, Master-Slave alapú kommunikáció. Több Master és Slave lehet is lehet a hálózatban, ilyen esetben a Master-ek versenyeznek BUSZ használatáért. A jelen áramkörben az egyetlen Master a mikrokontroller és hozzá két Slave tartozik, a bővítő és az órajel modul.

A kommunikációhoz egy soros adatvonal (SDA) és egy soros órajel vonal (SCL) szükséges. Az I2C protokoll esetében a kommunikációban résztvevő eszközök címezhetőek. A bővítő IC esetében a cím egy 8bites cím, amelynek az utolsó bitje az írás vagy olvasás műveletet jelzi, az előtte lévő három bit pedig beállítható, ezzel lehetővé téve, hogy több azonos típusú chip is használható legyen egy kapcsolásban. Az órajel modul fix címmel rendelkezik csak az írást és olvasást jelző bit változtatható.

A kommunikációt mindig a Master kezdeményezi és szolgáltatja hozzá az órajelet. A kommunikációnak 3 típusa van, a Master írhat, olvashat vagy pedig egy általános címmel minden Slave-nek küldhet üzenetet.

Az adatcserét a Master indítja, egy START jellel, ami azt jelenti, hogy a vezeték feszültségszintjét magas jelszintre állítja, majd pedig lehúzza alacsonyra. Ezt követően kiteszi a címet az adatvonalra, hogy melyik Slave-vel akar adatot cserélni, ezt követen egy vezérlő jellel megadja, hogy írás vagy olvasást fog végezni. A megcímzett Slave egy ACK jellel visszaigazolja a kezdeményezést és ezt követően a Master újra megcímzi a Slave-et ekkor már a használni kívánt regiszterének a címével, majd végrehajtóik az írás vagy olvasás. Az adatátvitel befejezését egy STOP jellel fogja a Master jelezni, ami a kommunikációs láb magasra jelszintre történő állítása.

Soros kommunikáció

A szenzorrendszer az általa mért adatokat képes továbbitani soros porton keresztül a számítógép felé. Soros kommunikációt megvalósítva a mérés során kinyert adatok számitógépen feldolgozhatóvá, eltárolhatóvá válnak.

Ehhez a kommunikációhoz három vezeték szükséges. Egy fogadó vezeték (Rx), melyen a másik ezköztől érkezik az üzenet. Egy küldő vezeték (Tx), amelyen keresztül az adott eszköz képes üzent továbbítására, ezenkívül szükséges egy földelés (GND) is.

A soros kommunikáció lényege, hogy a küldő az adatokat reprezentáló biteket egy adatvonalon sorban egymás után továbbítsa, megadott időzítéssel a vevő számára, ahol azokat vissza kell állítani a beérkezést követően karakterkóddá. Az üzenetküldés módját tekintve ez a kommunikáció lehet egyirányú, felváltva két irányú vagy két irányú.

Az soros kommunikáció egy olyan aszinkron kapcsolat, ahol nincs külön szinkron jel az adó és a vevő között, ezért az üzenet küldésekor szükség van egy start és a stop bitre. Ez keretbe foglalja a küldött adatot, mellyel folyamatos adatfolyam esetén a vevőoldalón könnyedén részekre bontható az üzenet. Mindemellett az üzenetet egy megadott, előre definiált időzítéssel kell továbbitani.

A kezelő felület

A szenzorrendszer dobozának tetején kap helyett a kezelő felület. Itt elhelyezésre került egy kapcsoló, amellyel a rendszer bekapcsolható, azaz tápfeszültség alá helyezhető.
Továbbá egy LCD kijelző, kezdetben 16×2 LCD kijelző később pedig az elkészült mérőrendszeren már 20×4 LCD kijelző lett elhelyezve. A kijelző kezeléséhez szükséges volt elhelyezni egy potenciométert, amellyel az kijelző kontrasztja állítható. Ez egy feszültség osztót valósít meg, a kijelző kontraszt vezérlő bemeneti lábán eső feszültség segítségével szabályozható a kijelző kontrasztja. Valamint a háttér világitás ki és bekapcsolásához helyett kapott egy kapcsoló is a doboz tetején.

A kezelő felületen szükséges volt elhelyezni 3 darab gombot, amelyek a mikrovezérlőhöz csatlakoznak és ott a program egy adott szakaszában kiolvasásra kerül az aktuális értékük és érték szerint lefut az adott gombhoz, lábhoz rendelt programrész. Az egyik ilyen funkció a kijelzőn megjelenő értékek közötti váltás, az kijelző méretéből adódóan az összes szenzor értéke nem helyezhető el egyszerre rajta. Ennek a gombnak a segítségével tehát az LCD kijelzőn megjelenítésre kerülő szenzorok változtathatóak.

Egy másik funkció a kalibráció, ez egy ilyen jellegű műszer esetén elengedhetetlen. A szenzorok egy zárt rendszerhez fognak csatlakozni, melynél valamilyen módon szükséges meghatározni egy alapértéket. A kalibráció gomb megnyomásával az mikrokontroller kalibrálja magát és beállítja az alapértékeket, amely a további működés során viszonyításként fog szolgálni.

Az elhelyezett harmadik gomb a rendszeridő nullázására szolgál. Ennek a segítségével a mérés kezdete adható meg.

A hardver elkészítése

A tervezés során elkészült kapcsolási rajz segítségével megterveztem egy nyomtatott áramköri panelt. A panelen elhelyezésre kerültek az idáig bemutatott részegységek.

Az általam használt tervező program a KiCad volt, amely egy ingyenes nyílt forráskódú áramkör tervező szoftver. A KiCad programban először megrajzoltam magát a kapcsolási rajzot és az elkészülte után az egyes áramköri elemek rajzához hozzárendeltem a valóságos áramköri elemek tulajdonságait. Ez fontos mivel, ha rossz tulajdonságokat, kinézetet rendelek az egyes elemekhez akkor az elemek beültetése során nem fog egyezni a lábkiosztás, az elemek mérete és orientációja. Ezek után a program segítségével megterveztem az készülő nyomtatott áramkör elrendezését. A mérőrendszerhez két panelt terveztem meg. Az egyikhez csatlakoztak a nyomásmérő szenzorok és itt helyeztem el a hozzájuk kapcsolódó kondenzátorokból álló tápfeszültség függetlenítő kapcsolást. A másik nyomtatott áramkör pedig a korábban bemutatott főpanel volt. A tervezés során külön figyelmet kellet fordítanom a méretezésnek, mert a legvégén ez egész szenzorrendszer egy műszerdobozba került elhelyezésre.

Továbbá figyelnem kellett néhány fontos tervezési szabályra. Kerülni kell éles töréseket a vezetősávokkal, az elhelyezésnél igyekeztem az egy adott funkciót ellátó elemeket összerendezni. Igyekeztem kerülni a hosszan egymással párhuzamosan futó vezetősávokat vagy nagyobb távolságot hagyni azok között így elkerülve a vezetősávok közötti esetleges zavarokat, áthallásokat. A nyomtatott áramköri tervezése során a vezetősávok szigetelési távolságát, valamint az egyes alkatrészeket úgy kellett beállítanom és megválasztanom, hogy azok nem professzionális körülmények között lesznek legyártva, hanem otthon, saját magamnak kell elkészítenem.

A nyomtatott áramkört otthon vasalásos technikával készítettem el. A technika esetében az elkészült nyomtatott áramköri tervet lézernyomtatóval műnyomó papírra kell kinyomtatni. A műnyomó papír fényes felülete miatt a nyomtató festéket a papír nem szívja fel, valamint a lézernyomtató festéke hő hatására meglágyul, megolvad. A nyomtatott áramkör egy műanyag lapon kerül kialakításra, amely be van vonva egy vékony rézréteggel. Erre a rézrétegre vasaló segítségével rávasaltam a kinyomtatott áramköri elrendezést. A tinta átragad a rézfelületre a hőhatás következtében, így kialakítva egy maszkréteget rajta ott, ahol az áramkör vezetősávjai vannak. Ezt követően már csak a fölösleges rézbevonatot kellett eltávolítani mely vasklorid oldat segítségével lehetséges. Végül a szükséges furatokat el kell készíteni az alkatrészek számára, valamint beültetni az alkatrészeket. Az alkatrészek beültetésénél az IC-ket és a mikrokontrollert nem közvetlenül a panelbe forrasztottam be, hanem foglalatba lettek elhelyezve. Ezáltal könnyen és egyszerűen cserélhetőek.

Miután elkészült a műszerdobozba beszereltem a panelokat és megfelelően bekötöttem a kezelőfelületet, következett a mikrokontroller programozása és a rendszer élesztése.

A szoftveres megvalósítás [20]

Az egész szenzorrendszer vezérlését egy BS2sx mikrokontroller végzi. Ebben a fejezetben bemutatom a programnak az egyes részeit, az alkalmazott mikrovezérlőt már egy korábbi fejezet során bemutattam. Ismertetem a program működését, ahogy az vezérli az előző fejezet során már ismertetett hardvert és feldolgozza által szolgáltatott információkat.

A BS2sx programjának szerkesztéséhez a mikrokontroller gyártója által készített BASIC Stamp Editor programot használtam. Ez egy egyszerűen átlátható és használható program, amellyel beállíthatók a mikrokontrollerre vonatkozó főbb paraméterek, figyelemmel kísérhető a megírt program EEPROM-ban való elhelyezkedése. BASIC Stamp Editor-ral a program feltöltésére és debugolására is lehetőség nyílik.

A deklaráció

A program elején előszőr meg kellett adni a fordító számára a programozni kívánt mikrovezérlő típusát és azt, hogy a PBasic nyelv melyik verziója lesz használva, de ebben segítséget nyújt a BASIC Stamp Editor, ahol egyszerűen kiválasztható a felső menüsorból.

Definiálni kell a mikrovezérlő használni kívánt lábait, valamint, azok működését, hogy be vagy kimenetként fognak funkcionálni a program futása során. A kimeneti beállítás esetén a láb alacsony ellenállású állapotba kerül. Ez lehetővé teszi, hogy a program során az adott lábak kimenetként nagyobb áramot biztosítsanak a hozzájuk kapcsolt eszközöknek például a szenzoroknak. Bemeneti beállítás esetén pedig nagy ellenállású állapotba kerülnek mellyel a kiolvasott feszültég értékek biztosítása a cél.

Beállításra kerülnek a kommunikációhoz használt lábak. I2C kommunikációt használva van vezérelve az órajel modul, valamint az I2C bővítő IC, amely a multiplexereket vezérli. Beállításra került soros kommunikáció is, amellyel az műszer által szolgáltatott adatokat egy soros-USB átalakító segítségével hozzákapcsolhatjuk a számítógéphez és ott elemezhetjük és tárolhatjuk őket.

A bemenetként beállított lábakra vannak csatlakoztatva a kezelőfelületen elhelyezett gombok és potenciométerek. A szenzorok által mért értékek is egy ADC-n keresztül a bemeneti lábakra érkeznek.

A kimenetként definiált lábakhoz pedig az LCD kijelző csatlakozik, ahol kijelzésre kerülnek a szenzorok által az épp aktuálisan mért értékek.

A mikrokontroller lábainak beállítása után következik a változók deklarálása ezek a változók mind globális változók lesznek. Meg kell adni a változó nevét, a VAR kulcsszót és ezt követően típusát. Végül a pedig elhelyezésre kerül néhány konstans string, melyek majd az LCD kijelzőre kerülnek kiíratásra.

A kalibráció

A kalibrációhoz a szenzor értékeinek aktuális értékét ki kell olvasni és azt eltárolni alap értékként. Ehhez előszőr a szenzorokat egyesével rá kell kapcsolni az analóg-digitális átalakítókra. Az átalakító által adott digitális értéket eltárolva és azt használva kezdő értéknek a kalibráció megtörtént. A szenzorok által adott értékek nem egy konstans értéket adnak, van az értékükben némi bizonytalanság. Ezt kiküszöbölve a kalibráció során 10 egymás utáni érték átlaga kerül eltárolásra mint kalibrációs érték ezzel kiküszöbölve a hibát.

A kalibráció végrehajtásához az analóg-digitális átalakítót meg kell szólítanunk soros kommunikáció segítségével. Az pedig a PBasic SHIFTOUT parancsával végezhető el. A parancs után meg kell adni paraméterként az adat lábat, az ütemező lábat, az küldés típusát és magát az üzenetet. Az üzenet jelen esetben előszőr az, hogy parancsot adunk az analóg-digitális átalakítónak, hogy a következő üzenet beállításokat fog tartalmazni, majd elküldésre kerül a beállításokat tartalmazó üzenet is. Ez az beállító üzentet tartalmazza a művelet végzés módját, ami jelen esetben normál mód, az analóg-digitális átalakító üzenet küldési frekvenciáját, valamint, hogy az üzenet küldésnél ne használjon bufferelést. A kalibráció során minden szenzor pozitív és negatív nyomás értéke feldolgozásra kerül. A szenzorok kiválasztását két multiplexer végzi, amelyet egy I2C bővítőn keresztül vezérel a mikrokontroller. Az I2C buszon megcímezve a bővítő chipet, majd elküldve neki kiolvasni kívánt szenzor címét, az rákapcsolja a kiválasztott multiplexert az AD átalakítóra.

Ezt követően újra meg lesz szólítva az átalakító, hogy kezdje el az átalakított érték kiküldését. Az üzenetet a SHIFTIN paranccsal kerül beolvasásra melynek paramétereiben meg van adva az adat láb, amelyen az üzenet beolvasása történik, az ütemező láb, a küldés típusa és a változó, amiben eltárolásra kerül. Miután ki lett olvasva az adott szenzor pozitív és negatív nyomás értéke 10 egymást követő alkalommal, azoknak átlagai eltárolásra kerülnek a memóriába. Ezt ismételve a ciklus végig lépked az összes szenzoron.

Az idő beállítása és kiolvasása

Abban az esetben, ha kezelőfelületen megnyomják az Idő Nullázás gombot, a mikrokontroller kinullázza az órajel modulban a másodpercek, percek és órák értékét. Ehhez mikrokontroller I2C kommunikáció segítségével üzentet küld az órajel modulnak.

Elszőr egy Star jellel jelzi a kommunikációs szándékát, majd elküldi annak az eszköznek a címét, amellyel kommunikálni szeretne IC2 buszon, a kiküldött cím utolsó bitje jelzi az írási szándékát, ennek a bitnek az értéke 0. Ezt követően megcímezi az eszköz regiszterét, ahol a másodperc értéke van eltárolva és azt lenullázza úgy, hogy beír egy nulla értéket az adott regiszterbe, végül pedig egy Stop jelet befejezi a kommunikációt. Ezt a folyamatot a program megismétli a perc és az óra regiszterivel is.

A program futása közben amikor éppen mérés történik akkor szükséges az aktuális idő kiolvasása is az órajel modulból. Ehhez az előzőleg bemutatott idő beállítása folyamat nagyon hasonlít. A Start jel kiadása után itt is megcímzésre kerül a modul, majd pedig az adott másodperc, perc, óra értéket tároló regiszter. Ebben az esetben azonban az utolsó bittel olvasás parancsot küldünk, ebben az esetben ennek a bitnek az értéke 1 lesz. A BS2sx a Start jelet megismételve újra megcímezi az modult, olvasásmódban. Ezt követően pedig várja a és feldolgozza a modultól érkező üzenetet. Az üzenet beérkezését követően Stop jellel nyugtázza a kommunikációt.

Az LCD kijelző kezelése

Az kijelző kezelésénél a BS2sx félbájtonként küldi a kijelzőnek az adatokat. Ez azért így történik mert ebben az esetben elég csak 4 adatátviteli vonal az LCD és a mikrokontroller között, továbbá nem áll rendelkezésre a BS2sx-en további szabad láb. A 4 bites módban csak a kijelző felső négy adatvonalát használom, ahol egymás után 4-4 bitenként kerülnek kiküldésre a parancsok.

Az szenzorrendszer bekapcsolásakor előszőr a kijelzőt is be kell kapcsolni. Mivel amikor a tápfeszültség ráadódik a kijelzőre az reseteli magát és alap állapotban ki van kapcsolva a kijelzés.

A kijelzőnek az RS láb alacsonyra állításával lehet vezérlő parancsot adni, itt lesz beállítva, hogy a kijelző melyik sorába történtejen a karakterek kiíratása. A kijelző vezérlő parancsai az adatlapjában találhatóak meg. Ezután pedig az RS láb magasra állításával lehet a karaktereket kiíratni.

A program futása során mindig az adott memória területen tárolt szenzor értéke ki lesz küldve az LCD kijelzőre karakterenként. A kijelzőn a megjelenítéshez szükséges karakterkódok megegyeznek az adott karakter ASCII kódjával, így nincs szükség egyéb átalakításra, hanem egyből küldhetőek az LCD-nek.

A kiküldés után a kijelzőn üresen maradó karakterek helyei pedig szóközzel lesznek kitöltve. Így minden kiíratás után a kijelzőn, a nulladik karaktertől kezdődik a következő kiíratás, nem lesz benne elcsúszás.

A mérés folyamata

A mérés során előszőr meg kell szólítani és be kell állítani az analóg digitális átalakítót, itt beállításra kerülnek ugyan azok a paraméterek a SHIFTOUT paranccsal, mint a kalibráció során.

Ezt követően egy ciklus segítségével minden szenzor értékét ki kell olvasni. Itt a kiolvasott érték csak a korábban eltárolt kalibrációs értékkel történő korrigálás után lesznek eltárolva. miután minden szenzor értéke ki lett olvasva és át lett konvertálva, megtörténik a gombok állapotának az ellenőrzése. A gombokkal végrehajtódhat az órajelmodul kinullázása, a szenzorok kalibrációja vagy az LCD kijelzőn a sorléptetés.

Ezt követően kiolvasásra kerül az idő, valamint az LCD kijelzőre kiíródnak a mért értékek. A mérés végén pedig a soros porton is kiküldésre kerül előszőr a mérés időpontja majd pedig az a mért értékek.

A mért értékek konverziója

A mérés során az AD átalakítóból kiolvasott érték egy 16 bites szám, melynek értéke 0 és 65535 között lehet. A beállított referencia feszültég 2.5V, így az AD konverter 26214 digit/volt-os felbontással működik. Az alkalmazot szenzor méréstartománya 0 – 10KPa, ami átszámítva 75Hgmm és ez a szenzor kimenetén 0.2 és 4.7V közötti analóg jelként jelenik meg. Az analóg-digitális átalakítás előtt ez az analóg érték egy feszültség osztón feleződik, ennek a következtében a tartomány végül 0.1 és 2.35 volt közé kerül.

Az AD konverter 26214 digit/volt-os felbontását összeszorozva a mérési tartomány maximumával megkapható, hogy az AD átalakító által küldött maximális érték 61603. Végül pedig leosztva ezt az értéket a szenzor maximális mérési tartományával 75 Hgmm-el előáll az a digit érték, amely 821, az AD átalakító által kapott értéket el kell osztanunk, hogy az eredmény higanymilliméterbe legyen átváltva.

A továbbfejlesztés lehetőségei

Az elkészített szenzorrendszer az elvártak szerint működik, azonban a szakdolgozat elkészítése során felmerült pár fejlesztési lehetőség. Ezeknek az észrevételeknek a megvalósítása tovább javíthatja a rendszer működését, valamint annak kezelhetőségét és későbbi alkalmazhatóságát segíti elő.

A rendszer továbbfejlesztésének egyik lehetőségét a felhasznált mikrokontroller lecserélésében látom. A véleményem szerint a BS2sx mikrovezérlő helyettesíthető lehetne egy Arduino-val. Ez egy manapság nagyon népszerű mikrovezérlő, folyamatosan fejlesztik és bővítik termékcsaládot. Az Arduino termékcsalád számos különböző méretű, tudású és paraméterű mikrovezérlővel rendelkezik. A programozása szerintem jóval könnyebb, valamint sok hasznos könyvtárat készítenek hozzá folyamatosan. Ezek segítségével még egyszerűbbé válnak a különböző hardverelemek kezelése. Mindemellett számos példaprogram is rendelkezésre áll a minél hatékonyabb programfejlesztéséhez.

A mikrokontroller lecserélésével a program átírása is szükségessé válik. Az Arduino-k egyes lábai dedikálhatóik megszakítások érzékelésére. Ezzel a kezelőfelületen elhelyezett gombok kezelése hatékonyabbá tehető. Ahogy azt egy korábbi fejezet során említettem, jelenleg a gombok állapotváltozását a program futásának egy adott szakaszában vizsgáljuk. Így egyes esetekben, amikor a gomb megnyomásának ideje túl rövid, a gomb megnyomása nem érzékelhető. Erre jelent megoldást megszakítás vezérlés alkalmazása.

Egy nagyobb volumenű továbbfejlesztés esetén akár új nyomásmérő szenzorok is beköthetőek a rendszerbe. Erre szerintem azért lenne lehetőség, mert a multiplexereken két-két bemenet kihasználatlan maradt, valamint az I2C bővítőn maradt hely további multiplexerek megcímezésére. Bár ez a fejlesztés nagyobb kiadásokkal járna mivel, újabb szenzorok elhelyezésével át kellene tervezni magát a paneleket is részben, valamint az egész szenzorrendszert egy nagyobb dobozba kellene elhelyezni. De ez a most elkészült dokumentáció segítségével nem lenne nehéz feladat.

Összefoglalás

A szakdolgozatom a Hartmann orvosi műszer pontosságát vizsgáló nyomásmérő szenzorokat alkalmazó mérőrendszer fejlesztése volt. A szakdolgozatom céljaként ennek a mérőrendszernek a fejlesztését és a folyamat dokumentálását tűztem ki. Először az irodalomkutatás során megismertem magát problémát, melyet ezen műszer segítésével lehet vizsgálni. A rendelkezésre álló prototípust felhasználva előszőr elkészítettem annak a kapcsolási rajzát, majd azt kiegészítve újraterveztem és megépítettem a szenzorrendszert.

Bemutattam a benne felhasznált érzékelőket és eszközöket, továbbá a rendszer vezérlését végző mikrovezérlőt. A mérőrendszerben használt szenzorokhoz kiegészítő elektronikát terveztem. Ezt követően megterveztem a mérőrendszer teljes kapcsolását. Azokat részegységekre bontva ledokumentáltam és működésüket, szerepüket egyesével ismertettem és elmagyaráztam. Ezek során kitértem a mérőrendszerben végzett analóg-digitális átalakítására, valamint az részegségek és a felhasználó közötti adatátviteli és kommunikációs formákra.

Megterveztem a szenzorrendszer nyomtatott áramköri tervét és azt el is készítem. Az alkatrészek beültetését követően összeállítottam a mérőrendszert. A mikrovezérlő programjának kiegészítését követően a rendszert élesztettem és megvizsgáltam, hogy megfelelően működik-e.

A szakdolgozatom során mélyebb betekintést nyertem egy szenzorrendszer elkészítésébe, bővítettem az elektronikai ismereteimet. Mérnökinformatikus hallgatóként részt vettem egy hardver és annak firmwarének a megtervezésében és elkészítésében, valamint annak ledokumentálásban. Mindezek során rengeteg tapasztalatot szereztem a mikrovezérlők és a hozzájuk kapcsolódó szenzorok, eszközök működéséről.

Köszönetnyilvánítás

Szeretnék köszönetet mondani a szakdolgozat elkészítése során nyújtott szakami segítségért a konzulensemnek Dr. Godó Zoltánnak.

Továbbá köszönöm a barátnőmnek, családomnak és barátaimnak a támogatást.

Irodalomjegyzék

https://www.tankonyvtar.hu/hu/tartalom/tamop425/2011_0001_524_Sebeszet/ch03s07.html

http://www.senornegro.gportal.hu/gindex.php?pg=22316706&nid=4852578

https://e-a.hu/?module=KnowledgebasePost&ID=67

https://ipit.hu/?module=KnowledgebasePost&ID=68

https://www.nxp.com/docs/en/data-sheet/MPX12.pdf

A 16×2 LCD kijelző

https://www.hobbielektronika.hu/cikkek/az_intelligens_lcd_modulok_hasznalata_-_i_resz.html?pg=2

https://www.parallax.com/sites/default/files/downloads/27218-Web-BASICStampManual-v2.2.pdf

https://www.sparkfun.com/datasheets/Components/LM7805.pdf

https://datasheets.maximintegrated.com/en/ds/MAX6225-MAX6250.pdf

http://www.ti.com/lit/ds/symlink/cd4051b.pdf

http://www.ti.com/lit/ds/symlink/lm158-n.pdf

Adel S. Sedra, Kenneth C. Smith, Microelectronic Circuits Oxford, NewYork: Oxford University Press 2004 (79 oldal)

Borbély Gábor, Elektronika II., 2006(71-72 oldal)

Kovács Csongor, Elektronika. Budapest: General Press Kiadó, 2009 (203-205 oldal)

Kovács Csongor, Digitális Elektronika. Budapest: General Press Kiadó, 2004. (165-175 oldal)

Ámonné Jávorszki Márta, Dr. Kármán Péter, Mohos Pál, Zsom Gyula, Digitális elektronika II. (226-240 oldal)

https://www.hobbielektronika.hu/cikkek/kommunikacio_alapjai_-_soros_adatatvitel.html?pg

http://megtestesules.info/hobbielektronika/mbed/serial.html#mozTocId103805

https://www.parallax.com/go/PBASICHelp/

Melléklet

Similar Posts