Let's Make Robots!

EquipoiseBot

balance

EquipoiseBot is my two wheeled self balancing robot. It can be controlled using a homebuilt IR remote. This robot is based on a couple of PIC microcontrollers that work together. I have built all the mechanics and electronics from scratch.

The robot uses two accelerometers and one gyro to make it balance. Two different values representing the angle of the robot are calculated. One from the accelerometers using the mathematical tangens-funktion and one from the gyro using integration. Those two angle values are combined in a filter to make one new value which is used as input in a PID regulator to contol the motors, keeping the robot in balance.

 

 

 

 

 

 

 

The remote is built in the casing of an old transmitter from an RC helicopter. The transmitter sends the X and Y positions of the control stick over IR using using standrad 1200 baud serial data modulated with 38KHz and a homemade data protocol.

The steering signal from the remote is just added to one of the motorsignals and subtracted from the other. The forvard/reverse signal from the remote are added to the angle value after the filter described above. The steering works great but the forward/reverse is far from perfect. The remote is commanding the robot to lean at an angle, not to drive at a commanded speed. There is nothing preventing the robot from driving to fast, if this occurs it falls over. This makes the robot hard to control.

EquipoiseBot is equipped with quadrature wheel encoders. Those are not used at all but in the future they can be used to make the robot stand still in one place, or to improve the remote control function.

Below are some pictures from the building of EquipoiseBot. If you like you can read more and see more pictures of EquipoiseBot at my website: http://diytechinnovations.se/robots/equipoisebot/equipoisebot.html

 

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
Yes. This is where the encoders come into play. As you already mentioned.

Very smooth, with great build quality and a clean look.

Sounds like integrating the encoders would really help with the forward/reverse controls.

Thank you. I agree. I will probably use the encoders later.

I've watched a lot of balancing robot videos, this must be the most stable one I have seen. Looks very well built and programmed. Nice work :)

Thank you. I have tried to adjust the PID constants as well as possible, but I know there is still room for improvements.