Realizacja w układzie FPGA algorytmu pomiaru prędko dkości, bazującego na kompensowanym enkoderze inkrementalnym realizowany w ramach projektu badawczego rozwojowego Metody inteligentnego przetwarzania danych oraz obliczenia równolegr wnoległe e w systemach sterowania przemysłowych obrabiarek numerycznych Andrzej Przybył Politechnika Częstochowska Katedra Inżynierii Komputerowej Praca naukowa finansowana ze środków na naukę w latach 2007-2010 jako projekt badawczy rozwojowy 1
Zawartość pracy Przedstawiono metodę kompensacji standardowego enkodera inkrementalnego, stosowaną w celu zmniejszenie opóźnienia w torze pomiaru prędko dkości przy niskich obrotach tarczy. Redukcję opóźnienia uzyskano dzięki wykorzystaniu w pomiarze prędko dkości wszystkich zboczy impulsów w cyklu kwadraturowego. Zapewnienie przy tym wysokiej dokładno adności pomiaru wynika z kompensacji fazy impulsów w w funkcji położenia kątowego k tarczy enkodera. Algorytm jest możliwy do realizacji w systemie z układem programowalnym typu FPGA 2
Pomiar prędko dkości na podstawie impulsów w z enkodera inkrementalnego Cykl kwadraturowy impulsów w A i B enkodera inkrementalnego W obszarze interesującym niskich prędko dkości obrotowych pomiar na podstawie czasu trwania cyklu Nierównomierne rozłożenie faz a,b,c,d ogranicza rozdzielczość pomiaru prędko dkości do pełnego cyklu (np. A0 dowolne zbocze fazy A przy zerowej wartości sygnału B ) 3
Konieczność rezygnacji z wykorzystania wszystkich zboczy w pomiarze prędko dkości Dane katalogowe jednego z producentów w wskazują, że przesunięcia fazy wynoszą a,b,c,d = T/4 ± T/8 a wypełnienia impulsów a+b, c+d = T/2 ± T/8 Sygnały y te nie mogą służyć jako precyzyjne wzorce położenia kątowego k i być wykorzystane jako punkty odniesienia w algorytmie pomiaru prędko dkości Mała a precyzja gwarantuje jedynie poprawną pracę enkodera w sensie prawidłowego wykrycia kolejności zboczy. 4
Zarejestrowane w rzeczywistym systemie impulsy A i B oraz prędko dkość obrotowa: wm_enc_all - wyznaczona na podstawie wszystkich zboczy oraz wm_enc_a+ - na podstawie sygnału u A0 Zauważalne są powtarzalne w ramach cyklu odchyłki od wartości średniej Dla wm_enc_a+ opóźnienie w torze pomiaru jest czterokrotnie większe 5
Problem pomiaru niskiej prędko dkości obrotowej Ograniczona rozdzielczość enkodera powoduje powstawanie dużych opóźnie nień w torze pomiaru Możliwe rozwiązania: zania: Zastosowanie enkodera o wyższej rozdzielczości ci Nie zawsze możliwe ze względu na wysoki koszt lub przekroczenie częstotliwo stotliwości dopuszczalnej interfejsu Zastosowanie enkodera sinusoidalnego Wymagany złożony z ony proces przetwarzania sygnałów w analogowych Wysoki koszt Stosowanie estymatorów/obserwator w/obserwatorów w lub filtrów prędko dkości obrotowej Konieczność znajomości dokładnego modelu matematycznego Wpływ sygnałów w zakłócaj cających cych przy niskich prędko dkościach może uniemożliwi liwić praktyczną realizację pomiaru 6
Proponowane rozwiązanie zanie kompensacja nierównomierno wnomierności faz a,b,c,d, w celu dokładnego i szybkiego pomiaru prędko dkości Istotne jest, że e zaobserwowane odchyłki wartości a,b,c,d od T/4 sąs powtarzalne dla kolejnych obrotów w tarczy, i w związku zku z tym można je skompensować 7
Uwagi dodatkowe Oprócz wskazanych uchybów w pomiaru, związanych zanych z niedokładnym rozmieszczeniem pasków w indeksujących (w ramach cyklu i w ramach obrotu tarczy) na tarczy enkodera występuj pują dodatkowe uchyby pomiaru prędko dkości. Są one związane zane z niecentrycznym montażem enkodera względem wału u silnika, co powoduje powstanie cyklicznych uchybów w pomiaru. Ten błąb łąd d systematyczny równier wnież może e zostać skompensowany za pomocą proponowanej metody. Jednak w tym przypadku konieczne jest podjęcie pewnych dodatkowych i kłopotliwych, k działań w celu uzyskania wartości referencyjnych. Z tego względu to zagadnienie nie zostanie dokładnie opisane w niniejszej pracy. 8
Algorytm kompensacji Zaprojektowany algorytm umożliwia wyznaczanie prawidłowej, tj. możliwie najbardziej zbliżonej do rzeczywistej prędko dkości obrotowej, na podstawie wszystkich zboczy impulsów w enkodera Dzięki temu można uzyskać czterokrotne skrócenie opóźnienia w torze pomiaru prędko dkości. Powoduje to znaczną poprawę jakości działania ania procesu regulacji nadąż ążnej serwonapędu w obszarze niskich prędko dkości. Poprawa jest analogiczna do wpływu zastosowania enkodera o czterokrotnie większej rozdzielczości ci 9
Sposób b uzyskania wartości referencyjnych Proces ten musi być dokonany dla każdego egzemplarza enkodera 1. Rozpędzamy napęd, wyposażony ony w enkoder przeznaczony do kompensacji, do stałej prędko dkości obrotowej. 2. Rejestrujemy w serwonapędzie prędko dkość zmierzoną za pomocą obu metod: ALL i A0.. Pomiar prędko dkości dokonywany jest dla wszystkich kolejnych cykli kwadraturowych w ramach pełnego obrotu tarczy. 3. Dokonujemy automatycznej analiza danych: Prędko dkość A0 jako dokładniejsza, uznawana jest jako referencyjna i na tej podstawie wyznaczana jest prędko dkość referencyjna Kompensowane sąs odchyłki wielkości a,b,c,d od wartości idealnej wynoszącej jedną czwartą cyklu kwadraturowego Przyjęli liśmy założenie upraszczające, ce, że e rozmieszczenie punktu sygnału A0 jest wartości cią referencyjną i opisuje precyzyjnie położenie kątowe k tarczy (nie kompensujemy rozmieszczenia pełnych cykli na tarczy) Wynikiem działania ania analizy jest tablica współczynnik czynników w korekcyjnych o długości równej r liczbie efektywnej rozdzielczości ci enkodera (liczba cykli x4). 10
Napotkane problemy Występuj pujące fluktuacje prędko dkości będące wynikiem zmiennych oporów mechanicznych, niedoskonałej ej konstrukcji silnika, uchybów w metody pomiaru położenia wykorzystywanej w algorytmie sterowania wektorowego oraz niedostatecznie skompensowanej pulsacji napięcia zasilającego Powodują one problemy z wyznaczeniem poprawnych wartości korekcyjnych Rys. Fluktuacje prędko dkości zarejestrowane dla stałej wartości napięcia w osi poprzecznej silnika. Podziałka osi x wynosi 50 ms 11
Rozwiązanie zanie napotkanego problemu Zwiększenie częstotliwo stotliwości zegara taktującego licznik pomiarowy z 20MHz do 80MHz redukcja fluktuacji szybkozmiennych Zamontowanie dużej masy bezwładno adności na wał silnika, na czas pomiaru 12
Przebieg prędko dkości referencyjnej Dodatkowo zastosowano filtr dolnoprzepustowy typu FIR o rozpięto tości trójk jkątnego okna czasowego wynoszącej dziesięć próbek 13
Wynik pomiaru prędko dkości zaproponowaną metodą bazująca na skompensowanym enkoderze W W punkcie czasowym równym 40 ms załą łączono kompensację enkodera i na tej podstawie dokonano pomiaru wykorzystując metoda ALL Przedstawiona metoda wyznaczania współczynnik czynników w korekcji nadaje się do korekcji fazy sygnałów w A i B w zakresie poszczególnych cykli kwadraturowych. Nie jest natomiast wystarczająco co dokładna do kompensacji rozmieszczenia tych cykli na tarczy enkodera 14
1 2 4 N Problemy realizacji praktycznej w FPGA Określenie sposobu kodowania współczynnik czynników w korekcyjnych: zastosowano liczby rzeczywiste stałoprzecinkowe U2 w formacie 1.15 (lub 1.8) r a,b,c,d współczynniki sąs korektą wartości teoretycznej wynoszącej (N liczba cykli enkodera) 1 2 4 N t Wielkość t oznacza odległość w czasie pomiędzy dowolnymi najbliższymi, kolejnymi zboczami w cyklu kwadraturowym sygnałów w A i B. r r 15
Wybrane bloki zaproponowanego algorytmu kompensacji tarczy enkodera 16
Wnioski z realizacji praktycznej Docelowy układ serwonapędowy budowany jest na bazie układu FPGA z rodziny Spartan 3A-DSP 3400 zawierający ok. 53 tyś ekwiwalentnych cel logicznych, 126 jednostek DSP oraz 2268 kbitów pamięci BlockRAM. Pamięć BlockRAM zostanie użyta u między innymi w celu przechowywania współczynnik czynników w kompensacji enkodera. Do implementacji tablicy kompensacji enkodera wykorzystano maksymalnie kilkanaście procent dostępnych bloków w pamięci. Możliwa i uzasadniona jest możliwo liwość redukcji szerokości słowa stałoprzecinkowego współczynnik czynników w korekcyjnych do 8 bitów. 17
Wnioski z realizacji praktycznej ciąg g dalszy Przedstawione badania sąs fragmentem szerszych badań dotyczących cych budowy serwonapędu w oparciu o układ FPGA W tym samym układzie FPGA zawarto zostały y pozostałe bloki sterownika serwonapędu: procesor typu SoftCore z pamięci cią programu i danych, sprzętowe bloki do wspomagania obliczeńoraz oraz sprzętowa obsługa komunikacji czasu rzeczywistego przez siec Fast Ethernet. 18
Podsumowanie Zaproponowana modyfikacja metody pomiaru prędko dkości zbudowana w oparciu o układ FPGA pozwala na czterokrotne zmniejszenie opóźnienia z torze pomiaru. Wpływ z zastosowania tej metody jest analogiczny do zastosowania enkodera o czterokrotnie większej rozdzielczości. ci. Wykorzystanie układu FPGA jest dobrym rozwiązaniem zaniem szczególnie ze względu na wykorzystanie tego samego układu FPGA do realizacji innych zadań w rozproszonym systemie napędowym opartym o sieć Ethernet Czasu Rzeczywistego. 19