Skocz do zawartości

Problem z robotem samobalansującym


Gość Lukasz96

Pomocna odpowiedź

Gość Lukasz96

Witam, jestem bardzo początkujący w takich tematach jak Arduino i robotyka, niedawno zacząłem projekt robota samobalansującego z użyciem silników krokowych.  W Internecie jest dużo podobnych projektów, we własnym użyłem następujących elementów: Arduino Uno, MPU 6050, 2 x A4988, HC-06, 2 x NEMA17 (12 V; 0,5A ; 0,43 Nm),  8 baterii AA do zasilania silników,  2 koła Pololu 90 x10 mm.  Na forum konstrukcja z tych samych elementów  została opisana w w tym temacie. Na początku chciałem skorzystać z gotowego i działającego kodu z projektu YABR , jednak z tą różnicą że w swoim zastosowałem do zdalnego sterowania przez Bluetooth prostą aplikację na Androida zamiast nunchucka. Program został odpowiednio zmieniony, sama konstrukcja także i ostatecznie całość przypomina robota z tego filmiku.

Niestety problemem jest nieprawidłowe działanie robota, nie jest w stanie statycznie utrzymać docelowego położenia i szybko się przewraca. Testowałem różne wartości nastaw regulatora PID, samą składową Kp, ale bez żadnych rezultatów. Wartości filtrowanego kąta pochylenia wydają się OK po sprawdzeniu w terminalu, silniki krokowe po wgraniu przykładowych programów i różnych podziałach kroków także. W swoim projekcie podobnie jak w wielu innych użyłem podziału kroku na 4.  Same wartości składowych regulatora nie powinny chyba być znacząco różne szczególnie od robota z drugiego linku (silniki i baterie ważące o wiele więcej o pozostałych części umieszczone są praktycznie tak samo).

W czym może tkwić problem? Czy zmiana np. kół na mniejsze i szersze jak w innych projektach, silników krokowych NEMA 17 na wersje z większymi  max. prądami  może cokolwiek zmienić w tym przypadku?

Link do komentarza
Share on other sites

Zarówno stopień podziału mikrokroków jak i średnica kół bezpośrednio wpływają na nastawy regulatora, bo przecież od tych dwóch wielkości zależy droga przebyta przez podwozie przy 1 kroku. Np. jeżeli zamiast podziału 1/4 zrobisz 1/8 to dla tej samej liczby kroków w danym czasie (a z regulatora otrzymujesz prawdopodobnie prędkość silnika liczoną w krokach/s lub innnej podobnej jednostce) zrobisz dwa razy krótszą drogę. Silnik kręci się dwa razy wolniej - to jakbyś wzmocnienie całej pętli zmniejszył dwa razy i żeby to skompensować musisz Kp zwiększyć 2 razy z definicji, a na pewno ulegną zmianie wszystkie trzy parametry. To samo z obwodem kół, już chyba sam rozumiesz. Poza tym ważne jest położenie (wysokość) środka ciężkości i rozłożenie mas, bo to wpływa na prędkość wywracania się robota (czyli przyspieszenie kątowe) a przecież to zwalczasz przy pomocy regulatora. Jeżeli coś zmieniłeś względem oryginalnej konstrukcji to całe strojenie PIDa musisz zrobić od nowa.

  • Lubię! 1
Link do komentarza
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.