MultiWiiCopter - jak zbudować niedrogie FC

FC oparte na Arduino

Moderatorzy: moderatorzy2014, moderatorzy

Awatar użytkownika
Rurek
Posty: 16419
Rejestracja: środa 10 mar 2010, 15:21
Lokalizacja: AIP ENR 5.5 - AAA 153 :-)

MultiWiiCopter - jak zbudować niedrogie FC

Post autor: Rurek »

Cześć, spróbujmy w tym wątku wspólnymi siłami, na gruncie polskim, zbudować FlightControler oparty o pomysł wykorzystania żyroskopów i akcelerometrów zawartych w manipulatorach do popularnej konsoli Nintendo Wii oraz popularnego, niedrogiego, dobrze udokumentowanego mikrokontrolera Arduino...Autorem pomysłu, programu, wsadu, graficznego interfejsu na PC jest pewien francuz, oto Jego strona z projektem , aktualizacja, teraz samodzielna strona ---> www.multiwii.com


***************************************************************************
ilu nas jest, pilotów ArduWii-MultiWii-Copterów? SPRAWDŹ ALBO DOPISZ SIĘ :-)
***************************************************************************


EDYCJA/DOKŁADANE KOLEJNE INFO
---------------------------------------------------------------------------------------------------------
KALIBRACJA
spróbujmy skalibrować teraz wszystko do kupy, najpierw aparaturę dopasowujemy do GUI....dorzucamy na drążkach na maksa EPA, znaczy na 125% najlepiej...powinny wtedy wskazania pokazywać od 1000 do 2000 (plus minus 50)
Jak to się już uda to skalibrować trzeba regle. Czyli odłączamy regle od FC (zasilanie z LiPola) , włączamy zasilanie FC, czekamy aż się zboot'uje Arduino (zielona dioda się świeci) , zazbrajamy silniki - drąg prawo-dół, wychylamy drążek gazu na maksa i tak trzymając podłączamy regiel do FC, jak zagra muzyczka, drąg gazu do dołu (a dokładnie to dół-lewo coby zagasić motor). I gotowy pierwszy regiel...i tak dla wszystkich regli po kolei, albo jak ktoś zręczny (albo ma tymczasowy dinks odpalający zasilanie na regle) to wszystkie na raz można.
Po skalibrowaniu zakresu gazu/pracy regli konfigurujemy inne rzeczy w reglach, wszystko co można, czyli:
hamulec - off, soft-off - off, typ baterii - Nixx koniecznie!!!, timing- medium lub high w zależności od typu silnika.
Jak już skalibrujemy regle to możemy uruchomić silniki (lepiej bez śmigieł na początek) czyli dajemy drąg gazu dół i w prawo. Jak silniki odpalą, drąg gazu cały czas mamy na minimum, wszystkie powinny chodzić i w GUI powinniśmy mieć podobne wartości gazu dla każdego silnika. Jeżeli nie chodzą /któryś nie chodzi/ któryś chodzi szybciej albo wolniej to musimy kombinować we wsadzie do Arduino z wartościami min throttle, max throttle, min gas i max gas. A także z RC expo w GUI (nie w aparaturze!!!!)
Jak już wszystkie silniki będą równo chodzić na biegu jałowym jak i w innych zakresach i w odpowiednią stronę :-) to wtedy zakładamy śmigła i wyważamy każde śmigiełko dynamicznie na chodzącym silniku.
Jak już wszystko wyważone to ostatnia rzecz - kalibrujemy sensory.
Czyli drąg gazu lewo góra, drugi drąg dół i kilka sekund czekamy aż diody zgasną/zapalą się OCZYWIŚCIE KOPTER WYPOZIOMOWANY! Tę kalibrację robimy "raz na ruski rok" czyli tylko po zbudowaniu nowego setupu mechanicznego i/lub po zmianach w geometrii i mechanice koptera. Oczywiście można robić częściej ale pytanie po co ? ;-) do tej operacji trzeba dokładnie wypoziomować koptera żeby nam potem w locie trzymał idealnie zapamiętany poziom.


