Vida Imre

Elérhetőségek:

English version

© 2018-2021 Vida Imre

2019-2021

Önvezető autó és AR diagnosztikai rendszer

A kutatási projekt célja: Önvezető jármű építése és saját menetstabilizáló rendszer kifejlesztése, mellyel a jármű szélsőséges körülmények között is megbízhatóan és biztonságosan képes közlekedni, valamint az autóhoz kiterjesztett valóság alapú diagnosztikai szoftver fejlesztése.

Támogatók:

Modell&Hobby kft

Résztvevők:

  • Vida Imre
    • Hardware tervezése és 3d nyomtatása
    • Vezérlő áramkörök és rendszerek tervezése
    • A központi vezérlőegység programozása
  • Szakál Abosa
    • AR alkalmazások fejlesztése
    • A jármű és az okostelefon közötti kommunikáció megvalósítása

Minden jog fenntartva! All rights reserved!
Figyelem! Ez egy jelenleg is folyamatban lévő projekt, bizonyos részei nem, vagy csak cenzúrázott formában kerülnek nyilvánosságra, illetve előfordulhat, hogy az elért eredmények és az új fejlesztések csak később kerülnek publikálásra. A kutatási eredmények felhasználása csak a szerzőkkel való írásban történt egyeztetés után engedélyezett, az adott részeredményért felelős szerző(k) írásbeli engedélyével.

Összefoglalás:

A projekt célja egy olyan, sofőr nélküli jármű létrehozása, mely önálóan képes tájékozódni és megtalálni a céljához vezető legbiztonságosabb útvonalat. A biztonságos út nem csak az akadályok és ütközések elkerülését jelenti, hanem egy olyan menetstabilizáló rendszert is, mely valós időben képes érzékelni a rendellenességeket (pl egy kerék megcsúszása) és beavatkozni a jármű irányításába, ezzel elkerülve az érzékelt rendellenesség következményeit, például az autó megcsúszását, elemelkedését a talajtól vagy esetleg felborulását, megpördülését.

Hardver:

Az autón lévő szenzorok és a vezérlő elektronika rögzítésére szolgáló elemek 3D nyomtatással készültek el, és a tervezés során szimulációkkal tesztelve lett, hogy az adott alkatrész teherbírása és merevsége megfelel-e az elvártaknak.

stress analysis report stress analysis report

A rendszer blokkvázlatából is látszik egy ilyen feladat komplexitása, és a központi panel szerepe, aminek a végleges verzióban redundánsnak (hibatűrőnek) kell lennie, hiszen a cél egy olyan rendszer fejlesztése ami valós helyzetekben és közúton közlekedő járművek esetén is megállná a helyét.

block diagram

Szoftver:

A Raspberry Pi jelenleg egy Python nyelven írt programot futtat, ami a képfeldolgozásért és az adatok továbbításáért felel. A szenzoroktól érkező adatok fogadását és előzetes feldolgozását különálló vezérlőegység végzi. Ennek több oka is van: A raspberry Pi egy kisméretű számítógép, melyen Linux alapú operációs rendszer fut. A rendszeres biztonsági frissítések ellenére egy teljes értékű számítógépnek lehetnek szoftveres sérülékenységei, melyeket kihasználva távolról bárki átvehetné az autó irányítását. Azért, hogy ez semmilyen körülmények között ne történhessen meg, a legkritikusabb feladatokat egy olyan rendszer végzi, amin csak a saját feladatának végrehajtását lehetővé tévő szoftver fut, így elkerülve a figyelmetlenségből létrehozott/nem kezelt biztonsági réseket. Ezen kívül a terheléselosztás is fontos szempont volt amikor meghatároztuk, hogy melyik vezérlőegység milyen feladatokat lásson el.

A rendszer további vezérlő egységei C/C++ nyelven írt vezérlőprogramot futtatnak.

Az első fejlesztési szakaszban a cél egy vonalkövető algoritmus megírása, melyben a vonalat a kamerák ismerik fel, és ez alapján egy PID szabályzó számolja ki a kerekek optimális szögét. A kormányzó algoritmus tesztelésére és finomhangolására készült egy C# nyelven írt szimulációs program, melynek segítségével a PID szorzók tesztelése, finomhangolása is sokkal egyszerűbbé vált.

block diagram

A járműhöz készülő kiterjesztett valóság alapú diagnosztikai szoftver valós körülmények között segítheti a tulajdonosokat és a szerelőket, hogy minél hatékonyabban fel tudják mérni egy jármű állapotát. Ez a szoftver nem csak azt tudja jelezni ha valami hiba történik, vagy egy kritikus alkatrész elkopott, hanem segítségével folyamatosan lekérdezhetjük az elhasználódás mértékét is.

Ehhez már elkezdődött a megfelelő adatátviteli protokoll keresése. Jelenleg a szenzor adatokat UDP socket-en keresztül küldjük a diagnosztikára szolgáló telefonnak.

Az alkalmazás jelenleg a jármű által megtett távolságot képes megjeleníteni kiterjesztett valóság segítségével a fenti videóban látható módon. A kiterjesztett valóság EasyAR SDK segítségével készült, de még folyamatban van a marker optimalizálása, illetve esetleges alternatív követési módok kipróbálása. Következő lépésként a terepjáró további paramétereit (sebesség, gyorsulás, irány, ...) is szeretnénk megjeleníteni áttekinthető, könnyen értelmezhető módon. Az elmozdulást egy speciálisan erre a célra tervezett, kerékbe épített, optikai elven működő inkrementális szenzor érzékeli a hátsó keréknél.

assembly01 incremental_sensor

A másik videóban a képfeldolgozáson alapuló vonalkövetés első tesztje látható, mely még jelentős módosítások előtt áll. Ezzel párhuzamosan folyamatban van a jármű által látott kép VR headset-ben történő megjelenítése és a távoli vezetés lehetővé tétele.

Implementált funkciók:

  • Dinamikus sebességtartás: A jármű egyenletes sebességét a beépített szenzorok, terhelés és terepviszonyok alapján a vezérlő elektronika biztosítja. (További fejlesztést igényel)
  • Útvonaltervezés és navigáció: Az első verzió célja a jármű 'A' pontból 'B' pontba juttatása, figyelembe véve a jármű kanyarodási képességeit és egyéb fizikai adottságait.
    A 2 lépéses pályakorrekciót tartalmazó útvonaltervező algoritmus szimulációját az alábbi videó tartalmazza.
  • Objektum felismerés: A jármű az elejére rögzített 640*480p felbontású kamera segítségével képes felismerni az előtte lévő objektumokat, melyekhez igazodva a beépített szabályrendszer szerint döntéseket hoz.
    object-recognition
  • Fényszórók és irányjelző: A jármű elején és hátulján a közúti járművekhez hasonlóan fényszórók kaptak helyet, melyek lehetővé teszik a gyengébb fényviszonyok közötti tájékozódást a jármű számára, illetve a külső megfigyelő számára is egyértelmű jelzéseket szolgáltatnak a jármű döntéseiről és irányváltoztatásairól.
    car-on-the-road
  • GPS alapú járműkövetés: Az autó aktuális GPS koordinátáit valós időben távolról is elérhetjük és a megfelelő szoftverekkel térképen is ábrázolhatjuk a megtett utat.
    gpsmap

További részletek hamarosan.

Pályázatok és versenyek:

  • Budapesti Műszaki és Gazdaságtudományi Egyetem Kütyüpályázatának online kiállításán bemutatva.
  • További részletek hamarosan