Skocz do zawartości

Klapolotki w OpenTX


Market
 Udostępnij

Rekomendowane odpowiedzi

Chcę sobie ustawić klapolotki na sliderze. Trywialne rozwiązanie jest takie, że w mikserach dodaję wartość slidera do kanału lotek. Ale to rozwiązanie tylko przesuwa punkt zerowy lotek w dół przez co ruch lotki w dół opiera się na -100, czyli wychyla się w dół mniej niż bez klap. Najlepiej przykład:

Normalnie lotka idzie -100% (w dół) do +100% (w górę), czyli sumaryczny skok jest 200.

Teraz "klapy" (czyli obie lotki) idą na -60% w dół.

Ruch lotek będzie taki

Lotka w dół: od -60% do ograniczenia -100%, czyli poszła w dół tylko o 40

Lotka w górę: od -60% do +40%, czyli poszła w górę o pełne 100

Czyli lotka wychyla się o 40 w dół i o 100 w górę, zatem sumaryczny skok zmniejsza się z 200 do 140 - skuteczność lotek spada.

 

Chcę to ustawić tak, żeby wykorzystać pełny możliwy ruch lotek:

 

Np.

Klapy w dół na -30

Lotka w dół od -30 do -100, czyli o 70

Lotka w górę od -30 do +100, czyli o 130

Sumaryczny skok 200

 

Np.

Klapy w dół na -60

Lotka w dół od -60 do -100, czyli o 40

Lotka w górę od -60 do +100, czyli o 160

Sumaryczny skok 200

Itd. itp.

 

Czyli bez względu na wychylenie "klap" na sliderze, zachowuję pełny sumaryczny skok lotek i ich ruch od -100 do +100.

 

Ktoś ma pomysła jak to ustawić? A może ktoś ma to już tak ustawione.

Odnośnik do komentarza
Udostępnij na innych stronach

cześć, mam pytanie - czy latałeś już na ustawieniach ograniczających całkowite wychylenie lotek z opuszczonymi klapami? pytam bo sam ustawiłem w ten sposób klapolotki mikserami w FS-i6x a model jeszcze nie latał i zastanawiam się jak będzie reagował na lotki po wychyleniu klap?

Inna sprawa to czy będziesz potrzebował takich wychyleń przy opuszczonych klapach - chodzi mi o to że klapy używane są chyba tylko do lądowania (ew. startu)? 

Jeszcze tak czysto teoretycznie (nie znam możliwości openTXa) - nie da się ustawić jakiegoś trybu sportowego tylko dla lotek? co prawda trzeba by używać 2 przełączników w nadajniku do opuszczenia klap i zmiany maksymalnych wychyleń ale jak się nie ma co się lubi...

Odnośnik do komentarza
Udostępnij na innych stronach

Jeżeli do kanału lotek jest tylko po prostu dodana stała wartość slidera, to ruch lotek jest ograniczony i im bardziej wychylone klapy tym mniejsza skuteczność lotek.

 

W dniu 26.10.2023 o 23:10, roger298 napisał:

Inna sprawa to czy będziesz potrzebował takich wychyleń przy opuszczonych klapach - chodzi mi o to że klapy używane są chyba tylko do lądowania (ew. startu)? 

 

Tak właśnie - chciałbym mieć pełną skuteczność lotek, szczególnie w fazie krytycznej jak lądowanie.

 

Spróbuję narysować o co mi chodzi, to może lepiej to będzie widoczne i może nasunie to jakieś rozwiązanie.

Odnośnik do komentarza
Udostępnij na innych stronach

W dniu 24.10.2023 o 01:05, Market napisał:

Lotka w dół: od -60% do ograniczenia -100%, czyli poszła w dół tylko o 40

Lotka w górę: od -60% do +40%, czyli poszła w górę o pełne 100

[...]sumaryczny skok zmniejsza się z 200 do 140

Sumaryczny skok zawsze będzie 200%, ale fizyczny ruch serwa w górę będzie mniejszy - to fakt.

 

