Professional Documents
Culture Documents
Mecanum Research
Mecanum Research
Available at www.sciencedirect.com
at www.sciencedirect.com
Available online at www.sciencedirect.com
ScienceDirect
Procedia Manufacturing 51 (2020) 193–200
Procedia Manufacturing 00 (2021) 1300–000
Procedia Manufacturing 00 (2021) 1300–000
www.elsevier.com/locate/procedia
www.elsevier.com/locate/procedia
30th
30th International
International Conference
Conference on
on Flexible
Flexible Automation
Automation and
and Intelligent
Intelligent Manufacturing
Manufacturing (FAIM2021)
(FAIM2021)
15-18
15-18 June
June 2021,
2021, Athens,
Athens, Greece.
Greece.
Towards
Towards aa Collaborative
Collaborative Omnidirectional
Omnidirectional Mobile
Mobile Robot
Robot in
in aa
Smart
Smart Cyber-Physical
Cyber-Physical Environment
Environment
a a a aa
Alexander
Alexander S.
S. Staal
Staala ,, Carolina
Carolina G.
G. Salvatierra
Salvatierraa ,, Ditte
Dittea D.
D. Albertsen
Albertsena ,, Mathiebhan
Mathiebhan Mahendran
Mahendran ,, Rahul
Rahul
aa b b
Ravichandran , Rasmus F. Thomsen a , Emil B. Hansenb , Simon Bøgh*b
Ravichandran , Rasmus F. Thomsen , Emil B. Hansen , Simon Bøgh*
a Dept. of Electronic systems, Aalborg University, Aalborg Øst, DK-9220, Denmark
a Dept. of Electronic systems, Aalborg University, Aalborg Øst, DK-9220, Denmark
b Robotics
b Robotics & Automation Group,
& Automation Group, Dept.
Dept. of
of Materials
Materials and
and Production,
Production, Aalborg
Aalborg University,
University, Aalborg
Aalborg Øst,
Øst, DK-9220,
DK-9220, Denmark
Denmark
Abstract
Abstract
This
This paper
paper presents
presents current
current progress
progress in
in aa three-fold
three-fold research
research project,
project, focusing
focusing on
on increasing
increasing the
the movement
movement flexibility
flexibility in
in smart
smart cyber-physical
cyber-physical
environments,
environments, which
which are
are becoming
becoming moremore prevalent
prevalent with
with industry
industry 4.0.
4.0. The
The objective
objective is is to
to design
design and
and develop
develop aa new
new research
research platform
platform in in the
the
form
form ofof aa highly
highly flexible
flexible omnidirectional
omnidirectional mobile
mobile manipulator
manipulator with
with aa full
full kinematics
kinematics model.
model. The
The research
research platform
platform entails
entails anan omnidirectional
omnidirectional
autonomous
autonomous mobile
mobile platform
platform with
with an
an integrated
integrated collaborative
collaborative manipulator,
manipulator, making
making it it aa single
single dynamic
dynamic system.
system. This
This task
task is
is split
split into
into three
three parts:
parts: 1)
1)
designing
designing andand constructing
constructing aa flexible
flexible low
low cost
cost omnidirectional
omnidirectional mobile
mobile platform,
platform, 2)2) the
the addition
addition of
of aa collaborative
collaborative robot
robot arm
arm toto add
add task
task execution
execution
capabilities,
capabilities, 3)
3) design
design the
the 9
9 DoF
DoF model
model for
for the
the system.
system. This
This paper
paper presents
presents the
the first
first step
step towards
towards the
the overall
overall goal
goal of
of collaborative
collaborative omnidirectional
omnidirectional
mobile
mobile manipulators.
manipulators. The
The constructed
constructed mobile
mobile robot
robot was
was able
able to
to generate
generate and
and navigate
navigate an an obstacle
obstacle free
free path,
path, using
using sensor
sensor data,
data, from
from an an initial
initial pose
pose
to aa goal
to goal pose.
pose.
©
© 2020The TheAuthors.
Authors.Published
Published by Elsevier Ltd.
© 2021
2021
This Theopen
isan
an Authors. Published
access article
by
by Elsevier
Elsevier
under
Ltd.
Ltd.BY-NC-ND license (https://creativecommons.org/licenses/by-nc-nd/4.0/)
the BY-NC-ND
CC
This
This is an open access article under the CC BY-NC-ND license
is open access article under the CC license (http://creativecommons.org/licenses/by-nc-nd/4.0/)
(http://creativecommons.org/licenses/by-nc-nd/4.0/)
Peer-review underresponsibility
Peer-review under responsibility
of of
thethe scientific
scientific committee
committee ofFAIM
of the the FAIM
2021.2021.
Peer-review under responsibility of the scientific committee of the FAIM 2021.
Keywords:
Keywords: Smart
Smart Manufacturing;
Manufacturing; Omnidirectional
Omnidirectional Mobile
Mobile Manipulator;
Manipulator; Mobile
Mobile Manipulator;
Manipulator; Little
Little Helper
Helper
1.
1. Introduction
Introduction are
are still
still trying
trying to
to make
make productions
productions and and logistics
logistics handling
handling ef-ef-
ficient,
ficient, faster and more flexible [1]. A group of autonomous
faster and more flexible [1]. A group of autonomous
With
With the
the increased
increased demand
demand for for customizable
customizable products
products and
and industrial mobile
industrial mobile manipulators
manipulators named named Little
Little Helpers
Helpers (LH)
(LH) have
have
shorter
shorter production
production time
time from
from thethe consumer
consumer side,side, aa need
need for
for dy-
dy- been
been developed
developed fromfrom Aalborg
Aalborg University,
University, to to tackle
tackle this
this task.
task. LH
LH
namic
namic production
production environments
environments has has increased
increased along
along with
with it.
it. It
It mobile
mobile manipulators
manipulators aim aim to to produce
produce flexible
flexible and
and efficient
efficient sys-
sys-
is
is not
not uncommon
uncommon to to have
have different
different products
products with
with different
different tools
tools tems
tems through
through aa profound
profound degree
degree ofof automation
automation [2]. [2]. The
The focus
focus
and
and moulds
moulds produced
produced on on the
the same
same production
production line.
line. This
This could,
could, for
for the
the newer
newer models
models are are mainly
mainly onon implementation
implementation in in aa re-
re-
e.g.
e.g. be with the use of dynamically programmed robots, with
be with the use of dynamically programmed robots, with configurable
configurable production
production environment
environment [1, [1, 3].
3].
interchangeable
interchangeable tooling
tooling facilitating
facilitating aa quick
quick and
and effective
effective switch
switch The
The system
system andand framework
framework presented
presented in in this
this paper
paper build
build
between
between models
models being
being produced
produced [1].[1]. However,
However, mostmost industrial
industrial upon
upon thethe forgoing
forgoing LHs
LHs being
being the
the eighth
eighth generation
generation in in the
the se-
se-
manipulators
manipulators are placed in a cell, which offers the
are placed in a cell, which offers the necessary
necessary ries,
ries, appropriately
appropriately named
named Little
Little Helper
Helper 8 8 (LH8).
(LH8). The
The purpose
purpose
automation
automation butbut limits
limits the
the flexibility
flexibility ofof the
the workspace.
workspace. One One ap-
ap- of
of LH8
LH8 is is to
to increase
increase flexibility
flexibility through
through the the use
use of
of an
an omnidi-
omnidi-
proach to
proach to solving
solving these
these problems
problems is is to
to integrate
integrate AMRs
AMRs (Au-
(Au- rectional base
rectional base with
with an
an attached
attached collaborative
collaborative manipulator
manipulator mod-mod-
tonomous
tonomous Mobile
Mobile Robots).
Robots). The The use
use of
of efficient
efficient AMRs
AMRs has has been
been eling
eling and
and creating
creating aa single
single dynamic
dynamic system.
system. ThisThis task
task is
is split
split
one
one that industries have been developing and looking into
that industries have been developing and looking into in
in into
into three
three parts;
parts; 1)
1) designing
designing and and constructing
constructing aa flexible
flexible low-
low-
recent
recent years.
years. Since
Since the
the first
first industrial
industrial revolution,
revolution, companies
companies cost omnidirectional
cost omnidirectional mobilemobile platform
platform capable
capable of of moving
moving au- au-
tonomously
tonomously from from anan initial
initial position
position to to aa goal
goal position,
position, while
while
E-mail avoiding
avoiding obstacles.
obstacles. 2)
2) the
the addition
addition of
of aa collaborative
collaborative robot
robot arm
E-mail address:
address: sb@mp.aau.dk
sb@mp.aau.dk (Simon
(Simon Bøgh*).
Bøgh*). arm
for
for object manipulation, 3) design the 9 DoF model for the
object manipulation, 3) design the 9 DoF model for the sys-
sys-
tem
tem asas aa whole.
whole.
2351-9789 © 2020 The Authors. Published by Elsevier Ltd.
This is an open
2351-9789 access article under by the CC BY-NC-ND license (https://creativecommons.org/licenses/by-nc-nd/4.0/)
2351-9789 © © 2021
2021 The
The Authors.
Authors. Published
Published by Elsevier
Elsevier Ltd.
Ltd.
Peer-review
This is an openunder
access responsibility
article under the of the
CC scientific
BY-NC-ND committee
license of the FAIM 2021.
(http://creativecommons.org/licenses/by-nc-nd/4.0/)
This is an open access article under the CC BY-NC-ND license (http://creativecommons.org/licenses/by-nc-nd/4.0/)
10.1016/j.promfg.2020.10.028
Peer-review
Peer-review under
under responsibility
responsibility of
of the
the scientific
scientific committee
committee ofof the
the FAIM
FAIM 2021.
2021.
194 Alexander S. Staal et al. / Procedia Manufacturing 51 (2020) 193–200
Alexander S. Staal et al. / Procedia Manufacturing 00 (2021) 1300–000 2
Fig. 1. The previous generations of Little Helpers from generation one through seven (LH1 on the left and LH7 on the right)[4]
• LH1 is designed for logistics and multiple part feeding 3. Use Cases
• LH2 is for gesture based teaching
• LH3 is for assembly and machine tending A industrial use case would be pick and place tasks. The
• LH4 is for hardware independence robot would get a signal that a component needs to go to an-
• LH5 is understanding human readable instructions other location or needs handling at an automated smart produc-
• LH6 is for robot co-worker in Industry 4.0 tion line. The platform will then move there, as the collaborative
• LH7 is for dual-arm robot co-worker manipulator on top grasps the object. It would then move to a
given pose, where the object is expected. In Figure 2 the use
As for all the Little Helpers the common approach is to have case is illustrated, where the green line indicate the omnidirec-
a mobile platform and robot arm, with minor wheels and base tional robot’s path, while the red line indicates the necessary
differences. The sensors are also positioned differently to try path of a differential drive robot in that pose. Furthermore, a
and find the best solution for navigation around the environ- use case for the mobile base without the manipulator could be
ment. However, the main difference between the previous LH’s transportation of e.g. components. This concept can be seen in
in the implemented software. Figure 3.
In 1990 Carnegie Mellon University developed the omnidi-
rectional mobile Robot Uranus. It was created together with the
kinematic models and an algorithm for feedback control. The 4. System Design
Uranus robot was able to make use of the third DoF, as it has
mecanum wheels. The motion of these wheels created a holo- The LH8 mobile platform is designed to be a low-cost
nomic translation. The downsides of the Uranus is that it does mecanum wheel holonomic platform. The total hardware cost
not have any exterior sensors like LIDARs to sense the environ- amounts to e 3, 345. The most significant difference is the use
of mecanum drive, whereas, the many other mobile robots use
2
Alexander S. Staal et al. / Procedia Manufacturing 51 (2020) 193–200 195
Alexander S. Staal et al. / Procedia Manufacturing 00 (2021) 1300–000 3
Fig. 4. On the left, the result of the LH8 can be seen whereas in the right side
the final CAD model can be seen. The CAD model has an aluminum top plate
which is why it is not transparent as the real one, which is currently being made
and the front of the CAD model is not transparent due to the light.
• Peripherals: group of sensors and actuators. The Little 4.2.1. Localization & Navigation
Helper has two LIDARs, two motor controllers and four As explained in the Section 4.2, the robot localizes itself in
motors for the wheels. Apart from that, each motor con- the map and finds a path from an initial position to a goal po-
troller has been assigned to two motors and its encoders. sition, using the navigation stack implemented in ROS. While
the purpose of the former section was to give an overview, the
4.2. Software Design section here explains the major components of the navigation
stack namely, the Global and Local planner for path planning
The navigation package for the LH8, was programmed in and the AMCL algorithm for localization.
Robot Operation System (ROS). ROS operates by managing
smaller individual programs (nodes), which perform different
sub-tasks. The nodes can communicate with each other by sub- Global Planner - A*
scribing and publishing to/from other nodes in the package. The
navigation package for the robot is based on the ROS naviga- A* (A star) like Dijkstra’s algorithm uses a pre-constructed
tion stack and it requires the packages to be in a proper structure connectivity graph to perform a graph search aimed at finding
for it to run [9]. An overview of the navigation stack configu- the shortest path from a start location to a set goal. However, as
ration for this project can be seen in Figure 5. It consists of the an improvement to Dijkstra, A* includes a heuristic cost func-
map server, which provides the map created by running gmap- tion that takes the distance from a node N to the goal node into
ping prior. Global costmap contains the cost of different tiles in account, when performing a graph search. This way, the time
the map. needed to find the shortest path is reduced due to the lower
Local costmap on the other hand is made by the sensor data, overall cost of following the route leading towards the goal.
to provide information about the immediate environment [9]. The total expected cost function f (N) driving this algorithm is
The global planner is an implemented A* algorithm [10], and defined below: [12]
is used for long-term planning from an initial pose to a goal
pose [9]. The teb local planner is a plugin for the ROS nav- f (N) = g(N) + h(N) (1)
igation stack, used instead of the base local planner. It im-
plements an online local trajectory planner for an omni-drive, g(N) refers to the accumulated cost from the start node to
where the initial trajectory generated by the global planner is any given node N while h(N) refers to the heuristic cost from a
optimized during runtime. This is done with regards to mini- node N to the goal node.
mizing the trajectory execution time[11]. The local planner also
handles obstacle avoidance of dynamic obstacles in the environ- Local Planner - TEB
ment. Nevertheless, amcl (adaptive Monte Carlo localization) is
a probabilistic localization system, which uses a particle filter The TEB (Timed Elastic Band) local planner follows an ad-
for localizing the robot in the map. The sensor transforms are justable section of the global path in successive order by break-
used to publish information about the relationship between co- ing the local path down into a sequence of n intermediate robot
ordinate frames. The odometry is a combination of the wheel poses/configurations [11], this is defined mathematically as:
encoders and IMU, it gives an estimated change in pose over
time. The Navigation script is used to send navigation goals to Q = {xi }i=0....n (2)
the global planner.
By including the estimated time needed to go from one con-
figuration to the next (denoted by the letter τ) the objective of
the TEB local planner can be defined to be the task of opti-
mizing the sequence of configurations and the time required to
transform between them. While at the same time taking both
static and dynamic obstacles into account along with velocity
and acceleration constraints. The TEB along with the process
of optimization, is defined as follows:
B := (Q, τ) (3)
Fig. 5. The configured ROS navigation stack, where: blue boxes are platform f (B) = γk fk (B) (4)
specific nodes, orange boxes are optional provided nodes, white boxes are ele- k
ments of the move base, and green is a self-made node providing goal coordi-
nates. [9] Here f (B) denotes the objective function, which according to
[11] is defined as the weighted sum of components fk , taking
4
Alexander S. Staal et al. / Procedia Manufacturing 51 (2020) 193–200 197
Alexander S. Staal et al. / Procedia Manufacturing 00 (2021) 1300–000 5
the path objective (shortest or fastest route) along with velocity 5. System Modelling
and acceleration constraints into account.
A mecanum wheel is a circular wheel surrounded by free
B∗ = argmin f (B) (5) moving rollers fastened to the hub in an angle of 45 degrees
B as can be seen on Figure 6 mecanum wheel bottom figure. The
alignment of the free moving rollers enables a second transla-
With respect to B, B∗ refers to the optimized version of the TEB. tion. This translation together with three other wheels creates
The TEB parameters used for this robot application were set in the omnidirectional motion, making the vehicle able to move in
according to the TEB local planner tutorials found on the ROS any direction in a 2D plane, while still having the same orienta-
wiki and further tuned to optimise the LH8’s behavior [11]. The tion depending on the different rotations of the wheels.
most essential parameters tuned for the application are listed
below:
• max vel y
Since the robot build in this project is omnidirectional it
allows for a strafing velocity in the y-direction (moving
left and right). Therefore max vel y must be set to a pos-
itive value to allow for omnidirectional movement.
• acc lim y
Along with a velocity in the y-direction a acceleration
limit must also be set to allow for movement in that par-
ticular direction.
• weight kinematics nh
Initially the value for this parameter is set to a high value
(1000) since it specifies the weight for satisfying the non-
holonomic constraints. In order for the robot to consider
non-zero y-velocities, the value for this parameter should
be set low. A value of 1 is recommended.
• weight optimaltime
Though tuning it was found that in order for the robot to
move smoothly along its path instead of moving raggedly
and getting stuck, it was necessary to chose a relatively
high value for this weight (10 instead of 1). This way
there was put more pressure on choosing a more time
optimal path which ended up allowing the robot to get
to the goal in seconds instead of minuets.
Fig. 6. The coordinate system of the mobile robot (top). The top figure shows
Localization - AMCL
the mobile robot inertial frame x, y are the coordinates of the reference point O
in the inertial basis. The coordinate system for the mecanum wheel (bottom).
AMCL is used to make it possible to self-localize in a given The bottom figure shows the mecanum wheel frame point O center of the mo-
environment. It is a probabilistic localization system, which bile robot to point P. Using the coordinate system the angles and sizes can be
is a merged version of Monte Carlo Localization and KLD- derived.
sampling. This enables the robot to localize in a known 2D map
with the use of exterior sensors. It uses the sensor data to pre- In order to develop a kinematic model of the LH8, one has to
dict/estimate the current position. [12] assign frames/coordinate systems for the LH8 as seen on Figure
6. The coordinate systems are also known as reference frames.
6.1. Simulations
Inverse kinematics (IK):
6. Experiments and Results obstacles while moving at a max speed of 0.5 m/s. The position
error of the point reached was accurate to the tolerance speci-
In order to test the system (software and hardware) based on fied in the move base navigation which was 0.2 m, but this is
the requirements, different experiments were conducted. The due to the accurate LIDAR and odometry readings. On Figure
tests can be found on Youtube1 9, the LH8 CAD model was simulated on Gazebo/Rviz using
the navigation stack. The simulation was successful since the
• Obstacle avoidance robot follows the navigation points.
• Position error in Waypoint Navigation
• Payload capacity
1 https://www.youtube.com/playlist?list=PLSG9gXgVHC2NteGCGuiLw8a74-
lBwlP6O
6
Alexander S. Staal et al. / Procedia Manufacturing 51 (2020) 193–200 199
Alexander S. Staal et al. / Procedia Manufacturing 00 (2021) 1300–000 7
faster and more efficiently, by making use of 3 DoF provided [11] C. Roesmann, W. Feiten, T. Woesch, F. Hoffmann, and T. Bertram, “Trajec-
by the mobile platform. tory modification considering dynamic constraints of autonomous robots,”
in ROBOTIK 2012; 7th German Conference on Robotics, 2012, pp. 1–6.
[12] I. R. N. Roland Siegwart and D. Scaramuzza, Introduction to autonomous
mobile robots., elektronisk udgave. -2nd ed. ed., ser. Intelligent robotics
and autonomous agents. Cambridge, Mass: MIT Press, 2011.
[13] H. Taheri, B. Qiao, and N. Ghaeminezhad, “Kinematic model of a four
mecanum wheeled mobile robot,” International Journal of Computer Ap-
plications, vol. 113, no. 3, pp. 6–9, 2015-01-01.
[14] P. F. Muir and C. P. Neuman, “Kinematic modeling of wheeled mobile
robots,” 1986.
Fig. 10. Illustration showing the future end result of the Little Helper 8 with a
manipulator added on top.
References