Go Down

Topic: Self Balancing Robot using LQR (Read 3873 times) previous topic - next topic

vacky11

Hello,

First of all thanks for all the posts related to self balancing robot on this forum. I was able to build my own self balancing robot using PID control from the information given in those posts. But most of them use PID control method for the task of self-balancing. I want to implement LQR control method for this same task. I was not able to find good resources for this. Can anybody please help me with this?


Jujo


akiakhil

Iam building a self balancing robot but the problem is the two motors speed is not the same exactly iam using L293D motor driver and arduino uno . When we give low RPM one of the motor drives more current than the other and it rotate little bit faster.

dmcland

From the research I have done on this, when one motor is slightly faster or slightly slow, I have seen
this code modified.

LMotorController motorController(ENA, IN1, IN2, ENB, IN3, IN4, 1, 1)

The trailing 1, 1 is the speed to each motor.

The LMotorController.h file reads each of the variables and applies the correct value based on the PID.

In this case, 1 meaning ASBSpeed of the right wheel and 1 meaning ABSSpeed of the left wheel.

By changing to .9, 1 you should see the desired results.

Of course this is based on reading about the FRANKO code.

Go Up