W dniu 24.10.2023 o 01:05, Market napisał:

Ktoś ma pomysła jak to ustawić? A może ktoś ma to już tak ustawione.

Jak na moje to tego nie zrobisz. Przynajmniej na poziomie programowym. W openTX nie widziałem opcji rozszerzenia sygnału sterującego serwem.

A jak byś nie kombinował, nie dodasz "z powietrza" w górny zakres wartości, o którą przesuwasz serwo w dół.

Teoretycznie (piszę teoretycznie bo nie stosowałem tego) rozwiązaniem byłoby zastosowanie serwo expandera, który zwiększa zakres pracy od 500 do 2500us.

Odnośnik do komentarza
Udostępnij na innych stronach

43 minuty temu, Jerzy_R napisał:

Sumaryczny skok zawsze będzie 200%

 

Zdecydowanie nie. Przy prostym dodawaniu wartości slidera do kanału lotki zmniejsza się jej sumaryczny skok. Zmniejsza się tym bardziej im większe jest wychylenie klapolotki. Pokazałem to na wyliczeniach.

Oczywiście przy milczącym, ale oczywistym założeniu, że lotka nie wychyli się więcej niż jej fizyczne ograniczenie. Narysuję, to stanie się jaśniejsze.

 

Godzinę temu, Jerzy_R napisał:

A jak byś nie kombinował, nie dodasz "z powietrza" w górny zakres wartości, o którą przesuwasz serwo w dół.

 

Zdecydowanie można w mikserach dodać wartość dowolnej innej zmiennej: innego kanału, drążka, potencjometru, itd.

I to jest może właściwy trop - dodać jakąś wartość do górnego zakresu ruchu serwa. Tylko jaką i skąd ją wziąć?

Odnośnik do komentarza
Udostępnij na innych stronach

Serwo sterowane jest impulsami w zakresie 1000-2000us.

100% = 2000us

    0%  = 1500us

-100% = 1000us

Czyli ruch serwa "idzie" o +-500us.

 

Przesuwasz środek serwa na -30% (-150us) czyli będziesz miał

100% = 1850us

   0% = 1350us  <- "sztuczne" 0%

-100% = 1000us

 

Powodzenia życzę w wysterowaniu serwa w zakresie ponad 500us do góry.

Odnośnik do komentarza
Udostępnij na innych stronach

21 godzin temu, Jerzy_R napisał:

Powodzenia życzę w wysterowaniu serwa w zakresie ponad 500us do góry.

 

Do tego nie potrzeba powodzenia tylko wiedzy.

Tak naprawdę to nie +-500us, tylko +-512us. Ale żeby pasowało do Twoich wyliczeń ograniczyłem wyjścia, żeby było 1500 +- 500, czyli 1000÷2000.

I teraz przy takim ustawieniu miksera:

 

20231029_200608.thumb.jpg.2cb50096926f112801a7d4782969de4b.jpg

 

zakres ruchu serwa będzie taki:

 

 

Gdy drążek jest w neutrum to jest wyliczone przez Ciebie 1350us, a w skrajnych położeniach jest 1000us i 2000 us. Czyli w dół 350us, a w górę 650us, a więc da się, żeby poszło więcej niż 500us.

 

Odnośnik do komentarza
Udostępnij na innych stronach

15 godzin temu, Jerzy_R napisał:

A sprawdzałeś ruch serwa w odpowiedzi na ruch drążka?

Bo coś mi się wydaje, że nie...

A takie ustawienia to se można...

 

Oczywiście, że sprawdziłem. I tę niedogodność opisałem w pierwszym poście.

Ale skoro (wbrew temu co sugerowałeś) da się więcej niż te 500us w górę, to da się też mniej niż 500us w dół. Czyli możliwości są. Stąd pytanie z pierwszego posta - Czy ktoś to ma już tak ustawione, albo wie jak to pożenić.

 

Odnośnik do komentarza
Udostępnij na innych stronach

