You are on page 1of 12

Industrial Robot: An International Journal

Development of a flexible AGV for flexible manufacturing systems


Humberto Martinez-Barbera David Herrero-Perez

Article information:

Downloaded by National Institute of Technology Tiruchirappalli At 06:31 03 November 2016 (PT)

To cite this document:


Humberto Martinez-Barbera David Herrero-Perez, (2010),"Development of a flexible AGV for flexible manufacturing systems",
Industrial Robot: An International Journal, Vol. 37 Iss 5 pp. 459 - 468
Permanent link to this document:
http://dx.doi.org/10.1108/01439911011063281
Downloaded on: 03 November 2016, At: 06:31 (PT)
References: this document contains references to 17 other documents.
To copy this document: permissions@emeraldinsight.com
The fulltext of this document has been downloaded 856 times since 2010*

Users who downloaded this article also downloaded:


(1987),"AGV Despatching in a Flexible Manufacturing System", International Journal of Operations & Production
Management, Vol. 7 Iss 1 pp. 62-73 http://dx.doi.org/10.1108/eb054786
(2006),"A contingency model to promote the effectiveness of expatriate training", Industrial Management & Data Systems,
Vol. 106 Iss 8 pp. 1187-1205 http://dx.doi.org/10.1108/02635570610710827

Access to this document was granted through an Emerald subscription provided by emerald-srm:594641 []

For Authors
If you would like to write for this, or any other Emerald publication, then please use our Emerald for Authors service
information about how to choose which publication to write for and submission guidelines are available for all. Please visit
www.emeraldinsight.com/authors for more information.

About Emerald www.emeraldinsight.com


Emerald is a global publisher linking research and practice to the benefit of society. The company manages a portfolio of
more than 290 journals and over 2,350 books and book series volumes, as well as providing an extensive range of online
products and additional customer resources and services.
Emerald is both COUNTER 4 and TRANSFER compliant. The organization is a partner of the Committee on Publication Ethics
(COPE) and also works with Portico and the LOCKSS initiative for digital archive preservation.
*Related content and download information correct at time of download.

Research article

Development of a flexible AGV for flexible


manufacturing systems
Humberto Martinez-Barbera and David Herrero-Perez

Downloaded by National Institute of Technology Tiruchirappalli At 06:31 03 November 2016 (PT)

Department of Information and Communications Engineering, Facultad de Informatica, University of Murcia, Murcia, Spain
Abstract
Purpose The paper aims to describe the design and development of an automated guided vehicle (AGV) that incorporates artificial intelligence
techniques to increase its autonomy and flexibility. The aim is developing a flexible AGV that operates as a flexible material handling system (MHS) in
dynamic industrial environments.
Design/methodology/approach Introduces the entire on-board control system including hardware and software designs. The sensory system
consists of a laser navigation system for localisation and a security laser scanner for sensing the environment. The software architecture is instantiated
in a CPU that is connected to low level controllers through a CAN bus. Simplicity, flexibility, robustness and safety were concerned in the design process.
Findings The developed prototype is able to operate in partially structured and dynamic environments, is easily configured using an approximated
description of the workplace and is able to adapt when slight floor layout modifications. This development shows that current technology permits
introducing intelligent vehicles in complex manufacturing systems.
Practical implications The prototype is successfully tested in a real factory, operating as a flexible MHS, transporting pallets between production
and storage lines.
Originality/value A novel flexible AGV is designed and developed to operate as a flexible MHS in dynamic industrial environments. The system
satisfies the safety and robustness requirements of industrial applications. The flexible MHS results especially suitable for manufacturing systems that
suffers from cyclic and seasonal variations and for flexible manufacturing systems where the possibility of choosing alternative routes is a must.
Keywords Robotics, Artificial intelligence, Automation, Materials handling
Paper type Research paper

vehicles provide labour saving, efficiency and they reduce the


damage to transported materials (Mertz, 1981). For all these
reasons, AGVs are widely chosen by manufacturers to implement
truly flexible MHS, which are successfully applied to transport
tasks, distribution and storage functions.
Flexible MHS result especially suitable for flexible
manufacturing systems (FMS), which usually have the ability
to process or produce different products and allow rapid changes
between them. These systems aim to handle the uncertainty in
product demand knowledge, finite manufacturing capacity and
random machine failure. A flexible MHS is highly convenient for
FMS in order to provide a flexible solution to use alternative
routes for compensating machine failures or production changes.
Besides, flexible MHS are also suitable for industries of which
production is affected by seasonal and cyclic variations, such as
agriculture and food industries.
Nowadays, commercial AGVs have incorporated several
improvements respecting the early ones. Early guidance systems
consist of inducing a frequency through a wire buried in the
floor that the AGV could detect and follow it. Obviously, the
floor modification for burying the wires supposes a high
economical cost, and hence, some variants were implemented
to reduce it, such as wire installation through ceiling. Anyways,
the modification of the physical guide-paths and, consequently,
the workplace supposes a high economical cost. The new
generation of industrial guidance systems, such as magnetic
markers, reflective landmarks, or inertial systems, permit the
AGVs operate without physical guide-paths (Vis, 2006),

1. Introduction
Material handling problem consists of how to transport raw
materials, partially manufactured products and goods between
different locations of manufacturing systems, warehouses, etc.
When the transport is automated, the solution is provided by
material handling systems (MHS), which can operate
continuously or under demand. Depending on the kind of
products to handle and the transport to perform, there are
different solutions in the market. For instance, we can mention
belt, roller and vertical conveyors, elevators, material handling
robots and automated guided vehicles (AGVs). Belt conveyor is
an economical way to convey most any type of product and can be
used in horizontal, incline and grasping operations. Roller
conveyor is popular to transport general packing or solid
products in horizontal applications. Depending on the type of
operation and weight of the material, vertical conveyors, elevators
and manipulators can be used to perform vertical transport
operations. AGVs are especially suitable for applications where
space is at a premium and flexibility is critical. Besides, these
The current issue and full text archive of this journal is available at
www.emeraldinsight.com/0143-991X.htm

