9 May2019

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 4

International Journal of Management, Technology And Engineering ISSN NO : 2249-7455

REAL TIME SURFACE ANALYSER USING SELF-BALANCING PID ROBOT


J. P Verma*1, Shikhar Srivastava2, Chetan Dhiman2, Yash Kumar2
1
Assistant Professor, Dept. of ECE, SRM IST, Ghaziabad (UP), India.
2
Student, Dept. of Electronics & Communication Engineering, SRM IST, Ghaziabad (UP), India.
ABSTRACT
This project basically utilises PID control systems concept in order to analyse the inputs from Accelerometer
and Gyroscopic sensors to give a graphical outlook of the surface. The self-balancing robot has an inverted
pendulum architecture to follow. The robot aims to observe and illustrate the surface undulations and
topography through a graphical representation. For that, we use Arduino’s inbuilt serial monitor as the
displaying tool.

The undulations will make the X-Y axes readings of the Gyroscopic sensor to vary and accordingly provide us
with the required disturbances to have a graphical insight of the surface being covered by the standalone self-
balancing robot, w.r.t. the mean value so displayed.

Keywords: Arduino Pro Mini, Arduino Nano, MPU-6050, A4988 Motor Driver, nRF24L01, LM2596, NEMA 17
Stepper Motor

HISTORY
CONVENTIONAL SURFACE LEVELING DEVICES
Spirit level has been widely in use when it comes to one of the most convenient portable hardware devices that
help in measuring the surface levelling of various man-made surfaces. The bubble so seen floating in the middle
of the vessels are measured as per physical calibrations and the surfaces are altered accordingly to bring the
bubble in the centre. Bosch Surface level preparation GSL 2 has been one of the latest introductions to the what
we have tried to achieve through this project, with much precision and accuracy. It uses a laser projection on the
floor that casts two lines of laser over the floor. If any deviation or undulation is found, the two lasers differ
from one another and the intersections of the two lines can be used as diameter of the depression and it can be
detected easily.

INVERTED PENDULUM CONFIGURATION


The model has been designed in reverse pendulum design, similar to that of an inverted pendulum configuration.
The wheels of the robot act as the centre of the pendulum, subtended from the ground, against gravity. The
distance of the payload meant to be transported through the robot acts as a load targeted to be balanced. More
the distance from the ground, more is the centre of mass shifted away and hence, lesser stability. Hence, the
robot is targeted to be of optimum height, so as to maintain a balance and the margin for displacement to
encourage better balancing mechanism.
The motors are programmed in such a way that they move in the direction of the robot’s inclination in order to
balance it. Suppose, the robot inclines in the front direction. Hence, the motors rotate to move the base of the
robot in front direction in order to maintain its straight balanced state.

INTRODUCTION
Self-Balancing robots have been quite much prevalent for the past decade in several applications like self-
balancing two wheelers, autonomous vehicles, autonomous special purpose robots, etc. They have been using
dedicated sensors of gyroscope and magnetometers for the balancing and orientation purposes. Simultaneous
calibrations of these separate sensors were a great deal for programming and making them up to use. Earlier, it
was seen as nearly impossible that one can think of two wheels balancing on their own, just like human beings.
But introduction of sensor modules like MPU-6050, that include both magnetometer and gyroscopic sensors in a
single module, have made things better.
MPU-6050
MPU 6050 is an IMU (Inertia Measurement Unit) sensor, which is compatible with Arduino and is widely used
in applications such as self-balancing robot, UAVs (Unmanned Aerial Vehicles), and more. This sensor helps us
to in getting position in three-dimensional space of the object. To determine the position, values are usually
given in angles. It is used to sense orientation of wearable gadgets, smartphones, which uses IMU sensor to
track movement.
Volume IX, Issue V, MAY/2019 Page No: 334
International Journal of Management, Technology And Engineering ISSN NO : 2249-7455

Arduino Pro Mini


It is a microcontroller that uses Atmega328 microchip. It consists of 14 digital-I/O pins (6 of them could be used
as Pulse Width Modulation outputs), an onboard resonator, one reset button, 6 analogue inputs and sockets for
mounting pin headers. There are two versions of Arduino Pro Mini. One runs at 3.3V and 8 MHz, the other runs
at 5V and 16 MHz

