Multiwii lėktuve (2 dalis)

Jau porą metų naudoju multiwii kontrolerį skrydžio stabilizacijai lėktuve. Apie tai buvo rašyta čia. Veikia puikiai. Pasirodžius 2.4 multiwii versijai, atsirado galimybė naudoti ir GPS. Tiesa, programa su visa navigacija netelpa į atmega328 kontrolerį. O pas mane lėktuve būtent toks ir yra. Bet yra programos variantas telpantis į atmega328, kuriame veikia „return to home“ ir „position hold“. Šiaip jau šie režimai man gerai žinomi, nes kažkada (jau prieš 5 metus), esu daręs autopilotą. Bet įdomu pažiūrėti kaip tai padaryta multiwii.

GPS šiame lėktuve pas mane jau buvo, taip pat buvo telemetrija, kuri leidžia matyti akumuliatoriaus įtampą, naudojamą srovę ir koordinates. Visa tai matoma planšetėje. Apie tai buvo rašyta čia. Beliko GPS pajungti prie multiwii kontrolerio. Šiek tiek pakeičiau savo telemetrijos modulio programą, kad nustatytų kitokį GPS serial greitį.

Multiwi nustatymai pradžioje nelabai aiškūs, todėl daugumą palikau kokie yra o GPS PID paėmiau iš pavyzdžio, rasto internete. Pirmas skrydis parodė, kad viskas veikia, bet labai staigiai. T.y. visi posūkiai turėtų būti daug švelnesni. „Position hold“ lėktuvui reiškia, kad jis visada bando skristi į tašką, kuriame buvo šio režimo įjungimo metu. Rezultatas – skrenda ratu. Rato dydis priklauso nuo posūkio kampo. Beje, multiwii posūkį daro naudodamas eleronus ir aukščio vairą (ne vien posūkio vairas). Gazą irgi valdo, bet pulte jis neturi būti visiškai nuimtas.

Išėjau skraidyt kai vėjo beveik visai nebuvo. Pabandęs, kad mane dominantys skrydžio režimai veikia, pakilau į 500 aukštį ir visai neatkreipiau dėmesio, kad staiga pakilo stiprokas vėjas. Matomai viršuje jis buvo dar stipresnis, nes lėktuvą staigiai pradėjo nešti pavėjui. Nors aš planšetėje mačiau, kur jis yra, bet grįžti atgal pasirodė neįmanoma. Problema tame, kad planšetėje aš matau skrydžio kryptį, kuri skaičiuojama pagal koordinates. Šiaip jau skraidant visada matau teisingą kryptį. Tačiau jei lėktuvas nešamas pavėjui, net jei jo priekis žiūri prieš vėją, bus rodoma, kad yra priešingai. Todėl, žiūrint į planšetę, bet nematant pačio lėktuvo, buvo beveik neįmanoma pasukti teisinga kryptimi. Kol aš bandžiau kaip nors jį gražinti atgal, atstumas vis didėjo. Aš net pamiršau, kad jau galiu tiesiog įjungti grįžimą atgal… „Fail safe“ (dingus ryšiui, automatiškai įsijungia grįžimas namo) irgi nebuvo nustatytas. Nežinau ar jis būtų pajėgęs parskristi atgal, bet kai atstumas buvo apie 1,6 km, ryšys dingo. Tokiu būdu priverstinai išbandžiau veikimo atstumą. FrSky nemeluoja, kad veikia iki 1,5 km.

fly-away

Kurioje vietoje dingo ryšys aš mačiau žemėlapyje. Lėktuvas tuo metu buvo 200 m aukštyje ir virš Nemuno. Pasižiūrėjęs, kad vėjo kryptimi toliau yra pievos, nutariau, kad verta ten nuvažiuot paieškot. Juk privažiavus arčiau, turėtų atsistatyti ryšys, ir aš pamatyčiau koordinates. Žinoma, jei lėktuvas neįkrito į Nemuną, ir šiaip kur nors nesudužo. Kad sudužo tai tikimybė buvo maža, nes stabilizacijai veikiant, jis niekaip neapsivers, ir, kaip minėjau, ten visur pieva arba krūmai prie Nemuno. Paėmiau porą pagalbininkų ir nuvažiavau šiek tiek toliau nuo tos vietos, kur dingo ryšys, vėjo kryptimi, nes galvojau, kad kol jis nusileido iš 200 m aukščio, vėjas turėjo dar gerokai nunešt. Tačiau kiek ten bevaikščiojom, nebuvo jokio ryšio. Beliko pabandyt nuvažiuot į vietą, kur dingo ryšys, gal jis nukrito kur nors šalia. Ir tikrai, vos tik atvažiavom netoli tos vietos, siųstuvas pradėjo pypsėti (ryšys ant ribos), ir planšetėje jau matėsi RSSI (ryšio kokybė). Deja, koordinačių nebuvo…

Ryšio kokybė irgi naudingas dalykas, galima vaikščiojant matyti, kuria kryptimi einant ryšys gerėja. Kai jau mačiau, kad ryšys visai neblogas, labai padėjo siųstuvo sumažinto galingumo režimas, kurį įjungus, ryšys būna apie 50 m atstumu. Taip buvo aiškiau, į kurią pusę eit. Galų gale buvo aišku, kad esam kažkur netoli, bet lėktuvo nerandam. Tada dingtelėjo teisinga mintis: reikia pabandyt įjungt variklį. Paaiškėjo, kad variklis girdisi, o lėktuvas už ~10 m guli pievoje. Aplink krūmai, todėl šiaip jį pamatyti būtų buvę sunku. Lėktuvas buvo visai sveikas, tik kažką užkliudė sparnu, tai buvo nedidelis įmušimas putplastyje. Tokiu būdu, šiuolaikinių technologijų pagalba, lėktuvas buvo surastas, nors šiaip jau tai atrodė beveik beviltiška. Kodėl nebuvo koordinačių taip ir nesupratau, vėliau įjungus viskas veikė normaliai.

Parsivežęs pažiūrėjau, kas atsitinka išjungus siųstuvą. Paaiškėjo, kad išsijungia variklis, bet stabilizacija lieka veikt. Šiuo atveju, tai irgi pagelbėjo, nes lėktuvas tiesiog sklendė kol galėjo. Na ir laimės dalykas, kad nusileido ten, kur nusileido. Nemunas buvo už kokių 20-30 metrų…

Vėliau aš nusistačiau „fail safe“, kad dingus ryšiui lėktuvas praskristų namo. Dar nusistačiau „fence radius“ režimą. Tai atstumas, kurį pasiekus, automatiškai įsijungia grįžimas namo. Tai kaip „siena“, kurios perskristi lėktuvas negali. Pareguliavau PID ir kitus nustatymus, kad suktų ne taip staigiai. Po keleto bandymų visi šie režimai veikia puikiai. Multiwii net ir su atmega328 puikiai tinka lėktuvui. Turint omenyje, kad dabar toks kontroleris visai pigus, gaunasi neblogas variantas. O galima ir susirinkt pačiam, jei standartinės plokštės dydis netenkina. Gaunasi dar pigiau…

This entry was posted in RC modeliai. Bookmark the permalink.

One Response to Multiwii lėktuve (2 dalis)

  1. Vytautas says:

    Labai įdomu!

Leave a Reply

Your email address will not be published. Required fields are marked *