Navigációs eszköz

Navigációs eszköz készítése GPS és IMU használatával

A 2025-ös Kristálytiszta Elektronika 2 tananyagát feldolgozó nyári táborhoz készítettünk egy GPS és IMU (Inertial Measurement Unit) egységet tartalmazó egyedi áramkört, hogy a táborba látogató, a programozáshoz haladóbb szinten értő diákoknak egyedi feladatot tudjunk adni. A panelen található GPS modul a helyzetmeghatározásra szolgáló műholdak adatainak feldolgozásával képes meghatározni az aktuális földrajzi pozíciót, míg az IMU, azaz inercia-szenzor belső MEMS modulok segítségével állapítja meg a szögsebességét, gyorsulását és képes érzékelni az őt körülvevő mágneses teret. AZ IMU-ban található magnetométer segítségével kiszámolható, hogy merre van az északi irány. A táborban résztvevő diákok feladata, hogy a KE2-ben tanultakat és az áramkör adottságait felhasználva önállóan, de szakmai támogatás mellett minél használhatóbb okos navigációs eszközt hozzanak létre. A főbb feladatok rövid leírása:

1. Feladat – északi iránytól való eltérés kiírása

Az ICM-20948 magnetométer adatainak kiolvasása, az észak-déli iránytól való eltérés kiíratása a kijelzőre, fokban, iránytű rajzolása a kijelzőre. Az adatokat I2C-n lehet kiolvasni a magnetométerből, kiolvasás előtt az IC-t megfelelően inicializálni kell. Ehhez segítséget nyújtanak a KE2 I2C-t ismertető fejezetei és a szenzor adatlapja.

2. Feladat – hely meghatározása a GPS-modullal

A CAM-M8 U-blox GPS-vevővel, UART-on történő kommunikáció megvalósítása, fogadott szélességi és hosszúsági koordináták kiíratása a kijelzőre. Ehhez segítséget nyújt a KE2 UART-os fejezete és a modul adatlapja, leírása.

3. Feladat – Távolság és irány meghatározása egy előre programozott ponttól

A mikrovezérlő szoftverében eltároljuk az úticélunk koordinátáit (hard-coded), és az előző feladatok során kiolvasott adatok alapján kiszámoljuk és kiíratjuk a kijelzőre, hogy aktuálisan hány méterre vagyunk a céltől, illetve, hogy az aktuális irányunk hány fokkal tér el a cél irányától.

 

A projekthez tartozó fájlok, tervezési dokumentumok, alkatrész lista, programozási segédlet, valamint egy példa megvalósítás forráskódja itt érhető el:

Projektfájlok letöltése

 

Az alábbi képen látható egy példa összeállítás, ami egy Nucleo-ból, 5 nyomógombból, 1 kijelzőből és a GPS-IMU panelből áll. A nyomógombok és a kijelző ugyanúgy vannak bekötve, mint a tananyag példáiban, azzal a különbséggel, hogy a breadboardra nem kell I2C felhúzó ellenállásokat helyezni, mert ezt már tartalmazza GPS-IMU panel. A GPS-IMU panel bekötése a következő:

  • 5V: tápfeszültség, a Nucleo 5 voltos tápfeszültségét kell ide kötni
  • SCL, SDA: a kijelzőnél is használt I2C vonalakat kell ide kötni
  • TXD, RXD: A GPS modul UART TX és RX vonalai, ezeket a mikrovezérlő egy szabad UART perifériájának (mi az UART6-ot használtuk) RX és TX vonalaival kell összekötni (egyik eszköz RX-ét a másik TX-ével kell összekötni)
  • GND: közös földpont

2025 summer camp board example