A4988 Motor driver


The A4988 is a micro stepping driver for motors with built-in translator for operations to be performed easily. It
can drive centre tapped stepper motor in step modes namely as full, half, quarter, eighth, and sixteen. It has
output drive capacity of up to 35V and ±2A. The A4988 interface is ideal in conditions where the
microprocessor lacks in capacity to drive complex programs, or where it is overburdened.

nRF24L01
It is a transceiver model based on a single chip design for the world wide 2.4GHz – 2.5GHz ISM band. Its
transceiver includes a power amplifier, a frequency synthesizer completely integrated, a crystal oscillator, a
demodulator, modulator and Enhanced Shock-Burst protocol engine. Current consumed by nRF24L01 is as low
as, 9.0mA giving an output power of -6dBm and 12.3mA in receiver (RX) mode. Power saving is made very
easily realizable with the help of Power Down modes and Built-in Standby.

LM2596
This is a stepdown voltage converter which converts input DC 7-28V to DC 5V. The input is given through the
battery which gives output as DC. While the battery discharge, voltage is also decremented. Here is the
advantage of having variable input voltage on LM2596, which gives us constant 5V DC output required by
other boards used in project, namely, Arduino Pro Mini, MPU6050, NRF24L01 and A4988 stepper motor
driver.

NEMA 17 Stepper Motor


Stepper motor is a DC electric motor having brushless design. In this one full revolution is partitioned into many
equivalent advances. The motor's position will not only be able to old at one of these advances, without
inclusion of position sensors, but also be directed to move, as long as the motor is made to rotate at a particular
speed and torque with respect to their application.

Arduino Nano
It is a compact, reliable, ready to use and breadboard inviting Microcontroller based board, designed by
Arduino.cc, using ATmega328p. It houses the same utility as enjoyed in Arduino UNO despite of being smaller
in size. It has a working voltage of 5V despite of the fact that this info voltage can be shifted to 7-12V. Arduino
Nano contains 14 programable pins, 8 regular pins, 2 reset pins and 6 power pins. Each of the I/O pins (be it
digital or analog) are appointed with different capacities though these can be arranged as yield or info in term of
their fundamental capacity. Smaller size and breadboard friendliness suit the gadgets’ application and a perfect
decision where the size of electronic parts is of massive concern.

ADXL335
It is a little, thin, low power, full 3 axis accelerometer with voltage outputs that are signal conditioned. It
measures acceleration with a minimal full-scale range of +/- 3g. The static acceleration of gravity can be
measured in applications including tilt sensing, as well as motion guided dynamic acceleration, shock, or
vibration.

Arduino Uno
It is a microcontroller based on the Microchip ATmega328P and is designed by Arduino.cc. The board is
equipped with sets of programable and simple input/output (I/O) pins that could be interfaced with distinct
development sheets (shields) and distinct circuits. The board consists of 14 Digital pins, 6 Analog pins, and
computerized with the Arduino IDE (Integrated Development Environment) with the help of type-B USB link.
It can to be powered by a USB link or by an outside 9-volt battery, however its operating voltage can lie
somewhere between 7 and 20 volts.

Joystick
When we listen "Joystick" we consider Game controllers. In the event that we talk about Electronics there are
numerous helpful uses of Joystick. These kinds of module are for the most part utilized in Arduino based DIY
tasks and Robot Control. As we probably are aware, the module gives simple yield so it very well may be
utilized for bolstering the simple information dependent on heading or development. It can likewise be
associated with a versatile camera to control its movement.

Volume IX, Issue V, MAY/2019 Page No: 335


International Journal of Management, Technology And Engineering ISSN NO : 2249-7455

SCHEMATIC DIAGRAM AND WORKING:

Fig 1. Schematic Diagram of Robot

Fig 2. Schematic Diagram of Transceiver Analyzer

