Jak działa failsafe w multiwii ?
Moderatorzy: moderatorzy2014, moderatorzy
Jak działa failsafe w multiwii ?
Może mi ktoś wytłumaczyć co się dokładnie dzieje kiedy zadziała failsafe w kodzie multiwii ?
Strona mojej kochanej córeczki:
http://www.igunia.pl
Jak nie wiesz na co przeznaczyć 1% odpisu z podatku - zajrzyj.
http://www.igunia.pl
Jak nie wiesz na co przeznaczyć 1% odpisu z podatku - zajrzyj.
Dzieki, pytam się bo powiem wam, że trochę zgłupiałem po tym co twórcy Open Pilota twierdzą na temat działania failsafe w copterach. Powiem szczerze, że nie rozumiem takiego podejścia.
Failsafe w OP objawia się odcięciem silników :)
"When CC detects either a failsafe signal from the receiver, or gets no updates for a few hundred milliseconds it then disables all motors for safety. "
Failsafe w OP objawia się odcięciem silników :)
"When CC detects either a failsafe signal from the receiver, or gets no updates for a few hundred milliseconds it then disables all motors for safety. "
Strona mojej kochanej córeczki:
http://www.igunia.pl
Jak nie wiesz na co przeznaczyć 1% odpisu z podatku - zajrzyj.
http://www.igunia.pl
Jak nie wiesz na co przeznaczyć 1% odpisu z podatku - zajrzyj.
Przypomnę tylko że twórcą kodu FailSafe zaimplementowanego w Multiwii jest Miś. Zainspirowany przeze mnie po tym jak jednemu z głównych oblatywaczy MultiWii z RCG quad odleciał w siną dal z powodu braku tegoż ficzera pod żadną postacią. Z quadem odleciało też GoPro i tyle go widzieli
Dla nieoczytanych wspomnę jeszcze o jednym - dyskusja co lepsze - spadający jak cegła czy z pewną inteligencją toczyła sie długo i burzliwie na RCG w wątku o MultiWii. Z tego względu implementacja w kodzie jest dobrowolna, kto chce to używa, kto jest innego zdania i woli latające cegłówki, odhacza i ma co chce
Ja zaliczam się do grupy chcących miec troszkę inteligentne FS w kodzie koptera a nie obsługiwane z odbiornika RC albo też chore pomysły ze zdalnymi switchami...chociaż - ostatnio poruszana jest kwestia której póki co nie da się obejść - otóż quad robiący fikołki może się "zawiesić", tzn wysypuje się wykonywany program (gdy kopter jest za długo w pozycji plecowej). W takim wypadku Arduino nie gasi pulsów na wyjściach PWM i tyle pałeru ile było przed zwiechą na silnikach...tyle niestety zostaje na PWMach a co za tym idzie na silnikach
Dla nieoczytanych wspomnę jeszcze o jednym - dyskusja co lepsze - spadający jak cegła czy z pewną inteligencją toczyła sie długo i burzliwie na RCG w wątku o MultiWii. Z tego względu implementacja w kodzie jest dobrowolna, kto chce to używa, kto jest innego zdania i woli latające cegłówki, odhacza i ma co chce
Ja zaliczam się do grupy chcących miec troszkę inteligentne FS w kodzie koptera a nie obsługiwane z odbiornika RC albo też chore pomysły ze zdalnymi switchami...chociaż - ostatnio poruszana jest kwestia której póki co nie da się obejść - otóż quad robiący fikołki może się "zawiesić", tzn wysypuje się wykonywany program (gdy kopter jest za długo w pozycji plecowej). W takim wypadku Arduino nie gasi pulsów na wyjściach PWM i tyle pałeru ile było przed zwiechą na silnikach...tyle niestety zostaje na PWMach a co za tym idzie na silnikach
infekcja FPV postępuje w zastraszającym tempie...
no rurku kwestia dobrowolności jest niezaprzeczalna ( jak w reglach )
No ale założenie:
gets no updates for a few hundred milliseconds it then disables all motors for safety
i latając kopterem (tutaj jestem bardziej teoretykiem) nie można zakładać (przy takim upakowaniu elektroniki na cm2), że nie trafi nam sie chwilowy zanik sygnału. Co w tym przypadku oznacza tylko i wyłącznie jedno.
No ale założenie:
gets no updates for a few hundred milliseconds it then disables all motors for safety
i latając kopterem (tutaj jestem bardziej teoretykiem) nie można zakładać (przy takim upakowaniu elektroniki na cm2), że nie trafi nam sie chwilowy zanik sygnału. Co w tym przypadku oznacza tylko i wyłącznie jedno.
Strona mojej kochanej córeczki:
http://www.igunia.pl
Jak nie wiesz na co przeznaczyć 1% odpisu z podatku - zajrzyj.
http://www.igunia.pl
Jak nie wiesz na co przeznaczyć 1% odpisu z podatku - zajrzyj.
swego czasu napisalem na arduimu failsafe 333 (copyright by cholo ;)) wykorzystujacy czujnik cisnienia.
3 sekundy wisi, potem opada ze stala predkoscia 3 m/s i gdy przez 3 sekundy nie ma zmiany wysokosci wylacza silniki.
samo mi sie nigdy nie wlaczylo ale jeden test zrobilem (swoja droga warto zobaczyc jak dobrze dziala stare baro scp1000 z odswiezaniem 2Hz)
3 sekundy wisi, potem opada ze stala predkoscia 3 m/s i gdy przez 3 sekundy nie ma zmiany wysokosci wylacza silniki.
samo mi sie nigdy nie wlaczylo ale jeden test zrobilem (swoja droga warto zobaczyc jak dobrze dziala stare baro scp1000 z odswiezaniem 2Hz)
Potrzebuję kodu failsafe do MultiWii by Kuki z użyciem baro
Potrzebuję kodu failsafe do MultiWii by Kuki z użyciem baro - co należy wpisać aby właśnie dodać failsafe oparty o użycie baro (Miś-owy używa tylko podanych na sztywnowartości czasowych). W programowaniu jestem słaby stąd powyższa prośba o wsparcie :)cholo pisze:swego czasu napisalem na arduimu failsafe 333 (copyright by cholo ;)) wykorzystujacy czujnik cisnienia.
nie rozumiem o czym piszesz ....
FailSafe jest funkcjonalnością związaną z utratą zasięgu przez system RC a nie z utratą wysokości....
Poza tym w kodzie deklarujesz, empirycznie dobrane wartości tak aby kopter miękko siadał. To nie są sztywne wartości tylko ustalone przez Ciebie w trakcie testów opadania.
Wartości czasowe też ustalasz na podstawie własnych przemyśleń
FailSafe jest funkcjonalnością związaną z utratą zasięgu przez system RC a nie z utratą wysokości....
Poza tym w kodzie deklarujesz, empirycznie dobrane wartości tak aby kopter miękko siadał. To nie są sztywne wartości tylko ustalone przez Ciebie w trakcie testów opadania.
Wartości czasowe też ustalasz na podstawie własnych przemyśleń
infekcja FPV postępuje w zastraszającym tempie...
-
- Posty: 151
- Rejestracja: piątek 06 sty 2012, 00:47
- Lokalizacja: Nowy Dwór Gdański
Czyli rozumiem kolego Rurek,że jak podczas lotu wyłączymy nadajnik aparatury to powinna zadziałać funkcja failsafe i copter powinien zachować się tak jakie ma ustawienia w configu?(czyli wylądować bez problemu :) )A czy tryb stable włącza się wtedy?
Ps.Ostatnio miałem taką sytuację,że straciłem orientację wysoko od ziemi i niestety skończyło się spadnięciem quada z wysokości około 200m na ziemię,jeśli byłoby tak jak piszę to mógłbym go wtedy uratować ;).
Ps.Ostatnio miałem taką sytuację,że straciłem orientację wysoko od ziemi i niestety skończyło się spadnięciem quada z wysokości około 200m na ziemię,jeśli byłoby tak jak piszę to mógłbym go wtedy uratować ;).
Ostatnio zmieniony niedziela 11 mar 2012, 22:25 przez slawek2011, łącznie zmieniany 1 raz.
Dokładnie tak to działa - po wykryciu braku pulsów PPM (lub zerowy, zdefiniowany w RC stan kanału gazu) kopter się poziomuje, po zadanym czasie z zadaną prędkością opada (albo się wznosi w kosmos jeśli się zakoduje parametr poziomu throttle na wznoszenie ) i po zadanym czasie wyłącza silnikislawek2011 pisze:...podczas lotu wyłączymy nadajnik aparatury to powinna zadziałać funkcja failsafe i copter powinien zachować się tak jakie ma ustawienia w configu?(czyli wylądować bez problemu :) )A czy tryb stable włącza się wtedy?...
infekcja FPV postępuje w zastraszającym tempie...
-
- Posty: 151
- Rejestracja: piątek 06 sty 2012, 00:47
- Lokalizacja: Nowy Dwór Gdański
W sofcie http://telnet.r-ce.pl/qua...baro_mag_v4.zip ,który obecnie posiadam na pokładzie odpowiedzialny za failsafe jest kod:
#define FAILSAFE // Alex: comment this line if you want to deactivate the failsafe function ----> włączanie i wyłączanie trybu
#define FAILSAVE_DELAY 10 // Guard time for failsafe activation after signal lost. 1 step = 0.1sec - 1sec in example -----> czas,po którym aktywuje się funkcja failsafe od momentu utraty sygnału-każda jednostka to 0,1 sekundy, w tym przypadku 1 sekunda
#define FAILSAVE_OFF_DELAY 200 // Time for Landing before motors stop in 0.1sec. 1 step = 0.1sec - 20sec in example ----->czas lądowania do momentu wyłączenia silników,w tym przypadku 20 sekund
#define FAILSAVE_THR0TTLE (MINTHROTTLE + 200) // Throttle level used for landing - may be relative to MINTHROTTLE - as in this case -----> ustawianie obrotów silnika podczas lądowania ,w tym przypadku wartość zadeklarowana na początku configu jako MINITHROTTLE +200
Czyż tak?Jeśli popełniłem błąd to proszę o poprawę.A jak to się ma w praktyce?-Czy prędkość opadania w tym przypadku jest tak ustawiona,że będzie opadał powoli czy odleci?Nie wiem czy dobrze rozumuję,ale pewnie zależy to indywidualnie od każdego modelu,tj. przede wszystkim od wagi koptera a co za tym idzie od momentu obrotów,w którym następuje wznoszenie?
#define FAILSAFE // Alex: comment this line if you want to deactivate the failsafe function ----> włączanie i wyłączanie trybu
#define FAILSAVE_DELAY 10 // Guard time for failsafe activation after signal lost. 1 step = 0.1sec - 1sec in example -----> czas,po którym aktywuje się funkcja failsafe od momentu utraty sygnału-każda jednostka to 0,1 sekundy, w tym przypadku 1 sekunda
#define FAILSAVE_OFF_DELAY 200 // Time for Landing before motors stop in 0.1sec. 1 step = 0.1sec - 20sec in example ----->czas lądowania do momentu wyłączenia silników,w tym przypadku 20 sekund
#define FAILSAVE_THR0TTLE (MINTHROTTLE + 200) // Throttle level used for landing - may be relative to MINTHROTTLE - as in this case -----> ustawianie obrotów silnika podczas lądowania ,w tym przypadku wartość zadeklarowana na początku configu jako MINITHROTTLE +200
Czyż tak?Jeśli popełniłem błąd to proszę o poprawę.A jak to się ma w praktyce?-Czy prędkość opadania w tym przypadku jest tak ustawiona,że będzie opadał powoli czy odleci?Nie wiem czy dobrze rozumuję,ale pewnie zależy to indywidualnie od każdego modelu,tj. przede wszystkim od wagi koptera a co za tym idzie od momentu obrotów,w którym następuje wznoszenie?