1 godzinę temu, Market napisał:

Oczywiście, że sprawdziłem.

No raczej nie, pisałeś cały czas o mikserach ale nic o martwym zakresie drążka.

 

Teraz, jeszcze raz dla słabszych... 

Wstawiając w mikserze  -30% zmieniasz domyślny środek sygnału na wyjściu  o 150us

100% = 1850us

    od 0% do góry jest pełne 500 (dlatego monitor pokazuje 70%)

0% = 1350us

     w dół zostało 350us bo 150 "ukradłeś/obciąłeś"

-100% = 1000us

No inaczej się nie da, chyba, że zastosujemy prezydencką matematykę...

 

Może spróbujemy tak:

Żeby było prościej, kan. 1 i 2 to lotki i ich ustawienia w mikserze.

Na wyjściu kan. 2 ograniczyłem zakres pracy serwa, by go nie męczyć...

02.thumb.jpg.9623f7d7da84e23b51f3b7d0d21fdc9c.jpg

 

 

Poniżej dwa takie same serwa, dolne na kanale 1, górne na kanale 2.

W 12 sekundzie uruchamiam zdefiniowany miks...

 

Ale, ponieważ ja się nie znam, to pozostawiam Tobie "wymyślenie/znalezienie" sposobu jak to zrobiłem.

Dla ułatwienia dodam:

1. nie użyłem expandera serwa, o który wcześniej pisałem,

2. wujek Google Twoim przyjacielem jest.

 

Jak znajdziesz sposób to się pochwal. Chętnie przytulę taką wiedzę.

 

 

Edytowane przez Jerzy_R
Korekta stylistyczna.
Odnośnik do komentarza
Udostępnij na innych stronach

Nie kumam.

Najpierw pisałeś, że się tego nie da zrobić, przynajmniej na poziomie programowym i że rozwiązaniem byłoby zastosowanie serwo expandera. A teraz pokazujesz efekt, który wydaje się rozwiązuje moje zagadnienie i piszesz, że jest zrobiony bez serwo expandera - czyli jednak na poziomie programowym OpenTX? To jak w końcu - da się czy się nie da? I jeszcze robisz z rozwiązania tajemnice i każesz zgadywać 😐

A możesz pokazać w tym rozwiązaniu ruch drążka razem z ruchem serw?

Odnośnik do komentarza
Udostępnij na innych stronach

openTX nie ma tu chwilowo nic do roboty. To co widać to jest rozszerzenie zakresu pracy serwa.

Nie będę powielał mądrych opisów z neta. Przykładowo:

- na pfmrc i ostatni wpis 

 - na forum trzepaczek do jajek już jest więcej i nawet zdjęcia są:

https://www.heli-team.pl/forum/viewtopic.php?t=1921

Jakie wartości oporników są potrzebne w Twoim przypadku to już trzeba by było dobrać eksperymentalnie.

Przypuszczam, że wspomniane w opisach 1,5 - 2kOhm będzie wystarczające

(u mnie są znalezione na szybko 510 ohm ale jak widać za małe bo zakres pracy serwa zdecydowanie za duży).

 

openTX:

 

Ustawienia kanałów lotek

kan.1-5.thumb.jpg.a6aea41cfe4fa1d1653726b397b3abd7.jpg

 

Wyjścia, ograniczamy fizyczny ruch serwa

719807886_wyjcia.thumb.jpg.9da401e9fa4e34b6310d615549c0409f.jpg

 

Funkcje specjalne:

reakcja zmiennej GV2 na przełącznik SA

FS.thumb.jpg.5f75a6a97af5b449023fbb88198cbec8.jpg

 

Plik X9D.otx do wczytania do Companion

 

Tak bym to widział, ale może ktoś swoje 3 grosze dorzuci...

 

X9D.otx

Odnośnik do komentarza
Udostępnij na innych stronach

19 godzin temu, Market napisał:

możesz pokazać w tym rozwiązaniu ruch drążka razem z ruchem serw

 

