Autonóm drón fejlesztése a PMMIK Műszaki Informatika Tanszékén



A Pécsi Tudományegyetem Pollack Mihály Műszaki és Informatikai Karának Műszaki Informatika Tanszéke 2012 vége óta részt vesz az egyetem TÁMOP 4.2.2.C Jól-lét az információs társadalomban pályázatában. A tanszéki kutatócsoport Smart Buildings alcsoport néven az intelligens környezet, intelligens épületek témakörhöz köthető kutatási munkát végeznek.

A kutatási téma szorosan kapcsolódik a tanszék oktatási – kutatási profiljához. A tanszék munkatársai automatizálási, irányítástechnikai kérdésekkel, mérésadatgyűjtő rendszerekkel, szenzortechnikával, adatfeldolgozással foglalkoznak. Ez a mérésadatgyűjtő rendszerek tervezését, kivitelezését, programozását, adatfeldolgozást is takar. A kutatócsoport tagjai különböző területeken, de mind foglalkoznak képi adatok mérésével, feldolgozásával, így a kutatócsoport egy közös tématerülete a képfeldolgozás. Ez a tény megadta a fő irányt az új pályázati munkához.
A kiindulási pont a Smart Building témakörben olyan eszköz létrehozása volt, amivel egyszerűen lehet nem modern épületeket is diagnosztizálni, méréseket végezni. Itt több lehetőség szóba jött.
Az első verzió pókrobot lett volna. Ezek a szerkezetek a mennyezetre kifeszített huzalokon tudnak síkban mozogni (pl. a négy sarokba telepített csörlő segítségével szinte az egész plafon felületét bejárva). A pozícionálás érdekes, a teherbírás még épp megfelelő lehet. A gond a nehézkes telepítés, illetve a használt síkba eső egyéb objektumok, pl. lámpák, mennyezeti táblák erősen korlátozzák a mozgásteret. Egy ilyen drótköteles szerkezetet nem minden esetben lehet telepíteni az épületben, még ha külön keretekre is tervezzük, hogy az épületet érintetlen maradhasson.
Egy további ötlet valamilyen önjáró, kerekes vagy lánctalpas kis robot volt. Ez a padlósíkban már képes a mozgásra, mindenféle rögzítés és drótkötelek nélkül, de a lépcsőkkel nehezen birkózna meg, illetve kerülgetni kell, útban van.
Ekkor merült fel valamilyen repülő szerkezet használatának az ötlete. Elsőre ezek túl drágának ígérkeztek. Kis méretű helikopterek már rég óta léteznek, de ezeknek az irányítása nagy gyakorlatot igényel. A beltéri manőverek miatt a merevszárnyú repülők kiesnek. Léteznek azonban a helikopterekhez hasonló szerkezetek, amelyek több vízszintes síkban forgó rotor tart a levegőben. Ezeket multikoptereknek hívják, illetve szokás még ezeket drónnak hívni.

Ábra 1  -   Kvadkopter - http://wyvernupenn.blogspot.hu/2010/04/mechanical-design.html

A drónokkal manapság egyre többen foglalkoznak. De miért csak most ütötték fel a fejüket. A választ a megfelelően nagy teljesítményű, kis méretű és olcsó elektronikák adják meg. A multikopterek rotorvezérlése egy állandó, dinamikus, összehangolt munkát jelent, amit manuálisan szinte lehetetlen megoldani.
Azt, hogy hogyan működik egy ilyen drón, egy négyrotoros kvadkopteren (quadcopter) tekintjük át.  A kvadkopter négy rotorja többnyire egy síkban helyezkedik el. Az alapkiépítésű rendszerekben a rotorok tengelyei rögzítettek, nem mozgathatók. A drón mozgását az egyes rotorok fordulatszámának változtatásával érjük el. Ezt manuálisan négy csúszka segítségével tehetnénk meg, de az egyensúly megőrzése érdekében a csúszkákat folyamatosan állítanunk kellene egymáshoz, illetve nagyon gyorsan kellene lereagálni a környezeti behatásokat (széllökés, elkerülő manőverek). Ez helyett kényelmesebb lenne a kvadkoptert a megszokott módon irányítani, azaz a szokásos előre-hátra-jobbra-balra irányok megadásával. Ehhez jönne még a fel-le irányok figyelembevétele is. Ez a fent említett gyors elektronikák segítségével megoldható, ill. megoldott. A távirányító nem direktben vezérli a fordulatszámokat, egy köztes szoftveres réteg konvertálja át a hagyományos értelemben vett utasításokat motorfordulatokká. Ez lehetővé teszi, hogy ezeket a szerkezeteket irányítani tudjuk.
A lehetséges manővereket és megoldásukat a következő ábrák szemléltetik.