i teraz na pole i w górę :-)
---------------------------------------------------------------------------------------------------------
defaultowe ustawienia parametrów w sofcie 1.4
Obrazek
w najnowszym sofcie 1.pre05 zamiast throttle curve i trzech parametrów 1.0 jest tylko throttle rate i defaultowo powinien być na 0.0

---------------------------------------------------------------------------------------------------------
parametry Li-Po monitora
....Here is my battery monitor values for 3S (Used example AnalogInOutSerial):
resistors: 33K and 51K

I measured my resistors: 50.8K and 31.0K

990=12.55 A3=4.90V

944=11.98V
878=11.14V
834=10.59V
760=9.65V

Not mesured under load!

I have these test values:
VBATLEVEL1_3S 960
VBATLEVEL2_3S 880
VBATLEVEL3_3S 800
.........
wersja parametrów LiPo monitora dla 2S:
I've experimented with the battery alarm for 2S.

Using a divider resistors of 47k and 68k I get the following adc results :

8.4v = 1009
8.0v = 960
7.5v = 900
7.4v = 887
7.0v = 840
6.6v = 800
6.5v = 780
6.0v = 725

Hope this helps someone!

Ben.

---------------------------------------------------------------------------------------------------------




soft 1.4 z opisem klik!
soft 1.5 z kolejnym opisem klik! klik!
soft alfa/beta przejściowy testowy 1.pre06klik!
poprawiony jeden bug, opis ten co powyżej 1.pre06 klik go i już :-)
kolejna wersja "przejściowa", usunięte bugi, dodana obsługa ArduinoMEGA 1.6preBIS
soft 1.6 z opisem poprawek, nowe opcje konfiguracyjne-->klik<--
nowy wypust MWC soft ver 1.pre7 do pobrania --->TUTAJ<---
tutaj do zassania patch do GUI wersja 1.pre7 (to jest tylko poprawka do GUI ale konieczna bo na niektórych kompach zamrażało się wszystko------> klik go!

Multiwii soft 1.7 wersja finalna do pobrania,#### DO POBRANIA TUTAJ ###

MWC 1.8 (patch1) <----- obecnie najnowsza wersja, sierpień 2011 #POBIERZ TUTAJ#



dostęp do katalogu wszystkich wersji do wglądu tutaj



konfigurator parametrów przed kompilacją ---> pobierz i konfiguruj <--- UWAGA! DZIAŁA Z SOFTEM 1.5 ORAZ 1.6



---------------------------------------------------------------------------------------------------------

ustawianie programowo w kodzie kanału5 na stałe czyli tryb autostable on:
if (rcData[AUX1] > 1700 && (nunchukPresent == 1 || ADXL345Present == 1)) {
zamieniamy 1700 na 1 i 5ty kanał mamy wolny ;-)
--------------------------------------------------------------------------------------------------------

kalibracja i trymowanie sprzętu używając softu z serii 1.7

kolejność działań:
0) Przy każdym załączeniu zasilania do FC (a co skutkuje inicjalizacją kodu w procku) następuje samoczynna, automatyczna kalibracja (nie trymowanie) GYRO (nie ACC) - więc zwracajmy uwagę aby po podpięciu zasilania dać kilkanaście sekund kopterowi, w pozycji spoczynkowej na przygotowanie się do ciężkiej ;-) pracy.
1) kalibracja ACC (nadajnikiem albo przyciskiem "calibration" w sofcie) - wykonujemy to jak najrzadziej, tak jak wspomniałem wyżej - tylko po zmiianach mechanicznych w setupie koptera. Do tej operacji łapiemy poziom w płaszczyźnie obrotu śmigieł
2) trymowanie trybu acro za pomocą trymów w nadajniku
3) trymowanie trybu stable za pomocą drągów w sofcie
4) PRZED KAŻDYM STARTEM(uzbrojeniem silników) upewniamy się w myślach czy została przeprowadzona pomyślnie kalibracja (nie trymowanie) GYRO (nie ACC) - jeżeli nie jesteśmy pewni czy w trakcie operacji 0) czyli po załączeniu zasilania daliśmy szansę sprzętowi na kalibracje żyroskopów w stabilnych warunkach (trzymanie w ręce odpada!)