Teraz spróbujemy przerobić teorię w cokolwiek.

Do tego filmu, w serwie wymieniłem oporniki na 2 kOhm, a i tak musiałem ograniczyć jego ruch do 50% wychyleń.

"Tradycyjnie" serwo:

dolne, kan. 1 - bez modyfikacji

górne, kan. 2 - dodany mod opornikowy

W ostatnich sekundach widać jak dolne serwo reaguje na wyłączenie i włączenie miksu na kan. 1

ruch w prawo i cofnięcie (jako wychylenie lotki w dół).

 

Przypuszczam jednak, że z serwo expanderem praca byłaby dokładniejsza.

Koszt takiego ustrojstwa u mainfriendów niewielki, zamówię sobie, to się zobaczy :)

Odnośnik do komentarza
Udostępnij na innych stronach

No i podziękował

 

Ciekawe rozwiązanie i choć nie w pełni rozwiązuje mój problem, ale jest materiał wyjściowy do przemyślenia.

A nie w pełni rozwiązuje problem, bo:

- wymaga elektrycznej ingerencji w serwo lub zastosowania dodatkowego ustrojstwa

- trudno jest jednoznacznie określić jakie powinny być wartości w tych ustawieniach: tutaj dodatek w miksie -40 i zmiana w end poincie serwa z 50 do 100, żeby mieć klapy na 20 - podejrzewam, że to może też zależeć od wielkości dodatkowego potencjometru, czyli niestety dobór metodą doświadczalną

- nie bardzo podoba mi się przestawianie end pointów - po zmontowaniu układu mechanicznego serwo-orczyk-popychacz-ster wykonuję ustawienie end pointów raz jeden, zgodnie z fizycznymi ograniczeniami ruchu serwa lub powierzchni sterowej i tego więcej nie ruszam; i fizycznie te punkty się przecież nie zmieniają bez względu na to czy klapy są wysunięte czy schowane - rozumiem, że to taka "programistyczna" sztuczka, żeby uzyskać zmianę charakterystyki ruchu serwa w jedną i drugą stronę, ale bardziej koszernie byłoby uzyskać to mikserami na poziomie logicznym, bez ruszania fizycznych end pointów

- i najważniejsze - potrzebuję, żeby klapy wysuwały się proporcjonalnie do ruchu slidera, a nie o stałą wartość (na pstryczek) - takie wysunięcie na pstryczek jest w miarę proste przy użyciu podstawowych możliwości OpenTX, co pokażę poniżej, ale nie o takie uproszczone rozwiązanie mi chodziło

 

Zgodnie z deklaracją trochę rozrysowania mojego zagadnienia.

 

Normalnie lotki chodzą wg takiej krzywej/prostej (celowo pomijam różnicowość, itp.). -100% do +100% ruchu drążka daje -100% do +100% ruchu serwa. Drążek w neutrum 0% daje ster w neutrum również 0%.

lotki1.png.e5777af084766f6513eb2fe32945f06b.png

 

Rozwiązania klapolotek (ang. flaperon), które widziałem w necie polegały na prostym dodaniu wartości slidera w miksie lotek (ewentualnie włączane na pstryczek). To powoduje przesunięcie całej charakterystyki w dół:

lotki2.png.c712e031e59b5dbc1bcfbd7c23865967.png

 

Drążek w neutrum daje np. -60% wychylenia klapy i to jest OK. Ale teraz wadą tego rozwiązania jest ograniczenie ruchu serwa - przy +100% drążka (z prawej) jest mniej niż +100% lotki w górę, a przy ruchu w dół lotka osiąga -100% już po częściowym ruchu drążka w lewo i dalszy ruch drążka w lewo nic już nie zmienia - jest martwa strefa.

 

Ja potrzebuję, żeby ruch drążka przekładał się na ruch lotki wg takiej łamanej:

lotki3.png.6f94cbc308a76a8c10dd18b62e37e524.png

 

