Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék
BCI eszköz illesztése CAN buszra
BSc Önálló laboratórium zárójegyzőkönyv 2011/12. II. félév
Lipcsei Máté (ET57HZ) III. évf., villamosmérnök szakos hallgató Beágyazott és irányító rendszerek szakirány, Beágyazott információs rendszerek ágazat
Konzulens: Mészáros Tamás (Méréstechnika és Információs Rendszerek Tanszék)
Feladatkiírás A tanszék Bosch Beágyazott Rendszerek Laboratóriumában rendelkezésre áll egy "virtuális autó" számos fizikai elemmel (kijelző, váltóvezérlő, stb.) kiegészítve. A félév folyamán a hallgatónak meg kell ismerkednie a laborelrendezés pontos működésével, a CAN busszal, ami kommunikációs csatornaként szolgál a labor fizikai elemei között, valamint egy úgynevezett agy-számítógép interfésszel (BCI: brain-computer interface) és ezek adta lehetőségekkel. Az önállólabor feladat célkitűzése ennek a rendszernek a kibővítése egy ún. agy-számítógép interfésszel (BCI: brain-computer interface), amely lehetővé teheti azt, hogy a virtuális autónak, illetve a fizikai kiegészítőinek CAN buszon keresztül "gondolati úton" adjunk parancsokat.
.................................... Mészáros Tamás
I
Tartalomjegyzék Bevezetés .................................................................................................................................... 1 Előzmények ................................................................................................................................ 2 A feladat kapcsán megismert technológiák ................................................................................ 3 A CAN (Controller Area Network) protokoll ........................................................................ 3 A CAN Busz kialakulása.................................................................................................... 3 A CAN Busz működésének rövid áttekintése .................................................................... 3 A buszműködés modellezése számítógéppel ..................................................................... 4 Bosch Beágyazott Rendszerek Laboratóriuma ...................................................................... 5 Emotiv EPOC – Brain Computer Interface ................................................................................ 7 Az EEG mérés kezdetei.......................................................................................................... 7 Emotiv EPOC ......................................................................................................................... 8 A készülék .......................................................................................................................... 8 Az első indítás .................................................................................................................... 8 Beviteli dimenziók, avagy mit mér az eszköz .................................................................... 9 Kognitív lehetőségek .......................................................................................................... 9 Érzelmi állapotok ............................................................................................................. 10 Mimika ............................................................................................................................. 11 Összekapcsolási lehetőségek .................................................................................................... 11 API-k .................................................................................................................................... 11 A továbbfejlesztés lehetőségei, egyéb irányok ........................................................................ 13 Kiterjesztett lehetőségek autókban ....................................................................................... 13 Azonosítás ............................................................................................................................ 14 Biztonsági ellenőrzések ........................................................................................................ 14 Irodalomjegyzék ....................................................................................................................... 15 Mellékletek ............................................................................................................................... 15
II
Bevezetés A félév során a munkám három, jól elkülönülő részre bomlott. Az első jelentős lépés a félév végi cél elérésben az volt, hogy az autóipari oldalról kezdve térképezzem fel a technológiát. Ebben nagy segítségemre volt a Tanszéken működő Bosch Beágyazott Rendszerek Laboratóriuma, ahol a hallgatók testközelből vizsgálhatják azt, hogy az autó működése során pontosan milyen jellegű kommunikáció zajlik a jármű funkcionális egységei között. Ez a kommunikáció sok esetben digitális adatok továbbítását jelenti, amit a laborban megtalálható szoftverek és hardverek segítségével igen jól tudunk azonosítani, ezzel is megismerve az autóipart is egyre jobban átszövő digitális rendszerek működését és kölcsönhatását. A második állomás az információ beviteli eszközeként használatos BCI (Brain Computer Interface) eszköz megismerése volt. A tanszéken rendelkezésre áll az egyik legelterjedtebb, kereskedelmi forgalomban kapható EEG (elektroenkefalográfia) eszköz, az Emotiv gyártotta Emotiv EPOC. A félév folyamán megismerkedtem ennek beviteli dimenzióival illetve szoftveres lehetőségeivel. Igyekeztem körüljárni az eszköz lehetőségeit, hogy miként lehetne a leghatékonyabban használni a feladatmegoldás során és a későbbiekben. A félév végén pedig sor került arra, hogy a BCI eszköz és a CAN kommunikációt megvalósító hardver eszköz API-ját (Application Programming Interface) felhasználva kapcsolatot létesítettem a két eszköz között és sikeresen küldtem CAN üzeneteket. A tesztelés során nem közvetlenül a „laborautóra” csatlakozva dolgoztam, de megfelelő bekötés esetén és a szoftver megfelelő beállítása esetén (CAN ID, értékek… stb.) akár a laborban megtalálható szimulátort is lehetne vezetni ezzel az összeállítással.
1
Előzmények A feladatom visszaköszön a való életből is már egy megvalósított projekt kapcsán, ugyanis a berlini székhelyű Freie Universität Berlin mesterséges intelligencia csoportja foglalkozott ezzel a kérdéssel, hogy miként lehetne felhasználni az emberi gondolatokat arra, hogy a egy járművet (esetükben egy autót) irányíthassunk [1]. Az Autonomos labs nevű projektjük keretében átépítettek egy személyautót úgy, hogy az képes legyen autonóm módon bármiféle emberi beavatkozás nélkül közlekedni Berlin utcáin 2011 szeptemberében. Érdekes adalék lehet, hogy a Google hasonló kezdeményezése az Egyesült Államokban, 2012 május 1-én szerzett „jogosítványt” a közúti közlekedésre [2]. Az átépített autót egy alprojekt keretében ruházták fel azzal a képességgel, hogy az Emotiv EPOC eszközzel, mint beviteli eszközzel avatkozzanak bele abba, merre kanyarodik az autó. Az összeállítás egyébként igen bonyolult ugyanis az autó GPS-szel, lézerdetektorral és rengeteg egyéb szenzorral van felszerelve, amik a biztonságos közlekedését elősegítik. A neuroheadsettel feltehetőleg csak az elágazásokban történő iránykijelölést valósítják meg. Az autó sávtartását és egyéb mozgását a beépített számtalan más szenzor segíti. A projektről kevés, publikusan elérhető információt találtam, de fontos megjegyezni, hogy a weboldalukon is kiemelik, hogy a jelenlegi BCI vezérelt összeállítás jelenleg még nem alkalmas arra, hogy közúton használják a megoldást. Az megoldás, azonban mindenképpen érdekes irányokat nyit meg a jövő autonóm autói és az ember gép interakció előtt.
1. ábra: A BrainDrive megoldás Berlinben [1]
2
A feladat kapcsán megismert technológiák A CAN (Controller Area Network) protokoll A CAN Busz kialakulása A Controller Area Network nem más, mint egy hálózati protokoll, és adatbusz szabvány, melyet mikrokontrollerek és egyéb elektronikus eszközök kommunikációjára terveztek. A CAN születésének története az 1980-as évek elejére nyúlik vissza, ekkor vette ugyanis kezdetét a protokoll kifejlesztése a Rober Bosch GmbH–nál. A szabványt végül 1986-ban a Detroitban rendezett Society of Automotive Engineers nevű rendezvényen mutatták be. Az első kontrollerek gyártása rá egy évre, 1987-ben megjelentek a kereskedelmi forgalomban. [3] A CAN busz létrejöttének az oka abban keresendő, hogy hamar felismerték a fejlesztőmérnökök azt, hogy idővel a gépjárművekben akkora mennyiségű huzalozást és olyan bonyolult hálózatot kell létrehozzanak, amire csak egy jól meghatározott elv mentén lesznek képesek. Így tehát megfogalmazódott az a cél, hogy egy olcsó, és az elektronikai eszközök számára sokszor nagy megpróbáltatást jelentő viszonyok mellett is működő kommunikációs hálózatot hozzanak létre.
A CAN Busz működésének rövid áttekintése Ezen paraméterek mentén született meg a gépjárművekben máig is megtalálható, kétvezetékes, aszinkron adatkommunikációt megvalósító CAN busz. A 0-5V-os rendszer akár 1 Mbit/s adatátviteli sebességre is képes a vezeték hosszától függően.
2. ábra: A nagy sebességű és a lassabb szabványú CAN hálózat jelszintjei [4]
3
Az autós hálózat jellegét tekintve bele is ütközhetünk a problémába, hogy a hálózaton egyszerre több master is jelen lesz, illetve abba, hogy az egyetlen kommunikációs buszért bizonyosan versengés lesz majd a felcsatlakozott eszközök között. Emiatt a busznak kifinomult arbitrációs tulajdonságokkal kell rendelkeznie. A következő néhány, egyszerű elvvel sikerült megvalósítani azt, hogy az információ csomagok újraküldése nélkül az eszközök versengését kordában lehessen tartani. Egyik node sem kezd adást, ha valaki broadcastol. Ha mégis kis időn belül egyszerre kezd el adni két node, akkor, mivel visszaolvassák a busz tartalmát látják, hogy az ő bitsorozatuk jelent-e meg vagy sem. Ha nem akkor abbahagyják az adást. Ezt hívják CSMA/CA (Carrier Sense Multiple Access with Collision Avoidance) protokollnak, ami a 90’-es évek végén került bejegyzésre vezeték nélküli hálózatoknál [5]. A kommunikáció során a CAN négyféle adatkeretet küld a buszra. Ebből a legjellemzőbbek az adatkeret és a hibakeret. Előbbi különféle arbitráló, vezérlő, ellenőrző és nyugtázó mezők közé foglaltan tartalmazza a 0…8 Byte adatot, amit egy csomag tartalmazhat. A hibakeret egy merőben más felépítésű üzenet, így ezt a node-ok egyértelműen meg tudják határozni. A remote (lekérdező) és overload (túlterheltséget jelző) keretek ritkábbak. A túlterhelés keret csupán az adó oldalnak küldött üzenete a lassú működésű vevőtől. A távlekérdezés (remote) nem tartalmaz adatmezőket, csak kereteket az igényelt azonosítójú üzenet lekéréséhez.
3. ábra: Adatkeret felépítése a CAN hálózaton [6]
A buszműködés modellezése számítógéppel A CAN kommunikáció modellezéséhez a számítógépekbe úgynevezett CAN kártyákat, vagy USB-s eszközöket használnak. Többe között a Vector és a National Instruments is gyárt ilyen 4
hardver eszközöket. A Vector gyártotta CAN kártya valamivel szélesebb körűen alkalmazható, mivel több kezelő szoftver áll rendelkezésre a kártyához. Az egyik ilyen eszköz a CANalyzer, ami a buszrendszer univerzális elemzéséhez használható. A feladatom megoldása során egy USB-s eszközzel (NI USB-8473s) dolgoztam, amit a National Instruments gyárt.
4. ábra: A National Instruments USB-8473s eszköze [7]
Bosch Beágyazott Rendszerek Laboratóriuma A Tanszéken lévő Bosch laborban rendelkezésre áll szinte minden olyan funkcionális eszköz, ami egy autó lényegi részeinek szimuláláshoz és méréséhez szükséges, annak beágyazott rendszereinek szempontjából. A labor összeállítás két jól elkülöníthető részből áll. Az egyik a LIN méréshez, másik CAN méréshez tartozó hálózat. Feladatom során a CAN összeállítással foglalkoztam behatóbban. Ez a mérési elrendezés olyan beágyazott rendszereket tartalmaz, ami egy hétköznapi autóban is megtalálhatóak, illetve magát a gépjárművet szimuláló központi egységet, a „laborautót”.
5. ábra: Bosch labor a Tanszéken [8]
5
A „laborautót” a Bosch olyan célból fejlesztette ki, hogy a cég váltóvezérlő egységeit tesztelni tudják. Az eszközön rengeteg beállítási lehetőség van: kapcsolók, potenciométerek. A szimulált motor alapjáratától kedve a pillangószelep állásán keresztül egészen az olajnyomásig [4], minden beállítható. A laborban megtalálható váltóvezérlő egy valóságos autóban is ugyanilyen formában használatos egység. Ez a CAN buszon kapott üzeneteket (motor fordulatszám, gázpedál állás, motornyomaték) dolgozza fel és végzi a válót vezérlését. Az összeállítás része továbbá egy műszerfal, ami szintén szériában gyártott, valós autóba való egység. A megszokott fordulatszámmérőn és kilométerórán felül egyéb, drágább autókban megtalálható szenzor visszajelzője is helyet kapott benne. Az összeállítás többi egységéhez hasonlóan ez is CAN buszon kommunikál a rendszerrel. Nem hiányozhat az elrendezésből a minden autóban megtalálható kormány és gázpedál sem. Ezek a perifériák adják a laborautó számára a megfelelő gerjesztéseket. A Logitech gyártotta játékvezérlő egy erő visszacsatolás funkcióval is rendelkezik, így nem csupán bemeneti jeleket adhatunk a kormánynak, hanem vissza is jelez a vezető számára például, ha rázókőre megyünk. Végül de nem utolsó sorban a működő autó vizuálisan is megjelenik a felhasználó számára. Erről a GPL licensz alatt kiadott TORCS autó szimulátor gondoskodik. Készítettek egy CAN kiegészítőt a programhoz, amellyel lehetőség nyílt arra, hogy a laborautó által generált motor adatokat, a váltóvezérlő információit és vezetői rendszer parancsait a program megkapja és ezekkel működjön. A szoftver válaszként a fordulatszámot és a sebességet adja vissza.
6. ábra: A TORCS szimulátor működés közben
6
A feladatom során ehhez az összetett CAN hálózathoz kapcsolódok hozzá azért, hogy a neuroheadsettel, mint beviteli eszközzel tudjak parancsokat kiadni.
Emotiv EPOC – Brain Computer Interface Az EEG mérés kezdetei Már a XIX. század második felében jelentek meg publikációk arról, hogy az agy elektromos stimulálásával mozgásra késztettek állatokat. Később felfedezték, hogy az ilyen jellegű beavatkozás során az idegsejtek elektromos aktivitása megváltozik, amit galvanométerrel mérni tudtak. A XX. században, Hans Berger osztrák pszichiáter alkotta meg az EEG-t [9]. Ez emberi fejbőrre felhelyezett érzékelőkkel a pszichológiai – és fiziológiai állapotok kapcsolatát vizsgálta. Ezzel a módszerrel sikerült lokalizálni agyi rendellenességhez köthető betegségeket. Mára az EEG vizsgálatoknak több fajtája is elterjedt. Megkülönböztetnek invazív és noninvazív technikát. Míg előbbiben valamilyen operáció keretein belül kerül az érzékelő az agyba vagy a koponyára, addig utóbbi nem igények műtéti beavatkozást. Itt csak a fejbőrre helyezik a fém elektródákat.
7. ábra: EEG készülék elhelyezése [10]
A vizsgálatok során 31, 63 vagy 123 elektródával dolgoznak, de előfordulhat az is, hogy kétszáznál több csatornán zajlik a mérés. A vizsgálatok során mindig két elektróda közötti potenciálkülönbséget mérik. A referencia elektródát olyan helyre teszik, ami nem közvetít idegi aktivitást. [9]
7
Emotiv EPOC A készülék Az EPOC neuroheadset eszköz két részből áll, ugyanis a headset vezeték nélküli módon, ISM (industrial, scientific and medical) sávban 2,4GHz-es sávon [11] továbbítja a jeleit a számítógépnek, amihez egy erre kialakított vevőegység csatlakozik. A headset a képen is látható, 16 érzékelővel van felszerelve, amiből 2 referencia pontnak számít.
8. ábra: Az Emotiv EPOC neuroheadset [12]
Az EEG fenti leírásából is látszik, hogy az eszköz elektromos jeleket mér, így nem csak az idegsejtek keltette jeleket méri az eszköz, hanem a sokkal erőteljesebb, izommozgásokból származó elektromos jeleket is. A kognitív mérések esetében ezek zajnak tekintendők, amik megnehezítik az agyi jelek pontosabb mérését. Az eszköz 128 KHz-en, 16 bites felbontással mintavételezi az érzékelők jeleit. A neuroheadset rendelkezek ezen kívül egy beépített, két tengelyű giroszkóppal is, ami jócskán megnöveli a készülék beviteli lehetőségeit.
Az első indítás Megtapasztaltam az eszköznél, hogy a beindítás során érdemes feltölteni az eszközt, ugyanis alacsonyabb töltésnél sokkal pontatlanabb méréseket végez, illetve nagyon közel kell elhelyezkedni a vevő egységhez, ha nincs kellően feltöltött állapotban. Még egy fontos lépés a használatbavétel előtt, hogy az eszköz elektródáit, miután a headsetbe szereltük, érdemes alaposan átitatni kontaktlencse folyadékkal. Feltehetőleg azért ilyen 8
oldatra van szükség, mer összetételét tekintve olyan sókat tartalmazhat, amik segítik az elektromos jelek átjutását a fejbőrtől az eszköz nedves, szivacsos párnáin át az elektródákig.
Beviteli dimenziók, avagy mit mér az eszköz Miután használatra készen áll az eszköz, a használatot célszerű a Control Panel Premium nevű programmal kezdeni, amelyben lehetőségünk van a szoftvert tanítani, saját profilunkat testre szabni. A headsethez tartozó program három elkülönülő részből áll, amik mind arra szolgálnak, hogy a headsetből kikerülő, már elő feldolgozott jeleket tovább feldolgozza, majd összefüggéseiben ábrázolja. A bevitel tekintetében mindössze két forrásunk van (EEG és giroszkóp) de mégis, ha ezek jelét együttesen vizsgáljuk, mélyebb összefüggéseket vonhatunk le, ezt mutatja a következőkben bemutatott mintaprogram is.
Kognitív lehetőségek A Cognitiv Suite elsősorban mentális jelek feldolgozására ad lehetőséget. Ebben a programrészben gondoldati vezérlést taníthatunk a szoftvernek. A vezérlés eredményeként egy 3D-s kockát mozgathatunk a térben. Fizikailag nem történik más, mint az, hogy a headset által érzékelt mintákat a program egy tanulóalgoritmus révén igyekszik megtanulni. A tanulás végeztével a sok mintából álló adathalmazt pedig igyekszik a lehető legpontosabban az aktuálisan mért jelekre illeszteni. Ha sikerül az illesztés, akkor meglévő adathalmazhoz hozzárendelt akció (tolás balra, jobbra… stb.) fog megtörténni a 3D-s kockával. A tanítás során azt a taktikát választottam, hogy egymás után többször, ugyanazt a kognitív parancsot rögzítettem, majd 3-4 rögzítés után mindig egy neutrális állapotot is rögzítettem. Egy idő után sikerült ráérezzek arra, hogy mik voltak azok a rögzítések, ahol nem csak a meghatározott kognitív parancsra koncentráltam, ezeket a rögzítés végeztével sosem fogadtam el. Ez is hozzájárulhat ahhoz, hogy 3 parancsot szinte 99%-os biztonsággal sikerült megtanítanom a szoftvernek.
9
9. ábra: A kognitív szoftverrész
Összefoglalóan erről a funkcióról elmondhatom, hogy a headsethez adott szoftverrel sikerült igen pontos jel illesztést elérjek, a működés sebességét viszont igen lassúnak vélem. Gyakran fél – egy másodpercbe is telik, mire a program felismeri a kívánt agyi mintát, így ez megnehezíti az eszköz használatát időkritikus rendszerekben. Érdekes kérdés, hogy ez a feldolgozás lassúságából adódik vagy az eszköznek ez a határa. Lehet-e esetleg optimálisabb kóddal gyorsabb működést elérni? Sajnos labor témám keretin túl mutatnak ezekre a kérdésekre adandó válaszok.
Érzelmi állapotok Az Affective Suite szintén mentális mérésekből (EEG)
dolgozik
jó
részben.
Ebben
a
programrészben a szoftver igyekszik érzelmi állapotunkat feltérképezni agyi tevékenységünk alapján. Néhány teszt után azonban bátran mondhatom, hogy a giroszkóp adatait is jócskán 10. ábra: Az érzelmi szoftverrész
felhasználja a program. Igyekeztem relaxálni, majd a mikor elkezdtem bólogatni vagy a
fejemet rázni, az izgatottságot jelző szint (fekete) jelentősen megugrott. Mikor nem mozgattam a fejem, visszaállt alapállapotba. Érdekes volt továbbá az is, hogy mikor a szememet becsuktam relaxáció közben a frusztráció szint megugrott. Ezt annak tulajdonítottam, hogy mivel a szem becsukásakor az agy nagy mennyiségű információtól esik el a többi terület aktivitása megnő, pont mint akkor, mikor az embert megijesztik.
10
Mimika Az Expressive Suite főként a mimika érzékelését célozza meg. Tapasztalataim szerint ez talán a legpontatlanabb a funkciók közül. Sok próbálkozás után sem tudtam megbízhatóan használni. Ez a program elsősorban az EEG szenzorok által érzékelt erősebb (izommozgás által kiváltott) jeleket igyekszik értelmezni.
11. ábra: A mimikát figyelő szoftverrész
Összekapcsolási lehetőségek API-k A témám tárgyát képező eszközök és technológiák megismerését követen, a félév végén neki álltam annak, hogy ezt a két egymástól igen távol álló területet összekössem egymással. A feladatból adódott, hogy a BCI eszközt csak egy számítógép közbeiktatásával lehet a CAN buszra illeszteni, mivel tudtommal nem készült eddig olyan speciális hardver, ami képes lenne arra, hogy a rácsatlakoztatott ISM vevő jeleit feldolgozza, majd kiértékelés után egy adott CAN üzenetet továbbítson a másik, rácsatlakoztatott vezetéken. Hivatalosan mindkét eszköznek C/C++ nyelvhez való API-ja van, de ezek működésre bírása eleinte igen nehéz volt számomra. Mindkét eszköz SDK-ját elkezdtem tanulmányozni, de sajnálatos módon egyikhez sem voltak megadva egészében vett, működő mintakódok, amit valójában ki lehet próbálni. Rengeteg kódrészlet ugyan hozzáférhető volt, de a különböző függvénykönyvtárak, dll-ek miatt kezdetben nagy nehézséget okozott, mire egy minimálisan is működő programot sikerült összeállítanom. A kezdeti holtponton az lendített túl, mikor rátaláltam az EmotivSharp [13] projektre. Ennek keretében nyílt forráskóddal fejlesztenek alkalmazásokat C# nyelven a neuroheadsethez (idáig 11
ezt a nyelvet nem tanultam, csak a labormunkám keretein belül ismerkedtem vele). Ezek a kódok remek alapot nyújtottak ahhoz, hogy tanulmányozzam az eszközhöz való csatlakozás módját, illetve, hogy miként lehet kezelni a ControlPanelben már betanított profilokat. Ezen az úton eljutottam odáig, hogy készen állt a C# program arra, hogy kommunikációt megvalósítsa a headsettel, betöltse és használja a már létrehozott profilokat. Annyi hiányzott mindösszesen, hogy a CAN utasításokat kiadó függvényt meghívja a program. Mivel azonban semmilyen módot nem találtam arra, hogy az USB-s CAN eszközöm API-ját C#-ban is használhassam, és a félév vége is nagyon sürgetett, fel kellett adjam ezt az utat és azt, hogy natívan kapcsolódjak a szoftveremen keresztül a headsethez.
12. ábra: Az elkészült C# program
Az
alternatív
megoldásom
végül
az
lett,
hogy
felhasználtam
a
neuroheadset
szoftvercsomagjának egy elemét, az EmoKey nevű programot. Ez képes arra, hogy a már megtanított kognitív akciókat, mimikai változásokat billentyű lenyomásokhoz rendelje. Innen a munkám csak abból állt, hogy egy egyszerű konzolos alkalmazást készítsek, ami felhasználja a CAN eszköz függvényeit az adatcsomagok elküldéséhez. Sajnos működő mintakód ehhez a feladathoz sem állt rendelkezésre. Scherer Balázstól kaptam egy pár régi kódot, amit CAN eszközzel való kommunikációhoz használtak. Ennek segítségével sikerült megalkossam végül a saját megoldásomat.
12
13. ábra: A működő C++ program
A továbbfejlesztés lehetőségei, egyéb irányok Kiterjesztett lehetőségek autókban A gépjárművekben az eszköz használata olyan szempontból veszélyesnek tekinthető, hogy a teljes irányítási folyamat kezelése nagyon gyors reakció időket igényel. Nem foglalkoztam fele mélyrehatóan, de jelenleg úgy tűnik számomra, hogy az eszköz jelen állapotában nem képes arra, hogy ilyen gyorsaságú reakciókat tudjon kezelni. Az autó irányítása során azonban rengeteg olyan feladat van, ami kevéssé időkritikus. Ilyen lehet például a klíma, rádió, fedélzeti számítógép, ablakok, központi zár, kormány- és üléspozíció kezelése. Érdekes kihívás lenne egy az eszköz adottságainak megfelelő user interface kifejlesztése. Ebben az irányban érdekes kísérletek születtek az SSVEP technológia révén. Ez azzal foglalkozik, hogy az opciók vizuálisan jelennek meg. Hátterük folyamatosan, de különböző frekvencián villog. Az EEG-vel kimutatható, hogy az alany melyiket választotta, mivel agyhullámaiban megjelenik egy a választott opció frekvenciájával megegyező frekvenciájú komponens. Ezt a módszert felhasználva nagy segítséget jelenthet a sofőr számára esetleg az, ha kognitív módon tudná például a navigációt kezelni. Jelenleg viszonylag kis mennyiségű kommunikáció zajlik az autó fedélzeti számítógépe és a sofőr között. A jövőben elképzelhetőnek tartom, hogy ez egy sokkal intenzívebb párbeszéd 13
lesz ha sikerül módot találni arra, hogy a kommunikáció lefolytatása a sofőrnek ne vonja el a figyelmét jelentősen.
Azonosítás Az autó beindítása manapság számos típus esetében már nem kulccsal történik, hanem különböző kártyákkal. Sok esetben ezt a módszert egészítik ki különféle mágneses – relés megoldással, aminek a lényege az, hogy a sofőr egy meghatározott helyre elhelyezett mágnessel tud csak gyújtást adni az autónak. Jó fejlesztési irány lehet a témában az, ha a fedélzeten megjelenő 3D-s kocka kognitív eltolása lenne a gyújtás kapcsolás engedélyező jele. Nem foglalkoztam a témával, de valószínűnek tartom, hogy két ember kognitív toló akciója különbőz jelmintákból áll. Mivel azt már tapasztaltam, hogy az adott mintát meg lehet tanítani, így biztos, hogy a tulajdonos meg tudja ismételni az indításhoz szükséges jelet. Feltételezem, hogy egy illetéktelen személy erre nem lenne képes. Főleg akkor nem, ha a különféle érzelmi jeleket is vizsgáljuk. (Feltehetőleg nagyon magas izgatottság és frusztráció szintje lenne) Az azonosítás egy másik módja lehet például az is, ha egy képvetítés keltette hatásokat vizsgáljuk a szemlélőn. Főleg személyes jellegű képek esetén ez is biztos eltér egy második személyétől. További kutatást igényel, hogy vetítés hatása mennyire reprodukálható.
Biztonsági ellenőrzések Az autó indításakor egy EEG eszköz rögtön megvizsgálhatná a felhasználót, hogy vajon vezetésre képes állapotban van-e. Tesztelhetné a reakcióidejét, frusztráltságát és egyéb pszichés mérőszámait. Az EEG érzékelők menet közben folyamatosan vizsgálhatnák a sofőr mimikáját. Például azt, hogy nyitva van-e a szeme. Milyen sűrűn pislog. Ezekből is egyértelmű következtetéseket vonhatunk le a vezető fáradságáról, megelőzve ezzel számtalan elalvásos balesetet.
14
Irodalomjegyzék [1] „Autonomos labs,” 2009. http://autonomos.inf.fu-berlin.de/subprojects/braindriver.
[2] M. Slosson, „Google gets first self-driven car license in Nevada,” 8. május 2012. http://www.reuters.com/article/2012/05/08/uk-usa-nevada-google-idUSLNE84701320120508. [3] https://en.wikipedia.org/wiki/CAN_bus. [4] B. Scherer és C. dr. Tóth, Bosch - Beágyazott Rendszerek Laboratórium, 2008.
[5] A. E. Miquel Oliver, Study of different CSMA/CA IEEE 802.11-based, 1999. [6] G. dr. Tevesz, Mikrokontroller alapú rendszerek (elektronikus jegyzet), 2008.
[7] http://sine.ni.com/nips/cds/view/p/lang/en/nid/203385.
[8] http://www.mit.bme.hu/oktatas/szakiranyok/bsc/binfr.
[9] http://hu.wikipedia.org/wiki/Elektroenkefalogr%C3%A1fia.
[10] http://neurogadget.com/wp-content/uploads/2012/01/EEG_children.jpg.
[11] http://emotiv.com/upload/manual/sdk/Research%20Edition%20SDK.pdf.
[12] http://emotiv.com/developer/SDK/UserManual.pdf.
[13] http://sourceforge.net/projects/emotivsharp/.
Mellékletek A C# és a C++ projektek.
15