Industrial Robot: An International Journal


37/5 (2010) 459 468
q Emerald Group Publishing Limited [ISSN 0143-991X]
[DOI 10.1108/01439911011063281]

459

Downloaded by National Institute of Technology Tiruchirappalli At 06:31 03 November 2016 (PT)

Development of a flexible AGV for flexible manufacturing systems

Industrial Robot: An International Journal

Humberto Martinez-Barbera and David Herrero-Perez

Volume 37 Number 5 2010 459 468

namely free-ranging AGVs (Le-Anh and De-Koster, 2006),


which simplified the installation reducing the cost of such a
transport systems. Besides, the recent advances and cost
reduction in microelectronics and microcomputers permit to
increase the intelligence of AGVs, performing actions like
storing instructions about routes, make decisions and take
part in the traffic control of the global system. However, they are
still guided by fixed paths (Arkin and Murphy, 1990), and
workplaces should be designated and structured to
accommodate the AGV guide-path network.
Typically, commercial AGVs store the possible routes in a
memory in conjunction with the map of the environment, and
when an order is received, the navigation system decides
which of the memorised routes is to be taken, normally in
terms of the shortest path, to move from one location to
another one. This model implies that the routes should be
modified when the floor layout where the vehicle operates is
modified. In the case that several vehicles are operating in the
same manufacturing system, modifying routes implies
computing and programming the paths in all the AGVs,
which requires stopping the system and, consequently, these
modifications are so expensive, both in time and money.
In order to cope with the problem of guide-path networks
design and its adaptation when some floor layout modification is
performed, this work presents the development of a novel flexible
AGV prototype designed from a service robotics perspective
instead of a traditional factory automation one. The prototype
permits performing typical transportation tasks in partially
structured industrial environments by onboard real-time path
planning while mapping workplaces modifications and avoiding
non-modelled obstacles. The design of the prototype is not only
focused on flexibility and simplicity to facilitate the starting-up
and the maintenance of the transport system, but also robustness
and safety, critical issues in industrial developments, are
considered. The main contribution of this paper is to show
that, on one hand, current technology permits introducing
intelligent robotics vehicles in complex manufacturing systems
and, on the hand, service robotics techniques can be used for
successful operation of a flexible AGV.

of guide-paths. In order to avoid the high dependence of


guidance infrastructure (Kelly et al., 2007) incorporates
non-conventional guidance systems, based on vision, to permit
an AGV operates in environments where traditional guidance
systems are not suitable. In particular, this development permits
achieving high accurate manoeuvres using vision for operating
in infrastructure-free underground environments.
The development presented herein incorporates and adapts
some of the techniques developed for autonomous mobile
robots, such as path-planning, map building, localisation and
obstacle avoidance. The system design is especially focused on
simplicity, flexibility and safety, which are critical issues in
industrial environments. The system also satisfies the
requirements of accuracy, repeatability and reliability needed
for performing precise manoeuvres in industrial applications.

3. Hardware
The hardware development consists of the modification of a
commercial OMG 808 FS fork-lift truck, which is a nonholonomic platform of tricycle type. This commercial vehicle is
intended to transport loads of less than 800 kg up to a height of
3 m. The platform is equipped with three electrical motors for
traction, steering and lifting, which are controlled using the
speed controllers of ZAPI Company that incorporates the
commercial platform. The odometry is obtained using an
absolute wheel encoder for the steering and an incremental
wheel encoder for counting, using the pulses of the sensor and
the wheel diameter, the distance run. For safety reasons, an
absolute encoder is used to ensure that the lifting motor locates
the fork in the proper position, mainly because it can collide
with some structure when docking/undocking manoeuvres.
Besides, a pallet switch is installed between the forks in order to
check if the pallet has been loaded. Some operation lights are
used for monitoring the vehicles state and for debugging
purposes. There are also optical and sound warning signals, in
particular a strobe light and a buzzer, which are activated when
special operations, such as AGV operating backwards for
docking and undocking manoeuvres. The platform is equipped
with a SICK PLS security laser scanner, which provides local
information about the environment surrounding the robot, and
a SICK NAV200 laser navigation system, which provides the
basis of the location in the environment. The laser scanner also
acts as a safety device, and when it detects an object inside a
predefined security area it switches off the traction motor by way
of relays. For emergency stops, it includes two safety switches.
The switch from manual to automatic mode is also performed
using one switch. When the manual mode is activated, the
platform is driven using a joystick. The modified platform and
some details of the devices incorporated are shown in Figure 1.
The platform includes an industrial computer based on a
single-board computer for embedded systems, in particular a
Transmetas Crusoe microprocessor with 128 Mb of RAM and
a 64 Mb disk-on-chip solid state disk. The operating system is
Linux configured for fitting into the available disk space and it
also includes a Java Virtual Machine for running all the control
software. The Crusoe board includes an IEEE 802.11b
PCMCIA card for wireless communications, a PC-104 board
with a dual CAN-bus interface, and two RS232 serial ports for
communicating with sensors. The control electronics design
consists of two custom ATMEL microcontroller boards for
electronic signalling and motor control, which are connected to
the main CPU using a CAN-bus standard operating at 1 Mbps.

2. Related works
Most of the key issues to increase the flexibility and autonomy
of vehicles have been broadly addressed in different scenarios
by autonomous systems community, developing systems that
are able to operate in dynamic and uncertain environments.
For example, we can mention the development of autonomous
interactive tour-guide robots (Burgard et al., 1999) that are
able to navigate in dense populated museums while interacting
with humans, the development of autonomous robots for
goods, post or medicines delivery, cleaning or housekeeping
(Graf et al., 2004) and the development of autonomous robots for
exploration of unknown environments (Roy and Dudek, 2001).
Nevertheless, there are not many successful examples of
fully working autonomous robots in industrial applications.
The transport of containers for harbour logistics in outdoors
is addressed by Durrant-Whyte et al. (2007) using AGVs
navigating through fixed guide-path networks. The a priori
knowledge of workplace is used by Berman et al. (2003) in
indoors for automatic calculation, following a shortest path
criterion, of guide-path network, which remains fixed while
the vehicle operates. This system is able to detect unexpected
or non-modelled obstacles bypassing the occupied parts
460

