You are on page 1of 4

International Journal of Scientific and Research Publications, Volume 2, Issue 5, May 2012 1

ISSN 2250-3153

Design of a Robotic Arm for Picking and Placing an


Object Controlled Using LABView
Shyam R. Nair

Department of Electronics and Instrumentation,


Hindustan University, Chennai, India

Abstract- This paper focuses on designing a robotic arm for


picking and placing an object controlled using LABView. This is
expected to improve the accuracy and simplicity in control.

Index Terms- Accelerometer, DOF, Inverse kinematics,


Kinematics, LABView, Robotics, Robotic arm

I. INTRODUCTION

R obot is a machine to execute different task repeatedly with


high precision. Thereby many functions like collecting
information and studies about the hazardous sites which is too
risky to send human inside. Robots are used to reduce the human Figure1: Robotic Arm
interference nearly 50 percent. Robots are used in different types
like fire fighting robot, metal detecting robot, etc. B. Electronics
The first robotic arm to be used in an automobile industry was
“UNIMATE” in GM motors USA in 1950s. From then there has The robot electronics consists of a PIC microcontroller, PC
been tremendous improvement in the research and development with LABView installed in it, motor driving unit, accelerometer
in robotics. Now robots are an integral part of almost all at the tip of the arm and a power supply.
industries. Robots have to do different tasks including welding, The LABView panel consists of two switches for selection of
trimming, picking and placing etc. These robots are controlled in picking and placing. And it also consists of 4 knobs for selecting
different ways like keypads, voice control, etc. the X and Y coordinates of picking and placing respectively. The
In this paper, we introduce LABView based control of the position graph shows the position of the robotic arm at each
robotic arm. The LABView is designed to input the coordinates point, and this helps in tracking the arm position. This is done
of object in the real time environment. To select the real time with the help of accelerometer.
object, the corresponding coordinate is inputted. The action of The accelerometer is placed at the tip of the arm and the
picking or placing is also given through the LABView panel. corresponding X and Y coordinates are fed back to the PC using
Once the robot gets the coordinates, it uses the inverse the same RS232 cable.
kinematics to calculate the required rotation. The motors used are dc geared motors with appropriate torque
and rpm. Solenoid type relay is used as the motor drive unit.
A lead acid battery is used as power source for the entire
II. HARDWARE system.
A. Mechanical
III. MATHEMATICAL MODELING
The robotic arm has 2 links and 3 joints. It is mounted on the
center of a table or the platform on which it is supposed to deal A. Inverse Kinematics
with the objects. The end point of the second link has an
electromagnet and all objects are magnetically attractive. O is the point to be reached.
The range of the arm is the total length of the two links. The „c‟ and „a‟ are lengths of first and second link respectively.
length of each link can be designed as per requirement. It can be
of equal or different lengths. The arm has 3 degrees of freedom. From figure1 and figure3;
Each joint has a dc geared motor for the link movement. θ1 = θ
θ2 = A
θ3 = B

By Pythagoras theorem,

www.ijsrp.org
International Journal of Scientific and Research Publications, Volume 2, Issue 5, May 2012 2
ISSN 2250-3153

b² = x²+y²+ z² (1)
θ = tan‾¹(y/x) (2)
Ø = tan‾¹(z/ x²+y²) (3)
We know that area of a triangle is given by;

Area = (s*(s-a)*(s-b)*(s-c))½ (4)

Where, s = (a+b+c)/2 (5)

Here, c and a are arm length of link one and two respectively.

We also know that the area of a triangle is given by;

Area = ½*base*altitude (6)

From figure (2);

Area = ½*b*h (7)


But h = c*sinA (8)

Now, by substituting (8) in (7), we get;

Area = ½*b*c*sinA (9)

As we know values of a, b and c, the area is calculated as per


equations (4) and (5)

Hence, from equation (9); Figure 2: Schematic of working environment

sinA = 2*Area/ (b*c) B. Kinematics

Or From figure (2),


X coordinates are decided by the arm lengths c, a, angles A, C, θ,
A = sin‾¹ (2*Area/(b*c)) (10) Ø.

Similarly, As the effective length decreases with increase in angles, A and


C, it has a cosine relationship with the x coordinate.
B = sin‾¹ (2*Area/ (a*c)) (11) The effective length decreases with increase in the values of θ
and Ø.

Hence, the x coordinate can be written as;


X = (cCosA+aCosC) Cos θ Cos Ø

Similarly,

Y coordinates are decided by the arm lengths c, a, angles A, C, θ,


Ø.

As the effective length increases with increase in angles, A and


C, it has a sine relationship with the y coordinate.
The effective length decreases with increase in the values of θ
and Ø.

Hence, the y coordinate can be written as;


Y = (cCosA+aCosC) Sin θ Cos Ø

Similarly,

www.ijsrp.org
International Journal of Scientific and Research Publications, Volume 2, Issue 5, May 2012 3
ISSN 2250-3153

