Porada

Filtrowanie RPM w Betaflight: dwukierunkowy DShot, bieguny silników i jak sprawdzić, czy działa

Większość szumu, z którym walczą filtry, pochodzi od silników. Śmigła i dzwony silników wprowadzają drgania do żyroskopu na częstotliwości obrotów i jej harmonicznych, a te szczyty przesuwają się razem z gazem. Filtr dolnoprzepustowy je stłumi, ale spowolni też pętlę PID. Filtrowanie RPM ustawia wąskie filtry wycinające dokładnie na częstotliwościach, które silniki właśnie wytwarzają, więc pozbywasz się tego szumu przy dużo mniejszym opóźnieniu.

Poniżej opisuję potrzebny sprzęt i oprogramowanie, kroki w Betaflight Configuratorze, sprawdzanie, czy telemetria jest czysta, i to, czego lepiej nie ruszać przez pierwsze loty. Liczby i wartości domyślne pochodzą z wiki Betaflight (strony o filtrowaniu RPM z DShot i o oprogramowaniu regulatorów). Jeśli masz nowsze oprogramowanie, sprawdź wartości domyślne we własnym Configuratorze.

Jak to działa

Przy dwukierunkowym DShot każdy regulator (ESC) odsyła do kontrolera lotu obroty elektryczne (eRPM) tym samym przewodem sygnałowym, którym płyną polecenia dla silnika. Nie potrzeba osobnego portu UART na telemetrię. Kontroler przelicza eRPM na obroty mechaniczne według liczby biegunów, którą ustawisz, i nakłada na sygnał z żyroskopu (opcjonalnie też na człon D) zestaw filtrów wycinających na tych częstotliwościach i ich harmonicznych.

Domyślnie ten zestaw jest duży: po 12 filtrów na pochylenie, przechylenie i odchylenie, dla pierwszych trzech harmonicznych każdego silnika, razem 36 filtrów. Dynamiczny filtr wycinający może się wtedy zająć rezonansami ramy, zamiast gonić szczyty od silników. Od Betaflight 4.3 Configurator sam zawęża dynamiczny filtr wycinający, gdy włączysz filtrowanie RPM.

Te same dane o obrotach zasilają funkcję dynamicznych obrotów jałowych („Dynamic Idle”), która pilnuje minimalnych obrotów silników i chroni przed utratą synchronizacji. To funkcja niezależna od filtrów, ale korzysta z tego samego dwukierunkowego łącza.

Sprzęt i oprogramowanie

Muszą się zgadzać trzy rzeczy:

  1. Kontroler lotu z Betaflightem 4.1 lub nowszym (wersja 4.0 nie jest już wspierana).
  2. Regulatory obsługujące DShot i dwukierunkową telemetrię DShot.
  3. Oprogramowanie właściwe dla danego rodzaju regulatora.

Do regulatorów 32-bitowych Betaflight poleca obecnie AM32. Ma otwarte źródła, obsługuje filtrowanie RPM i rozszerzoną telemetrię DShot (EDT), a wgrywasz je przez esc-configurator.com. BLHeli_32 dostał pełną obsługę dwukierunkowego DShot w wersji 32.7.0. Wiki o oprogramowaniu regulatorów ostrzega przed wydaniami BLHeli_32 nowszymi niż 32.7, bo pojawiały się zgłoszenia o zablokowanych albo gorących silnikach i błędach DShot. Traktuj 32.7 jako stabilną wersję BLHeli_32, dopóki któraś nowsza nie zostanie znowu oznaczona jako polecana.

Do 8-bitowych regulatorów BLHeli-S wgraj BlueJay. Jest darmowy, obsługuje filtrowanie RPM i EDT, a Betaflight poleca go do tego sprzętu. Fabryczny BLHeli-S i wersje pochodne JazzMaverick nie są dobrym wyborem przy nowej instalacji.

Przed każdym testem silników i przed wgrywaniem oprogramowania do regulatorów zdejmij śmigła. Podłącz LiPo, jeśli potrzebujesz prawdziwej telemetrii. Przy samym zasilaniu z USB błędy często wynoszą 100%, dopóki regulatory nie dostaną prądu z pakietu.

Dopasuj DShot do pętli PID

Przy włączonym filtrowaniu RPM dokumentacja zakładki konfiguracji Betaflighta podaje takie pary:

Pętla PID Protokół DShot
2 kHz DShot150
4 kHz DShot300
8 kHz DShot600

Wyjątkiem są żyroskopy BMI270: użyj 3,2 kHz / 1,6 kHz z pasującym DShot zamiast par 8 kHz / 4 kHz z tabeli.

Przy pętli 4 kHz (także w układzie 8 kHz żyroskop i 4 kHz PID) DShot300 jest wyborem stawiającym na niezawodność. DShot600 też działa, ale przy tej pętli nic nie daje i jest bardziej podatny na zakłócenia. Przy 8 kHz żyroskopu i 8 kHz PID potrzebujesz DShot600, bo DShot300 aktualizuje silniki tylko co drugi przebieg pętli PID. Starsze regulatory BLHeli-S typu L (BB1) zostaw na DShot150 z pętlą 2 kHz.

Pilnuj obciążenia procesora. Jeśli po włączeniu dwukierunkowego DShot rośnie liczba błędów albo dron nie chce się uzbroić, obniż o stopień częstotliwość pętli albo prędkość DShot i sprawdź jeszcze raz.

Włączanie w Configuratorze