Tak jak wcześniej drążek w neutrum 0% daje np. -60% wychylenia lotki-klapy. I teraz drążek na +100% (w prawo) daje +100% lotki w górę, a drążek na -100% (w lewo) daje -100% lotki w dół - płynnie, bez martwej strefy.

I tu właściwie trochę sam sobie odpowiedziałem, bo niejeden zauważy, że to wypisz wymaluj zastosowanie krzywych w OpenTX - wystarczy sobie zdefiniować taką krzywą i wmontować ją w definicje mikserów + ewentualne włączanie na pstryczek. Ustawienie jest proste - Na dole i na górze lotka zawsze wychyla się proporcjonalnie na 100%, czyli swoje maksymalne położenia wynikające z mechaniki układu serwo-lotka. A w neutrum drążka ma tyle % wysunięcia klap na ile % ustawi się punkt środkowy. I nie trzeba do tego żadnych dodatkowych sprzętów, ani ingerencji w elektronikę serwa, ani ingerencji w end pointy.

 

Ale jest ale. Krzywa musi być zdefiniowana stałymi położeniami punktów zafiksowanymi przy ustawianiu modelu, bez możliwości zmiany tych punktów w locie - przynajmniej ja nie znam możliwości uzależnienia ustawienia punktu krzywej od slidera, czy choćby od zmiennej globalnej. Dlatego takie uproszczone, zafiksowane rozwiązanie nie rozwiązuje mojego problemu. Szukam dalej lub może ktoś wpadnie na jakiś pomysł.

 

Odnośnik do komentarza
Udostępnij na innych stronach

Warunek: model wytrymowany, lotki ustawione jak po trymowaniu ale przywrócony mechaniczny środek serwa.

 

Jakaś tam nazwa zmiennej GV1

FL.jpg.80684300134da6f7a71604e9bd5d675a.jpg

 

Wirtualny kanał sterowany suwakiem (np. lewym) o zdefiniowanej krzywej CV1

1791565205_wejcia.jpg.d8107d4fc7241fac64d95bc60fee2e24.jpg

 

Krzywa CV1

krzywa.thumb.jpg.5e1932afe538c1bac6aafdd003f3f9f7.jpg

 

Miksy zostawione "dziewicze"

miksy.jpg.e923d6766c57d3f1f9ce406b6d4d66e0.jpg

 

W wyjściach w polu Subtrim przypisujemy zmienną GV1

1727289501_wyjcia.thumb.jpg.bffc884898f400addf50cd8886ccf3be.jpg

 

Funkcje specjalne

FS.jpg.0b92c12b3548d9779984e4224014c6cf.jpg

 

 

X9D.otx

 

Edyta:

 

 

 

 

Edytowane przez Jerzy_R
podmiana rysunku "Wyjścia" i pliku X9D.otx
  • Lubię to 1
Odnośnik do komentarza
Udostępnij na innych stronach

No szacun. Dzięki.

 

Nie wiedziałem, że Akcja Adjust GV działa w trybie ciągłym, to znaczy ciągle aktualizuje zmienną globalną jeżeli dany Switch jest aktywny. Myślałem, że tak jak inne akcje na Switch, że wykonuje się tylko raz po przełączeniu Switcha. No proszę - człowiek się ciągle czegoś nowego fajnego dowiaduje :)

 

Drobna korekta, że Subtrim na kanale 5 też powinien być GV1: TRM jak na kanale 1 (w sensie też + a nie -).

No i ja jestem minimalistą, więc bym zrobił mapowanie slidera LS -100% do +100% na zakres 0÷60 samą wagą -30 i offsetem -30 bez użycia krzywej. Ale może faktycznie użycie krzywej jest czytelniejsze.

Odnośnik do komentarza
Udostępnij na innych stronach

 

18 godzin temu, Market napisał:

Drobna korekta, że Subtrim na kanale 5 też powinien być GV1: TRM jak na kanale 1 (w sensie też + a nie -)

Powinien :) 

