Regulator PID
-
Robson_7777
- Posty: 25
- Rejestracja: 27 mar 2006 00:00
- Lokalizacja: Wrocław
Regulator PID
Witam!
Zrealizowałem regulator PID w układzie regulacji prędkości silnika DC. Pierwszym licznikiem dokonuje pomiaru częstotliwości z prostego "enkodera", (proporcjonalnej do prędkości obrotowej 1obrót=1 Hz), drugi licznik wykorzystuję do generacji sygnału PWM podawanego na sterownik silnika! Ta cześć działa prawidłowo! Problem jest z realizacją regulatora PID! Na wyjściu bloczka PID Auto powinienem otrzymać ustalony sygnał (współcz. wypełnienia), jednak układ nie może ustalić odpowiedzi (występują szybkie zmiany współcz. wypełn. od 0,1 do 0,9! W czym tkwi problem?Czy ktoś realizował podobny układ?
Karta pomiarowa NI 6024E, LabView 7.1+toolkit PID
Zrealizowałem regulator PID w układzie regulacji prędkości silnika DC. Pierwszym licznikiem dokonuje pomiaru częstotliwości z prostego "enkodera", (proporcjonalnej do prędkości obrotowej 1obrót=1 Hz), drugi licznik wykorzystuję do generacji sygnału PWM podawanego na sterownik silnika! Ta cześć działa prawidłowo! Problem jest z realizacją regulatora PID! Na wyjściu bloczka PID Auto powinienem otrzymać ustalony sygnał (współcz. wypełnienia), jednak układ nie może ustalić odpowiedzi (występują szybkie zmiany współcz. wypełn. od 0,1 do 0,9! W czym tkwi problem?Czy ktoś realizował podobny układ?
Karta pomiarowa NI 6024E, LabView 7.1+toolkit PID
Re: Regulator PID
Witam!
Niestety nie mam możliwości przetestowania tego układu. Ale jak na moje oko to coś nie tak z regulatorem jest. Jeżeli sygnał cały czas zmienia się od 0.1 do 0.9 i nie osiąga stanu ustalonego to znaczy, że regulator jest źle nastrojony albo są takie duże zakłócenia w układzie. Piszesz coś o PWM a to jest regulacja z modulowana szerokością impulsu, a to niewiele ma wspólnego z regulatorem PID. Proponuje dopracować nastawy regulatora.
Pzdr
P.S.
Co to jest PID Auto? Samodostrajanie?
Niestety nie mam możliwości przetestowania tego układu. Ale jak na moje oko to coś nie tak z regulatorem jest. Jeżeli sygnał cały czas zmienia się od 0.1 do 0.9 i nie osiąga stanu ustalonego to znaczy, że regulator jest źle nastrojony albo są takie duże zakłócenia w układzie. Piszesz coś o PWM a to jest regulacja z modulowana szerokością impulsu, a to niewiele ma wspólnego z regulatorem PID. Proponuje dopracować nastawy regulatora.
Pzdr
P.S.
Co to jest PID Auto? Samodostrajanie?
Re: Regulator PID
jesli program nie jest w systemie RT to nigdy nie bedzie dzialac. pasmo sygnalow wejsciowych jest duzo wieksze od pasma ktore moze przetwarzac klasyczny system nie-realtime'owy. blozki regulatorow mozesz uzywac do symulacji albo do sterowania procesami o dlugiej stalej czasowej. do tego dochodzi zjawisko "glittingu" (nie wiem czy dobrze to napisalem) ktore polega na tym, ze probki sygnalu wejsciowego nie sa zbierane z tym samym interwalem czasowym.
rozwiazanie problemu: 1) zastosowac system RT lub 2) zastosowac karte FPGA ktora pozwala na sprzetowa realizacje kilku regulatorow dzialajacych w pasmach 100kHz, 3) zastosowac sterownik typu cRIO, 4) napisac regulator na jakims procesorze (na przyklad na ATMega), 5) zrobic regulator analogowy.
rozwiazanie problemu: 1) zastosowac system RT lub 2) zastosowac karte FPGA ktora pozwala na sprzetowa realizacje kilku regulatorow dzialajacych w pasmach 100kHz, 3) zastosowac sterownik typu cRIO, 4) napisac regulator na jakims procesorze (na przyklad na ATMega), 5) zrobic regulator analogowy.
Re: Regulator PID
Gość ma rację, najlepszym rozwiązaniem są systemy RT ale przy niezbyt wygórowanych prędkościach i częstotliwościach da się to zrobić bez RT.
Podstawą jest jednak wiedza z zakresu Komputerowych układów sterowania, temat jest szeroki i dużo by opowiadać jak zrobić aby poprawnie sterować, polecam literaturę lub pomoc fachowców z branży automatyki.
Użyłeś regulatora PID z opcją Autotuningu, jeżeli sygnał Start Autotune jest TRUE to regulator będzie próbował się dostroić, tzn określić parametry obiektu. Standardowa procedura autotuningu dla PID polega właśnie na naprzemiennym wysterowywaniu obiektu sygnałami max i min z określoną częstotliwością, pomiarem stałych czasowych i obliczeniem nastaw. Niestety najlepiej nadaje się to dla systemów inercyjnych 1 lub wyższego rzędu, dla silnika może to być trudne wyzwanie.
Powinieneś mierzyć impulsy z enkodera w osobnej pętli (jak najszybciej jak się da) przeliczać na prędkość i przekazywać do pętli głównej typu Timed loop wtedy opóźnienie pomiędzy kolejnymi pomiarami i pomiędzy pomiarem wielkości wyjściowej obiektu (prędkość) a wysterowaniem obiektu (PWM) będzie stała równa czasowi pętli time loop co pozwala na wprowadzenie odpowiednich korekt w algorytmie sterowania.
Jest jeszcze wiele detali, które wpływają na prawidłowe sterowanie - polecam właścnie literaturę z zakresu KUS.
Na początek wyłącz samostrojenie i spróbuj samemu ustalić nastawy regulatora PID.
Rumcajs.
Podstawą jest jednak wiedza z zakresu Komputerowych układów sterowania, temat jest szeroki i dużo by opowiadać jak zrobić aby poprawnie sterować, polecam literaturę lub pomoc fachowców z branży automatyki.
Użyłeś regulatora PID z opcją Autotuningu, jeżeli sygnał Start Autotune jest TRUE to regulator będzie próbował się dostroić, tzn określić parametry obiektu. Standardowa procedura autotuningu dla PID polega właśnie na naprzemiennym wysterowywaniu obiektu sygnałami max i min z określoną częstotliwością, pomiarem stałych czasowych i obliczeniem nastaw. Niestety najlepiej nadaje się to dla systemów inercyjnych 1 lub wyższego rzędu, dla silnika może to być trudne wyzwanie.
Powinieneś mierzyć impulsy z enkodera w osobnej pętli (jak najszybciej jak się da) przeliczać na prędkość i przekazywać do pętli głównej typu Timed loop wtedy opóźnienie pomiędzy kolejnymi pomiarami i pomiędzy pomiarem wielkości wyjściowej obiektu (prędkość) a wysterowaniem obiektu (PWM) będzie stała równa czasowi pętli time loop co pozwala na wprowadzenie odpowiednich korekt w algorytmie sterowania.
Jest jeszcze wiele detali, które wpływają na prawidłowe sterowanie - polecam właścnie literaturę z zakresu KUS.
Na początek wyłącz samostrojenie i spróbuj samemu ustalić nastawy regulatora PID.
Rumcajs.
Re: Regulator PID
Do sterowania obrotami raczej nie wykorzystałbym regulatora PID. Proponuje wyłączyć część różniczkującą. Cześć D może wprowadzić więcej szkody niż pożytku. Aby stosować regulator z częscią D trzeba siedzieć długo w tym temace i posiadać pewne doświadczenie. Sterowanie silnikiem musi odbywać się z pewną histerezą, ponieważ silnik ma bezwładność i inne takie pierdoły, które dośc mocno utrudniają sterowanie. Funkcja samodostrajania nie jest dobrym patentem i dość często zawodzi. Pozatym układ musi spełniać pewne warunki aby można było wykonać samonastrojenie.
-
Robson_7777
- Posty: 25
- Rejestracja: 27 mar 2006 00:00
- Lokalizacja: Wrocław
Re: Regulator PID
Dziekuje za wszelkie uwagi. Celem wyjaśnienia, prezentowany układ ma służyć celom dydaktycznym, w układzie zastosowano malutki silniczek prądu stałego, więc rozwiązania podane przez Gościa są słuszne ale dla poważniejszych zastosowań
! Istotnie problem może wynikać z opóźnień między pomiarami prędkości a sterowaniem układu! Do dyspozycji posiadam jednak tylko karte pomiarową NI 6024E.
[quote="marte"]
Piszesz coś o PWM a to jest regulacja z modulowana szerokością impulsu, a to niewiele ma wspólnego z regulatorem PID.
Regulator PID wypracowuje sygnał, który steruje obiektem poprzez układy wykonawcze! Jednym z praktycznych sposobów regulacji prędkości silników DC jest sterowanie układu wykonawczego sygnałem PWM.
Bedę wdzięczny za kolejne uwagi i sugestie!
Pozdrawiam
[quote="marte"]
Piszesz coś o PWM a to jest regulacja z modulowana szerokością impulsu, a to niewiele ma wspólnego z regulatorem PID.
Regulator PID wypracowuje sygnał, który steruje obiektem poprzez układy wykonawcze! Jednym z praktycznych sposobów regulacji prędkości silników DC jest sterowanie układu wykonawczego sygnałem PWM.
Bedę wdzięczny za kolejne uwagi i sugestie!
Pozdrawiam
Re: Regulator PID
Zgadzam się z tym, że regulator wypracowywuje sygnał, który jest przekazywany na urzadzenie wykonawcze. Na regulator podajesz uchyb regulacji, który jest różnicą wartości zadanej SP oraz wielkości regulowanej PV. e = SP - PV. Jeśli e jest różne od 0 to regulator wystawia odpowiednie sterowanie w zależności od typu zastosowanego regulatora i jego nastaw. Dodałem plik, który obrazuje ogólnie ideę regulacji PWM. Może to nie ma nic wspólnego ze sterowaniem silnikiem, ale chodzi o ideę. Nie wiem w jakim stopniu znasz się na automatyce. ALe jak dla mnie to innaczej rozwiązałbym sterowanie tym silniczkiem. W każdym badź razie na regulator podaj sygnał z jakiegoś "czujnika obrotów". A to co wypracuje regulator na urzadzenie sterujące tymi obrotami. Lepiej będzie zamodelować regulator sobie samemu. Z doświadczenia wiem, że te które są np w standardzie w matlabie są kiepskie. Nigdy nie wiadomo jaka jest struktura itp. Moge wrzucić tu jakiś przykładowy regulator PI.Robson_7777 pisze:
Regulator PID wypracowuje sygnał, który steruje obiektem poprzez układy wykonawcze! Jednym z praktycznych sposobów regulacji prędkości silników DC jest sterowanie układu wykonawczego sygnałem PWM.
Bedę wdzięczny za kolejne uwagi i sugestie!
Pozdrawiam
Pzdr
-
Robson_7777
- Posty: 25
- Rejestracja: 27 mar 2006 00:00
- Lokalizacja: Wrocław
Re: Regulator PID
Może 5 lat studiów na kierunku Automatyka i Robotyka to niezbyt dużo jednak metody regulacji, struktury oraz zasady doboru regulatorów nie są mi obcemarte pisze: Nie wiem w jakim stopniu znasz się na automatyce
Sama idea regulacji PWM nie jest zbyt skomplikowanamarte pisze: Dodałem plik, który obrazuje ogólnie ideę regulacji PWM. Może to nie ma nic wspólnego ze sterowaniem silnikiem, ale chodzi o ideę.
Jakieś propozycje?marte pisze: ALe jak dla mnie to innaczej rozwiązałbym sterowanie tym silniczkiem
Dodam że silnik sterowany jest za pomocą mostka H, natomiast informacja o prędkości uzyskiwana jest za pomocą prostego "enkodera" wykonanego na transoptorze
Zależy jak zamodelujesz konkretną strukturę regulatora a następnie obliczysz jego nastawy!marte pisze: Lepiej będzie zamodelować regulator sobie samemu. Z doświadczenia wiem, że te które są np w standardzie w matlabie są kiepskie.
Wracając do tematu, chodzi mi o realizację regulatora PID w LabView do opisanego przykładu?
Pozdrawiam
Re: Regulator PID
Regulator PID wystepuje w dwóch strukturach. Skoro jestes automatykiem to wiesz w jakichZależy jak zamodelujesz konkretną strukturę regulatora a następnie obliczysz jego nastawy! Wracając do tematu, chodzi mi o realizację regulatora PID w LabView do opisanego przykładu? Pozdrawiam
Jeśli chodzi o rozwiązania techniczne to raczej nie moja działka...
Pozdrawiam
Re: Regulator PID
mam pytanie w takim razie jaką wartość mają sygnaly sterujace z tego regulatora PID ? czy mieszcza sie w zakresie 0-20 mA ? bo tyle obsluguje regulator w rzeczywistosci a przy symulowaniu jakiegokolwiek ukladu regulacji np. w Matlab/Simulink sygnaly sterujace z regulatora sa duzo wieksze w przypadku z klasycznym PID
-
Robson_7777
- Posty: 25
- Rejestracja: 27 mar 2006 00:00
- Lokalizacja: Wrocław
Re: Regulator PID
W przedstawionym układzie na wyjściu regulatora uzyskujemy zakres zmian sygnału od 0,01 do 99,9, bo taki był potrzebny. Sygnał ten po podzieleniu przez 100, reguluje współczynnik wypełnienia sygnału sterującego PWM.
pętla 0-20 mA jest jednym z wielu standardów wyjścia, regulatory wyposażone są jeszcze w inne standardy np.:
* 0/4..20 mA, 0/1..5 V
* ON/OFF
Proponuje przejrzeć strony producentów regulatorów
Pozdrawiam
Nie musząnowy pisze: czy mieszcza sie w zakresie 0-20 mA ? bo tyle obsluguje regulator w rzeczywistosci
* 0/4..20 mA, 0/1..5 V
* ON/OFF
Proponuje przejrzeć strony producentów regulatorów
Pozdrawiam
Re: Regulator PID
przejrzałem, moze byc i 200 mA jednak w takim przypadku zmienia sie transmitancja ukladu a konkretnie maleje wzmocnienie, wiec otrzymasz jeszcze wiekszy sygnal z regulatora nie mieszczacy sie w tych granicach, dotyczy to ogolnie ukladu regulacji a nie tego konkretnego przykladuRobson_7777 pisze: Proponuje przejrzeć strony producentów regulatorów![]()
Pozdrawiam