Arducopter

Arducopter projektu domiuosi jau senokai. Tik iki šiol naudojau ne jo tikrąjį kontrolerį, o CRIUS All In One Pro, su Megapirate programa. Megapirate – tai tas pats Arducopter, tik perdarytas kitokiam kontroleriui. Kadangi reikia perdarinėt, tai kažkiek užtrunka, ir naujos versijos gerokai vėluoja. O pasirodžius 3.2 (šiuo metu vis dar beta) versijai, atsirado naujų įdomių funkcijų ir labai norėjosi jas išbandyti. Todėl nusipirkau Arducopter kontrolerį, kuris dabar jau kainuoja panašiai kaip ir CRIUS All In One Pro. Lyginu su kinišku klonu, originalus brangesnis.

Pirkau Arducopter 2.6 (kiniškas klonas), kuriame nėra vidinio kompaso. Komplekte buvo ir GPS modulis su kompasu. Tai leidžia kompasą patraukti toliau nuo laidų, kad nebūtų jokio nepageidautino poveikio. Kinai nesivargino pažymėti, kokia kryptimi jis turėtų būti tvirtinamas, nėra jokios rodyklės. Teko ardyti pasižiūrėt kaip jis ten įdėtas. Be to, GPS modulis prisukamas vienu varžtu. Tai reiškia, kad nelabai įmanoma taip priveržti, kad skrendant neatsisuktų. O jei atsisuktų, pasisuktų kompasas, o tai gali baigtis labai liūdnai.

apm0

Vėliau nusipirkau kitą GPS laikiklį, kuris tikrai geresnis, nes prisukamas ne vienu varžtu, bet iki šiol vis dar nepakeičiau. Kažkaip ir anas vis dar laikosi…

apm_gps

Beje, šis GPS modulis veikia labai gerai. Palydovus gaudo greitai, per keliolika sekundžių. Jokių priekaištų jam neturiu, nė karto nepasitaikė kokių nors nesąmonių dėl GPS.

Dar reikėtų paminėti, kad Arducopter projektas keičia kontrolerį, nes jau neužtenka senojo resursų. Tai Pixhawk. Kol kas jis brangokas. Greičiausiai projektas toliau vystysis tik su šiuo kontroleriu, tačiau ir senojo dabartinės galimybės labai įspūdingos.

Nusipirkau ir kitą rėmą. Tokį pasirinkau tik todėl, kad norėjau daugiau vietos visai elektronikai ir ketinau pakabinti gimbal‘ą. Šis rėmas lyg ir turėtų būti tam tinkamas, akumuliatorių galima dėti gale, kad kompensuoti gimbal‘o svorį.

apm1

Plastikinės „kojos“ beveik tokios pat, kaip ir anksčiau mano naudotame rėme, bet ne visai. Pvz. nelabai supratau, kodėl skylės variklių pritvirtinimui skirtingos, dvi 3 mm, dvi 4 mm. Seniau visos buvo 3mm. Be to, pačios „kojos“ prisukamos 2,5 mm varžtais. Seniau buvo 3 mm.

apm2

Varikliai ir greičio reguliatoriai tie patys, kuriuos naudojau su Crius All In One Pro kontroleriu. Kadangi buvo numatytas išorinis kompasas, laidų išdėstymas nelabai turėjo reikšmės. Panaudojau ilgai gulėjusią plokštę, kuri ir skirta visų ESC sujungimui. Aš visada dedu LED juostas, kad skrendant būtų lengviau atskirti kur priekis. Jos irgi prijungtos prie tos pačios plokštės.

apm3

Akumuliatorių dėjau rėmo viduje, norėjau, kad galima būtų pastumti į norimą vietą, pagal tai, kur turi būti svorio centras. Bet paaiškėjo, kad, jei akumuliatorius viduryje rėmo, nėra kaip jo pritvirtinti. Esamos skylės niekaip netinka. Kai akumuliatorius gale, viskas tvarkoje, nesunkiai pritvirtinamas kibia juosta, kuri yra komplekte. O norint įdėti viduryje, teko prigalvoti papildomus tvirtinimus, ir akumuliatorių prikabinti gumomis. Laikosi gerai, bet keitimas nepatogus. Akumuliatorius viduryje reikalingas tada, kai kopteris skrenda be gimbal‘o.