We have executed the project in two parts: Self Balancing Robot and Transceiver Analyzer part. The Self
Balancing part uses Arduino Pro Mini as the microcontroller, along with MPU-6050 as the IMU for analysing
the orientation. The gyroscopic readings are taken in °/s unit and fed to the microcontroller that analyse it with
PID Programming algorithms. Hence, the values are calculated as per the algorithms fed to the system and
finally put together as instructions to the stepper motor drivers, A4988, giving output to each stepper motor. The
direction of rotation is given to the stepper motors w.r.t to the outputs and accordingly the robot balances itself
by moving in the direction of the inclination of the robot's body.
The transceiver analyzer uses ADXL335 as the IMU for analysing the surface undulations. The oscillations
depicted on the Serial Monitor of Arduino IDE vary as per the undulations in the surface. The disturbance in the
X-axis makes it vary and accordingly the changes are reflected in the serial monitor.
Hence, we can make the robot move over the surface and hence, make out where the surface needs alterations to
match the requirement of a levelled output.

CONCLUSION
The project was implemented in the form of a practical structure. Following is the image of the structure with all
the components listed above, implemented in it. Two separate IMU's have been implemented to achieve
successful self-balancing mechanism as well as surface analysing outputs. The second system involves
nRF24L01 being implemented on transmitting and receiving ends so as to transfer real time surface analysis to
Arduino IDE, to display the details in graphical form.

Volume IX, Issue V, MAY/2019 Page No: 336


International Journal of Management, Technology And Engineering ISSN NO : 2249-7455
Acknowledgement: I would wholeheartedly like to thank our guide, Mr. J. P. Verma, for his invaluable support
and guidance throughout the research and for sparing his time out of his busy schedule. This research would have
been impossible without his words of wisdom and timely reminders for the deadlines. Living and carrying out our
careers at distinct locations was one of the biggest hurdles for us to face and overcome. We had to put in a lot to
manage our timings simultaneously and accordingly deliver in time, with collective and smart efforts. We realized
how team work makes things easier, when more brains work in the same direction for some commonly desired
outputs and its importance. Moreover, it couldn’t have been possible without our Subject heads, Mr. Satya Sai
Shrikant, Dr. Prashant Mani, Dr. Vinod Chaudhary and Mrs. Rupali Singh for their worthy suggestions for pushing
the bar further for improvisations and reaching a quality of work to be delivered.

REFERENCES

[1] Iulian Mateșică, Mihai Nicolae, Liliana Bărbulescu, Ana-Maria Mărgerușeanu. Self-balancing robot
implementing the inverted pendulum concept. 2016 15th RoEduNet Conference: Networking in Education
and Research. 7-9 Sept. 2016.
[2] Kui Peng, Xiaogang Ruan, and Guoyu Zuo. Dynamic Model and Balancing Control for Two-Wheeled Self-
Balancing Mobile Robot on the Slopes. Proceedings of the 10th World Congress on Intelligent Control and
Automation, 6-8 July 2012.
[3] Adik S. Wardoyo, Hendi S, Darwin Sebayang, Imam Hidayat, and Andi Adriansyah. An Investigation on the
Application of Fuzzy and PID Algorithm in the Two Wheeled Robot with Self Balancing System Using
Microcontroller. 2015 International Conference on Control, Automation and Robotics. 20-22 May 2015.
[4] Shubhank Sondhia, Ranjith Pillai. R, Sharat S. Hegde, Sagar Chakole, Vatsal Vora, “Development Of Self
Balancing Robot With Pid Control”, International Journal of Robotics Research and Development (IJRRD),
Vol. 7, Issue 1, Apr 2017, 1-6
[5] Chriss Grimholt, Sigurd Skogestad, “Optimal PID control of double integrating Processes”, IFAC
Symposium on Dynamics and Control of Process Systems, including Biosystems, June 6-8, 2016, pp 127-
132.

[6] Nawawi, S. W., Ahmad, M. N. and Osman, J.H.S, “Real-Time Control of Two-Wheeled Inverted Pendulum
Mobile Robot" World Academy of Science Engineering and Technology 29, 214 – 220

Volume IX, Issue V, MAY/2019 Page No: 337

You might also like