W aktualnym Configuratorze to tylko kilka kroków:

  1. Otwórz zakładkę silników („Motors”).
  2. Ustaw protokół regulatorów na DShot pasujący do pętli PID.
  3. Włącz dwukierunkowy DShot („Bidirectional DShot”).
  4. W polu liczby biegunów („Motor Poles”) wpisz liczbę magnesów na dzwonie silnika (nie liczbę uzwojeń stojana).
  5. Zapisz ustawienia i uruchom kontroler ponownie.

Typowe liczby biegunów to 14 w większości silników do piątki (2207, 2306 i podobne) i 12 w wielu mniejszych (mniej więcej od 08xx do średnich rozmiarów 14xx). Policz magnesy sam albo sprawdź kartę katalogową silnika. Zła liczba biegunów ustawia filtry na niewłaściwych częstotliwościach, nawet jeśli telemetria wygląda na działającą.

Od wersji 4.3 zwykle nie trzeba wpisywać poleceń w wierszu poleceń (CLI). Włączenie dwukierunkowego DShot samo uruchamia filtr RPM żyroskopu i dopasowuje dynamiczny filtr wycinający. Mimo to zajrzyj do ustawień filtrów w zakładce strojenia PID i upewnij się, że filtr RPM żyroskopu („Gyro RPM Filter”) jest włączony. Liczbę harmonicznych zostaw na domyślnych trzech, chyba że zapis z czarnej skrzynki da ci powód, żeby to zmienić.

Sprawdź telemetrię przed lotem

Zasil regulatory z LiPo, a potem podłącz USB. Ponownie otwórz zakładkę silników:

  • Stojące silniki powinny pokazywać 0 obrotów.
  • Odsetek błędów dla każdego silnika powinien zostać poniżej około 1%. Czerwona linia błędów oznacza, że łącze nie jest czyste.
  • Delikatnie zakręć silnikiem suwakiem (bez śmigieł). Pod wartością gazu powinien się pojawić bieżący odczyt obrotów.

Przy samym USB bez pakietu często zobaczysz E:100%. To normalne, dopóki regulatory nie uruchomią się na zasilaniu z akumulatora. Po prawidłowym podłączeniu pakietu błędy powinny spaść prawie do zera i zostać na tym poziomie przy kolejnych podłączeniach.

Jeśli filtrowanie RPM jest włączone, a któryś regulator przestanie wysyłać poprawną telemetrię, Betaflight blokuje uzbrojenie, a OSD może pokazać komunikat RPMFILTER. Zanim spróbujesz polecieć, popraw oprogramowanie regulatorów, okablowanie, prędkość DShot albo liczbę biegunów. Nie wyłączaj tej blokady, żeby jakoś wystartować. Ma chronić przed gorącymi silnikami i ucieczką drona z na wpół działającą konfiguracją.

Zanim ruszysz suwaki filtrów, zapisz wynik polecenia diff all. To najszybszy sposób na powrót, jeśli po złagodzeniu filtrów silniki zaczną się przegrzewać.

Najpierw kilka lotów, potem lżejsze filtrowanie

Jeśli dron już dobrze lata, na pierwszych kilku pakietach po włączeniu filtrowania RPM zostaw resztę filtrów w spokoju. Upewnij się, że silniki są chłodne, a dron brzmi czysto w locie akrobacyjnym. Filtry RPM usuwają większość szumu od silników. Filtry dolnoprzepustowe nadal radzą sobie z łożyskami, wiatrem i turbulencjami, a dynamiczny filtr wycinający dalej wyłapuje rezonanse ramy. Poradnik Betaflighta zaleca, żeby go nie wyłączać.

Kiedy to działa bez zarzutu, możesz ostrożnie zmniejszać opóźnienie filtrów:

  • Przesuwaj mnożniki filtrów żyroskopu i członu D w stronę słabszego filtrowania, o jeden krok naraz.
  • W czystym dronie możesz wyłączyć pierwszy filtr dolnoprzepustowy żyroskopu („Gyro Lowpass 1”). Nie wyłączaj obu, dopóki zapis z czarnej skrzynki nie potwierdzi, że rama jest cicha.
  • Nie obcinaj filtrów członu D. Betaflight ostrzega, że zbyt agresywne osłabienie filtrów D to łatwy sposób na spalenie silników.

Po każdej zmianie zrób krótki zawis i krótki lot, wyląduj i sprawdź temperaturę dzwonów. Jeśli silniki są gorące albo zawis brzmi ostro, cofnij ostatnią zmianę. Czarna skrzynka i narzędzie do analizy widma, takie jak PID Toolbox, przydają się, gdy chcesz pójść dalej. Do samego włączenia filtrowania RPM nie są potrzebne.

Krótka lista kontrolna

  • Śmigła zdjęte przy każdym teście silników i regulatorów na stole.
  • Oprogramowanie regulatorów, które naprawdę obsługuje dwukierunkowy DShot (AM32, BlueJay albo BLHeli_32 32.7).
  • DShot dopasowany do pętli PID (2 kHz i DShot150, 4 kHz i DShot300, 8 kHz i DShot600; dla BMI270 jak wyżej).
  • Bieguny policzone na dzwonie silnika.
  • Zakładka silników: około 0% błędów na zasilaniu z pakietu, prawdziwe obroty przy kręceniu, 0 obrotów na postoju.
  • Filtr RPM żyroskopu włączony, dynamiczny filtr wycinający nadal włączony.
  • Pierwsze loty na dotychczasowych filtrach. Filtry dolnoprzepustowe łagodzisz dopiero wtedy, gdy silniki zostają chłodne.

Najpierw zadbaj o czystą telemetrię. Pozostałe filtry zostaw na pakiet albo dwa, a opóźnienie zmniejszaj tylko na tyle, na ile pozwalają chłodne silniki i, jeśli z niej korzystasz, czarna skrzynka.