Skocz do zawartości

Algorytm sterowania robotem samobalansującym


Pomocna odpowiedź

Napisano

Cześć

Kiedyś zapragnąłem zbudować robota. Zamiast zrobić coś prostszego, od razu wziąłem się za robot samobalansujący. Zbudowałem, zaprogramowałem, ale zupełnie nie wiem jaki algorytm użyć aby robot stał w pionie, jeździł, skręcał. Czy regulator PID do tego się nadaje? może LQR?

Jakich Wy regulatorów używacie? Macie jakieś materiały, tutoriale, kody programów, etc. ?

Dzięki za pomoc.

No dobra, widziałem już kaskadę regulatorów PID. Próbowałem coś takiego i mam problem z zestrojeniem regulatora. Próbowałem stroić bardzo podobną metodą którą opisuje autor, ale robot za nie za bardzo chce utrzymywać pion. Dlatego pytam tutaj. Jestem też ciekaw co bardziej polecacie, PID czy LQR?

Witam jeśli masz problem z dostrojeniem regulatora PID to nie zabieraj się nawet za LQR. Tam masz cztery magiczne parametry, wzmocnienia, które musisz wyznaczyć najlepiej bazując na modelu matematycznym. W swoim robocie próbowałem LQR i PID nastawy dobierane w simulinku w oparciu o model i nie zauważyłem większej różnicy jeśli chodzi o regulację odchylenia od pionu. W obu przypadkach robot radzi sobie dość dobrze, problem natomiast leży gdzie indziej robot nie chce stać w miejscu cały czas porusza się w jedną stronę i to go wytrąca z równowagi. Nie pomaga tutaj nawet LQR a kaskady nie próbowałem.

U mnie simulink wypluł takie nastawy dla LQR:

K1=0.918365256753908

K2=-29.3979547980982

K3=8.05452269188653

K4=-0.321881543949043

K1 mnożę z drogą

K2 z kątem odchylenia

K3 z prędkoscią liniową

K4 z prędkością obrotową

i całość sumuję

Jak widać K2 jest znacząco większe niż K1 czy K3, które są odpowiedzialne za pilnowanie by robot stał w miejscu co najoględniej mówiąc znaczy tylko tyle, że regulator pilnuje tylko odchylenia kątowego. Nie udało mi się rozwiązać tego problemu i efekt końcowy nie jest taki jak bym sobie wymarzył. Może ktoś uporał się z tym zjawiskiem i podzieli się doświadczeniem.

  • 3 tygodnie później...

I tą zsumowaną wartość podajesz jako PWM na silniki?

Mógłby ktoś udostępnić swoją symulację? Ja mogę udostępnić moją, moglibyśmy porównać.

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...