apm4

Kontroleris uždėtas ant amortizatorių. Pigus, paprastas, ir neblogas būdas. Ši amortizacija veikia visai neblogai. Tiesa, būtų įdomu pabandyti be amortizacijos ir palyginti vibracijos lygius.

apm5

Pats kontroleris puikiausiai veikė pajungus per USB, bet, kaip paaiškėjo, visiškai neveikė pajungus per maitinimo lizdą. Taip pat neveikė padavus maitinimą iš ESC. Na ką gi, perkant kinų kloną visko galima tikėtis. Bet kai neveikia visai, tai nėra blogas gedimas, daug blogiau būna, kai kartais veikia, kartais neveikia. Teko ieškoti schemos, montažinės plokštės piešinio, ir bandyti taisyti. Projektas atviras, todėl viską susirasti nesudaro problemų. Panagrinėjęs schemą, gana greitai radau kur problema. Nebuvo kontakto toje vietoje, kur pažymėjau rodykle. Ten yra saugiklis (žalias), vienas jo galas buvo neprilituotas. Gedimas visai paprastas, bet nedraugaujant su elektronika būtų problema…

apm6

Šiame rėme telemetrijos modulį įdėjau gale, toliau nuo kitos elektronikos, bet nežinau ar tai turi kokių privalumų. Veikimo atstumas vis tiek ne per geriausias. Apie triukšmo lygius ir kaip tai veikia atstumą jau rašiau anksčiau. Įdėjau ir power modulį. Jame yra srovės ir įtampos davikliai. Sukalibravau pagal turimą srovės matavimo prietaisą. Kopterio svoris 1,2 kg su 3300 mAH akumuliatoriumi, kabojimo metu ima maždaug 13-14A.

apm7

Kai kompasas toli nuo laidų, nėra jokio nepageidaujamo magnetinio poveikio. Compassmot funkcija rodo 0.

Pradžiai pabandžiau 3.1.5 oficialią programos versiją. Ji ir buvo įrašyta kontroleryje. Skrenda. Bet mane domino 3.2 beta versija. Pabandžiau įsirašyt, bet paaiškėjo, kad to padaryti neina. Per Mission Planner pabandžius perrašyti programą, kažko labai ilgai niekas nevyksta, paskui matosi, kad firmwaras parsiunčiamas, o toliau klaida, kad negali atnaujinti. Bandžiau kelis kartus, bet visada tas pats. Pradėjau galvot, kad kinai vėl kažką bus pridirbę, gal net bootloaderio kontroleryje nėra. Yra tokia programa XLoader, su kuria irgi galima įrašyti programas į Arduino. Pabandžiau – jokių problemų, įsirašė viskas normaliai iš karto. Kame reikalas nesupratau, bet tiesiai iš Mission Planner programos perrašyti negaliu niekaip.

Šiuo metu 3.2 beta versija aktyviai testuojama jau keli mėnesiai. Aš bandžiau nuo RC5 versijos, dabar jau yra RC14 ir, matomai, dar ne paskutinė. Bandant beta versijas, galima laukti visokių netikėtumų. Nors skraidžiau labai daug, buvo išlindusi tik viena bėda ir tik vieną vienintelį kartą. Bandžiau auto pakilimą (take off). Kopteris dar net nepakilęs iš karto apsivertė. Nuostoliai nedideli – trys sulaužyti propeleriai. Šią problemą pastebėjau ne aš vienas, todėl kūrėjai bandė ją tvarkyt. Lygtai RC12 versijoje jau turėjo būti gerai. Aš pabandžiau – pakilo be problemų. Bet mačiau, kad bandytojai kalbėjo, kad tas staigus apsivertimas vis tiek kartais pasireiškia.

