Sterowanie napedów maszyn i robotów
Transkrypt
Sterowanie napedów maszyn i robotów
Sterowanie napędów maszyn i robotów Wykład 8 - zaawansowane układy sterowania dr inż. Jakub Możaryn Instytut Automatyki i Robotyki Warszawa, 2014 dr inż. Jakub Możaryn Sterowanie napędów maszyn i robotów Podstawowe koncepcje optymalizacji sterowania układu napędowego adaptacyjne (ang. adaptive control) – z dostosowaniem się do aktualnych warunków pracy napędu - koncepcje: ze wstępnie przygotowanymi nastawami sterowania i ich doborem do warunków pracy napędu – Parameter Scheduling z nadążaniem układu napędowego za zadanym modelem zachowania się procesu sterowania (ruchem, ...) – Model-following z samostrojeniem układu sterowania z prowadzoną w trakcie normalnej pracy napędu estymacją dynamicznych zachowań realizowanego procesu (ruchu, ...) – Self-tuning predykcyjne (ang. predictive control) – z nadążaniem układu sterowania za przewidywanymi warunkami pracy napędu, np. za zadaną trajektorią parametrów realizowanego procesu (ruchu, ...) dr inż. Jakub Możaryn Sterowanie napędów maszyn i robotów Podstawowe koncepcje optymalizacji sterowania układu napędowego Parameter Scheduling Istotą sterowania typu Parameter Scheduling (Harmonogramowanie parametrów) jest założenie wstępnego przygotowania zbioru nastaw następnie - w trakcie normalnej pracy napędu – dobór nastaw w zakresie jednego (lub kilku) podstawowego parametru realizowanego procesu, np. w układzie pozycyjnym żądanie wykonania określonego przemieszczenia z znanym obciążeniem masowym dr inż. Jakub Możaryn Sterowanie napędów maszyn i robotów Podstawowe koncepcje optymalizacji sterowania układu napędowego Rysunek : Sterowanie typu Parameter Scheduling dr inż. Jakub Możaryn Sterowanie napędów maszyn i robotów Podstawowe koncepcje optymalizacji sterowania układu napędowego Model-following – nadążanie za zadanym modelem zachowań Istotą sterowania typu Model-following (nadążanie za zadanym modelem zachowań) jest modyfikacja sterowania zwykłego polegająca na wprowadzeniu dodatkowego sprzężenia zwrotnego od odchylenia wektora stanu realizowanego procesu (ruchu, ...) x(t) od wektora stanu xm (t) pożądanego modelu realizacji tego procesu w układzie sterowania Naturalnym podejściem do rozwiązania problemu układu napędowego nadążającego za zadanym (żądanym) modelem zachowania jest wykorzystanie analitycznego lub estymowanego modelu, dla którego można określić optymalne (żądane) wzmocnienie kxm i wyliczyć wektor stanu żądanego (modelowego) zachowania się procesu (ruchu, ...) xm (t) z równania stanu jako ẋm (t) = (Amc − Bmc kxm )xm (t) + Bmc kwm w (t) (1) gdzie: Amc i Bmc to macierze modelu, kwm , kxm są macierzami: wejściową i sprzężenia zwrotnego oraz w (t) jest wektorem wejścia. dr inż. Jakub Możaryn Sterowanie napędów maszyn i robotów Podstawowe koncepcje optymalizacji sterowania układu napędowego Rysunek : Sterowanie typu Model-following dr inż. Jakub Możaryn Sterowanie napędów maszyn i robotów Podstawowe koncepcje optymalizacji sterowania układu napędowego Przyjmując ∆x(t) = xm (t) − x̂(t) (2) T gdzie przez xm (t) = [xm1 (t) xm2 (t) xm3 (t)] oznaczono wektor stanu modelowanego procesu, x̂ = [s(t) v̂ (t) â(t)]T oznaczono wektor stanu prawdziwego, np. odtworzonego na podstawie sygnału położenia s(t) w układzie pozycyjnym, zachowania procesu (ruchu, ...) Różnica ∆x(t) może być skompensowana, uwzględniając wprowadzoną dodatkowo macierz modyfikacji km (dim km = 1 × n; np. n = 3 dla układów pozycyjnych o zachowaniu oscylacyjnym), przez zmianę wartości sygnału sterującego u(t) o wartość ∆u(t) - odpowiednio do zależności ∆u(t) = km ∆x(t) dr inż. Jakub Możaryn Sterowanie napędów maszyn i robotów (3) Podstawowe koncepcje optymalizacji sterowania układu napędowego Self-tuning Istotą sterowania typu Self-tuning (samostrojenie) jest modyfikacja sterowania zwykłego wykorzystująca estymowany (identyfikowany) na bieżąco model zachowań procesu (ruchu, ...) – klasyfikacja: ze względu na podmiot prowadzonej on-line identyfikacji: w przypadku parametrów modelu napędu na algorytmy pośrednie (ang. Explicit Self-tuning Control), w przypadku nastaw sterowania na algorytmy bezpośrednie (ang Implicit Self-tuning Control). ze względu na zadanie sterowania i ocenę jego wykonania, m.in.: algorytmy kompensujące wpływ niemierzalnych zakłóceń i stabilizujące punkt pracy układu (np. algorytm minimalnowariancyjny Astroma), algorytmy zadanego czasu sterowania, algorytmy żądanej dynamiki procesu. dr inż. Jakub Możaryn Sterowanie napędów maszyn i robotów Podstawowe koncepcje optymalizacji sterowania układu napędowego Rysunek : Sterowanie typu Self-tuning dr inż. Jakub Możaryn Sterowanie napędów maszyn i robotów Podstawowe koncepcje optymalizacji sterowania układu napędowego Główne problemy sterowania samostrojonego układów napędowych Dla zapobieżenia fatalnym skutkom błędów identyfikacji - przez eliminację nierealnych wartości parametrów modelu procesu ruchu dzięki weryfikacji prowadzonej na podstawie konwersji modelu dyskretnego w ciągły, należy wykorzystywać algorytm samostrojenia pośredniego. Ze względu na możliwość uaktualnienia wartości startowych parametrów modelu procesu ruchu dopiero przy przechodzeniu z fazy przyspieszania do fazy hamowania, należy wprowadzić, wyprzedzające właściwą identyfikację modelu, szacowanie obciążenia masowego napędu. dr inż. Jakub Możaryn Sterowanie napędów maszyn i robotów Podstawowe koncepcje optymalizacji sterowania układu napędowego Główne problemy sterowania samostrojonego układów napędowych c.d. Nastawy sterowania należy stroić zgodnie z zasadą przesunięcia miejsc pierwiastkowych zamkniętego układu pozycyjnego do zadanego położenia, tzn. zasadniczo tak, jak dla sterowania zwykłego – zalecane jest, aby: wzmocnienie położeniowe było określone przez wymagania dokładnościowe, wzmocnienia prędkościowe i przyspieszeniowe były modyfikowane w odniesieniu do przyjętej relacji wartości własnych przez aktualne wartości parametrów identyfikowanego modelu procesu ruchu dr inż. Jakub Możaryn Sterowanie napędów maszyn i robotów Podstawowe koncepcje optymalizacji sterowania układu napędowego Przebieg sterowania samostrojonego Rysunek : Przebieg pozycjonowania przestawnego pneumatycznego, dławieniowego napędu siłownikowego ze sterowaniem samostrojonym – fazy sterowania dr inż. Jakub Możaryn Sterowanie napędów maszyn i robotów Podstawowe koncepcje optymalizacji sterowania układu napędowego Rysunek : Sterowanie samostrojone z estymacją zachowań procesu w trakcie normalnej pracy napędu dr inż. Jakub Możaryn Sterowanie napędów maszyn i robotów Podstawowe koncepcje optymalizacji sterowania układu napędowego Predykcyjne nadążanie układu sterowania napędu za zadaną trajektorią parametrów ruchu Istotą sterowania predykcyjnego (algorytm DMC: Dynamic Matrix Control) jest: Obliczenie oczekiwanych w wyniku dotychczasowych zachowań i sterowań wartości parametrów ruchu – zmiennych stanu xpd , od chwili bieżącej k, w horyzoncie predykcji i = 1, 2, ..., h, np. na podstawie modeli zachowań prędkościowych i przyspieszeniowych procesu ruchu: vpd (k + d + i) = a11 vpd (k + d + i − 1) + a12 apd (k + d + i − 1) +b1 u(k + i − 1) apd (k + d + i) = a21 vpd (k + d + i − 1) + a22 apd (k + d + i − 1) +b2 u(k + i − 1) (4) gdzie: a11 ÷ a22 , b1 , b2 - elementy macierzy Amd i Bmd . dr inż. Jakub Możaryn Sterowanie napędów maszyn i robotów Podstawowe koncepcje optymalizacji sterowania układu napędowego Predykcyjne nadążanie układu sterowania napędu za zadaną trajektorią parametrów ruchu Obliczenie wartości sygnału sterującego u(k) jako pierwszego elementu ciągu - wektora sterowań u = [u(k), u(k + 1), ..., u(k + r )]T wyznaczonego w horyzoncie sterowania r . u = Ks (so − spd ) + Kv (vo − vpd ) + Ka (ao − apd ). dr inż. Jakub Możaryn Sterowanie napędów maszyn i robotów (5) Podstawowe koncepcje optymalizacji sterowania układu napędowego Rysunek : Schemat blokowy działania pneumatycznego układu pozycyjnego z dławieniowym napędem siłownikowym w fazie normalnej pracy sterowania predykcyjnego dr inż. Jakub Możaryn Sterowanie napędów maszyn i robotów Podstawowe koncepcje optymalizacji sterowania układu napędowego Rysunek : Sterowanie zwykłe dr inż. Jakub Możaryn Sterowanie napędów maszyn i robotów Podstawowe koncepcje optymalizacji sterowania układu napędowego Rysunek : Budowa układu sterowania zwykłego: a) schemat ideowy, b)schemat realizacyjny dr inż. Jakub Możaryn Sterowanie napędów maszyn i robotów Podstawowe koncepcje optymalizacji sterowania układu napędowego Istota sterowania predykcyjnego Założenie przewidywania zachowania się układu napędowego: przyszłe zachowanie się układu napędowego obliczane jest na podstawie jego przeszłych zachowań, przyszłe sterowanie obliczane jest na podstawie optymalizacji przewidywanego zachowania w przyszłości. Pojęcia: h – horyzont predykcji ... (k + h) r – horyzont sterowania ... (k + r ) dr inż. Jakub Możaryn Sterowanie napędów maszyn i robotów Podstawowe koncepcje optymalizacji sterowania układu napędowego dr inż. Jakub Możaryn Sterowanie napędów maszyn i robotów Podstawowe koncepcje optymalizacji sterowania układu napędowego Wady sterowania predykcyjnego konieczność wydłużenia okresu próbkowania i skracania horyzontów predykcji i sterowania ze względu na duży, rosnący kwadratowo wraz z wartością obu horyzontów, nakład obliczeniowy sterowania - negatywnym skutkiem jest pogorszenie jakości nadążania już od średnich prędkości ruchu dla danego napędu. konieczność rezygnacji z bieżącej aktualizacji modelu ze względu na nakłady obliczeniowe i obciążenie pamięci operacyjnej sterownika procesorowego macierzą R; rozwiązaniem jest kompromisowy model procesu ruchu, przyjęcie kompromisowej wartości obciążenia, obliczenie a priori macierzy R i następnie stałych macierzy Ks , Kv i Ka – negatywnym skutkiem jest pogorszenie jakości nadążania w przypadku zmiany parametrów użytkowych napędu. liczba nastaw i modeli: model procesu ruchu, parametry realizowalnej trajektorii + 6 nastaw sterowania predykcyjnego: elementy diagonali macierzy wagowych odchyłek nadążania Ps , Pv i Pa , macierz wagowa sterowania Qu oraz horyzonty predykcji h i sterowania r . dr inż. Jakub Możaryn Sterowanie napędów maszyn i robotów Podstawowe koncepcje optymalizacji sterowania układu napędowego Zalety sterowania predykcyjnego Sterowanie predykcyjne jest, uwzględniając duży nakład obliczeniowy algorytmu, ale i oczekiwania szybkiego zwiększenia mocy obliczeniowych akceptowanych cenowo sterowników procesorowych, rozwiązaniem najbliższym oczekiwaniom i upowszechnieniu w technice napędowej w najbliższej przyszłości Zasada predykcji, oparta na różnicy wektorów zadanych parametrów ruchu i przewidywanego zachowania się wektora stanu procesu ruchu w przyszłości, pozwala skuteczniej, niż w jakimkolwiek znanym i stosowanym algorytmie sterowania, oddziaływać na zachowania układu napędowego, Algorytm predykcji umożliwia łatwą implementacyjnie kompensację głównego, trudno mierzalnego zakłócenia procesu ruchu tłoka siłownika (w przypadku znanych lub estymowanych obciążeń masowych i siłowych), jakim jest oddziaływanie nieliniowo zmieniającej się siły tarcia. dr inż. Jakub Możaryn Sterowanie napędów maszyn i robotów Sterowanie ślizgowe Sterowanie ślizgowe (ang. Sliding Mode Control) postrzegane jest jako część większej grupy układów zwanej VSCS (ang. Variable Structure Control System – system sterowania strukturą zmiennych/parametrów). Układy VSCS charakteryzują się zestawem różnych pętli sprzężenia zwrotnego, które były przełączane w zależności od warunków (wartość położenia, prędkości, przyspieszenia, wartość odchyłki regulacji, procent przeregulowania, itp.), jakie spełniał obiekt. Zaletą takiego rozwiązania był fakt, iż można połączyć zalety różnych pętli sprzężenia zwrotnego w zależności od stanu obiektu/procesu. W ten sposób cały system może posiadać właściwości nie możliwe do realizacji przez pojedynczą, nawet bardzo skomplikowaną, pętlę regulacji. dr inż. Jakub Możaryn Sterowanie napędów maszyn i robotów Sterowanie ślizgowe W przypadku sterowania ślizgowego pętle regulacji, jak i warunek są dobrane tak, aby utrzymywały wartość regulowaną w pewnym otoczeniu tzw. funkcji przełączającej. Do zalet takiego rozwiązania należy możliwość dostosowania dynamiki układu regulacji za pomocą konkretnej pętli regulacji, jak również możliwość kompensacji nieliniowości rzeczywistego obiektu oraz zmian jego parametrów. Możliwość definiowania dynamiki obiektu czyni metodę sterowania ślizgowego również ciekawą z punktu widzenia projektowego. dr inż. Jakub Możaryn Sterowanie napędów maszyn i robotów Sterowanie ślizgowe Założenia teoretyczne SMC Algorytm sterowania ślizgowego SMC jest strukturą o charakterze adaptacyjnym. W celu poprawnego stosowania niezbędne jest lepsze poznanie obiektu regulacji. W tym celu przeprowadzana jest identyfikacja jak również należy poczynić pewne założenia przed rozpoczęciem pracy nad algorytmem. Wśród najistotniejszych warunków początkowych należy wymienić: znany jest nominalny model obiektu, oszacowano przedziały zmienności parametrów modelu, oszacowano amplitudy sygnałów wejściowych (w tym również zakłócenia), wymagany jest zerowy uchyb ustalony dla stałych sygnałów wejściowych. Istotnym jest również, aby algorytm był możliwie prosty obliczeniowo. Warunek ten jest ważny zwłaszcza, gdy regulowany obiekt posiada małe stałe czasowe, które wymuszają szybkie działanie (liczenie) układu regulacji. Sygnał sterujący jest sumą sygnałów uzyskanych na drodze algebraicznych przekształceń oraz sygnału, który jest algebraicznie związany z warunkami logicznymi nałożonymi na parametry modelu oraz jego zmienne stanu. dr inż. Jakub Możaryn Sterowanie napędów maszyn i robotów Sterowanie ślizgowe Algorytm sterowania ślizgowego SMC Rozważyć należy obiekt liniowy n-tego rzędu o zależności: y n + an−1 (t)y n−1 + ... + a0 (t) = b(t)u + d(t) (6) gdzie: ai (t) dla i = 0, 1, ..., n − 1 oraz bi (t) są zmiennymi w czasie parametrami, takimi, że możliwym jest określenie przedziału ich zmienności, zakłócenie d(t) jest również możliwe do określenia, wówczas możliwym jest określenie modelu obiektu jako: 0 0 0 1 0 . 0 . . . . . . . ẋ = (7) x + . bu + . d . . . . 1 0 0 −a0 −a1 . . −an−1 1 1 y = x1 gdzie: x = [x1 x2 ... xn ]T , x˙0 = x1 − ν, ν to wartość zadana. dr inż. Jakub Możaryn Sterowanie napędów maszyn i robotów (8) Sterowanie ślizgowe Można, zatem wyobrazić sobie sygnał σ przedstawiony zależnością: σ= n X ci xi (9) i=0 gdzie: cn = 0, ci , dla i = 0, ..., n − 1, są dodatnimi wartościami Zatem σ= n X ci xo(i) + i=0 n X ci ν (i) . (10) ν(s) (11) i=0 Jeśli σ = 0 wówczas xo (s) = Pn co i=0 ci s i W regulacji on-line niemożliwe jest wyznaczenie takiego σ, które równałoby się zeru, lub było jemu najbliższe, albowiem prowadzi to do wydłużenia czasu wyznaczania (obliczania) parametrów sygnału sterującego. dr inż. Jakub Możaryn Sterowanie napędów maszyn i robotów Sterowanie ślizgowe Należy więc dobrać tak wartość sygnału sterującego aby prawdziwa była nierówność σ σ̇ < 0 (12) Wówczas σ będzie dążyła do zera. σ̇ = n X (ci−1 − ai−1 )xi + bu − c0 ν + d (13) i=1 W tym przypadku, sygnał sterujący jest postaci u= n X K i xi + K 0 (14) i=1 gdzie: Ki, dla i = 0, 1, ..., n to nieliniowe, nieciągłe współczynniki wzmocnienia wyznaczane z warunków: i−1 Ki ¬ minai−1 ,b ai−1 −c jeśli xi σ > 0 b i−1 Ki ¬ maxai−1 ,b ai−1 −c jeśli xi σ < 0 b ) maxb,d |d| 0 K0 ¬ bcmax − sgnσ jeśli νσ > 0 b maxb,d |d| 0 K0 ¬ bcmin − sgnσ jeśli νσ < 0 b dr inż. Jakub Możaryn Sterowanie napędów maszyn i robotów (15) (16) Sterowanie ślizgowe Algorytm SMC w praktycznym zastosowaniu Algorytm został przebadany na stanowisku zbudowanym w Instytucie Automatyki i Robotyki PW. Umożliwia ono badanie właściwości dynamicznych zespołu siłownika hydraulicznego. Zostały przeprowadzone testy algorytmu SMC zarówno przy przestawnej pracy napędu jak również przy nadążaniu. Regulator zmiennych stanu Regulator SMC Przeregulowanie χ 0 0 dr inż. Jakub Możaryn Czas reg. tust 1,271 1,878 Sterowanie napędów maszyn i robotów Odchyłka stat. est 1,12 0,79 Sterowanie ślizgowe dr inż. Jakub Możaryn Sterowanie napędów maszyn i robotów Sterowanie ślizgowe Rysunek : Regulator SMC oraz regulator zmiennych stanu w zadaniu przestawiania dr inż. Jakub Możaryn Sterowanie napędów maszyn i robotów Sterowanie ślizgowe Rysunek : Regulator SMC oraz regulator zmiennych stanu w zadaniu nadążania dr inż. Jakub Możaryn Sterowanie napędów maszyn i robotów Sterowanie ślizgowe Rysunek : Reakcja układu z regulatorem SMC na symulowane zakłócenie skokowe o wartości pięciokrotnie większej od wartości zadanej dr inż. Jakub Możaryn Sterowanie napędów maszyn i robotów Sterowanie ślizgowe Obserwując przedstawione wyniki badań można stwierdzić, że algorytm SMC nie może w pełni zastąpić tradycyjnych struktur sterowania. Natomiast może być z powodzeniem wykorzystany do: Pracy w trybie on-line, równolegle z innym regulatorem (np. zmiennych stanu), jako regulator zapasowy, na wypadek uszkodzenia obiektu, lub zmiany parametrów układu, do tego stopnia, że regulator główny nie będzie w stanie zapewnić poprawnego działania urządzenia. Praca z układem, którego identyfikacji nie można było dokonać, lecz którego strukturę można wyznaczyć na podstawie opisu matematycznego poszczególnych jego elementów. W obydwu tych przypadkach regulator SMC nie będzie w stanie zapewnić takiej jakości przebiegu odpowiedzi układu, jaką jest w stanie uzyskać poprawnie dobrany regulator zmiennych stany czy PID. Dzięki swojej nieliniowej strukturze regulator sterowania ślizgowego może z powodzeniem pracować z obiektami, których parametry są, w sposób istotny dla jakości regulacji, zmienne w czasie. dr inż. Jakub Możaryn Sterowanie napędów maszyn i robotów Implementacja procedur sterowania Na etapie projektowania sterowania do celu badania opracowanego algorytmu wykorzystuje się sprzęt, który w łatwy sposób się programuje i który umożliwia szybką zmianę algorytmu czy też jego parametrów. Ponadto musi pracować w czasie rzeczywistym aby istniała możliwość sterowania rzeczywistym obiektem. Do znanych urządzeń tego typu (które były i są wykorzystywane do badania m. in. algorytmów sterowania w Instytucie Automatyki i Robotyki PW) możemy zaliczyć: karty sterujące firmy dSpace, programowalny sterownik CompactRIO firmy National Instruments sterowniki PLC firmy B& R wraz z oprogramowaniem Automation Studio Target for Simulink Wymienione typy urządzeń pozwalają na sterowanie w czasie rzeczywistym. Do tworzenia algorytmu sterowania w przypadku 1 i 3 wykorzystywane jest oprogramowanie Matlab wraz z dodatkiem Simulink. W przypadku drugiego urządzenia wykorzystywane jest w tym celu oprogramowanie LabVIEW. dr inż. Jakub Możaryn Sterowanie napędów maszyn i robotów Implementacja procedur sterowania Rysunek : Sterownik CompactRIO dr inż. Jakub Możaryn Sterowanie napędów maszyn i robotów Implementacja procedur sterowania Rysunek : Karta dSpace - karta procesorowa DS1104 R& D dr inż. Jakub Możaryn Sterowanie napędów maszyn i robotów Implementacja procedur sterowania Rysunek : Implementacja algorytmu w środowisku Matlab/Simulink (przykład) dr inż. Jakub Możaryn Sterowanie napędów maszyn i robotów Układ sterujący w wersji przemysłowej Gdy algorytm sterowania został dopracowany, przeprowadzone badania pokazały, że działa on poprawnie, jest niewrażliwy na zmienne warunki pracy układu sterowanego, wówczas może zostać opracowana przemysłowa wersja układu sterującego. Można założyć dwa podejścia adaptacji algorytmu sterowania do warunków przemysłowych: opracowanie procedury sterowania jako elementu języka programowania sterowników PLC – jeżeli opracowany algorytm sterowania może być wykonywany na sterowniku PLC wówczas można do istniejących instrukcji (bloków funkcyjnych) dodać nowy z zaimplementowanym naszym algorytmem (podobnie jak np. blok z algorytmem PID), opracowanie dedykowanego układu sterującego – gdy algorytm jest zbyt złożony (choć niekoniecznie) wówczas można zbudować oddzielny układ sterujący oparty np. o procesor sygnałowy. dr inż. Jakub Możaryn Sterowanie napędów maszyn i robotów Procedura uruchomieniowa W procedurze uruchomienie urządzenia wykorzystującego napęd elektryczny możemy wyróżnić kilka etapów: sprawdzenie poprawności podłączenia silnika do napędzanego urządzenia, dobór nastaw układu sterującego: automatyczny (samostrojenie), ręczny, sprawdzenie jakości sterowania – jak zachowuje się napęd po wystąpieniu zakłócenia przy różnych prędkościach pracy; w przypadku błędnego działania może być wymagana ręczna korekta nastaw, uruchomienie urządzenia w normalnym cyklu pracy. dr inż. Jakub Możaryn Sterowanie napędów maszyn i robotów