Development of a flexible AGV for flexible manufacturing systems

Industrial Robot: An International Journal

Humberto Martinez-Barbera and David Herrero-Perez

Volume 37 Number 5 2010 459 468

Figure 1 The flexible AGV platform

permits real-time collision-free motion through the workplace


considering the current situation of the environment.
The development of a robust guidance system permits
operating with the grade of accuracy and robustness needed by
industrial applications. Finally, obstacle avoidance increases the
safety and robustness of the system, avoiding blocks when
unexpected situations, and allows that the vehicle operates in
dynamic environments.

Sick NAV200
laser navigation system
Structure of sick NAV200

Joystick

Operation lights
Strobe light

4.1 Architecture
The control architecture is an instance of the modularised and
layered ThinkingCap II framework (Martnez-Barbera and
Herrero-Perez, 2010b), which consists of a reference cognitive
architecture that serves as a guide for making the functional
decomposition of a robotics system, a software architecture
that allows a uniform and reusable way of organising software
components for robotics applications, and a communication
infrastructure that allows software modules to communicate
in a common way, independently of whether they are local or
remote. Figure 3 shows an instance of the architecture where
functionalities are grouped into modules, e.g. position
filtering and obstacle modelling functionalities are grouped
into the perception module, and then modules are organised
by layers, which are detailed below.
The lower layer is only composed of the Virtual Robot,
which provides the interface to the actual hardware. Basically,
it receives high-level commands, control actions and translate
them to possible displacements of the vehicle.
The middle layer is composed of perception and controller
modules. In the perception module, there are two important
processes: the local obstacle modeller and the position filter.
The first one computes and maintains a local model of the
obstacles detected by the laser scanner. When a new scan is
available its information is stored on a circular buffer for a
predefined number of cycles. At each control cycle this buffer
is translated and rotated in robot centric coordinates
depending on its own motion. The resulting buffer is used
to detect dangerous zones and to help in obstacle avoidance.
The position filter integrates laser navigation estimations with
odometry information using an extended Kalman filter
(EKF). The controller module consists of a single process,
which decides the set of behaviours executed depending on
the current subtask. Typically, more than a single behaviour
can be executed concurrently, e.g. obstacle avoidance and
path tracking, and thus this module fuses the resulting control
actions of the active behaviours. The most important
behaviours are obstacle avoidance, path tracking and docking.
The higher layer is composed of planner and navigation
modules. The planner module consists of a single process,
which receives a task from the AGV warehouse planner and
generates a plan taking into account the current position of the
vehicle and the topological map built with the approximate
description of the workplace. The plan is stored as a finite state
machine, where each state is a given subtask. If any of the
subtasks cannot be accomplished, the current task is halted and
the operator is informed. For the navigation module, there are
two important processes: map building and path planning. The
grid-based maps are updated when sensing information, laser
scanner scan, is available. The path planner runs continuously
but asynchronously to other modules and obtains the optimal
path from the AGV location to a subgoal position. The path can
be generated using different techniques depending on the kind
of manoeuvre that the vehicle is performing.

Safety switches
Joystick
connection

Downloaded by National Institute of Technology Tiruchirappalli At 06:31 03 November 2016 (PT)

Pallet switch

Sick PLS
security laser scanner

Note: Customised OMG fork-lift truck

These boards interface the power electronics for the motors,


and are also in charge of encoder data acquisition, security
signals monitoring, lights control and buzzer activation. Finally,
the electronics design includes the two safety switches
mentioned above and one switch to change from manual to
automatic mode. The scheme of the hardware elements and
how they are connected is shown in Figure 2.

4. Software
This section reports the techniques that the AGV incorporates
for increasing its autonomy and flexibility. The techniques are
organised following a software architecture designed for
mobile robotics applications. The key points of the
development are workplace representation, path planning,
guidance system and obstacle avoidance. The workplace
representation facilitates the start-up and the adaptation when
floor layout modifications. The path planning approach
Figure 2 Scheme of hardware elements of the platform
NAV200
laser

Main
CPU
Buzzer

Lights

PLS
laser
Pallet
switch

CAN bus

Steering
lifting
controller

Traction
controller
Mode
switch

Safety
relays

Safety
switches

Joystick
ZAPI power
electronics

Traction
encoder

Traction
moter

Lifting
motor

EPS power
electronics
Lifting
encoder

Streeing
motor

Streeing
encoder

Brake

461

Development of a flexible AGV for flexible manufacturing systems

Industrial Robot: An International Journal

Humberto Martinez-Barbera and David Herrero-Perez

Volume 37 Number 5 2010 459 468

Figure 3 The instance of ThinkingCap II software architecture


Position
Planner

Subgoal
Task
planning

Navigation
Path
planning

Navigation
map

Map
building

Path

Topological
map
Task

Subtasks

Fuzzy
grid
map

AGV
planner

Finite
state
machine

Goal
completion

Downloaded by National Institute of Technology Tiruchirappalli At 06:31 03 November 2016 (PT)

Subtask
Controller

Perception
Behaviour
selection

Position (9 Hz)
Occupancy (3 Hz)

Obstacle
buffer
Buffer (9 Hz)

Local
obstacle
modelling

Position
filtering

Path
tracker

Obstacle
avoider

Laser sanner (3 Hz)

Laser
landmarks (1 Hz)

Dock
driver

Control
action (9 Hz)

Virtual robot
Odometry (9 Hz)

