Development of Robotic Arm Using Arduino Uno: Priyambada Mishra, Riki Patel, Trushit Upadhyaya, Arpan Desai
Development of Robotic Arm Using Arduino Uno: Priyambada Mishra, Riki Patel, Trushit Upadhyaya, Arpan Desai
Development of Robotic Arm Using Arduino Uno: Priyambada Mishra, Riki Patel, Trushit Upadhyaya, Arpan Desai
ARDUINO UNO
1
Priyambada Mishra, 2Riki Patel,2Trushit Upadhyaya, 2Arpan Desai
1
B.Tech Student,Department of Electronics & Communication,
2,
Department of Electronics & Communication, Charotar University of Science & Technology, Changa,
Gujarat, India. [email protected]
ABSTRACT
This proposed work is an overview of how we can make use of servo motor to make joints of a robotic arm and control it
using potentiometer. Arduino UNO board is programmed to control the servo motors and arduino's analog input is given to
potentiometer. This modelling resembles like a robotic crane or we can convert it into robotic crane using some tweaks.
Robotic arm is one of the major projects in today automation industries. Robotic arm is part of the mechatronic industry
today’s fast growing industry. This project is apick and place robotic arm. On large scale it can be used as in environment,
which is either hazardous (e.g. radiation) or not accessible. As the size of the robots scale down, the physics that governs
the mode of operation, power delivery, and control change dramatically, restricting how these devices operate This also
include it's characteristics like its extension, positioning, orientation, tools and object it can carry. This paper is on how we
can make robotic arm with non useful materials and its application for small purposes. This paper also says about its
advantages, disadvantages, methodology. I conclude this paper by future enhancement.
I. INTRODUCTION
The term robot comes from the Czech word robota, different ways. A human arm by comparison have seven
generally translated as "forced labour", this describes the degrees of freedom [2].
majority of robots fairly well. Most robots in the world are
designed for heavy, difficult to manufacture in work. They Like as we have our arm whose job is to move your hand
handle tasks that are difficulty, dangerous or boring to from place to place. Similarly job of robotic arm's is to
human beings. The most common robot is the robotic arm. move an object from one place to other that is what is a
This robotic arm is type of mechanical model arm, it is pick and place robotic arm. Industrial robots are designed
usually programmed, like of a human arm may be the sum to do exactly in an controlled environment, over and over
total of the mechanism or may be part of a more complex again. For example, a robot might twist the caps of peanut
robot. The links of such a manipulator are connected by butter jars coming down an assembly line. To each a robot
joints allowing either rotational motion (such as in an how to do its job, the programmer guides the arm through
articulated robot) or linear displacement [1] . the motions using a handheld controller. The robot stores
the exact sequence of movements in its memory, and does
An industrial arm with six joints similar to a human arm it it again and again every time a new unit comes down the
has equivalent of a shoulder, an elbow and a wrist. assembly line [5] .
Typically, the shoulder is mounted on a stationary base
structure rather than to a movable body. This type of robot Most industrial robots work in auto assembly lines putting
has six degree of freedom, meaning it can pivot in six cars together. Robots can do a lot of this work more
efficiently than human beings because they are so precise, Enlisting the industrial robotic arms parameter:
They always drill in the exactly the same place, and they
always tighten bolts with the same amount of force, no 1. Number of axes
matter how many hours, they've been working. 2. Degree of freedom
Manufacturing of robots are very important in the 3. Working Freedom: The region of space a robot
computer industry. It takes precise hand to put together in can reach
tiny microstrip[4]. 4. Carrying capacity or pay load: How much weight
a robot can lift.
5. Speed: How fast the robot can position the end
of its arm, angular linear speed of each axis or
as a compound speed.
6. Acceleration: How quickly an axis can
accelerate.
7. Accuracy: How closely a robot can reach a
commanded position.
8. Repeatability: How well the robot will return to
a programmed position.
9. Power source
10. Drive: Some robots connect electric motors to
the joints via gears, others connect to the motor Fig 4 Cylindrical robotic arm
to joint directly.
11. Compliance
Fig 3 Articulated
a. analogRead(pin);
b. analogReference();
c. analogReadResolution(bits);
Now talking about servo, the arduino Uno has a
feature which enables us to control the servo position
by just giving the degree value. Say if we want the
servo to be at 60, we can directly represent the value
in the program. The Servo header(Servo.h) file takes
care of all the duty ratio calculations internally.
#include <servo.h>
servo servo0;
servo0.attach(3);
servo0.write(degrees);
Here the first statement represents the header file for
controlling the SERVO MOTOR. Second statement is
for naming the servo. Here considering as servo0 as i
have used four servo motor. Third statement states
where the servo signal pin is connected this must be
PWM pin here pin3 for first servo. Fourth statement
gives command for positioning servo in degrees. If it
is given 30, the servo motor rotates in 30 degrees.
Now we have SG90 servo position from 0 to 180 and
the ADC values are from 0-1023. We will use a
servovalue function function which matches both
values automatically.
sensorvalue0=map(sensorvalue0, 0, 1023);
sensorvalue1=map(sensorvalue0, 1, 1023);
sensorvalue2=map(sensorvalue0, 2, 1023);
sensorvalue3=map(sensorvalue0, 3, 1023);
The above statement maps both values automatically
and stores the result in integer 'sensorvalue0'.
The above statement maps both values automatically
and stores the result in integer 'sensorvalue1'.
The above statement maps both values automatically
and stores the result in integer 'sensorvalue2'.
The above statement maps both values automatically
and stores the result in integer 'sensorvalue3'.
Thus by using the pot means by rotating the pot which
changing its voltage value will change the servo
angular rotation.
III. RESULT AND DISCUSSION
Now the fourth and the last servo is glued at the edge
of another piece that is made of another cardboard
piece with length 8cm,3cm,4cm,1cm. With this we
connect the third and fourth respectively together and
hence we set up as of Fig 11 and this servo forms the
main to pick and place device. Now we make a hook
so that we can easily pick the objects so for that we
cut two pieces of cardboard of length 1cm*7cm and
4cm*5cm gluing them together making it a final grab
and then all the joints are glued together and we get a
robotic arm ready to connect to the digital pins of
arduino and which can be controlled by the use of the Fig 11 Step 4
10k pot. Fig 8 to fig12 show for the one by one step
move for arm.
RESULT AND DISCUSSION
Here we are having four pots provided to the user that arm and the whole circuit it works accordingly when
is by rotating these four pots, we supply variable we apply a 5V supply to the system and we get a
voltage at the ADC channels of UNO. So the digital suitable output. Thus representing how it works
values of Arduino are under control of user. These accordingly. Still there is a problem of vibration in the
digital values are to adjust the servo motor position, system that can reduce in the future enhancement that
thus the servo position is in control of user and by is maybe we can use high power servo motor and by
rotating these pots we can move the joints of Robotic the help of it vibration can be reduced even the
arm and we can pick or grab or place any object. The grabbing power is less that it can pick a very heavy
voltage across variable resistors is not completely object just a lighter object. In future this structure can
linear it will be a noisy one [9]. So to filter out this be modified and made of heavier materials and power
noise, capacitors are placed across each servo or either accelerometer or simple ac, dc motors
resistor.Robotic Arm is controlled by four thus we will get a structure that would be able to pick
Potentiometer, and we control it with the help of servo object easily and grab heavy object easily and act like
motor, We can move these servos by rotating the a perfect crane.Fig 13show the representing whole
potentiometer to pick objects, with some practice we robotic arm and fig.14 show the connections with
can easily pick and move the object from one place to arduino.
another. We have used low torque servos here but we
can use more powerful servos to pick heavy object.
The given three figures shows the complete working
of the robotic arm that is how each potentiometer is
fixed and how each individual pot controls the
rotation of the servo motors. The below figure shows
how four potentiometer are fixed [8].
Fig 12 Step 5
ADVANTAGES:
DISADVANTAGES:
This project is a small scale production it can Fig 16 arm for agricultural purpose.
pick up only small and lighter objects.
On large scale this project may become costly
and its circuit complexity increases.
On large scale may become hazardous due to
uncontrollable robotic arm it can harm
physically.
V. APPLICATIONS: