Quadkopter és a BetaFlight
Sok víz folyt le a Dunána, azóta, hogy szünetelem a modellezést, de a világ nem áll meg. Rengeted fejlődött a modellezők világa, különös tekintettel az elektronikára. Új protokollok, szabványok, és Open Source projektek. Az utóbbiak közül, talán a legnépszerűbb (természetesen OpenTX után :)) a BetaFlight. Mivel hatalmas tudást és ezáltal bonyolultságot a beállításokban hoz magával, készítek egy kis jegyzetet. Lehet másnak is hasznára lesz.
Hogy mi ez egyáltalán? Lényegében egy Cleanflight nevű multikopteres firmware fejlesztését szorgalmazó szabad-forrású projekt tesztága, mely mára önálló, de az eredetivel szoros kapcsolatban fejlődő projekté alakult. Valószínűleg a rengeteg újítás tette annyira vonzóvá, hogy 2017 januárjától #1-nek minősítette a Google Trends. Mivel bonyolult a szerkezet, így a beállítása sem lenne egyszerű Configurator nélkül. Ha meg valaki követni szeretné a fejlesztés minden szösszenetét, látogasson el a GitHub-ra. És hát milyen is lenne az, ha egy repülőgépnek nem lenne fekete doboza? A rögzített adatok elemzésében segít a BlackBox Viewer. És akinek ez sem el elég, más projektek is léteznek, melyek egyes s más aspektusait részesítik előnyben a BF-képes, de ugyanazon vasra telepíthetőek. Ilyen az eredeti CleanFlight és a INAV.
Szamos vezérlő gyártó szintén beszállt a versenybe, és jobbnál jobb eszközöket készítenek, eltérő konfigurációban, hogy élvezni tudjuk a technológia adta lehetőségeket.
Az én vasam egy MatekSys F4. vezérlő integrált barometrikus érzékelővel. Első lépésként letöltjük a BetaFlight Configurator utolsó verzióját (az én esetemben ez v10.4), telepítjük, rádugjuk az mikroUSB csatlakozóra a vezérlőt. Ha a vezérlő már be van építve, első dolgunk legyen a légcsavarok eltávolítása!
Első nehézségek már a Configurator telepítése után előjöhetnek, és sajnos, a leggyakrabban használt OS-nél, mert csak a Windows érintett a hibában, ugyanis az nem megfelelő meghajtó szoftvert tartalmazz az STM virtuális soros portjához. De sebaj, mert a szoftver első oldala minden olyan hivatkozást tartalmaz, melyek elirányítanak bennünket a megfelelő oldalakra (STM VCP driver, CP210x driver). Még mielőtt tovább megyünk a konfigurációhoz, szükségünk lesz meg egy kis probléma megoldására, ugyanis amikor frissíteni szeretnénk a Firmware-t megint meghajtószoftver problémába ütközünk. Ehhez kapcsoljuk BootLoader üzemmódba (BL). Ezt vagy gombnyomással (benyomott gomb mellett dugjuk rá az USB-re), vagy BL vagy DFU paranccsal tudjuk elért a CLI-be (Comman Line Interface). A művelet eredményességet az állapotjelző LED fog tanúskodni, pontosabban megszünteti pislogását. Az operációs rendszer új eszköz észlel, és nem megfelelő illesztőt telepít, ezt szükségeltetik kicserélni megfelelőre: ImpulseRC erre lett “kiképezve”. Ha valaki bővebb információt szeretne, elolvashatja a GitHub-on. Ezt követően már csak újra kell indítanunk az eszközt és csatlakozni hozza Configurator-al, és a Firmware Flasher menüben megfelelő céleszköz meghatározása után feltölteni a legújabb firmware-t. Ilyenkor a Configurátor automatikusan átkapcsolja az eszközt BL módba. Ajánlott ilyenkor az egész chip memóriát törölni és az eszközt alapbeállításokkal indítani, ugyanis változhatnak változó nevek, és képletek a háttérben, ami eredeti konfiguráció másolásánál még problémát okozhat. Ha kételkedünk a vezérlőnk típusában, csatlakozzunk az eszközhöz, és a CLI-ben adjuk meg a version parancsot.
Alapvető beállítások
Követretkező lépésben a minimális használható konfigurációt hozunk létre. A Configuratin>System configuration menüben állítsuk be a giroszkóp frissítési rátát és a PID ciklus sebességét. F4. generációjú mikrokontroller esetén (STM32F405) ez 8-8 kHz, F3 esetén 4-4 kHz. A lényeg, hogy figyeljük a processzor terhelését az Configurator állapotjelző tálcáján. A CPU Load értéke nem haladhatja meg az 50%-ot. Beállítjuk a rádióvevő egység kommunikációs protokollját (PWM, S.BUS etc.), és kiválasszuk a megfelelő funkciókat. A következőket tudom ajánlani alapnak: AIRMODE, OSD, ANTI_GRAVITY, DYNAMIC_FILTER. Ami még hátra van, az a motorszabályzók protokolljának a beállítása. Mai szabályzók már inkább a DSHOTXXX valamely verzióját használják, de akadnak régebbi kiadások is, ebben segít a szabályzónk specifikációja. Ha nincs csipogónk a gépen, érdekesség lehet még a Dshot Beacon Configuration, mely a motor rezegtetésével állítja elő hangot. Összesen 3 opció áll rendelkezésünkre: hangerő, csipogjon-e ha elveszíti a rádiójelet, ill., kapcsolható-e távirányító gombjával/kapcsolójával (set beeper_dshot_beacon_tone = 3).
Következő feladat a rádióvevő egység működésének, a csatornakiosztásnak az ellenőrzése. Ezt a Receiver menüben tudjuk megtenni. Ugyanitt tudjuk követni a bemeneti jelek alakulását, és az oszlop-diagramok segítségével pontosan beállíthatjuk a potmétereink közép és végállásainak kimenet értékét (a finomhangolást a távirányítón végezzük).
A Modes menüben tudjuk állítgatni a repülési módokat, vagyis egyes funkciók ki/be kapcsolását és vezércsatorna hozzárendelését. Távirányítónk programmixjeit használva elég összetett kombinációkat tudunk létrehozni mindössze 1 csatorna használatával, a lényeg, azonban, hogy ne bonyolítsuk túl, maradjon használható. Fontos tudni, hogy ha egy funkció aktiválva van a System Configuration menüben, de nem rendelünk hozza kapcsolót a Modes menüben, akkor az a funkció folyton aktív.
Amit ne hagyjunk ki, az a Failsafe megfelelő beállítását. A koncepció a következő: hagyjuk ezt a funkciót a repülésvezérlőre és teljesen kapcsoljuk ki a rádióvevőn. Ebben az esetben a vezérlő azonnal tudomást szerez a jelvesztességről, és a beállításainknak megfelelően vezérli a légi járművünket. Ráadásul 2 szint is beállítható: 1. szint – meghatározzuk, hogy mi az érvényes jel hossza, és ha a bemeneti jelszint nem felel meg, akkor az előző érvényes értéket használja, vagy egy előre megadottat. Mindkét megoldásnak vannak előnyei, hátrányai. Normális körülmények között ezt a szintet csak ideiglenes jelvesztesség kompenzálására használjuk, így meg lehet tartani az összes csatorna értékét. 2. szinten eldönthetjük, hogy a jelvesztesség kezdetétől mennyi ideig lehet a gépünk 1. szinten, és utána kapcsolja e teljesen a motorokat, vagy próbálja meg letenni finomabban. Egyik út sem tökéletes. (fél másodpercnél ne célszerű forgatni a légcsavarokat irányítás nélkül, a főlőt a jelvesztesség inkább állandónak, mintsem ideiglenesnek tekinthető)
Bár nem esszenciális, bekapcsolhatjuk a fekete-doboz funkciót is, ezt a Blackbox menüben tehetjük meg, állítsuk a mintavételezést 1.5kHz-re.
OSD beállítását mindenki saját ízlése szerint intézze. Egy trükköt szerének megosztani csak: ha végeztünk a beállítással, menyünk a parancssor menübe (CLI) és pötyögjük be a diff parancsot, ezzel minden, alapértéktől eltérő beállítás megjelenik. Keressük meg és másoljuk ki a set osd_ elejű bejegyzéseket és másoljuk át valami biztonságos helyre.
PID Tuning a repülővezérlőnk természetét befolyásoló beállítások. Intenzív viták folynak arról, mi a tökéletes, ért hagyjuk egyenlőre alaphelyzetben. Az RC Rate és a Super Rates álításával a vezérlőn tudjuk megoldani az távirányítóban ismert EXPO beállításokat. Finomhangolással még ráérünk bajlódni, inkább menjünk repíteni egyet, de… .
Bár beállítottuk a Failsafe funkciót, teszteljük le légcsavarok nélkül, hozzárendelve egy csatornát, egy kapcsolót előbb az 1. utána a 2. szinthez. Biztonság mindenek felett!
Nos, akinek ez sem elég, érdemes megismerkedni a következő forrásokkal:
Tuning Tips for Betaflight 3.4
/PID-Analyzer
Accelerometer callibration
Turtle mode
Setpoint Weight
Setpoint Transition
bl
diff
status
version
resource list