UWAGA!!! do punktu 3) - kalibracja ACC ZAWSZE powoduje utratę trymów trybu stable! Więc po kalibracji ACC trzeba jeszcze raz, od nowa trymować drążkami w trybie stable


---------------------------------------------------------------------------------------------------------


dokładny przepis trymowania trybu "stable"
1. Trim in "acro" = headholding mode:

Calibration is made on each power on, but you can do it manually like before:
Full throttle down + full yaw left + full pitch down

Just fly in acro mode and trim your copter with the trims on your transmitter.
No need to land, just do it in the air and trim as long as it looks good for you.


2. Trim in "stable" = ACC mode:

1. You have to trim your copter in "acro" mode before. So your copter is perfectly trimmed in acro mode. Otherwise you are overmixing trims from acro mode to stable mode and you have to trim stable mode again.

2. You have to calibrate ACC.
Copter must be stable and level at the ground.
Motors disarmed.
Full throttle up + full yaw left + full pitch backward

3. Now start motors and fly in stable mode.
Normally its better to start here as normal in acro mode and switch to stable mode while in the air. Because if stable mode needs much trim, its easier to fly in acro mode.

Okay, so you are now with stable mode in the air and the copter drifts to the right and backwards.
Switch back to acro (easier to land) and land your copter.
Disarm motors.

4. Now trim the ACC mode.
Don't touch your trims on the transmitter.
Give full throttle (must be >1900)
With the help of your roll and pitch stick you could now trim the ACC mode.
full PITCH forward/backward and full ROLL left/right (2 axis possibilities) will trim the level mode according to the neutral angle you want to change. The status LED will blink to confirm each ticks.

So in our example above, i have to move the pitch stick full forward about 4-5x. That means from neutral to full and back to neutral, 4-5 times.
You will here the buzzer each time beep and see the led each time blink, when move full forward.
The same for the roll axis. About 1-2x full roll to the left, because my drift on the roll was less than on the pitch axis.

After that start your motors and do again 3. until your copter is complete in level in ACC mode.

If you want to reset the ACC trims, just do step 2. (ACC calibration)

I hope that makes it clear.
---------------------------------------------------------------------------------------------------------

sprawdzone PIDy dla akcelerometru BMA020:
i have good results with (P) between 7 and 10 and (I) 0.030

---------------------------------------------------------------------------------------------------------

obsługa GUI i parametryzacja PIDów z poziomu telefonu z systemem Android

..........................................POBIERZ I EKSPERYMENTUJ :-) .......................................

Obrazek

---------------------------------------------------------------------------------------------------------


nowy interfejs programu stworzył jeden z fanatyków Multiwii :-) Do pobrania ->->-> TUTAJ <-<-<-
Obrazek






---------------------------------------------------------------------------------------------------------
Załączniki
sticks.jpg
Ostatnio zmieniony wtorek 28 lut 2012, 08:33 przez Rurek, łącznie zmieniany 40 razy.
infekcja FPV postępuje w zastraszającym tempie...
Awatar użytkownika
HaNsKlOsS
Posty: 492
Rejestracja: środa 14 kwie 2010, 20:11
Lokalizacja: Oberschlesien

Post autor: HaNsKlOsS »

poprowadzi ktoś za rączke :-?