Įdomu stebėti testavimo atsiliepimus. Kūrėjams sunku atrinkti, kur buvo programinės problemos, o kur kažkoks gedimas, ar tiesiog viskas padaryta bet kaip. Gerai, kad šis kontroleris visada įrašinėja skrydžio log‘ą. Tai kaip lėktuvo „juodoji dėžė“. Po skrydžio arba po avarijos galima peržiūrėti įvairius parametrus. Kartais tai padeda nustatyti kas veikė ne taip, arba kas buvo avarijos priežastimi. Sudaužytų kopterių buvo nemažai, bet kaip pastebėjau, dauguma jų su Pixhawk. Gal šitam kontroleriui programoje dar yra daugiau klaidų. Tačiau akivaizdu, kad nemažai avarijų pasitaiko visai ne dėl programinių klaidų…

Kalbant apie Arducopter negalima nepaminėti puikios programos – Droid Planner 2. Ši programa skirta Android OS, aš ją naudoju planšetėje, bet galima ir telefone. Didesnis ekranas – nemažas privalumas. Irgi bandžiau beta versijas, nes norėjau matyti naujausias funkcijas. Droid Planner 2 pagrinde yra skirtas maršruto sudarymui ir skrydžio stebėjimui žemėlapyje. Viskas veikia per telemetriją. Yra viena labai įdomi funkcija – Follow Me. Šiaip jau funkcija žinoma – kopteris skrenda paskui žmogų, kuris turi pvz. telefoną arba kompiuterį su GPS ir telemetrijos moduliu. Pastoviai gauna jo koordinates ir seka paskui. Tačiau čia ši funkcija gerokai patobulinta. Yra keletas variantų. Kopteris gali skirti paskui, gali skristi prieš, gali skristi dešinėje, gali kairėje, gali virš sekamo objekto. Ir įdomiausia – gali skristi aplink (orbit), tuo pačiu sekdamas objektą. Priekis visada žiūri į objektą, dar gali valdyti gimbal‘o pitch ašį, kas leidžia turėti fantastines filmavimo galimybes. Aš šio režimo neišbandžiau, nes nelabai yra kur, reikia nemažai vietos. Tačiau įjungęs buvau – taip, jis atskrenda pas mane. :) Mačiau vieno žmogaus video, kur jis išbandė kai kuriuos Follow Me režimus. Veikia. Bet bandyti reikia atsargiai, visgi tai Droid Planner 2 beta versija…

Bandžiau ant šio rėmo uždėt kamerą su gimbal‘u. Rezultatas toks pat blogas – žiaurios vibracijos. Nors tai nekelia nė mažiausių problemų pačiam kontroleriui. Pažiūrėjus kokias jis mato vibracijas paaiškėjo, kad jos dvigubai mažesnės už leidžiamas. Taigi, išvada tokia pat, kaip ir rašiau anksčiau – su tokiu rėmu neįmanoma filmuoti, bet be jokių problemų galima skraidyti.

Trumpai apie kai kuriuos įdomesnius skrydžio režimus (flight modes):

Loiter – pozicijos laikymo režimas. Veikia GPS ir AltHold (aukščio palaikymas). Galimas pozicijos pakeitimas iš valdymo pulto.

ReturnToHome – iš pavadinimo aišku kas tai. Įjungus, kopteris parskrenda į pakilimo vietą.

Simple – šis režimas gali būti naudojamas kartu su kitais režimais. Kaip žinia, skrendant kopteriu svarbu žinoti, kur jo priekis (arba galas, kaip kam patogiau). Praradus orientaciją, sunku išvengti avarijos. Kai įjungtas šis režimas, tokia sąvoka kaip „priekis“ netenka prasmės. Pakilimo metu (arm), įsimenama kur buvo atsuktas jo priekis. Galima sakyti, kad priekis tampa virtualiu, nesvarbu kaip realiai bus pasisukęs kopteris, virtualus priekis vis tiek bus pasisukęs ten, kur buvo pakilimo metu. Tik šis virtualus priekis galioja skrydžio metu. T.y. valdymo poveikis perskaičiuojamas pagal kompasą ir skrendant visiškai nesvarbu, kaip pasisukęs kopteris realiai, patraukus pitch ašies valdymo svirtį į save, jis parskris atgal. Tačiau, jei įjungtas šis režimas, reikia nepamiršti, kad viskas galioja kol kopteris skrenda prieš pilotą. Negalima nuskristi sau už nugaros, valdymas pasikeis, ir avarija garantuota.