even at low speeds due to the location estimation rate. This has
been solved using a localisation filter for fusing laser navigation
estimations at 1 Hz and odometry at 9 Hz for operating with
latter update rate. While localisation is crucial, mapping is not
so relevant for a safe operation because any errors in the map are
accounted by the obstacle avoidance module, which operates
using the laser scanner readings at acquisition rate.

An interesting detail about the implementation and integration


of the different modules is that some processes run at different
frequencies. Besides, the sensors have different acquisition
rates. The basic control cycle of the architecture runs at 9 Hz.
On the one hand, the wheel encoders and input device signals
(safety switches, buttons, etc.) are acquired at this sampling
rate, and received directly from the microcontrollers through
the CAN bus. On the other hand, the laser sensors information
is acquired at a much lower rate, 3 Hz for the laser scanner and
1 Hz for the laser navigation system. This is because laser
navigation system only operates at 1 HZ, whereas the reason of
the low acquisition rate of laser scanner is that it is configured to
register 361 measures covering 1808 and the serial transmission
is rather slow. The update rate of laser scanner can be reduced
configuring the sensor to register fewer measures and/or
covering a smaller angle, however, this supposes reducing the
information perceived of the environment, which results
paramount to obtain a system able to adapt and react when
workplaces modifications. Once the sampling rate is fixed for
the different sensors, perception, navigation and controller
modules are tuned so that the update period is taken into
account, which is a key point in order to establish the maximum
velocity of operation so that the required precision and
repeatability for a given task can be accomplished. In
particular, the two main problems encountered are related to
localisation and mapping. The laser navigation system cannot
be used for precise operations, such as docking manoeuvres,

4.2 World representation


The system is configured using a two-dimensional CAD-like
representation of the workplace that specifies the most relevant
features of the environment: walls, reflective strip beacons, zones,
docking-points, way-points and doors. It is important to note that
the effort required to build this representation is considerably
small. Walls are mainly used for user feedback, and only some of
them, the larger ones, are incorporated into the navigation
system, so these do not have to be very accurate, in fact, half a
metre of tolerance is allowed. The accuracy of reflective strip
beacons should be very high for the localisation system, in the
order of a few millimetres, but the laser navigation unit has a
built-in procedure for automatically generate a map, which just
takes a few seconds. The docking and manoeuvring points should
also have a very high accuracy, but these locations are easily
obtained from the navigation unit by manually placing the AGV
in the desired positions. Depending on the number of stations
where the AGV should dock/undock a complex environment can
be defined in few hours. Nevertheless, way-points should be
462

Downloaded by National Institute of Technology Tiruchirappalli At 06:31 03 November 2016 (PT)

Development of a flexible AGV for flexible manufacturing systems

Industrial Robot: An International Journal

Humberto Martinez-Barbera and David Herrero-Perez

Volume 37 Number 5 2010 459 468

chosen carefully because docking trajectory depends on initial


and final locations and the non-holonomic platform is not able to
follow trajectories with high curvature. Thus, it is more than
convenient testing docking operations when way-points are
defined. Finally, the doors are also easily configured using the
navigation unit in the corresponding positions.
This representation is handy for human construction and
feedback, but we cannot use it directly because we have to
deal with relative large environments and the real-time
restrictions should be satisfied even in large workplaces. Thus,
we adopt a hierarchical solution as in Kuipers and Byun
(1991), where grid maps are used depending on the level of
the control architecture and topological maps with different
resolution are used in order to cover the entire area. We use
the topological representation for high-level description of
whole environment and the grid-based representation for the
local description of different workplaces (Martnez-Barbera
et al., 2003). For the sake of efficiency, the nodes of the
topological map, representing relevant zones such as a roomlike, have a grid map associated for map building, path
planning and obstacle avoidance. Hence, functionalities that
suffer from high computational cost operate with the local
workplace representation instead of the entire area.
Figure 4 shows an example of the representation used to
configure the AGV in a real factory. The workplace is divided
into three zones linked by three doors. Each zone includes the
floor layout description of the area, reflective beacons,
docking points, way-points and wait-points. The zones,
rooms in this example, have a grid map associated to do not
cover the entire area using only one grid map, mainly because
this representation presents some problems about all the
space and time complexity, which difficult the execution of
the system with real-time restrictions.

define the trajectory for accurate docking manoeuvres.


As previously mentioned, the selection of the points that
define the B-Spline results of paramount importance because
the non-holonomic platform cannot follow trajectories with
high curvature and the control law used to track the route could
diverge. Therefore, the selection of proper way-points is a key
point, and the manoeuvre should be tested when these points
are configured.
4.4 Guidance system
Since the AGV should operate with industrial grade of accuracy,
repeatability and reliability a precise and robust industrial
guidance system is mandatory. The guidance system consists of,
given a trajectory, localisation and path tracking systems, which
are closely related because the update rate of localisation
supposes the bottleneck of control actions of path tracker.
4.4.1 Localisation
The purpose of fusing SICK NAV200 position estimations
and odometry is two-fold. On the one hand, the quality of the
laser navigation estimations is not reliable enough in some
situations, such as high linear or angular accelerations, wrong
configuration of reflective beacons, ambiguous position in the
environment, etc. When these situations occur, the sensor
only returns a NACK message or the estimation has a very
low reliability value, which is also provided by the sensor.
Thus, a robust localisation system cannot rely only on this
sensor for position estimation. On the other hand, it is not
possible to perform precise manoeuvres, even at very low
speeds, controlling the vehicle at 1 Hz.
The robustness and update rate of the localisation system are
increased using an EKF for fusing the laser navigation
estimations and the odometry. By using the odometric
information the filter can deal with situations where laser
navigation may fail, such as very sharp turns, high accelerations
or hidden laser beacons. Besides, the EKF provides estimations
at the rate of the faster source of information, in particular at the
9 Hz update rate of odometry.
One of the most important problems using EKF is that this
filter simplifies the probability density function into a Gaussian,
which is not able to represent multiple locations in the workplace.
This can lead to serious problems when there is a symmetric
distribution of the reflective beacons or their distribution has
some similar places, which more than often occurs in large
environments. In order to avoid this problem, there are multihypothesis techniques, which run several filters in parallel to
cover the different possible location. However, for performance
reasons, we are only using multi-hypothesis tracking methods in
the initialisation of the filter, and when there is only one possible
location, the localisation system consists of a simple EKF fusing
the estimations of laser navigation and the odometry.