ktory nunchuck / WMP
czy podroby mogą być? z allegro jak poznać
Arduino te: http://www.sparkfun.com/commerce/product_info.php?products_id=9220 gdzieś u nas w PL mozna też kupic?
jakie konkretnie Interface do tego?

jakaś galanteria do tego jeszcze potrzebna ?
|PROTOS CARBON AC3X|T-Rex 450 BEASTX FBL|Ritewing Zephyr..|TLRS 433|MK DJI
Awatar użytkownika
Marcin
Posty: 1061
Rejestracja: poniedziałek 15 lut 2010, 09:24
Lokalizacja: Ruda Śląska

Post autor: Marcin »

Arduino w PL drogo wychodzi :

http://nettigo.pl/product/Arduino-Mini,ard-mini

Hans - moze wspólna przesyłka z USA z podzialem na 2 osoby albo i wiecej? Pare kabelków przylutować potrafię ;)
Awatar użytkownika
krall
Posty: 3152
Rejestracja: poniedziałek 01 lut 2010, 10:00
Lokalizacja: Kartuzy
Kontakt:

Post autor: krall »

Marcin pisze:... albo i wiecej?...
Chętnie i tego spróbuję :mrgreen:
pozdrawiam
Krzysztof
http://www.fly.kartuzy.com.pl
Awatar użytkownika
Rurek
Posty: 16419
Rejestracja: środa 10 mar 2010, 15:21
Lokalizacja: AIP ENR 5.5 - AAA 153 :-)

Post autor: Rurek »

@Hans & Marcin - ja kupowałem w sparkfunie, dokładnie te które są proponowane przez autora projektu. Pro Mini są najlepsze bo są mini ;-) czyli małe i LEKKIE klik!

@krall - kolega z wybrzeża już na pewno Cię zabije ;-) ....chociaż to tylko malutkie FC, zmieści się w szufladzie :-)

Ja tak sobie kombinuję żeby FC zmieścić i zrobić na płytce o rozstawie otworów 45mm :mrgreen: żeby nie kombinować z ramami...po prostu cyk! i przekładka zamiast MK albo CD...dobre też do porównań jak się zachowuje taki tani kontroler na tej samej ramie.

Co do międzymordzia USB, dopiero co dawałem link do patentu za 29zł...klik!

*) MK - Mikrokopter
CD - CyberDrones
(jakby ktoś nie zajarzył skrótów ;-) )
Ostatnio zmieniony czwartek 28 paź 2010, 08:25 przez Rurek, łącznie zmieniany 1 raz.
infekcja FPV postępuje w zastraszającym tempie...
Awatar użytkownika
L_I_S
Posty: 902
Rejestracja: niedziela 28 lut 2010, 09:48
Lokalizacja: Zgorzelec, Monachium

Post autor: L_I_S »

w Szwabolandii maja o dolara drozej, ale za to pewnie trzy razy szybciej Wam by przesylka doszla...

http://www.watterott.com/de/Arduino-Pro ... 8-5V/16MHz

Kupowalem z tej stronki pare rzeczy i wszystko bezproblemowo

wysylka do NIemiec od 4,50 do 6 EUR, a do Polski 10 Eur
Pozdrawiam


"If flying were the language of man, soaring would be it's poetry"
cholo
Posty: 3371
Rejestracja: środa 03 lut 2010, 21:38
Lokalizacja: Kraków

Post autor: cholo »

ja arduino mini do aparatury kupowalem tutaj:
http://store.gravitech.us/arpromi5v.html
programowane kabelkiem od osd remzibiego.

do wiicoptera zamierzam jednak zapodac arduino nano, poniewaz jest niewiele wieksze a ma zlacze usb:
http://cgi.ebay.pl/Arduino-Nano-V3-0-3- ... 53e3f889bb
Awatar użytkownika
L_I_S
Posty: 902
Rejestracja: niedziela 28 lut 2010, 09:48
Lokalizacja: Zgorzelec, Monachium

Post autor: L_I_S »