SuperSimple – šis režimas panašus į Simple, bet virtualaus priekio kryptis apskaičiuojama pagal GPS. Jei įsivaizduosim liniją tarp pakilimo vietos (arm), ir esamos kopterio padėties, tai virtualus kopterio priekis bus visada atsisukęs į priešingą nuo pakilimo pusę, arba kitaip sakant virtualus galas visada žiūri į pakilimo vietą. Reiškia pilotas turi stovėti pakilimo vietoje ir tada visiškai nesvarbu kurioje vietoje kopteris, į kokią pusę realiai pasisukęs, patraukus pitch ašies valdymo svirtį į save, jis parskris atgal. Negalima skrendant eiti į kitą vietą – būtina stovėti pakilimo vietoje, tik tada viskas veiks teisingai. Kadangi kopterio padėtis visą laiką perskaičiuojama, tai valdymas roll ašyje duoda iš pirmo žvilgsnio keistą efektą. Pvz. jei roll valdymo svirtį palenksim į dešinę, kopteris skris ratu pagal laikrodžio rodyklę. Kodėl taip yra suprasti nesunku. Pabandžiau – taip, tikrai skrenda ratu, tik apskritimo spindulys vis didėja…

PosHold – tik 3.2 versijoje atsiradęs režimas. Tai kaip paprastas Stabilize režimas, bet visą laiką veikia GPS. T.y. vos tik valdymas bus paleistas, įsijungia pozicijos laikymas kaip Loiter režime. Be to, suveikia automatinis stabdymas. Įdomiai atrodo. Principe galima sakyt, kad skrendant visiškai nesijaučia vėjo poveikis.

Drift – režimas šiek tiek panašus į PosHold, GPS veikia visą laiką, tačiau kopteris valdomas viena valdymo svirtimi. Kaip džoistiku – pitch ašis veikia kaip pitch, o roll ašis veikia kaip yaw. Yaw valdymo svirtis neturi jokio poveikio. Roll ašis valdoma automatiškai. T.y. skrendant, posūkio metu kopteris pasvyra į posūkio pusę. Jei valdymas paleidžiamas, suveikia stabdymas ir įsijungia pozicijos laikymas tačiau kopteris lėtai dreifuoja pavėjui. Labai patogus režimas.

Guided – šis režimas leidžia gauti koordinates iš valdymo programos. Pvz. Mission Planner. Jei pajungta telemetrija, tai bakstelėjus pele į žemėlapį, kopteris nuskris į šią vietą. Šis režimas naudojamas dar kai kurioms funkcijoms, pvz. Follow Me. Šio režimo iš pulto įjungti dažniausiai nereikia, jį įjungia programa, kuri jį ir naudoja.

Circle – kopteris pradeda skristi ratu. Apskritimo spindulys, skrydžio greitis ir kryptis nurodoma nustatymuose. Kopterio priekis visada žiūri į apskritimo centrą.

