
3 minute read
Design and Control of an Interactive Self-balancing Robot. Liem Nguyen and Holm Smidt
Design and Control of an Interactive Self-balancing Robot
By Liem Nguyen and Holm Smidt (Faculty Mentor: Hervé Collin, Ph.D.)
Advertisement
INTRODUCTION
A two-wheeled self-balancing robot relies on the Segway concept, which classically is the problem of balancing an inverted pendulum. The problem with balancing an inverted pendulum is the external torque on the system due to horizontal and vertical accelerations caused by gravity given an angular displacement with the vertical. To counteract this imposed torque and maintain balance, an equal and opposite torque must be imposed on the system. The amount of torque and hence acceleration imposed is dependent on the angular displacement of the system and the angle theta between the system and the vertical.
Using simple geometry and small angle approximation, we can express the displacement angle as a function of acceleration.
Our robot uses an Inertial Measurement Unit (IMU) to determine the accelerations it is experiencing, which are then converted to the pitch angle and its direction using an IMU algorithm. Data from the IMU is then sent to the PID controller to activate the motors. The PID control algorithm will determine and signal to the motors which direction to go and how fast, in order to keep the angle theta relatively small and balanced. The continuous loop of executing IMU and PID controller keeps the two wheeled robot balanced.
PURPOSE
The purpose of this research is to develop a selfbalancing robot capable of interacting with and responding to its environment through the use of Ultrasonic Range Finders and also to design a dead reckoning system to determine the position of the robot.
For the self-balanced robot to rove with a top heavy load of electronics, high torque produced at the wheels is of more importance than high rpm-output. We were able to design a gearbox , composed of spur gears and drive shaft, which attaches to the motors to give us an efficient conversion from high rpm to low rpm with high torque on the wheels. The resulting ratio of input to output is an 1:100 gear ratio.
Inertial Measurement Unit (IMU)
IMU’s are composed of accelerometer and gyroscope (sometimes also magnetometer) and are used to obtain velocity, orientation and forces on an object, which in turns makes IMU’s useful in navigating objects. Neither accelerometer nor gyroscope could be used by itself due to vulnerability to mechanical noises (accelerometer) and problems with “zeroing” after measuring the rate of change in inclination (gyroscope); however, by applying a simplified version of the Kalman Filter on the sensor fusion, one can obtain a reliable angle of inclination.
The chart below shows inclination angle versus time

determined by accelerometer itself in blue and by IMU in red. The applied filter smoothens out the mechanical noises of the accelerometer; yet, it doesn’t cause any lag of the data.
PID Controller
Graphic 2 shows the basic concept of the simplified PID motor controller. In our case, R(t) resembles the centered position where the inclination angle is zero and the error E(t) is the difference between the inclination angle provided by the IMU and the desired angle of zero. The PID algorithm utilizes three constant parameters: the proportional, integral, and derivative values.
Equations used to evaluate the proportional, integral, and derivative terms are combined to determine C(t). C(t) dictates the direction and speed of the motor’s spin, which is the direction and magnitude of the necessary acceleration and torque to keep the robot balanced.
Gearbox
For the self-balanced robot to rove with a top heavy load of electronics, high torque produced at the wheels is of more importance than high rpm-output. We were able to design a gearbox , composed of spur gears and drive shaft, which attaches to the motors to give us an efficient conversion from high rpm to low rpm


with high torque on the wheels. The resulting ratio of input to output is an 1:100 gear ratio.
RESULTS
Construction of two-wheeled robot with high torque gear drive system Developed IMU and PID algorithm for selfbalancing Successful IMU and PID algorithm test with robot’s drive motors
FUTURE RESEARCH

ACKNOWLEDGEMENTS
We would like to thank our devoted mentor, Dr. Hervé Collin, for his time, detailed critiques, and willingness to go out of his way to assist with our project. We would also like to thank the KCC STEM program for the use of their facilities and the NSF for their support.