Content uploaded by Gopalakrishnan Renganathan
Author content
All content in this area was uploaded by Gopalakrishnan Renganathan on May 11, 2015
Content may be subject to copyright.
ISSN (Online) 2321-2004
ISSN (Print) 2321-5526
INTERNATIONAL JOURNAL OF INNOVATIVE RESEARCH IN ELECTRICAL, ELECTRONICS, INSTRUMENTATION AND CONTROL ENGINEERING
Vol. 3, Issue 3, March 2015
Copyright to IJIREEICE DOI 10.17148/IJIREEICE.2015.3342 179
Design and Control of 3-DOF Articulated
Robotic Arm using LabVIEW and NI-myRIO
Ganesan A1, Nhizanth R2, Kamban S3, Gopalakrishnan R4
UG Scholar, Instrumentation and control engineering, Saranathan College of engineering Trichy, India1,2,3
Assistant Professor, Instrumentation and control engineering, Saranathan College of engineering Trichy, India4
Abstract: This paper focus on designing and controlling an articulated 3-DOF robotic arm using LabVIEW and NI-
myRIO. Nowadays Robots have been used in common places of manufacturing and making the tasks ranging
complicated and expensive to be automated, since technology formulates LabVIEW is used to make the robot more
precise and practical along with a hardware NI-myRIO. The three base, axis and wrist movements are obtained by
using stepper motor and 2 DC gear motor. NI-myRIO is used to generate and accquire signals for controlling and
processing, it has an inbuilt processor and FPGA and has many reconfigurable analog and digital pins.
Keywords: LabVIEW, NI-myRIO, DOF, Robotic arm, Stepper motor
1.INTRODUCTION
Robot is a machine to execute different task repeatedly
with high accuracy. 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 interference nearly 50 percent.
Robots are used in different types like fire fighting robot,
metal detecting robot, etc.
Robots are defined by the nature of their movement. There
are five important classifications of robots. They are
described as follows
• Cartesian
• Cylindrical
• Polar
• Articulated
• SCARA
The first robotic arm to be used in an automobile industry
was “UNIMATE” in GM motors USA in 1950s. From
then there has been enormous improvement in the research
and development in robotics. Now robots are an integral
part of almost all industries. Robots have to do different
tasks including welding, trimming, picking and placing
etc. These robots are controlled in different ways like
keypads, voice control, etc.
Our paper portraits the control of an 3-DOF robotic arm
using LabVIEW and NI-myRIO which makes the system
more precise and reduces time delay and it is
comparatively better than other programming languages in
the field of monitoring and control.
2. HARDWARE
2.1. Articulated robot:
An articulated robot is a robot which is fitted with rotary
joints. Rotary joints allow a full range of motion, as they
rotate through multiple planes, and they increase the
capabilities of the robot considerably. An articulated robot
can have one or more rotary joints, and other types of
joints may be used as well, depending on the design of the
robot and its intended function. With rotary joints, a robot
can engage in very exact movements. Articulated robots
commonly show up on manufacturing lines, where they
utilize their flexibility to bend in a variety of directions.
Multiple arms can be used for greater control or to conduct
multiple tasks at once, for example, and rotary joints allow
robots to do things like turning back and forth between
different work areas.
These robots can also be seen at work in labs and in
numerous other settings. Researchers developing robots
often work with articulated robots when they want to
engage in activities like teaching robots to walk and
developing robotic arms. The joints in the robot can be
programmed to interact with each other in addition to
activating independently, allowing the robot to have an
even higher degree of control. Many next generation
robots are articulated because this allows for a high level
of functionality.
Figure 1: Model of Articulated robotic arm
ISSN (Online) 2321-2004
ISSN (Print) 2321-5526
INTERNATIONAL JOURNAL OF INNOVATIVE RESEARCH IN ELECTRICAL, ELECTRONICS, INSTRUMENTATION AND CONTROL ENGINEERING
Vol. 3, Issue 3, March 2015
Copyright to IJIREEICE DOI 10.17148/IJIREEICE.2015.3342 180
2.2. Stepper Motor:
Stepper motor also called Step motor in which single
rotation is fragmented into several steps. These motors are
primarily used in measurement and control applications.
The commutator and brushes of conventional motor are
some of the most failure inclined components and they
create electrical arcs that are undesirable or dangerous in
some environments. Stepper motors are brushless and it is
an electromechanical device which converts electrical
pulses into discrete mechanical movements. The shaft or
spindle of a stepper motor rotates in discrete step
increments, when electrical command pulses are applied to
it in the proper sequence. Stepper Motors come in a
variety of sizes, and strengths, from tiny floppy disk
motors, to huge machinery steppers.
There are two basic types of stepper motors,
bipolar and unipolar. The motor which is used in this
paper is a unipolar stepper motor. A unipolar stepper
motor is really two motors sandwiched together. Each
motor is composed of two windings. Wires connect to
each of the four windings of the motor pair, so there are
eight wires coming from the motor. The commons from
the windings are often ganged together, which reduces the
wire count to five or six instead of eight. We have used
unipolar motor. It has 6 leads.
Figure 2: Circuit diagram of unipolar stepper motor
Its specifications are given below
Voltage: 12V
Current: 1A
Step angle: 1.8⁰
2.2.1. Step modes:
Stepper motor drivers often have different modes of
operation. These different modes determine in what
sequence the coils are energized to make the motor shaft
move appropriately. There are four types of these stepping
modes. However, only three of the excitation modes are
common in most stepper drivers.
2.2.1.1. Full Step:
This method of stepping the motor energizes both phases
constantly to achieve full rated torque at all positions of
the motor. If a stepper motor has 200 steps, one pulse
equals one step. So, 200 pulses from the NC computer
results in 360 degrees of motor shaft rotation. A uni-polar
stepper motor driver operating in full step mode energizes
a single phase. A bipolar stepper motor driver energizes
both coils to make a full step. The first image is single coil
full step operation while the second is dual core full step
mode.
Figure 3: Full step mode operation
2.2.1.2. Half Step:
The Half step mode energizes a single coil then two coils
then one again. Alternating between energizing a single
phase and both phases together gives the motor its higher
resolution. A 200 step stepper motor operating in half step
mode would have 400 positions, twice the normal
resolution. However, the torque will vary depending on
the step position because at times a single phase will be
energizes while at other times both phases will be
energized. Higher end drivers compensate by increasing
the current through the single coil when a single coil is
energized. This makes up for the loss in torque, making
the half step mode very stable.
Figure 4: Half step mode operation
2.2.1.3.Micro-stepping:
The micro-stepping mode is the most complex of
all the stepping modes. That is why some stepper drivers
only offer full and half step modes. Micro-stepping is
when the current applied to each winding is proportional
to a mathematical function, providing a fraction of a full
step. The most common divisions are 1/4th, 1/8th, 1/10th,
etc. However, there are some drivers that provide up to
1/256th of a full step.
Micro-stepping provides greater resolution and smoother
motor operation. This is very advantageous as it reduces
the need for mechanical gearing when trying to achieve
high resolution. However, micro-stepping can affect the
repeatability of the motor. We have used micro step for
smooth operation.
ISSN (Online) 2321-2004
ISSN (Print) 2321-5526
INTERNATIONAL JOURNAL OF INNOVATIVE RESEARCH IN ELECTRICAL, ELECTRONICS, INSTRUMENTATION AND CONTROL ENGINEERING
Vol. 3, Issue 3, March 2015
Copyright to IJIREEICE DOI 10.17148/IJIREEICE.2015.3342 181
Figure 5: Wave drive mode truth table
2.3. DC GEAR MOTOR:
DC motor converts electrical power to
mechanical force. Geared DC motor are little bit extension
of DC motor, they consist of a shaft and a gear
arrangement. The speed of the gear motor is counted in
terms of rotation in shaft per minute and is termed as
RPM.
The gear assembly helps in increasing the torque so that it
can lift weights and decreases speed. Here we are using 2-
DC gear motors for elbow and arm movement. The
following figure shows the diagram of a DC gear motor.
Figure 6: DC gear motor
2.4. NI-myRIO:
It is a hardware developed by National Instruments, Texas
used to acquire and process real time signals. It is a
portable reconfigurable input / output abbreviated as RIO.
It consists of a processor and FPGA embedded in it and it
is compact.
It consists of two expansion port (MXP) connectors A and
B carry identical set of signals and both have 34 pin outs
and a mini system port (MSP) called Connector C. In both
the cases there are certain pins which carry primary and
secondary functions.
Signals can be acquired and processed in LabVIEW and
the generated signals can be used in real time. NI-myRIO
has 3.3v, 5v, +/- 15v power output.
It provides connectivity with the host computer either over
USB or wireless connectivity. It has an inbuilt
accelerometer and special functions like Pulse width
modulation, UART, Audio input and output terminals.
Figure 7: NI-myRIO Kit
2.5. MOTOR DRIVER CIRCUIT:
The driver circuit consists of Dual H Bridge. H Bridge
enables a voltage to be applied in either direction for a
motor. This H Bridge powers the motor.
It can be used for reversing the polarity and braking of the
motor. This circuit is connected with the required voltage
of 12 volts to power the motor. The triggering is given by
the myRIO digital output port. Digital output port
generates 3.3V as triggering pulse. The following figure
shows the schematic diagram of L293D motor driver
circuit.
Figure 8: L293D motor driver circuit
3. DEGREE OF FREEDOM
In statistics, the number of degrees of freedom is the
number of values in the final calculation of a statistic that
are free to vary. The number of independent ways by
which a dynamic system can move, without violating any
constraint imposed on it, is called number of degrees of
freedom. In other words, the number of degree of freedom
can be defined as the minimum number of independent
coordinates that can specify the position of the system
completely. Estimates of statistical parameters can be
based upon different amounts of information or data. The
number of independent pieces of information that go into
the estimate of a parameter is called the degrees of
freedom. In general, the degrees of freedom of an estimate
of a parameter is equal to the number of independent
ISSN (Online) 2321-2004
ISSN (Print) 2321-5526
INTERNATIONAL JOURNAL OF INNOVATIVE RESEARCH IN ELECTRICAL, ELECTRONICS, INSTRUMENTATION AND CONTROL ENGINEERING
Vol. 3, Issue 3, March 2015
Copyright to IJIREEICE DOI 10.17148/IJIREEICE.2015.3342 182
scores that go into the estimate minus the number of
parameters used as intermediate steps in the estimation of
the parameter itself (i.e. the sample variance has N-1
degrees of freedom, since it is computed from N random
scores minus the only 1 parameter estimated as
intermediate step, which is the sample mean).
Mathematically, degrees of freedom is the number
of dimensions of the domain of a random vector, or
essentially the number of "free" components (how many
components need to be known before the vector is fully
determined). Here we used three DOF.
Figure 9: Positions of Degree of freedom
4. LabVIEW
Laboratory Virtual Instrumentation Work Bench
abbreviated as LabVIEW is a Virtual programming
language. LabVIEW is a highly productive, development
environment for creating custom application that interact
with the real world signals in fields such as science and
engineering. LabVIEW is unique because it makes this
wide variety of tools available in single environment.
LabVIEW is a development environment for problem
solving leading to accelerated productivity and continual
innovation. G-Programming being a central tool in
LabVIEW has been widely used to interlink data
acquisition, analysis and logic operations. It is a high level
data flow graphical programming language designed to
develop application that are interactive, executing in
parallel and multi-core.
It is commonly used for industrial monitoring, control and
Automation. Programming is done using 3 panels as
follows front panel, Block diagram and connector panel,
where front panel serve as user interface where controls
and indicators are placed and monitoring is carried out,
Block diagram consists of functional blocks in which
inputs are been wired and connector panel is used to
generate sub VI’s. Compared to other programming
languages LabVIEW is user friendly because
programming is done by picking and placing blocks rather
than typing a lengthy code and error correction is very
easy.
5. EXPERIMENTAL SETUP:
The following figure shows the real time setup of control
of 3-DOF robotic arm using LabVIEW and NI-myRIO.
Figure 10: Experimental Setup
6. INTERFACING
The software used for the project is LabVIEW, version
2014.We have configured our program in such a manner
that the RIO powers the driver circuit. myRIO can only
give a digital pulse of 3.3 volts not more than that, so we
have utilized this digital pulse to trigger the driver circuit
so that it will route the 12 volts connected to it to drive the
stepper motor and 2-DC gear motor. We have
programmed the motor to run in both forward and in
reverse direction too. By introducing a time delay we have
also controlled the speed of the base stepper motor.
For the stepper motor Forward direction in a particular
sequence the digital output comes from the sequence
structure and similarly in the opposite direction the
sequence is given in the reverse order, for which Enum,
case structures and while loop has been utilized. The four
windings of the motor are assigned separate cases of
Enum. The wires to be triggered in case of forward
movement are in the following sequence-red, green,
orange and blue. For reverse direction it should be
powered in the opposite direction.
In case of DC motor just two pulses are enough to trigger
it both in forward and reverse direction.
7. SIMULATION AND RESULTS:
The following figure shows the front panel and block
diagram of the control Vi.
.
Figure 11: Front panel of control.vi
By using shift registers and case structures we have given
the sequence in which the motor must run in case of
forward and reverse directions, so that it moves in the
required direction accordingly. The usage of while loop
along with case structure with shift registers and enum is
called as a State machine architecture in LabVIEW.
The front panel consists of LED’s that indicate the
direction of the motor, sequence of the powering of
ISSN (Online) 2321-2004
ISSN (Print) 2321-5526
INTERNATIONAL JOURNAL OF INNOVATIVE RESEARCH IN ELECTRICAL, ELECTRONICS, INSTRUMENTATION AND CONTROL ENGINEERING
Vol. 3, Issue 3, March 2015
Copyright to IJIREEICE DOI 10.17148/IJIREEICE.2015.3342 183
windings, and a dial for the speed control of the stepper
motor. As the time delay increases the speed of the stepper
motor decreases and vice-versa. By the same way the
movement of elbow and arm is also denoted by Boolean
LED’s and it is programmed as an open loop system i.e
operated manually it is programmed in a way that only one
movement can be done at a time with the help of select
switches.
Figure 12: Block diagram of control.vi
8. CONCLUSION
Thus the control of 3-DOF robotic arm has been
implemented successfully using LabVIEW and my-RIO.
The effectiveness of the project can be put to profitable
use in any in any kind of environment that doesn’t require
or forbade the involvement of humans like in hazardous
environments, mining, and many such industrial, medical
fields. Its application can thus be extended to any field
with changes in the end effectors and can be used for
many diverse applications.
REFERENCES
1. Chin, T.C. Mital, D.P. and Jabbar, (1988). M. A. "A stepper motor
controller," in Proceedings of the International Conference on
Control, Oxford, UK. pp. 500-505.
2. R.K Mittal and I.J.Nagrath, Robotics & control by Tata McGraw
Hills. Page no:-66-90
3. Mikell P Groover, Industrial roboticstechnology, programming and
applications, McGraw Hill. Page no:-110-180
4. “STEPPER MOTOR REFERENCE DESIGN”, by Silicon Labs.
5. National Instruments, “LabVIEW Code Interface Reference Manual”,
National Instruments, jan1998 Ed., Part No. 320539D-01.
6. National I nstruments, “LabVIEW User Manual”, National
Instruments, Jan. 1998 Edition
7. National Instruments “NI-myRIO-1900 user guide and
specifications”
8. National Instruments “NI-myRIO project essentials guide” Ahuja,
N,”Computer controlled robotic arm”, Indian Institute of
Technology, IEEE, June 2003.