A New Design and Control of A Two-Wheel Self-Balancing Robot Using The Arduino Microcontroller
A New Design and Control of A Two-Wheel Self-Balancing Robot Using The Arduino Microcontroller
Abstract: -- In the last decade, the open source community has expanded to make it possible for people to build complex products at
home. [1] In this thesis a two wheeled self-balancing robot has been designed. These types of robots can be based on the physical
problem of an inverted pendulum [2]. In this paper, we can see the design, construction and control of a two-wheel self-balancing
robot. This system consists of a pair of DC motor and an Arduino UNO R3 microcontroller board, make a robot which can balance
itself on two wheels the platform will not remain stable itself. Our job will be to balance the platform using distance sensors and to
maintain it horizontally. At first, we have decided to just balance the robot on its two wheels.
Keywords: — Robot, Arduino, AT mega 328, Control Systems, PID controller, Linear Quadratic Regulator.
This paper is arranged as follows: The Section 2 describes the
hardware and system architecture of the robot. The designs of
I. INTRODUCTION filters, inner control loop to equilibrate the two motors,and
To make a robot which can balance itself on two wheels. balancing control in Section 3. Finally Section 4 represents the
There will be only one axle connecting the two wheels and a experimental results, followed by some conclusion in Section
platform will be mounted on that .There will be a another 5.
platform above it. The platform will not remain stable itself.
Our job will be to balance the platform using distance sensors II. STRUCTURE OF THE TWO-WHEEL BALANCING
and to maintain it horizontal. At first we have decided to just ROBOT
balance the robot on its two wheels. Basically, a two-wheel
self-balancing robot is very similar to the inverted pendulum, In the structure of a self-balancing robot can be classified into
and which is an important test part in control system and three parts such as sensors, motor and motor control, and
research education purpose; let us see, for an example [5], [6]. develop board [4], [5]. In Section II-A introduces the
A Two-wheeled self-balancing vehicle commercially known application and advantage of the sensors on the proposed
as “Segway”.And also the Segway can never stay balancing robot, andalso how these sensors are employed to
upright.Besides the development of Segway, studies of two- obtain measurements of acceleration, and distance
wheel self-balancing robots have been widely reported. For traveled,androbot tilt angle. The Section II-B describes the
example, JOE [5] and nBot [6] are both early versions motor selection and control for the balancing robot. And
complete with inertia sensors and motor encoders and also Section II-C discusses the reason behind choosing the Arduino
along with on-vehicle microcontrollers. Arduino is an open develop board, and how it is deployed.
prototyping platform based up on Atmega processors .And It
will be a fast becoming popular platform for both education
[7] and product development, with applications ranging from
robotics [8], [9] to process control [10], [11] and networked
control [12].In this paper, we report a student project on the
basis of design, construction and control of a two-wheel self-
balancing robot with Ardunio software. The robot is driven by
two DC motors, and is equipped with an Arduino Uno board
which is based on the ATmega328 microprocessor, and also
including with a single-axis gyroscope and a 2-axis
accelerometer for attitude determination. In order to
compensate for gyro drifts common in COTS sensors, a
complementary filter is implemented [13]. For two wheel
control designs are based up on the linearized equations of
motion, such as a proportional-integral-differential (PID) Fig 1: Self Balancing Robot
control.
A. Selection and Application of Sensors UNO features 54 general-purpose digital I/O pins of which 15
In order to make balance of the robot, there are two things provide PWM output. And alsosome of the digital I/O pins
must needed one is robot’s tilt angle and angular velocity. It is also support serial communication such as I2C and SPI, as
possible by using MEMS sensors. And it may also including a well as interrupt handles. The board also features sixteen 10-
gyroscope, wheel-angle encoders, and alsoan accelerometer bit analog inputs for 0-5V input, giving a quantization limit of
and we can measure all the data needed for balancing control. 4.9mV.
1) Gyroscope: Gyroscope measures the angular rate around an
axes. Tilt angle can be obtained by integrating angular rate
over sampled time. An estimate of angular displacement is
obtained by integrating velocity signal over time.
1) PID Control:
V. CONCLUSION