A „direction” jelöli a drón elejét, a többi manőver pedig ehhez képest történik. A négy alapmanőver:
Pitch (billenés, fel, ill. le)
Roll (oldal-billenés jobbra ill. balra)
Yaw (elfordulás)
Height (magasság állítás)
A pitch és roll manővereket két-két szomszédos rotor fordulatának változtatásával érhetjük el. Ezekben az esetekben a drón megdől valamelyik irányban. Ebben az irányban a rögzített tengelyű rotorok húzóerejének lesz oldalirányú komponense, azaz a drón elindul az adott irányban.
A yaw manővert a rotorok keresztben páros fordulatállításával érhetjük el. A stabilitás miatt a drón rotorjai keresztben párban, más irányban forognak (lásd vörös-zöld ábra, kék-sárga nyilakkal). Ha változtatjuk a keresztpárok egymáshoz képest vett fordulatszámát, a forgatónyomaték hatására a drón valamelyik irányban elfordul a saját függőleges tengelye körül. Ezt lebegve, egy helyben tudja megtenni, míg az előző manőverek velejárója (célja) az elmozdulás.
A rotorfordulatok együttes változtatásával a függőleges irányban tudjuk a drónt mozgatni.
A fenti manővereket együttesen is használhatjuk, így a drón komplex mozgásra képes (pl. kőrözni tud adott objektum felett úgy, hogy folyamatosan azt nézi).
Egy gyakorlott pilóta a fentiekkel már szinte mindent meg tud oldani, azonban maradnak olyan manőverek, amikre maga a drón képes, de manuálisan nehéz, illetve lehetetlen véghezvinni őket.
Ilyen pl. a flip a levegőben való bukfenc, amit programozottan, a rotorfordulatok villámgyors állításainak sorozatával lehet megvalósítani.
Mivel a manuális irányítás azt feltételezi, hogy behatás nélkül a drón nem mozdul el, erre a köztes vezérlőszoftvernek ténylegesen törekedni kell. Ezt szenzorok segítségével valósítják meg a drónok, így a stabilizáló korrekciós mozgást az irányítás mellett kell elvégezni.
A drón kiválasztásánál több szempontot is figyelembe vettünk. Egyrészt szerettünk volna épületeken belül mozogni a drónnal. Ehhez túl nagy méretű drónt nem választhattunk. Másrészt azonban szerettünk volna a drónnal kisebb szenzorokat, műszereket vinni, így képesnek kellett lennie valamennyi plusz súlyt is szállítani. Nem volt utolsó szempont az ár sem, illetve az is érdekes volt, hogy a drónt milyen módon érjük el. A cél ugyanis az volt, hogy saját vezérlő szoftvert írhassunk hozzá.
A fentieket figyelembe véve a választás a francia Parrot cég AR.Drone 2.0 gépére esett. A gép ára 100e. Ft alatti, 40 dkg többletsúlyt tud vinni, élő, HD-Ready videó stream-et közvetít, valamint létezett hozzá gyári SDK is ().