4.3 Path planning


We have adopted fuzzy grid maps (Oriolo et al., 1998) in
order to represent the different zones of the environment.
These maps are initialised using the approximate workplace
description and updated using the laser scanner information
while the AGV navigates through the zones. Fuzzy logic
permits representing and dealing with the different sources of
uncertainty that affect the position measurements. The fuzzy
mapping consists of storing the degrees of emptiness and
occupation of each grid cell and adding new evidences to the
previous knowledge of such a cell using fuzzy union operators.
The problem is that fuzzy union operators are monotonically
increasing by definition, and hence, fuzzy sets representing
the degree of emptiness and occupation cannot decrease. In
other words, the original method was designed for static
environments. We have modified the method inferring the
fuzzy sets when ambiguous situations, totally empty and
totally occupied, in order to deal with dynamic environments.
The path planner runs continuously but asynchronously to
other modules using two different approaches depending on the
operation to perform, in particular when AGV is navigating and
docking. When AGV is navigating, a D * path planner (Stentz,
1995) is used to calculate the optimal path, from AGV position
to desired goal position, through the fuzzy grid representation of
the zone where the AGV is located. The D * planner is also
modified for taking into account the uncertainty of the fuzzy
grid map, which is described in detail in Martnez-Barbera and
Herrero-Perez (2010a). When the AGV has to dock, a B-Spline
using the way-point associated to the docking point is used to

4.4.2 Path tracking


The path tracker system is based on the vector pursuit
approach (Wit et al., 2004), which is a path tracking, pure
pursuit, method that employs both distance and heading to
some goal position, look-ahead, to calculate the curvature that
will move a vehicle from its current position to such a target.
The instantaneous desired motion is formulated using the
screw theory, which permits expressing displacements,
velocities, forces and torques of rigid bodies as a combination
of rotational and translational components. In other words,
it attaching a screw to a rigid body we can represent its
motion at any instant as the rotation and displacement about
463

Development of a flexible AGV for flexible manufacturing systems

Industrial Robot: An International Journal

Humberto Martinez-Barbera and David Herrero-Perez

Volume 37 Number 5 2010 459 468

Figure 4 (a) Workplace description of a factory composed of three zones, (b) Zone A, (c) Zone B and (d) Zone C

WtP5

ZONE C

Cold-storage
chamber

ZONE B

ZONE A

Door-BC

Door-AB2
WtP4

WtP3

WtP2

WtP1

Recharging
points

Door-AB1

Downloaded by National Institute of Technology Tiruchirappalli At 06:31 03 November 2016 (PT)

Storage system

Workstation 4

Workstation 3

Workstation 2

Workstation 1

(a)
BA7

ZONE A

BB8
DPSS11
DPSS12

WtP2

Recharging
points

WtP1

DPSS14

BA1

BA8

WPR3

Workstation 2
WPWS21

WPWS11

DPWS21
WPWS22

WPR4

Workstation 1

WPSS12
WPSS13
WtP3

WtP4

WPSS14

BB1

WPSS21

DPR1

DPSS22

DPR2

DPSS23

DPR3

DPSS24
BB7

WPSS22

DPR4

WPSS23

Workstation 4

WPSS24

Workstation 3

DPWS42
WPWS41

DPWS11
BB6

BB5

BB4

BB2

WPWS32

WPWS42

Storage system

BA2

WPWS12

DPWS22
BA6

ZONE B

DPSS21

WPR1
WPR2

BA9

DPSS13

BB9
WPSS11

DPWS41

DPWS32
WPWS31

BB3

DPWS31

DPWS12
BA5

BA4

BA3

(b)

(c)

BC4
DPCS184 DPCS183 DPCS182 DPCS181

WPCS18

DPCS174 DPCS173 DPCS172 DPCS171

WPCS17

BC3

ZONE C
WPCS28

DPCS281 DPCS282 DPCS283 DPCS284 DPCS285

WPCS27

DPCS271 DPCS272 DPCS273 DPCS274 DPCS275

WPCS26

DPCS261 DPCS262 DPCS263 DPCS264 DPCS265

WtP5
DPCS164 DPCS163 DPCS162 DPCS161

WPCS16

DPCS154 DPCS153 DPCS152 DPCS151

WPCS15

WPCS25

DPCS251 DPCS252 DPCS253 DPCS254 DPCS255

DPCS144 DPCS143 DPCS142 DPCS141

WPCS14

WPCS24

DPCS241 DPCS242 DPCS243 DPCS244 DPCS245

DPCS134 DPCS133 DPCS132 DPCS131

WPCS13

WPCS23

DPCS231 DPCS232 DPCS233 DPCS234 DPCS235

DPCS124 DPCS123 DPCS122 DPCS121


DPCS114 DPCS113 DPCS112 DPCS111

WPCS12
WPCS11

WPCS22
WPCS21
BC1

DPCS221 DPCS222 DPCS223 DPCS224 DPCS225


DPCS211 DPCS212 DPCS213 DPCS214 DPCS215

Cold-storage
chamber

BC2

(d)

that screw. Any instantaneous movement can be described as a


rotation over a line in space and a screw-like step. For pure
translation movements the rotation centre would be positioned
at infinity, while for pure rotation movements the screw step
would be zero.
The vector pursuit implementation consists of two screws;
St to minimise the position error and Sr to minimise the

heading error. These screws can be easily added using the


additive property of screws, and the resulting screw Sd should
be geometrically valid, i.e. it should satisfy the non-holonomic
constraints of the platform. The proper selection of St and Sr
results a key point to satisfy this restriction.
The AGV has a body frame {Xv, Yv} with coordinates (x, y, u)
in the global coordinate system {X, Y}. Let d be the vector from
464

Downloaded by National Institute of Technology Tiruchirappalli At 06:31 03 November 2016 (PT)

Development of a flexible AGV for flexible manufacturing systems

Industrial Robot: An International Journal

Humberto Martinez-Barbera and David Herrero-Perez

Volume 37 Number 5 2010 459 468

the AGVs location to the local target, look-ahead, that the vehicle
should follow. This vector is obtained intersecting the route
to follow, represented by a set of way-points linked by
line-segments, and a circle of radius jdj centred in the AGVs
frame {Xv, Yv}. Figure (5) shows the two-way points, wpi-1 and
wpi, of the route to follow and the look-ahead vector calculated to
track such a route. The aim is moving the AGV from its current
location to the coordinates (xla, yla, ula) shown in Figure (5),
which axis xla is parallel to the line-segment linking two
waypoints, and hence, tangent to the trajectory to follow.
The screw St to translate the vehicle from its current
location (x, y) to the look-ahead position (xla, yla) is located in
the centre of a circle that passes through both poses, and it is
tangent to the vehicle heading, i.e. the Xv axis of the AGV
coordinate system. However, this screw does not describe a
pure translation but it represents the displacement from
the robots location to the target with a rotation around the
location of the screw St. Thus, the screw Sr is located in
the origin of the AGV coordinate system in order to define a
pure rotation, which is used to reach the bearing target u la.
These two screws are weighted with factors kt and kr to
control their influence on the resulting screw Sd. The
relationship between both weight factors is defined by k kt/
kr, which permits calculating the coordinates (xSd, ySd) of
resulting screw Sd in the global coordinate system {X, Y}:




yla 2 y
xla 2 x
xS d x 2 k
yS d y k
1
ula 2 u
ula 2 u

the look-ahead position at any instant. Note that yvSd


should be greater than the minimum turning radius of the
non-holonomic platform.
The path tracker tuning parameters are wheel velocity,
look-ahead distance d, and weight factor k of the influence of
translation and rotation screws. All these parameters are
closely related and they should be adjusted together to obtain
the accuracy and repeatability needed by our application.
The tuning procedure usually consists of deciding the wheel
velocity, then tuning the look-ahead distance, and finally
adjusting influence of the screws to obtain a trade-off between
position error and heading error. There are basic rules for
tuning the look-ahead distance because large values reduce
the oscillations at the cost of increasing the errors when high
curvatures while short values permit more accurate path
tracking with more oscillations. Therefore, this choice should
be decided as a trade-off between accuracy and robustness
depending on the specific application. Logically, the lookahead distance is different for docking and navigation tasks
because requirements are different; in particular, docking
operations need the highest accuracy for precise manoeuvres,
while navigation task requires of low oscillations to do not
knock down the load when navigating at relatively high
speeds.
4.5 Obstacle avoidance
When the AGV navigates, we combine a reactive control
method and path tracker in order to ensure safety. The
reactive method is based on the principles of the Polar Bug
obstacle avoidance approach (Graf et al., 2004), which
enables the vehicle to quickly surround dynamic obstacles
using laser scanner readings. This method makes many
assumptions to simplify the computation providing a fast and
efficient solution. However, it is designed for vehicles using a
differential kinematics drive. We have developed a similar
method considering the tricycle kinematics constraints of our
platform, namely Polar Kinematics Bug method.
The basic principles of Polar Kinematics Bug method are
shown in Figure 6. First, we calculate a target position using

These coordinates are needed to calculate the yvSd


coordinate of resulting screw Sd in the AGVs coordinate
system {Xv, Yv}:
yvSd y 2 yS d cos u 2 x 2 xSd sin u

The yvSd coordinate is then used to calculate the angle that


generates a movement along the resulting screw Sd to reach
Figure 5 Instantaneous screw St for translating the AGV from its
current location to the look-ahead position

Figure 6 Polar Kinematics Bug approach for obstacle avoidance

wpi

Xla
la

Target

Route

Yla
Pla
dxv

dyv

Collision

Xv

St

Safe
distance

Yv

Intermediate
target

Obstacles
P

AGV location
Virtual measures
Laser measures
Way-points

wpi-1

465

Downloaded by National Institute of Technology Tiruchirappalli At 06:31 03 November 2016 (PT)

Development of a flexible AGV for flexible manufacturing systems

Industrial Robot: An International Journal

Humberto Martinez-Barbera and David Herrero-Perez

Volume 37 Number 5 2010 459 468

Figure 7 Sequence of experiment

a safe distance, which depends on the vehicles speed.


The target is the point of the route to follow given such a safe
distance. Then, laser scanner readings closer than threshold
are expanded using circumferences with a radius that depends
on the dimension of the platform. The possible routes from
current location of vehicle to laser scanner readings are then
traced using circular-segments with a curvature that depends
on the kinematics constraints of the platform. The collisions
are detected as the intersection of the hypothetical AGV
trajectories and the expanded circumferences. The obstacle
avoidance behaviour is activated when a collision is detected,
and then, we have to calculate a new target that does not
intersect any circumference, intermediate target, which
defines the trajectory that the AGV should follow it. There
are several choices to select intermediate target but we
adopted the closer laser scanner reading to the target, which
generates no collision and the minimum deviation from the
desired goal. In the case that we are not able to find any
solution, the vehicle should turn with maximum velocity or
stopping when obstacle is too close. It is important to note
that this is not intended as a safety mechanism but as a way of
avoiding cluttered zones or manned trucks. In any case, if the
AGV is about to collide the laser scanner hardware cuts off
the power to the motors leading to a halt of the truck in less
than 15 cm when medium velocity of operation.
We have to remark that the trajectory chosen is only used to
calculate an instantaneous vector commands to avoid the
obstacle. Such a vector is recalculated when a new laser
scanner scan is received. Besides, the obstacle avoidance
behaviour is not activated when all laser scanner readings are
higher than the safety distance, and hence, when the obstacle
is not located in the hazardous area, path tracking behaviour
is activated again.

(a)

(b)

(c)

(d)

(e)

(f)

(g)

(h)

5. Experimental validation
The system is validated experimentally in the real scenario
shown in Figure 4. The experiments consist of two-fold; first, a
battery of docking experiments is presented for tuning the path
tracker, and second, a case-study is presented to show the whole
system operating as a flexible MHS. The first experiment aims
to show that the system satisfies the requirements for
performing precise operations with industrial grade of
accuracy, repeatability and reliability. While the second
experiment shows the flexibility and robustness of the system
performing safe operations in industrial environments.

the influence of translation and rotation screws in the path


tracker. The results are shown in Table I, which shows that the
position error is bounded and the accuracy is enough for
docking manoeuvres, in the order of less than 3 cm. The factor k
is experimentally adjusted with a 2.0 value, which provides the
maximum accuracy at the end of docking manoeuvre.

5.1 Tuning the path tracker


As previously mentioned, the process for adjusting the path
tracker consists of deciding the wheel velocity, the look-ahead
distance and, finally, the influence of path tracker position and
heading corrections using the k factor of vector pursuit approach.
In this experiment, we only tune the factor k for docking
operations, which require of high accuracy to manipulate the
pallets. We have experimentally selected a look-ahead distance
of 8 cm for docking operations because it provides a trade-off
between accuracy and oscillations. The velocity of docking
operations is the maximum permitted by EU health and safety
prevention rules, which is 30 cm/s when the environment is
not sensed, such as it is the case of docking backwards as
shown in the sequence of Figure 7.
Thus, a battery of docking experiments tracking the same
trajectory is performed using different k factors, which weight

Table I Maximum and final position errors tracing a trajectory using


different k factors
Factor k
1.25
1.5
1.75
2.0
2.5
5

466

Maximum error (mm)

Final error (mm)

83.2
62.7
80.4
51.9
51.4
59.6

22.9
10.6
12.1
6.4
10.1
20.1

Industrial Robot: An International Journal

Humberto Martinez-Barbera and David Herrero-Perez

Volume 37 Number 5 2010 459 468

5.2 Case-study
This experiment consists of sending the AGV to pickup a pallet of
manufactured goods. When the AGV is navigating from the
location where it was waiting for tasks, an unexpected obstacle is
found in the path to the way-point for initializing the docking
manoeuvre. Figure 7 shows the whole sequence of the
experiment; the AGV is initially (a) waiting for orders and
when the command is received it navigates to the way-point for
performing the docking operation, an unexpected obstacle is
then found and (b) avoidance behaviour is activated, the (c) AGV
avoids the worker and (d) continues navigating to the way-point.
Once (e) the way-point is reached, the (f)-(g) AGV performs the
docking manoeuvre backwards and (h) remains waiting for new
orders when it finishes the operation.
Figure 8(a) shows the trajectory described by the AGV
when navigating to the way-point and performing the docking

operation. We can observe that the initial route to reach the


way-point is modified and an alternative safe solution is
found. Figure 8(b) and (c) show the position and bearing
errors during the docking operation, which are bounded and
satisfy the requirements for the manoeuvre.

6. Conclusion
This paper has presented the design and development of an
AGV that incorporates artificial intelligent techniques to
increase the autonomy and flexibility of current commercial
AGVs. The development is focused on flexibility and
adaptability considering the simplicity and safe necessities of
industrial applications. The prototype has shown the
feasibility and adequacy of the incorporation of modern
service robotics techniques in order to produce a much higher

Figure 8 Material handling experiment in real factory

BA7

ZONE A

Recharging
points
WtP1

WtP2

BA1

BA8
WPR1
DPR1
WPR2
DPR2
WPR3
DPR3
WPR4

Workstation 2
BA9

DPR4

WPWS21

BA2
WPWS11

DPWS21

DPWS11
WPWS12

WPWS22

Workstation 1

DPWS12

DPWS22
BA6

BA4

BA5

BA3

(a)
5

10

15

20

25

0.07

0.07

0.06

0.06

0.05

0.05

0.04

0.04

0.03

0.03

0.02

0.02

0.01
0
0

10

15

20

10

15

20

25

0.01

Bearing error (degrees)

Position error (metres)

Downloaded by National Institute of Technology Tiruchirappalli At 06:31 03 November 2016 (PT)

Development of a flexible AGV for flexible manufacturing systems

25

Time (seconds)

10

15

Time (seconds)

(b)

(c)

Notes: (a) Trajectory of the AGV; (b) the position; (c) heading errors when docking

467

20

25

Development of a flexible AGV for flexible manufacturing systems

Industrial Robot: An International Journal

Humberto Martinez-Barbera and David Herrero-Perez

Volume 37 Number 5 2010 459 468

level of self-sufficiency and autonomy in a robotics platform


for industrial operation.
Actually, the flexible MHS, composed of five AGVs, is
integrated in the real production plant described above and
operating 16 h per day of continuous work with minimal or no
human intervention. Besides, the plant layout is often modified
due to seasonal production, and the reconfiguration of the
transport system is really handy because all vehicles use the
same approximate description of the new layout, including
the location of the reflective beacons and docking/undocking
points. This all makes it a promising solution for FMS, which is
viable, effective and safe for operating in industrial
environments.

Le-Anh, T. and De Koster, M.B.M. (2006), A review of


