Jak już powstał wątek o trybie samolotowym to napiszę tu.
Popracowałem trochę nad trybem samolotowym w MWC.
Soft do testów tu:
http://members.upcpoczta.pl/r.bialy6/MK ... 9c_MIS.zip
PO PIERWSZE TO ZRZUT PROSTO Z MOICH TESTÓW, więc trzeba sobie zdefiniować odbiornik itp. (ja testuję z modułem RFM22, wiec jest odkomentowane ELERES_RX).
Po drugie ze względu na problemy z GUI w wersji "MultiWiiConfSERVO" proponuję używanie standardowego GUI do multiwii, a trymy, zakresy i rewersy ustawić w config.h.
Co zmieniłem... No, dużo
1. W trybie samolotowym automatycznie blokowane jest uzbrajanie drążkami
2. Ustawienia w config.h specyficzne dla samolotów:
#define SERVO_OFFSET - offsety serw czyli trymy - mogą być dodatnie lub ujemne.
#define SERVO_RATES - zakres i rewersy serw (wartość ujemna załącza rewers)
Edit: W softach od 2.21 ustawienia te robimy programem SerwoMiscConf.
Kolejnośc serw jest opisana w config.h
Teraz dla nawigacji GPS czyli dla powrotu do domu i failsafe:
#define RETURN_ALTITUDE - wysokość w metrach na jakiej ma wracać przy failsafe
Edit: W softach od 2.21 ustawienie RETURN_ALTITUDE robimy programem SerwoMiscConf - w zakładce MISC jako F/S Altitude (podajemy w metrach).
Reszty ustawien od failsafe nie ruszamy.
#define ELEVATORCOMPENSATION - kompensacja sterem wysokości w zakrętach, aby nie opadał przy zakrętach.
#define MIN_SPEED - minimalna predkość lotu w km/h - używana blisko bazy.
Edit: W softach od 2.21 ustawienie MIN_SPEED robimy programem SerwoMiscConf. Zamiast prędkości podaje się minimalny poziom gazu. W zakładce MISC jako F/S Throttle.
#define CRUICE_SPEED - prędkość powrotu do domu w km/h.
W dołączonym config.h są powłączane dość mocne filtry dla gyro, więc nie powinno być problemu z wibracjami i złą stabilizacją.
3. PID'y:
PIDALT: P: współczynnik siły utrzymywania wysokości. I: nieużywany. D: maksymalny kąt wznoszenia/opadania w stopniach (default 20).
PIDNAVR: P: współczynnik siły regulacji kierunku przy powrocie do domu. I: nieużywany. D: maksymalny kąt przechyłu samolotu w stopniach (oczywiście patrzymy na te ułamki, czyli 0.020 to 20 stopni).
Pozostałe PID'y jak w standardowym MWC.
3. Failsafe:
Po załączeniu failsafe włącza się powrót do domu z utrzymaniem wysokości zadeklarowanej w config.h i prędkości CRUICE_SPEED. Po osiągnięciu domu silnik jest wyłączany, serwo wysokości centrowane, i w tym stanie samolot kąży nad bazą aż do przyziemienia. Oczywiście odzyskanie łączności RC przerywa failsafe i można znów sterować.
Jeśli nie było fix'a GPS w momencie startu, lub w momencie załączenia failsafe, to silnik zostaje wyłączony, ster wysokości na 0 i szybowanie ze stabilizacją prosto aż do przyziemienia. To samo się dzieje jeśli nie mamy GPS'a.
4. UZbrojenie/rozbrojenie tylko za pomocą przełącznika na którymś z AUX'ów.
Jak gaz nie jest na dole to nie da się uzbroić/rozbroić przełącznikiem. Jeśli podczas załączania mamy załączony przełącznik ARM, to płytka mruga diodami do czasu jego wyłączenia.
Edit: W softach od 2.22 można używać normalnego uzbrajania/rozbrajania drążkami jak w przypadku Copterów. Po 15 sekundach pracy silnika MWC blokuje możliwość rozbrojenia, więc nie ma obawy o przypadkowe rozbrojenie w trakcie lotu.
5. Włączenie BARO powoduje próbę utrzymania wysokości przy pomocy steru wysokości - takiej jak w momencie włączenia BARO.
6. Włączenie MAG'a powoduje utrzymywanie aktualnego kierunku lotu przy pomocy wskazań magnetometru. Przy RTH i Failsafe zamiast magnetometru używany jest kurs lotu z GPS'a (odporny na pola magnetyczne z przewodów).
7. Włączenie GPS HOME powoduje powrót do domu (prawie jak przy failsafe), z tą róznicą że można używać drążków, i obroty (czyli prędkość) standardowo regulujemy gazem. Aby włączyć automatyczne sterowanie obrotami musimy dać THROTTLE na maksimum. Wtedy gaz będzie regulowany tak aby leciał z prędkością CRUICE_SPEED. Po osiągnięciu domu silnik zostanie wyłączony, ale zmniejszenie THROTTLE z maksymalnej wartości pozwoli na ponowne włączenie silnika.
8. GPS HOLD powinien działać tak samo jak GPS HOME (ale nie sprawdzałem).
Dobra, starczy na razie
Aaa jeszcze jedno... Predkosc CRUICE_SPEED to oczywiście względem ziemi (nie mamy rurki Pitota, więc przy silnym wietrze może być zgrzyt, choć regulacja silnikiem może odbywać się w prawie pełnym zakresie mocy silnika. Od 0 do 95%.