szybki algorytm estymacji prędkości wznoszenia czterowirnikowego
Transkrypt
szybki algorytm estymacji prędkości wznoszenia czterowirnikowego
MODELOWANIE INŻYNIERSKIE 44, s. 125-130, Gliwice 2012 ISSN 1896-771X SZYBKI ALGORYTM ESTYMACJI PRĘDKOŚCI WZNOSZENIA CZTEROWIRNIKOWEGO MIKROWIROPŁATA Z WYKORZYSTANIEM CZUJNIKA PRZYSPIESZENIA MARCIN KMIECIK, KRZYSZTOF SIBILSKI Instytut Inżynierii Lotniczej, Procesowej i Maszyn Energetycznych, Politechnika Wrocławska e-mail: [email protected], [email protected] Streszczenie. W artykule rozważono problem poprawy jakości estymacji prędkości wznoszenia bezzałogowego statku powietrznego pionowego startu i lądowania klasy mikro za pomocą czujnika ultradźwiękowego i jednostki do pomiarów inercyjnych (ang. Inertial Measurement Unit, IMU). Praca dotyczy niskich pułapów, w zakresie od 0 − 6m, a wiec bezpośrednio dotyka problemu autonomicznego startu i lądowania. Do prezentacji wyników użyto czterowirnikowego mikrowiropłata (ang. quadrocopter). Zastosowano sterowanie za pomocą regulatora proporcjonalno-całkująco-różniczkującego PID. Wyniki poparto badaniami teoretycznymi oraz analizą wyników rzeczywistych – omawiany algorytm został zaimplementowany w sterowniku mikrośmigłowca. 1. WSTĘP Stabilizacja pułapu bezzałogowego statku powietrznego jest podstawową kwestią w drodze do zapewnienia bezpieczeństwa jego działania w trybie autonomicznym. W przypadku statku pionowego startu i lądowania pozwala na stabilny zawis i systematyczne wykonywanie dalszych powierzonych mu zadań oraz autonomiczny start i lądowanie. Jednocześnie zapewnienie stabilnego zawisu bezzałogowego statku powietrznego jest kwestią trudną, gdyż z punktu widzenia teorii sterowania proces ten jest silnie nieliniowy. Dodatkowym czynnikiem zwiększającym złożoność zagadnienia jest fakt, że w większości praktycznych rozwiązań, ze względu na niskie koszty, stabilizacja pułapu wspomnianej klasy statków powietrznych dokonywana jest przy pomocy czujników ultradźwiękowych. Te z kolei zapewniają stosunkowo niską rozdzielczość pomiaru (ok. 1cm), częstotliwość próbkowania na poziomie 20Hz oraz mają zasięg działania ograniczony z góry do – ok.. 7m – i z dołu – do ok. 0,35m. W związku z tym niemożliwe jest dokładne określenie pułapu, a tym bardziej – z uwagi na małą rozdzielczość – prędkości wznoszenia. Problem trudności wyznaczenia prędkości wznoszenia wydaje się być kluczowy, przez wzgląd na ogromne znaczenie dokładności pochodnej uchybu sterowania w procesie regulacji z zastosowaniem regulatora PID. Rozwiązaniem wydaje się więc być wyznaczanie prędkości wznoszenia za pomocą jednostki inercyjnej IMU. 126 M. KMIECIK, K. SIBILSKI 2. PRZYJĘTE OZNACZENIA Niech I = {ex, ey, ez} oznacza inercjalny układ współrzędnych taki, że oś X wskazuje północ, oś Y wschód, a oś Z jest równoległa do wektora grawitacji. Niech B = {e1, e2, e3} będzie układem współrzędnych powiązanym ze statkiem powietrznym, jak pokazano Rys.13. Układ współrzędnych związany z korpusem czterowirnikowego mikrowiropłata na rys. 1. Kąty φ, θ, ψ oznaczają kolejno przechylenie, pochylenie i odchylenie statku powietrznego. φ oraz θ zostały zaznaczone na rysunku jedynie w celach poglądowych. Niech Rab oznacza orientację kątową układu b wyrażoną w a. W rzeczywistości kąt θ opisany jest w układzie B1 wyznaczonym jako B1 = RI1(ψ)I, a kąt φ w układzie B2 = R12(θ)B1. Założono, że {φ, θ, ψ} są znane. 3. POMIAR PRĘDKOŚCI WZNOSZENIA NA PODSTAWIE JEDNOSTKI IMU 3.1. Opis dynamiki ruchu Druga zasada dynamiki Newtona opisuje relację między przyłożoną siłą a przyspieszeniem oraz zachowana jest jedynie dla układów inercjalnych. W kontekście tej pracy uwzględniane siły to siła ciągu śmigieł i siła przyciągania ziemskiego. Z punktu widzenia dalszych obliczeń wygodnie jest wyrażać je w układzie B. Niech FB oznacza całkowitą przyłożoną siłę wyrażoną w B, m masę obiektu, FtB siłę ciągu wyrażoną w B, RIB orientację układu B wyrażoną w I, g stałą grawitacji a v określa całkowitą prędkość statku powietrznego wyrażoną w I. Wtedy, dla wolnozmiennego RIB, druga zasada dynamiki Newtona dla ruchu postępowego przyjmuje postać [1]: dv (1) F B mRIB mRIB a I Ft B mRIB g . dt I 3.2. Interpretacja pomiaru dokonywanego akcelerometrem Z uwagi na swoją budowę akcelerometr mierzy przyspieszenie bezwzględne układu I. Zakładając, że jest sztywno umocowany do ramy obiektu i umieszczony w jego środku SZYBKI ALGORYTM ESTYMACJI PRĘDKOŚCI WZNOSZENIA CZTEROWIRNIKOWEGO… 127 ciężkości, a jego osie pomiarowe są równoległe do wersorów {e1, e2, e3}, pomiar akcelerometrem am można wyrazić wzorem [2]: a x am a y RIB (a I g ) , (2) a z gdzie aI oznacza całkowite przyspieszenie w punkcie pomiarowym, czyli mierzona jest różnica między przyspieszeniem układu a przyspieszeniem ziemskim. Równanie to należy następnie przedstawić w układzie B. Ponadto dokonano podstawienia za aI zgodnie z (1): Ft B mRIB g Ft B B am RI g . (3) m m Stąd, w świetle przyjętych założeń, az = FtB / m [1, 3]. 3.3. Estymacja prędkości wznoszenia Kąt odchylenia ψ nie wpływa na pomiar prędkości wznoszenia, założono więc ψ=0. Można zatem zapisać: Ft B mR IB (v g ) , gdzie [4]: (4) cos R sin sin cos sin B I sin cos sin cos . sin cos cos 0 (5) Ponadto oznaczono składowe wektora prędkości wyrażone w układzie współrzędnych korpusu B jako: u B RI v v . (6) w Z punktu widzenia estymacji prędkości wznoszenia istotna jest jedynie składowa prędkości w, w przybliżeniu równoległa do wektora grawitacji. Uwzględniając (2), (3), (4), (5) i (6) otrzymuje się uproszczony model pomiaru prędkości wznoszenia: az w g cos cos . (7) Gdy (RIB1 ≈ I3) prędkość wznoszenia w wyrażona w układzie B1 jest równa prędkości wznoszenia w układzie inercjalnym. Słuszność wszystkich powyższych uproszczeń zostanie potwierdzona eksperymentalnie w dalszej części opracowania. Ostatecznie: w az g cos cos dt . (8) 3.4. Projekt filtra Pomiar dokonywany czujnikiem przyspieszenia obarczony jest błędem o wielu źródłach. Do głównych należą: nieliniowość, niemożliwość dokładnej kalibracji czujnika (dokładnego pomiaru wartości przyspieszenia ziemskiego na zadanej wysokości), zmiany temperatury, ograniczona prędkość odpowiedzi (inercyjność), ograniczona dokładność przetwornika 128 M. KMIECIK, K. SIBILSKI analogowo-cyfrowego, czy wreszcie błędy numeryczne związane z obliczeniami dokonywanymi z wykorzystaniem układów cyfrowych. Wszystkie te elementy sprawiają, że wykorzystanie w praktyce wzoru (8) bez filtracji jest niemożliwe, ponieważ w stosunkowo krótkim czasie amplituda sukcesywnie całkowanego błędu pomiarowego przerosłaby istotną informację. Ponieważ jednak błąd pomiarowy ma charakter wolnozmienny, w przeciwieństwie do sygnału istotnego ze względu na estymację prędkości wznoszenia, możliwe jest oddzielenie jednego od drugiego za pomocą filtra górnoprzepustowego. Projektowanie filtrów jest osobną dziedziną nauki i w tym artykule zaprezentowany zostanie jedynie zarys tej tematyki wraz z propozycją implementacji. Głównym zadaniem projektowym jest wybór rodzaju zastosowanego filtra dyskretnego i częstotliwości granicznej. W przypadku układów sterowania na szczególną uwagę zasługuje także odpowiedź fazowa filtra. W związku z ograniczonymi możliwościami obliczeniowymi platformy autopilota, decydująca o ocenie przydatności filtra jest także złożoność obliczeniowa algorytmu programistycznego. Eksperymentalnie wykazano, że wystarczającym, ze względu na dokładność i bardzo prostym w implementacji, algorytmem jest filtr dyskretny Butterwortha drugiego rzędu o transmitancji dyskretnej w postaci ogólnej [5]: Y ( z ) 0 z 11 z 2 2 (9) H ( z) X ( z ) 0 z 11 z 2 2 Na rys. 2 przedstawiono porównanie wyników pomiarów prędkości wznoszenia dla trzech różnych wartości częstotliwości granicznej fg. Dla fg = 0,1Hz widoczny jest wyraźnie wpływ Rys.14. Dobór częstotliwości granicznej filtracji fg nieidealnej kalibracji czujnika (co jest nieuniknione) – łatwo zauważyć, że składowa stała nie została całkowicie wyeliminowana. Dla fg = 1Hz widoczny jest przede wszystkim wzrost przesunięcia fazowego względem fg = 0,7Hz. Stąd jako optymalną wybrano fg = 0,7Hz, która jest najmniejszą częstotliwością, dla której nie występuje składowa stała pomiaru. SZYBKI ALGORYTM ESTYMACJI PRĘDKOŚCI WZNOSZENIA CZTEROWIRNIKOWEGO… 3.5. Implementacja programistyczna filtra W dziedzinie czasu transmitancja (9) może być zapisana jako: x 1 xk 1 2 xk 2 1 yk 1 2 yk 2 , yk 0 k 0 129 (10) gdzie x to kolejne wartości wejściowe, a y – wyjściowe. Wartości x, to całkowany dyskretnie odczyt akcelerometru pomniejszony o przyspieszenie ziemskie wk (8,11). Najprostszy scenariusz całkowania dyskretnego to reguła prostokątów. Niech ak oznacza powierzchnię kolejnego prostokąta wyliczonego jako iloczyn (7) i czasu próbkowania dtk: ak (a z ,k g cos k cos k )dtk (11) w a. k k k Dla filtra górnoprzepustowego β0 + β1 + β2 = 0 oraz β0 = β2. Wtedy (10) przybiera postać: (a ak 1 ) 1 y k 1 2 yk 2 . (12) yk 0 k 0 Wartości αi, βi dobrane na podstawie [6] dla częstotliwości granicznej fg = 0,7Hz wynoszą odpowiednio β0 = 1, α0 = 1, α1 = 0,96937, α2 = -1,9689. 4. PODSUMOWANIE I WNIOSKI Omawiany algorytm zaimplementowano w sterowniku mikrośmigłowca. Na rys. 3 Rys.15. Porównanie wyników estymacji prędkości wznoszenia za pomocą sonaru i czujnika przyspieszenia z wykorzystaniem omawianego algorytmu przedstawiono porównanie jakości estymacji prędkości wznoszenia z wykorzystaniem omawianego algorytmu w zestawieniu z pomiarem ultradźwiękowym. Widoczna jest wyraźna 130 M. KMIECIK, K. SIBILSKI poprawa jakości pomiaru. Bardzo istotną zaletą jest także zwiększenie częstotliwości pomiaru w. W górnej części wykresu zaprezentowano pomiar pułapu z zastosowaniem sonaru po uprzednim „wygładzeniu” charakterystyki przez uśrednianie (filtracja dolnoprzepustowa) – dzięki opisywanemu procesowi filtracji w procesie stabilizacji pułapu, możliwa jest znaczna poprawa jakości sterowania. Postać dyskretna filtra (12) ma wiele zalet praktycznych względem (10) i (11). Przede wszystkim implementacja filtra wymaga jedynie 4 operacji mnożenia i 3 dodawania – a więc złożoność obliczeniowa operacji jest niska (stąd nazwa „szybki algorytm” w tytule artykułu). Poza tym unikano jawnego całkowania – co jest nie do przecenienia z programistycznego punktu widzenia, ponieważ w długiej perspektywie zmienna reprezentująca wk mogłaby ulec przepełnieniu. LITERATURA 1. Stevens B.L., Lewis F.L.: Aircraft control and simulation. New York: Wiley-Interscience, 2003. 2. Mahony R. et al.: Nonlinear complementary filters on the special orthogonal group. IEEE Transactions on Automatic Control 2008, 53(5), p. 1203-1218. 3. Beard R.W.: Quadrotor dynamics and control. Brigham Young University, 2006. 4. Sibilski K.: Modelowanie i symulacja dynamiki ruchu obiektow latajacych. Warszawa: Ofic. Wyd. MH, 2004. 5. Selesnick I. et al.: Generalized Digital Butterworth Filter Design. IEEE Transactions on Signal Processing 1998, Vol. 46, No. 6. 6. Fisher T.: MKFilter Design Tool, http://www-users.cs.york.ac.uk/~fisher/ . A FAST ALGORITHM FOR QUADROTOR RATE OF CLIMB ESTIMATION WITH ACCELEROMETER MEASUREMENTS Summary. Authors of this work present a fast algorithm for rate of climb detection of an quadrotor aircraft basing on accelerometer measurements. A second order discrete Butterworth filter is proposed. Additionally a possibility to further lessen computational complexity is shown in case of described project assumptions. A choice for optimal filter's cut-off frequency is backed up by filter characteristics’ comparison. Suitability of the above solution is confirmed via rate of climb accelerometer measurements collected in-flight, i.e. in presence of significant disturbances, in comparison with rate of climb estimated with an ultrasonic sensor. A major improvement of altitude stabilization algorithm’s precision is shown after accelerometer measurements have been incorporated in the feedback loop of a PID controller.