design and control of automated guided vehicle systems,
European Journal of Operational Research, Vol. 171 No. 1,
pp. 1-23.
Martnez-Barbera, H. and Herrero-Perez, D. (2010a),
Autonomous navigation of an automated guided vehicle
in industrial environments, Robotics and Computer
Integrated Manufacturing, Vol. 26 No. 4, pp. 296-311.
Martnez-Barbera, H. and Herrero-Perez, D. (2010b),
Programming multirobot applications using the
ThinkingCap-II Java framework, Advanced Engineering
Informatics, Vol. 24 No. 1, pp. 62-75.
Martnez-Barbera, H., Canovas, J.P., Zamora, M. and
Gomez-Skarmeta, A. (2003), iFork: a flexible AGV system
using topological and grid maps, IEEE International
Conference on Robotics and Automation in Taipei, pp. 2147-52.
Mertz, R.L. (1981), How to justify an automatic guided
vehicle system, Proceedings of the First International
Conference on AGVS in Stratforf-upon-Avon, UK, pp. 219-24.
Oriolo, G., Ulivi, G. and Venditelli, M. (1998), Real-time
map building and navigation for autonomous mobile robots
in unknown environments, IEEE Transactions on Systems,
Man, and Cybernetics Part B: Cybernetics, Vol. 28 No. 3,
pp. 316-33.
Roy, N. and Dudek, G. (2001), Collaborative robot
exploration and rendezvous: algorithms, performance
bounds and observations, Autonomous Robots, Vol. 11
No. 2, pp. 117-36.
Stentz, A. (1995), The focused D * algorithm for real-time
replanning, Proceedings of the International Joint Conference
on Artificial Intelligence in Montreal, Canada, pp. 1652-9.
Vis, I.F.A. (2006), Survey of research in the design and
control of automated guided vehicle systems, European
Journal of Operational Research, Vol. 170 No. 3, pp. 677-709.
Wit, J., Crane, C. and Amstrong, D. (2004), Autonomous
ground vehicle path tracking, Journal of Robotic Systems,
Vol. 21 No. 8, pp. 439-49.

Downloaded by National Institute of Technology Tiruchirappalli At 06:31 03 November 2016 (PT)

References
Arkin, R. and Murphy, R.R. (1990), Autonomous navigation
in a manufacturing environment, IEEE Transactions on
Robotics and Automation, Vol. 6 No. 4, pp. 445-54.
Berman, S., Edan, Y. and Jamshidi, M. (2003), Navigation
of decentralized autonomous automatic guided vehicles in
material handling, IEEE Transactions on Robotics and
Automation, Vol. 19 No. 4, pp. 743-9.
Burgard, W., Cremers, A.B., Fox, D., Ha hnel, D.,
Lakemeyer, G., Schulz, D., Steiner, W. and Thrun, S. (1999),
Experiences with an interactive museum tour-guide robot,
Artificial Intelligence, Vol. 114 Nos 1/2, pp. 3-55.
Durrant-Whyte, H., Pagac, D., Rogers, B., Stevens, M. and
Nelmes, G. (2007), An autonomous straddle carrier for
movement of shipping containers, IEEE Robotics &
Automation Magazine, Vol. 14 No. 3, pp. 14-23.
Graf, B., Hans, M. and Schraft, R.D. (2004), Mobile robot
assistants, IEEE Robotics & Automation Magazine, Vol. 11
No. 2, pp. 67-77.
Kelly, A., Nagy, B., Stager, D. and Unnikrishnan, U. (2007),
An infrastructure-free automated guided vehicle based on
computer vision, IEEE Robotics & Automation Magazine,
Vol. 14 No. 3, pp. 24-35.
Kuipers, B. and Byun, Y. (1991), A robot exploration and
mapping strategy based on a semantic hierarchy of spatial
representations, Journal of Robotics and Autonomous
Systems, Vol. 8 Nos 1/2, pp. 47-63.

Corresponding author
David Herrero-Perez can be contacted at: dherrero@um.es

To purchase reprints of this article please e-mail: reprints@emeraldinsight.com


Or visit our web site for further details: www.emeraldinsight.com/reprints

468

Downloaded by National Institute of Technology Tiruchirappalli At 06:31 03 November 2016 (PT)

This article has been cited by:


1. M.S. Essers, T.H.J. Vaneker. 2016. Design of a decentralized modular architecture for flexible and extensible production systems.
Mechatronics 34, 160-169. [CrossRef]
2. Gossaye Mekonnen, Sanjeev Kumar, P.M. Pathak. 2016. Wireless hybrid visual servoing of omnidirectional wheeled mobile
robots. Robotics and Autonomous Systems 75, 450-462. [CrossRef]
3. Dongdong Chen, Peijiang Yuan, Tianmiao Wang, Fucun Ma, Yong Li, Ting Lai, Wei HanSectionalized tracking control and
experiment of AGV 1645-1650. [CrossRef]
4. Humberto Martnez-Barber, David Herrero-Prez. 2014. Multilayer distributed intelligent control of an autonomous car.
Transportation Research Part C: Emerging Technologies 39, 94-112. [CrossRef]
5. Zoran Miljkovi, Najdan Vukovi, Marko Miti, Bojan Babi. 2013. New hybrid vision-based control approach for automated
guided vehicles. The International Journal of Advanced Manufacturing Technology 66:1-4, 231-249. [CrossRef]
6. David Herrero, Jorge Villagra, Humberto Martinez. 2013. Self-Configuration of Waypoints for Docking Maneuvers of Flexible
Automated Guided Vehicles. IEEE Transactions on Automation Science and Engineering 10:2, 470-475. [CrossRef]
7. David Adrian Sanders, Ian Stott, David Robinson, David Ndzi. 2012. Analysis of successes and failures with a tele-operated mobile
robot in various modes of operation. Robotica 30:06, 973-988. [CrossRef]
8. Jorge Villagra, David Herrero-Perez. 2012. A Comparison of Control Techniques for Robust Docking Maneuvers of an AGV.
IEEE Transactions on Control Systems Technology 20:4, 1116-1123. [CrossRef]
9. D. Herrero-Prez, H. Martnez-Barber. 2011. Decentralized Traffic Control for Non-Holonomic Flexible Automated Guided
Vehicles in Industrial Environments. Advanced Robotics 25:6-7, 739-763. [CrossRef]

You might also like