Você está na página 1de 6

8th IEEE International Conference Humanoid, Nanotechnology, Information Technology

Communication and Control, Environment and Management (HNICEM)


The Institute of Electrical and Electronics Engineers Inc. (IEEE) - Philippine Section
9-12 December 2015 Water Front Hotel, Cebu, Philippines

Object Locator and Collector Robotic Arm Using


Artificial Neural Networl(s
Ana Riza F. Quiros, Alexander C. Abad, Elmer P. Dadios
Gokongwei College of Engineering
De La Salle University
Manila, Philippines
anariza quiros@yahoo.com, elmer.dadios@dlsu.edu.ph
_

Abstract- This paper suggests an artificial neural network


approach to an object locator and picker. A robotic arm with two
joints and a rotating base will function as a pick-and-place
machine. The system follows the following constraints: (1) the
base of the robotic arm will be situated at a predetermined and
fixed position, hence limiting the area at which it can locate and
pick an object and;

(2)

the object will be placed on a flat surface.

The span of the robotic arm will determine this area. Also, it
should be noted that the arm's base and joints can move for
limited angles only. The area of interest by the arm will be
mapped into grids with coordinates. The inputs to the artificial
neural network system will be the coordinates at which the object
was positioned. Its outputs will be the angles of each joint of the
robotic arm such that it can pick the object at its corresponding
position.

Index Terms- artificial neural networks, robotic arm, pick


and-place

I.

INTRODUCTION

Robots and robotic systems nowadays have sparked interest


of many researchers. Robotic systems can be easily instructed
for a command and frees humans from doing repetitive and
tedious tasks. Moreover, not only do they work faster than
humans but they also do so accurately [I]. A lot of
improvements on how to control robots have been done in the
past years. Researches regarding the control of the robotic anns
and the grasp of their hands have been made [2].
Microcontrollers have been also used and programmed to
control robotic arms [3]. A paper made by Talpur and Shaikh
[4] implemented a microcontroller-based pick and place
robotic system to automate the placing of biscuit trays in
furnaces for small food industries. Companies have also done
their own contribution to the field of robotics. For instance, an
automated robotic arm was implemented instead of hiring
additional persons for a more productive packaging system [5].
Some robots employ vision systems to locate objects. An
edge detection algorithm using a camera was used to measure
the distance between an object and a robotic ann. This self
controlled robotic ann was able to grip a target object and
place it in a paper holder [6]. In the field of medical science,

978-1-5090-0360-0/15/$31.00 2015 IEEE

robots have become helpful as well. A flexible robotic ann


with a vision system was designed for an orthopedic robot [7].
Development of robots serving meals in restaurants has also
been done in a paper of Huang. With a binocular vision system,
the meal service robot was able to grip trays [8].
Use of artificial neural networks for the control of robotic
systems has been a topic of researches as well. Hulea [9]
studied on the use of spiking neural networks to drive human
like robotic arms. Recurrent neural networks have also been
proposed to achieve a flexible grasping motion for a robotic
arm [10]. Hierarchical neural networks was also employed in
the past to control a robotic arm. In a paper by Rabelo [11],
two artificial neural networks, wherein one is at a higher
hierarchical level, were designed to plan the movement of the
arm. The effects of nonnalizing the inputs and outputs in a
training data set on the control of a robotic ann have also been
investigated by Puheim [12].
II.

ARTIFICIAL NEURAL NETWORKS

Unless a computer is given an algorithm to perform a task,


it cannot process data on its own. A computer has 109
transistors and a switching time of a nanosecond. However, a
human brain has 1011 neurons but a switching time of a
millisecond [13]. Based on these, the computer seems more
power powerful than humans. However, it does not have the
capability to adapt to new data that needs to be processed
differently unless it has been coded. Humans, on the other
hand, are able to learn.
Artificial neural network (ANN) is a powerful and one of
the most effective learning techniques and is inspired by
biological neural networks. It attempts to imitate the way
information are processed by the human brain. The processing
elements of the artificial neural network are analogous to a
neuron in a human brain. These processing elements receive
input and multiply it by the weight strength of the connection
between successive elements. These are then added in the soma
or the body of the processing element and passed on to the next
element [14]. The processing element is the building block of
an artificial neural network. A model of an artificial neural
network is shown in Figure l.

8th IEEE International Conference Humanoid, Nanotechnology, Information Technology


Communication and Control, Environment and Management (HNICEM)
The Institute of Electrical and Electronics Engineers Inc. (IEEE) - Philippine Section
9-12 December 2015 Water Front Hotel, Cebu, Philippines

As shown in Figure 2, the object's location will be fed as an


input to the neural network. The neural network will process
this data such that it will output a set of three angles at which
each joint angle of the robotic arm should move to accurately
reach the aforementioned object.

Implement ANN 1+-------,


Input layer

Hidden layer/s

Output layer

Fig. 1. Artificial Neural Network Model

The input layer is a layer of processing elements that


receives the data entering the neural network. The hidden
layers are all the layers between the input and output layers.
These contain elements with varying weights and have highly
parallel connections between other hidden layers and the input
and output layers [15]. The hidden layers can be considered as
a black box, creating a nonlinear relation between the inputs
and the outputs [16]. Lastly, the output layer is where the
output responses exit the neural network.
In a supervised neural network, the system is trained with a
set of inputs and outputs. The neural network is then tasked to
map the inputs to the outputs by inferring the relationship
between the inputs and outputs from given training data. This
type of artificial neural network can be used for pattern
recognition and regression or function approximation.
III.

METHODOLOGY

This paper will focus on training a robotic arm to


accurately locate and pick an object within the arm's range.
This will be accomplished by creating a system with the
implementation of artificial neural networks.
Object's
location

1
Artificial Neural
Network

1
Robotic Arm
Movement

Fig. 2. Model of the System

Cha nge ANN


parameters

Yes

Fig. 3. Flowchart of the ANN Implementation

Figure 3 shows how the artificial neural network will be


implemented in the said system. Initially, a neural network is
designed and will be tested for its outputs. Its outputs will then
be checked for their accuracy to locate the object. If the output
joint angles are such that the object was successfully located
by the arm, the process will end indicating that the designed
artificial neural network is correct. Else, a new artificial neural
network with different parameters will be designed until it
gives the correct output joint angles for corresponding input
locations.
Figure 4 shows the process of the artificial neural network
as it is integrated in the system. The training data are gathered
initially. When enough training data are collected, they are fed
as input to the neural network to train it. Once trained, the
network will be tested by feeding a set of inputs that are
different from the inputs of the training data. The outputs of
the neural network are compared to what the actual outputs
should be, hence calculating the errors of the network.

8th IEEE International Conference Humanoid, Nanotechnology, Infonnation Technology


Communication and Control, Environment and Management (HNICEM)
The Institute of Electrical and Electronics Engineers Inc. (IEEE) - Philippine Section
9-12 December 2015 Water Front Hotel, Cebu, Philippines

The area of interest by the ann extends 21 cm to the left,


right and in front of the robot. Based on the dimensions stated,
the region at which the robotic arm can locate and pick an
object has an area of 882 square cm. The figure below shows
the area of interest by the robotic arm with the mapped grid and
coordinates for
location identification.

Gather training
data

rrain

NN

Test NN

No

Yes

Fig. 4. Process Flow of ANN

A.

Collection o{Training Data

The figure below shows the robotic arm and the location of
each joint along the arm
.

..

Fig. 6. Area of Interest by the Robotic Arm

As can be observed, it has positive and negative x


coordinates for the horizontal while there are only positive y
coordinates for the vertical. This is because the base of the
arm has a range of movement of 180 degrees only, hence
limiting the range of the arm to the area in front of it.

Joint 2

Fig. 7. Top View of Area of Interest

Fig. 5. Robotic Arm

Joint 1 can move from -25 degrees to 25 degrees with


respect to the horizontal. On the other hand, Joint 2 can
move within -70 degrees to 130 degrees. The base,
however, rotates from 0 to 180 degrees.

The hardware mentioned above will be the source of the


data for the inputs and the desired outputs or training data for
the artificial neural network system. The inputs of the artificial
neural network system will be the coordinates consisting of an
x- and a y-coordinate at which the object is positioned. The
outputs, on the other hand, will be the angles, which are

8th IEEE International Conference Humanoid, Nanotechnology, Information Technology


Communication and Control, Environment and Management (HNICEM)
The Institute of Electrical and Electronics Engineers Inc. (IEEE) - Philippine Section
9-12 December 2015 Water Front Hotel, Cebu, Philippines

measured manually, at which the two joints and the base must
be positioned to reach and pick the said object.
B.

Training Process

Through supervised artificial neural networks, the system


will be trained by feeding the inputs (object's coordinates) and
the desired outputs (joint and base angles). The input training
data matrix consists of 2 rows and 60 columns. The first row
and the second row of the input matrix correspond to the x- and
y-coordinate of the object's location, respectively. Each column
of the said matrix represents one input training datum. Hence
there are 60 columns for 60 input training data. The output
training data matrix is a 3 by 60 matrix. The three rows
represent the base angle, the first joint angle and the second
joint angle. [t has the same number of columns as the input
matrix so that each output corresponds to an input of the same
column number. These are fed to the neural network for
training. The weights will be calculated by the neural network.
The defined number of layers is three. Hence, there is only a
single hidden layer with 30 neurons.
C.

system overtime. The training of the system stops when the


validation MSE stops decreasing which, as observed in the plot
is at epoch 9.

."

1
o

"

Fig. 9. Validation Checks

The plot shows how the neural network progressed


through its calculations. Shown is at least fifteen iterations
done by the system. As seen, at epoch 10, the validation failure
started increasing and never went down again. Hence in the
perfonnance plot of the network, the training stopped at the
ninth iteration.
Training: R=O.99584
o

Testing Process

Data

-- Fit
........ Y=T

The testing involved presenting only the inputs to the neural


network and identifying if the output joint angles can reach the
object's position.
IV.

"

EXPERIMENT RESULTS

The artificial neural network's output angles after it has


learned and been trained are compared to the actual output
angles that were manually measured. The performance of the
system is measured by calculating the error or the difference
between the output angles of the neural network and the
measured angles.

....

5.

....
::J

-50

100
50
Target

150

Fig. 10. Training Data Regression Plot

Best Validation Performance is 143.4124 at epoch 9

-:::
=:::""-;a:==::::::::::j:z:::-1

The plot above shows the regression


data. As seen, the value of R is close to
neural network has processed the data
values of its outputs are approaching the
training data outputs.

--Train
Validation
--Te.t

plot of the training


1 which means the
accurately and the
value of the actual

Test: R=O.98388

('t)

150

-
+
cD

til

o
-...... . ..

Data
Fit
y= T

100

"

to

15 Epochs

10

15

Fig. 8. Performance of ANN

Figure 8 shows how the network improved its


perfonnance while it was being trained. The performance is
measured in terms of the mean squared error (MSE) for each
epoch. As can be seen, the MSE decreased as the number of
epochs increased, implying an improved performance of the

!;.-

....
::J

So

50

::J

50
Target

100

Fig. 11. Test Data Regression Plot

150

8th IEEE International Conference Humanoid, Nanotechnology, Information Technology


Communication and Control, Environment and Management (HNICEM)
The Institute of Electrical and Electronics Engineers Inc. (IEEE) - Philippine Section
9-12 December 2015 Water Front Hotel, Cebu, Philippines

Figure 11 shows the regression plot of the test data. The


line of best fit of the neural network outputs is near the target
line. However, some of the outputs do not lie on the line of
best fit.

zero, it can be observed from the graph that there are some
outliers whose errors reach as high as -30 degrees.
Error Histogram with 20 Bins
45

: R=0.99248

40
o

35

'

,e:p
III
.,

30

25

(')
Nloo

III

20

+
-

10

'5

15

.... 50

Fig. 14. Error Histogram of ANN

50

100

50
Target

150

Fig. 12. Regression Plot of ANN

The figure above shows the regression plot of the system


which plots the network's outputs in comparison to that of the
training data outputs. The blue line plots the line of best fit for
the neural network's outputs. The dotted line represents the
training data outputs. As observed, the line of best fit nearly
coincides with the dotted line, signifying that the network has
substantially learned to fit the relationship between the inputs
and the outputs of the training data.
Output AIlgl. Errors

--------==
-- Base Angle E R'or
--JOint 1 Angle Error
Joinl2 AIlgl. err",

20

20

'O--'0--20--7------50--ro

Figure 14 plots the distribution of error made by the neural


network. As seen, most of the errors occur near zero which
implies that most of the neural network outputs are accurate
and nearly correct.
V.

DISCUSSION AND ANALYSIS OF RESULTS

The results of the experiments showed that the designed


artificial neural network for an object locator and collector
robotic arm was able to find the relationship between the
network's inputs (i.e. the object's coordinates) and outputs (i.e.
the base and joint angles of the robotic ann). Although there
are no straightforward relationships between the input and
outputs, the neural network was able to fit reasonable output
angles with corresponding input coordinates to properly locate
the object. The neural network nonlinearly predicted the
appropriate outputs for a given set of inputs.
However, it should be noted that errors are still apparent in
the outputs of the network. The outputs of the neural network
as it was fed with the input training data are compared against
the output training data to measure its accuracy. Also, some
outliers were present in the neural network's output. These
outliers are outputs with large errors. Yet, most of the neural
network's outputs have errors approaching zero signifying that
most of its predicted outputs are nearly correct. Moreover, the
mean errors of the outputs are minimal.

Input Number

Fig. 13. Output Angle Errors

Figure 13 plots the errors of the output angles of the neural


network with respect to the outputs of the training data. The
base angle errors, joint 1 angle errors and joint 2 angle errors
have a mean of -2.9694 degrees, - l.0219 degrees and -3.0618
degrees, respectively. Even though the mean errors are close to

VI.

CONCLUSIONS AND RECOMMENDATION

The designed artificial neural network was able to learn the


relationship between the input coordinates and the output
angles as shown by the results. However, there are some inputs
to the neural network that it cannot accurately process to give a
reasonable output. This can be improved by adding more
training data to the system so that the calculated weights by the

8th IEEE International Conference Humanoid, Nanotechnology, Information Technology


Communication and Control, Environment and Management (HNICEM)
The Institute of Electrical and Electronics Engineers Inc. (IEEE) - Philippine Section
9-12 December 2015 Water Front Hotel, Cebu, Philippines

neural network can be corrected. These additional training data


can help the neural network to decide on which weights to
converge to will be correct. Also, adding more hidden layers
and more neurons to each layer can help solve this. However,
adding hidden layers should be done with precaution as having
too many hidden layers for a given set of training data might
result to the system becoming under-characterized since there
are no enough training data to set the parameters of the
increased number of hidden layers. Hence it is more advisable
to increase the number of neurons for the each hidden layer
instead.
In addition to that, the research about the normalization of
training data before the network processes them can be
implemented such that the inputs to the network will have
boundary values. Such can also improve the speed at which the
network will process the training data.
Future research about the application of the designed neural
network can be used for automation systems that employ pick
and-place machines and vision systems. For instance, a camera
focusing on an object of interest will capture an image and
detect the mentioned object. The pixels of the captured image
are analogous to the designed neural network's input
coordinates. Hence locating the object can be done by detecting
the pixel at which the object appears in the image. A pick-and
place machine, a robotic arm for instance, can automatically
move by itself using the position of the object in the captured
image. Using the artificial neural network, the machine will
learn by itself how it would move based on the position of the
object in the image. Hence, less human involvement and
intervention will be needed to control the machine.

[3] M. Omar. (2007). Pick and Place Robotic Arm Controlled By


Computer. Malaysia.
[4] M. Talpur and M. Shaikh. (2012). Automation of Mobile Pick and
Place Robotic System for Small Food Industry.
[5] A. Felker, "Design and implementation of an automated pick and
place system for Johanson Technology, Inc.," unpublished.
[6] G. Huang, H. Lin and P. Chen. (2011). Robotic Arm Grasping
and Placing using Edge Visual Detection System. 2011 8th Asian
Control Conference (ASCC). Kaohsiung: Taiwan.
[7] M. Mariappan, T. Ganesan, M. Iftikhar, V. Ramu and B. Khoo.
(2010). A Design Methodology of a Flexible Robotic Arm Vision
System for OTOROB. 2010 2nd International Conference on
Mechanical and Electrical Technology (ICMET). Singapore.
[8] G. Huang, X. Chen and C. Chang. (2013). Development of Dual
Robotic Arm System based on Binocular Vision. 2013 CACS
International Automatic Control Conference (CACS). Nantou:
Taiwan.
[9] M. Hulea and C. Caruntu. (2014). Spiking Neural Network for
Controlling the Artificial Muscles of a Humanoid Robotic Arm.
2014 18th International Conference System Theory, Control and
Computing (ICSTCC). Sinaia: Romania.
[10] B. Tan, H. Tang, R. Van and J. Tani. (2014). Flexible and
Robust Robotic Arm Design and Skill Learning by using
Recurrent

Neural

Networks.

2014

IEEEIRSJ

International

Conference on Intelligent Robots and Systems (IROS 2014).


Chicago: IL.
[ll] L. Rabelo and X. Avula. (1991). Intelligent Control of a Robotic
Arm using Hierarchical Neural Network Systems. lJCNN-91Seattle International Joint Conference on Neural Networks,
1991. Seattle: WA.
[12] M. Puheim and L. Madarasz. (2014). Normalization of Inputs
and Outputs of Neural Network based Robotic Arm Controller
in

role

of

Inverse

Kinematic

Model.

2014

IEEE

12th

International Symposium on Applied Machine Intelligence and


Informatics (SAMI). Herl'any: Slovakia.
[13] D. Kriesel. A BriefTntroduction to Neural Networks.

REFERENCES
[1]

"The

European

competitiveness

robotics
of

SMEs

initiative
in

[14] J. Raol and S. Mankame. "Artificial neural networks: A brief


for

strengthening

manufacturing

by

the

introduction," Resonance, 1996, pp. 47-54.

integrating

[15] R. Rojas, Neural Networks: A Systematic Introduction, Berlin:

[2] J. Saut, M. Gharbi, J. Cortes, D. Sidobre and T. Simeon. (2010).

[16] J. Zupan, "Introduction to artificial neural network (ANN)

Planning Pick-and-Place Tasks with Two-Hand Regrasping.

methods: What they are and how to use them," Acta Chimica

2010 IEEE/RSJ International Conference on Intelligent Robots

Slovenica, 1994, pp. 327-352.

aspects of cognitive systems," unpublished.

and Systems (IROS). Taipei: Taiwan.

Springer-Verlag, 1996.

Você também pode gostar