Mikrokontroller emulátor rendszerek kutatása

A kutatás célja különböző mikrokontroller emulátor keretrendszerek keresése, megismerése, illetve összehasonlítása alacsony szintű szoftver komponensek tesztelésének céljából. A keresés során több különböző szempontot is figyelembe kell venni. Ilyenek például az ár, az, hogy nyílt forráskódú-e az adott alkalmazás, hogy milyen operációs rendszerekre elérhető, lehetséges-e Docker container-ből futtatni, illetve, hogy elérhető-e a széles körben használt, népszerű mikrokontroller gyártók eszközeire. Ezen kívül meg kell vizsgálni, hogy kereskedelmi célokra milyen feltételek mellett lehet felhasználni őket. Az első ilyen emulátor, a QEMU. Ez egy ingyenes, nyílt forráskódú alkalmazás ,amely széleskörben elterjedt. Egyaránt létezik Linux és Windows verziója is, illetve elérhető Docker-en keresztül is. Ezen kívül ingyenesen használható kereskedelmi célokra is. A probléma viszont az vele, hogy sokkal inkább virtualizációra, illetve összetettebb, operációs rendszert futtató eszközök emulációjára való, és csak a Cortex-A, illetve Cortex-M3 és M4 processzorok érhetők el rajta, ellenben belső perifériákat tartalmazó mikrokontrollerek nem. A Tina már egy fizetős, illetve nem nyílt forráskódú eszköz. A használatába komolyabb belátást a szoftver megvásárlása nélkül nem lehet nyerni, mivel nem ingyenes. Viszont támogat ARM mikrokontroller emulációt, illetve real-time mérések is végezhetők vele. Ami viszont hátulütője, hogy csak Windows operációs rendszeren érhető el. A uTasker használatához szintén licensz vásárlása szükséges. Nem nyílt a forráskódja, viszont elérhető Windows és Linux operációs rendszerre is. Támogatja a gyakran használt mikrokontroller családok emulációját, illetve elérhető Docker container-ből is. Rendelkezik grafikus felhasználói interface-el is, illetve real-time figyelhetők az egyes regiszterek értékei is, így megkönnyítve a debug-olást. Nagyon jó alternatíva, illetve rengetegen használják is. A Renode egy ingyenes, nyílt forráskódú, mikrokontrollerek, illetve mikrokontrollerekből álló rendszerek emulálására készített szoftver. Mivel direkt erre a célra készült nagyon jól beilleszthető szoftver tesztelési infrastruktúrákba, illetve mivel minden operációs rendszerre elérhető, és futtatható docker container-ből, így az egyik legjobb alternatíva.

Csata Dániel

2022-08-31

Támogató: B.Braun Medical Kft.