Żeby nie było za słodko, należy pamiętać by nie używać w zakładce >Wyjścia< opcji Trims=>Subtrims czyli szybkiego przepisania trymów.

Użycie tego usunie wpis o zastosowaniu zmiennych globalnych w Subtrimach.

 

18 godzin temu, Market napisał:

No i ja jestem minimalistą

No normalnie strach się nie bać, co wymyślisz następnym razem...

 

18 godzin temu, Market napisał:

Dzięki.

Poniżej jest ikonka  kawa.JPG.1deecf3295c22ab2d7934f3891978d7e.JPG

 

 

Odnośnik do komentarza
Udostępnij na innych stronach

 

 

Temat nie dawał mi spokoju. Chciałem takiego rozwiązania, które nie ingeruje w fizyczne ustawienia serw, czyli bez ruszania subtrimów i endpointów. Zatem chciałem to zrobić tylko miksami.

No i wymyśliłem :)

 

Pierwsze rozwiązanie zrobiłem przy pomocy skryptu lua. Skrypt wyliczał całe krzywe dla lotek w zależności od położenia slidera, na wejście dostawał wychylenie drążka lotek, a na wyjściu dawał położenie każdej lotki wg wyliczonej krzywej. Rozwiązanie działało, ale było nieeleganckie, jak włamanie do sklepu i to tylnymi drzwiami.

 

Więc zrobiłem drugie rozwiązanie z wykorzystaniem definicji krzywych w OpenTX. Wprawdzie też angażowało skrypt lua, ale skrypt tylko przesuwał punkt środkowy zdefiniowanej krzywej w zależności od położenia slidera. I potem tylko zastosowanie krzywej w definicji miksera. Rozwiązanie o tyle fajne, że na ekranie krzywych widać było jak się krzywa ugina i prostuje przy ruchu slidera:

 

 

 

Ale rozwiązanie ciągle wymagało jakiegoś dodatku - tutaj w postaci dodatkowego skryptu lua.

Więc zrobiłem ostatnie rozwiązanie oparte na rozkmince powyższej krzywej.

 

Otóż taka krzywa:

 

klapolotki1.png.3d8bcb89daec6d125a7d8ee73eb0b302.png

 

to po prostu suma dwóch krzywych:

 

klapolotki2.png.91b96e0e03a3a63af30316083287c97f.png

 

liniowego wejścia lotek:

 

klapolotki3.png.9f708009cc91db0906449b8a6b6355cf.png

 

i trójkąta pod tą linią z punktem środkowym zależnym od położenia slidera:

 

klapolotki4.png.346a0e7e39ba54163c3be69eef406d8a.png

 

A taki trójkąt można osiągnąć biorąc liniowe wejście lotek:

 

klapolotki5.png.2ca1e5a55eb73dfb65fd1d00f833156c.png

 

z tego wartość bezwzględna:

 

klapolotki6.png.f6c5660bccdd9a4b7e605233347446a8.png

 

 

przesunięte w dół, czyli o -100:

 

klapolotki7.png.0cdc77312a923819756c5f3e6e745976.png

 

i pomnożone przez zmieniające się położenie slidera:

 

klapolotki8.thumb.png.96ba9856e7f27efed066579de48e4f10.png

 

Po zsumowaniu z liniowym wejściem lotek otrzymujemy potrzebne krzywe:

 

klapolotki9.thumb.png.804e394f771b9d34a8b026fd87994eb4.png

 

Ostateczna postać mikserów wygląda tak:

 

1250739285_klapolotkimiksy.png.813f0b693f36fbca38cac5a6e2c884b2.png

 

klapolotki.otx

 

I to wszystko ! Tylko dwie dodatkowe linie w każdym mikserze. Nie rusza fizycznych subtrimów i endpointów, nie wymaga zmiennych globalnych, nie wymaga użycia funkcji specjalnych, ani krzywych.

A efekt działania jest taki:

 

 

 

 

 

 

Odnośnik do komentarza
Udostępnij na innych stronach

 Udostępnij

  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę.