Samo balansujący pojazd na Arduino

Samo-balansujący pojazd to takie urządzenie – na jednym, albo dwóch kołach, które samo utrzymuje równowagę. Kierujący przechylając się na pojeździe przesuwa punkt równowagi tak, że urządzenie, by się nie przewrócić musi jechać w kierunku przechylenia. W ten sposób powstały proste pojazdy wyręczające nas w chodzeniu.

Lauszus z bloga TKJ Electronics postanowił zrobić taki pojazd. Wykorzystał do tego 2 silniki elektryczne z przekładnią, sterowniki MOSFET, Arduino Pro Mini oraz czujnik położenia (żyroskop + akcelerometr).


Zdjęcie pochodzi z bloga TKJ Elekctronics

Zasada działania jest prosta. Czujniki położenia obliczają kąt pod jakim przechylone jest jest urządzenie. Arduino stara się ustawić taką moc silników by ten kąt się nie zwiększał i urządzenie się nie przewracało.

Algorytmy wykorzystywane do takiego działania to:

  • Filtr Kalmana – odfiltrowuje szumy z czujników położenia starając się wyłuskać z nich prawdziwy stabilny kąt przechyłu. Bez względu na wibracje spowodowane nierównościami na drodze.
  • Regulator PID – to dynamiczny algorytm dobierający moc silników do przechylenia ciała, tak by była odpowiednia przy jeździe na równej drodze, jak i pod górkę.

Matematyczne podstawy regulatora PID zostały opisane na naszym blogu Starter-Kit.

Do strojenia algorytmów Lauszus podłączył do Arduino moduł Bluetooth. Dzięki niemu pojazd komunikuje się z telefonem na Androidzie, gdzie odpowiednia aplikacja wyświetla jego parametry.

Tak urządzenie prezentuje się podczas jazdy:

sprae

Leave a Reply

Your email address will not be published. Required fields are marked *