a to arduino mini da rade programowac porzez kabel Remzibi OSD?
Pozdrawiam


"If flying were the language of man, soaring would be it's poetry"
cholo
Posty: 3371
Rejestracja: środa 03 lut 2010, 21:38
Lokalizacja: Kraków

Post autor: cholo »

L_I_S pisze:a to arduino mini da rade programowac porzez kabel Remzibi OSD?
z drobna modyfikacja kabelka tak (mam kabelek na ukladzie prolific).
Awatar użytkownika
L_I_S
Posty: 902
Rejestracja: niedziela 28 lut 2010, 09:48
Lokalizacja: Zgorzelec, Monachium

Post autor: L_I_S »

moj chyba tez na prolific, czy po tej "modyfikacji" bede mogl wciaz programowac OSD ?
Pozdrawiam


"If flying were the language of man, soaring would be it's poetry"
cholo
Posty: 3371
Rejestracja: środa 03 lut 2010, 21:38
Lokalizacja: Kraków

Post autor: cholo »

L_I_S pisze:moj chyba tez na prolific, czy po tej "modyfikacji" bede mogl wciaz programowac OSD ?
yes, my lord:
http://www.rcgroups.com/forums/showpost ... tcount=286
http://www.rcgroups.com/forums/showpost ... tcount=291

teraz mam taki czarny kabelek ale modyfikacja tez dziala.
Awatar użytkownika
Marcin
Posty: 1061
Rejestracja: poniedziałek 15 lut 2010, 09:24
Lokalizacja: Ruda Śląska

Post autor: Marcin »

Czyli tak:

1 Ardurino obowiązkowo (wersja USB pozwoli na lepsze i szybsze programowanie a wcale nie jest dużo większe)

2. Wii Motion Plus obowiązkowo

3. Jako dodatek - Nunchuk. (autolevel - czyli posiadanie go na pokładzie pozwala na samostabilizację platformy?)


Doczytalem, ze start nie musi sie odbywac z rownej powierzchni, tak samo jak kalibracja żyroskopów.

I to właściwie tyle :)
Awatar użytkownika
spetial
Posty: 274
Rejestracja: poniedziałek 06 wrz 2010, 13:49
Lokalizacja: Sankt Augustin

Post autor: spetial »

To Wii Motion Plus to jest to : Link ??
cholo
Posty: 3371
Rejestracja: środa 03 lut 2010, 21:38
Lokalizacja: Kraków

Post autor: cholo »

Marcin pisze:Czyli tak:
tak
spetial pisze:To Wii Motion Plus to jest to : Link ??
albo to:
http://cgi.ebay.pl/WII-MOTION-PLUS-MOTI ... 43a204ebf6
Ostatnio zmieniony czwartek 28 paź 2010, 14:51 przez cholo, łącznie zmieniany 1 raz.
Awatar użytkownika
Rurek
Posty: 16419
Rejestracja: środa 10 mar 2010, 15:21
Lokalizacja: AIP ENR 5.5 - AAA 153 :-)

Post autor: Rurek »

@Marcin - tak jak napisałeś, pierwsze dwie pozycje obowiązkowo (plus COŚ do przesyłu danych Ardu<-->PC no chyba że wsadzasz arduino z usb na pokładzie i nie prawda że wtedy działa pewniej i szybciej- działa tak samo), nunchuck (albo alternatywna wersja akcelerometrów, w wątku na RCG są już dwie propozycje ALE JESZCZE NIE ODPALONE przez nikogo)
No i z tym przyzwyczajeniem do KK musisz skończyć ;-) ....WiiCopter ma cechy zawodowych FC więc nie musi startować z idealnie wypoziomowanych powierzchni

@spetial - tak jak napisałem wcześniej, szkoda kasy na oryginalne nintendo WMP bo klony chińskie mają lepsze żyroskopy.
infekcja FPV postępuje w zastraszającym tempie...
ODPOWIEDZ