new angles are achieved. And the newly computed angles are
Z coordinates are decided by the arm lengths c, a, angles A, C, θ, overwritten on the previously stored values.
Ø.
As the effective length increases with increase in angles, A and For example;
C, it has a sine relationship with the z coordinate.
The effective length increases with increase in the value of Ø. If the robot has rotated the motors in the following sequence;
There is no relation for z with respect to θ. A with 15°
B with 20°
Hence, the z coordinate can be written as; Θ with 10°
Z = (cSinA+aSinB) Sin Ø Ø with 25°

Hence the kinematic equations for the robotic arm are; And if the newly calculated angles are

X = (cCosA+aCosC) Cos θ Cos Ø A with 17°


Y = (cCosA+aCosC) Sin θ Cos Ø B with 19°
Z = (cSinA+aSinC) Sin Ø Θ with 10°
Ø with 27°
Matrix Transformation;
Then the robot will make the following rotations;

A with 2° positive rotation


B with 1° negative rotation
* = Θ with 0°
Ø with 2° positive rotation

C. Motor Rotation Thus transformation is done from initial point to the final point.

From equations (2), (9) and (10), the values of θ, A and B are
obtained. IV. SOFTWARE
Onboard software is mainly developed with micro C. This
Θ is the angle of rotation for the base motor. A is the angle of software interfaces between the PC and the robot by receiving
rotation for the motor connecting the first link and B is the angle interrupts through RS232, to control all robot functions.
of rotation for the motor connecting the second link. Simulations have been executed in PIC simulator. The LABView
panel was developed using the LABView software. It is designed
Here, we consider that all motors are of 10rpm. And hence, all in such a manner to send the command signals and receive the
the motors cover 60° in one second. coordinate details from accelerometer through RS232.
To improve accuracy, the motor is turned on only for 1ms in one
on loop in the program.

Hence the motor covers an angle of 0.06° in one on loop.

Once the angles are calculated by using the inverse kinematics,


the PIC microcontroller decides the number of on loops to be
executed for each motor.

For example, if the angle to be covered by the base motor is 24°,


then the PIC microcontroller will execute the on loop 400 times.

D. Transformation from initial to final point

Once the robot gets the coordinate values, it computes the angles
using the inverse kinematics and proper rotations are made by the
motors. These angle values are stored in eeprom of the controller.

When the next coordinates are obtained, again the robot


calculates the angles, but this time it looks back to the values
stored in eeprom and compares it with the newly computed angle
values. Then the robot rotates the motors in such a way that the

www.ijsrp.org
International Journal of Scientific and Research Publications, Volume 2, Issue 5, May 2012 4
ISSN 2250-3153

ACKNOWLEDGMENT
Figure 3: LABView Panel The research in this paper was carried out at Hindustan
Institute of Technology and science, Chennai. This work was
supported by the e-MEN Robotic Research Centre Palakkad.
V. SAMPLE WORKING
If we have an object at a coordinate (1, 5), and we have to
move it to a coordinate (3,-6), we first press the pick button in REFERENCES
the LABView panel and then adjust the X and Y values to 1 and [1] Shyam.R.Nair, “ Design of an Optically Controlled Robotic Arm for
5 using the knobs. Then we press the place button and adjust the Picking and Placing an Object”, International Journal for Scientific and
X and Y values to 3 and -6 using the knobs. These data are taken Research Publications, Vol 2, Issue 4, April 2012.
by the PIC microcontroller through serial communicator. [2] Amon Tunwannarux, and Supanunt Tunwannarux “Design of a 5-Joint
Now using the equations (2), (10) and (11), the controller Mechanical Arm with User-Friendly Control Program” World Academy of
Science, Engineering and Technology 27 2007
calculates the values of θ, A and B respectively. These values are
[3] Redwan Alqasemi and Rajiv Dubey “Control of a 9-DoF Wheelchair-
stored in separate variables and then the number of on loops to be Mounted Robotic Arm System” 2007 Florida Conference on Recent
executed are calculated and executed one by one. Advances in Robotics, FCRAR 2007
When all the motors are rotated accordingly, the tip of the [4] Jegede Olawale, Awodele Oludele, Ajayi Ayodele and Ndong Miko
second link is magnetized and this helps in holding the Alejandro “Development of a Microcontroller Based Robotic Arm”
Proceedings of the 2007 Computer Science and IT Education Conference.
magnetically attractive object. Once the destination coordinate is
reached, the tip is demagnetized to place the object. [5] Brandi House, Jonathan Malkin, Jeff Bilmes “The VoiceBot: A Voice
Controlled Robot Arm” CHI 2009, April 4-9, 2009, Boston, Massachusetts,
The output of the accelerometer is fed to the PC and thus the USA.
position of the arm can be viewed in the LABView panel. [6] Dr.R.K.Bansal ”a textbook of engineering mechanics” page no 195-
199,page no 205-209
[7] Principles of Robotics page 24-38, pg54-57
VI. CONCLUSION
LABView controlled robotic arm was successfully designed.
The robotic arm was found to be user friendly and the integration AUTHORS
of accelerometer was much helpful in attaining the feedback Shyam R. Nair, PG Scholar, Hindustan University, Chennai,
regarding the position of the arm. India, shyamieee@gmail.com

www.ijsrp.org

You might also like