Auto – skrydis pagal sudarytą maršrutą. Tai autopilotas su daugybe papildomų funkcijų. Čia visa Arducopter jėga. :) Jį įjungus, kopteris pradeda vykdyti sudarytą maršrutą. Maršrutas sudaromas Mission Planner programoje, arba kokioje nors kitoje, kuri skirta darbui su Arducopter. Funkcijų čia labai daug – automatinis pakilimas, automatinis nusileidimas, skrydis į nurodytus taškus (waypoints), kiekvienas taškas gali būti nurodytame aukštyje, keičiamas skrydžio greitis ir dar galybė funkcijų skrydžio metu. Viena įdomesnių yra ROI (Region Of Interest). T.y. galima užduoti tašką į kurį skrydžio metu visą laiką bus nukreiptas kopterio priekis. Tas taškas skrydžio metu gali būti pakeistas. Taip pat galima nurodyti į kur žiūrės kopterio priekis skrendant tarp bet kurių dviejų taškų (tiesiog laipsniais), arba kai lieka nurodytas atstumas iki sekančio taško gali įvykdyti dar kokią nors funkciją. Nurodytose vietose gali suveikti pajungtas servomechanizmas (ir ne vienas). Pvz. gali būti panaudota fotoaparatui, kad padarytų nuotrauką. Ir dar daugybė įvairių funkcijų, viską aprašyti sunku. Daugumą jų aš išbandžiau, praktiškai viskas veikia. Man neveikė pilnai tik LOITER_TURNS. Šį funkcija liepia kopteriui apskristi nurodyto spindulio apskritimą (maršrute). Skrendant ratu, kopterio priekis visada žiūri į apskritimo centrą. Galima nurodyti pagal laikrodžio rodyklę ar prieš laikrodžio rodyklę skris ratu. Pagal skrenda kaip priklauso, o bandant įjungti prieš laikrodžio rodyklę, sukasi vietoje, bet vis tiek pagal laikrodžio rodyklę. Čia akivaizdus bugas, bet nelabai svarbus, tai nežinau ar ištaisys dar šioje versijoje.

3.2 versijoje atsirado dar Spline Waypoints. Jei šiaip jau tarp maršruto taškų kopteris skrenda tiesia linija (tai galioja 3D erdvėje), tai į Spline Waypoint skrenda ne tiesia linija. Išlenkimas priklauso nuo sekančio taško, tai tartum padaro maršrutą tolygesnį. Sunku paaiškinti kaip tai veikia, reikia pamatyt. Bet labai šaunus dalykas.

Gali kilti klausimas, kam šitiek visokių režimų prikurta. Bet įsivaizduokim, kad skrendam su kamera, reikia nufilmuoti kažkokius objektus iš įvairių pusių. Visa tai galima tiesiog nurodyti žemėlapyje ir sudaryti atitinkamą maršrutą. Įjungti Auto, ir palaukti kol viskas bus padaryta visiškai automatiniu režimu.

Aš čia parašiau tik apie kai kurias funkcijas. Šiaip šis projektas yra gana neblogai aprašytas, kūrėjai pastoviai atnaujina aprašymą.

Pabaigai trumpas video, kurį aš rodžiau kūrėjams, norėdamas pasakyti, kad neveikia krypties palaikymas pagal kompasą. T.y. pasukus kopterį, jis neatstato krypties. Aš galvojau, kad turėtų pasisukt atgal. Bet kūrėjai sako, kad kryptis pagal kompasą palaikoma 10 laipsnių ribose. Jei paskukama daugiau, pasisuka ir kryptis…

Matosi, kaip kopteris laiko poziciją, aukštį, kaip pablogėja pozicijos laikymas, kai kopteris staigiai pasukamas. Kūrėjai tai aiškina tuo, kad tuo momentu nustoja veikti inercinė navigacija. Arducopter poziciją laiko ne tik pagal GPS, bet naudojasi ir akselerometrais.

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

3 Responses to Arducopter

  1. gintaras_bar says:

    Ačiū Remigijau už labai šaunų Arducopter aprašymą! Buvau šį daiktą nusižiūrėjęs ir ruošiausi pirkti pabandymui, bet vis dar abejojau – ar verta? Dabar matau, kad tikrai verta :)

  2. ecka333 says:

    Įdomu kaip kopteriuose išsprendžiama trukdžių problema? Juk čia pilna elektronikos, o galingi varikliai turėtų generuoti nemažus elektromagnetinius impulsus. Gal varikliai jungiami per kokius filtrus?

  3. ReM says:

    Variklių reguliatoriai taip padaryti, kad retai pasitaiko trukdžių nuo variklių. Daugiau gali būti nuo siųstuvų. Šiuo atveju yra telemetrijos siųstuvas, ir valdymo imtuvas dvikryptis (FrSky). Jų geriau nedėt labai arti GPS imtuvo. Visko gali būt. Dar būna problemų kai deda kameras su siųstuvais, kartais gana galingais – irgi trukdžių pasitaiko. Mano atveju niekas niekam netrukdo…

Leave a Reply

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