Az AR.Drone irányítása WiFi protokollon történik, a csomag távirányítót nem is tartalmaz, de a gyártó ingyenes szoftvert ad androidos és Apple verziókban. A távirányítást egy tablettel vagy nagyobb kijelzővel rendelkező okostelefonnal kényelmesen végezhetjük.
A vásárlást követően hamar kiderült, hogy a gyári SDK lehetőségei korlátozottak, de a lehetőségek meg vannak a fejlesztésre. Tanszékünkön több lelkes hallgató segítségével saját keretrendszer készült, aminek a segítségével a drónt teljes körűen elérhetjük C# vagy C++ környezetből (Khín Tamás, Müller Péter, Dr. Sári Zoltán, Dr. Schiffer Ádám). Ez lehetőséget ad arra, hogy a kapott videó stream-et OpenCV vagy egyéb könyvtárak segítségével effektíven dolgozzuk fel.
A projekt elején az is kiderült, hogy szükség lesz a drón kültéri alkalmazására is, ahol lehetőség van GPS adatok feldolgozására is. Ez nagy segítséget jelent a beltéri navigációhoz képest. A kültéri és beltéri részprojektek épp ezért más-más célokat tűztek ki, melyek, vélhetőleg majd újra összeérnek.
A kültéri projektben a legtöbb igény területek, épületek felmérésével, fotózásával kapcsolatban merültek fel. Itt az egyik testvérprojektünkben pl. parlagfű detektálásban használjuk a drónokat (Müller Péter, Dr. Schiffer Ádám, Dr. Sári Zoltán, Dr. Ercsey Zsolt).
A beltéri autonóm navigációban csak a képi adatokat felhasználva akarunk haladni, bár itt is felmerült pár extra szenzor felhasználása is. A képi adatok feldolgozására manapság már jól használható algoritmusok vannak (SIFT, SURF), melyeket jól paraméterezve az adott feladatra szabva megvalósítható a beltéri 2D-s képekből való térbeli pozíció meghatározása.
A kutatás jelenlegi fázisában a működő keretrendszert felhasználva, szabályozási algoritmusok felhasználásával objektumkövetés valósul meg (Jancskárné Dr. Anweiler Ildikó, Dr. Sári Zoltán, Dr. Schiffer Ádám). A speciális célobjektumot a drón keresi és ha megtalálja, próbálja nem elveszíteni, valamint követni. A drón így már bizonyos feladatokra már most használható (pl. automata kamera, ami a célt veszi, bármerre is megy az).
A projektben közben felmerültek részprojekt lehetőségek is, pl. a drón szemmozgással történő irányítása (Müller Péter, Dr. Schiffer Ádám), a drón telemetriai adatainak valós idejű elemzése és felhasználása (Schäffer Zsolt, Dr. Várady Géza).
A drón jól alkalmazható a fenti területeken, illetve remek oktatási eszköz is. A szabályozástechnikai, képfeldolgozási, programozási, vezérlési feladatok mind remekül felhasználhatók az oktatásban, erős motivációt adva hallgatóinknak.
A drón projektben résztvevő diákjaink, akik valamilyen formában segítették a munkánkat:
Müller Péter, Schäffer Zsolt, Khín Tamás, Buru Zoltán László, Szalai Péter
A projektben részt vevő oktatóink: Jancskárné, Dr. Anweiler Ildikó, Dr. Schiffer Ádám, Dr. Sári Zoltán, Dr. Ercsey Zsolt, Gyurák Gábor, Dr. Várady Géza

A projektet a TÁMOP-4.2.2.C-11/1/KONV-2012-0005 számú "Jól-lét az információs társadalomban" című pályázat támogatta.




A SyncEQ és a VST-k I.


A VST, azaz Virtual Studio Technology a Steinberg Media Technologies GmbH 1996-ban fejlesztett eszköze, amely lehetővé teszi a virtuális hangszerek (VSTi) és virtuális effektek (VSTfx) létrehozását. Még a VSTi-k a különböző hangszerek élethűségre törekvő, esetleg minél szélesebb körben lehetőségeket biztosító szintetizátorok és samplerek tárháza, a VSTfx-ek az elektro-akusztikai gyakorlatban használt effektek (modulációs, pszicho-akusztikai, dinamikai stb. effektek) működését utánozzák. A VST-k jellemzően DAW, azaz Digital Audio Workstation-ök beépülőmoduljai. Eleinte a Steinberg DAW softwareiben voltka használatosak, azonban növekvő számuk miatt más forgalmazók software-i is támogatni kezdték, hála a Steinberg által kiadott dokumentációknak.


Az elektro-akusztikai szinkronizált kiegyenlítő felhasználási lehetőségei


A kiegyenlítők általánosan a jelfolyamok bizonyos torzulásainak javítására használt eszközök. A jelfolyam amikor egy mérőeszközben létrejön és továbbítódik, minden eszközön amin áthalad, az adott pont átviteli karakterisztikája szerint módosul. A kiegyenlítő a jelfolyam spektrumát hivatott módosítani, a mért folyamat eredetijéhez közelítővé alakítani. Természetesen, kifejezetten a zenei-produceri gyakorlatban ettől eltérő célra is használható a kiegyenlítő.


Tizen OS rendszer


A Tizen egy nyílt forráskódú Linux alapú operációs rendszer, mely számos eszközre nyújt fejlesztési lehetőséget.