IEEE Robotics & Automation Magazine - June 2018 - 111

of the equilateral triangle DA 1 A 2 A 3 . The x axis is in the
direction of vector MA 1, and the z axis is vertical to the center platform. The centers of the three spherical joints are
defined as B 1, B 2, and B 3 , which construct an equilateral triangle DB 1 B 2 B 3 . The origin (P) of the upper platform is
set at the center of the triangle DB 1 B 2 B 3, the x axis is in the
direction of the vector PB 1, and the z axis is vertical to the
upper platform.
For the velocity kinematics of the 3-RPS parallel manipulator, the velocities of the z direction (zo a), pitch (bo a), and roll
(ao a) are defined as the inputs of the 3-RPS parallel manipulator model. The velocities of the three linear actuators (Lo ), as
the outputs of the 3-RPS parallel manipulator model, can be
calculated by
zo a
Lo = J -1 (x a, y a, z a, a a, b a, c a, R b, ra) >ao aH,
bo a

(1)

where J -1 is the inverse Jacobian of the 3-RPS parallel
manipulator calculated based on the current position
(x a, y a, z a) and orientation (a a, b a, c a) of the center point on
the upper platform and the radius of both the upper platform
(R b) and base platform (ra) of the parallel manipulator.
Alternatively, Euler angles of the parallel mechanism, such as
tilt and torsion angles [17], [18], can also be adopted,
depending on the requirements in different applications.
Since the 3-RPS parallel manipulator has only 3 DoF, its
velocities in these 3 DoF will also affect the velocities in the
other 3 DoF, i.e., the velocities in the x direction (xo a), y direction (yo a), and yaw (co a), which can be expressed by
Ro V
Ro V
Sxa W
Sz a W
S yo a W = G (L i, u i, ri) Sao a W,
(2)
S W
So W
Sco aW
Sb aW
T X
T X
G
is the velocity mapping function, which can be
where
expressed by a function of the following: L i ^i = 1, 2, 3h,
which represents the vector of each linear actuator;
u i ^i = 1, 2, 3h, which represents the unit vector of each rotate
joint; and ri ^i = 1, 2, 3h, which represents the position of
each vertex with respect to the upper platform of the 3-RPS
parallel manipulator.
The velocity kinematic model of the 4WD mobile base can
be expressed [19] as
Ro V
Sq1W
Ro V
Sx b W
Sqo 2W
S W = W (rw, l x, l y) S yo b W,
S W
Sqo 3W
Sco bW
SS WW
T X
qo 4
T X

(3)

where xo b, yo b, and co b represent the x direction, y direction, and yaw velocities, respectively, of the mobile base;
qo i (i = 1, 2, 3, 4) represents the angular velocities of the four
Mecanum wheels; and W is the inverse Jacobian of the mobile
base, which can be expressed as a function of the outside

radius of the Mecanum wheel rw , the half-length of the
wheelbase l x, and the half-length of the wheelspan l y .
By defining the position and orientation of the end effector (i.e., the center point on the upper platform) in the world
frame as [zo , ao , bo , xo , yo , co ] T , we can use the movement of the
mobile base to compensate for the coupled movement of the
3-RPS parallel mechanism. By combining the kinematic
models of the parallel manipulator and mobile base, the SCR's
inverse velocity kinematic model can be expressed as
RoV
Sz W
Sao W
S oW
-1
oL (3 # 1)
b
J (3 # 3)
0
=o
G
G S W.
==
(4)
Q (4 # 1) (7 # 1)
- W (4 # 3) $ G (3 # 3) W (3 # 3) Sxo W
S yo W
S W
Sco W
T X
Therefore, given the desired velocities of the end effector, it
is possible to calculate the velocities of the three linear actuators of the parallel manipulator and the velocities of the four
wheel motors of the mobile platform; these can then implemented by the corresponding low-level motion controllers. In
our design, the desired velocities are generated either from
F/T data in the force servoing mode or from visual data in the
visual servoing mode.
Human-Robot Interaction Modeling
In the force servoing mode, the human worker operates the
robot while the robot simultaneously holds the part. When
the gravity of the delivered part is always compensated for by
the robot, the human worker can operate the robot regardless
of the part's weight. The human-robot interaction model
used in our design can be expressed as
Fs = mXp d + cXo d,

(5)

Ts = Jip d + pio d,

(6)

where Fs is the force input of the F/T sensor, m is the virtual
mass of the part, c is the virtual damping of the part, Xo d is
the desired linear velocity of the end effector, Xp d is the
desired linear acceleration of the end effector, Ts is the torque
input of the F/T sensor, J is the virtual moment of inertia, p
is the virtual rotary damping, io d is the desired angular velocity of the upper platform, and ip d is the desired angular acceleration of the upper platform. Based on the interaction
model, the desired linear velocity and angular velocity of the
end effector can be calculated online by
c
c
Xo d (t) = 1 e - m t # Fs (t) e - m t dt,
m
p
1 -pt
t
io d (t) = e J # Ts (t) e J dt.
J

(7)
(8)

Robot Control Modes
For human-robot collaborative tasks in automotive assembly,
the SCR is designed to work in and intelligently switch between
june 2018

*

IEEE ROBOTICS & AUTOMATION MAGAZINE

*

111



IEEE Robotics & Automation Magazine - June 2018

Table of Contents for the Digital Edition of IEEE Robotics & Automation Magazine - June 2018

Contents
IEEE Robotics & Automation Magazine - June 2018 - Cover1
IEEE Robotics & Automation Magazine - June 2018 - Cover2
IEEE Robotics & Automation Magazine - June 2018 - Contents
IEEE Robotics & Automation Magazine - June 2018 - 2
IEEE Robotics & Automation Magazine - June 2018 - 3
IEEE Robotics & Automation Magazine - June 2018 - 4
IEEE Robotics & Automation Magazine - June 2018 - 5
IEEE Robotics & Automation Magazine - June 2018 - 6
IEEE Robotics & Automation Magazine - June 2018 - 7
IEEE Robotics & Automation Magazine - June 2018 - 8
IEEE Robotics & Automation Magazine - June 2018 - 9
IEEE Robotics & Automation Magazine - June 2018 - 10
IEEE Robotics & Automation Magazine - June 2018 - 11
IEEE Robotics & Automation Magazine - June 2018 - 12
IEEE Robotics & Automation Magazine - June 2018 - 13
IEEE Robotics & Automation Magazine - June 2018 - 14
IEEE Robotics & Automation Magazine - June 2018 - 15
IEEE Robotics & Automation Magazine - June 2018 - 16
IEEE Robotics & Automation Magazine - June 2018 - 17
IEEE Robotics & Automation Magazine - June 2018 - 18
IEEE Robotics & Automation Magazine - June 2018 - 19
IEEE Robotics & Automation Magazine - June 2018 - 20
IEEE Robotics & Automation Magazine - June 2018 - 21
IEEE Robotics & Automation Magazine - June 2018 - 22
IEEE Robotics & Automation Magazine - June 2018 - 23
IEEE Robotics & Automation Magazine - June 2018 - 24
IEEE Robotics & Automation Magazine - June 2018 - 25
IEEE Robotics & Automation Magazine - June 2018 - 26
IEEE Robotics & Automation Magazine - June 2018 - 27
IEEE Robotics & Automation Magazine - June 2018 - 28
IEEE Robotics & Automation Magazine - June 2018 - 29
IEEE Robotics & Automation Magazine - June 2018 - 30
IEEE Robotics & Automation Magazine - June 2018 - 31
IEEE Robotics & Automation Magazine - June 2018 - 32
IEEE Robotics & Automation Magazine - June 2018 - 33
IEEE Robotics & Automation Magazine - June 2018 - 34
IEEE Robotics & Automation Magazine - June 2018 - 35
IEEE Robotics & Automation Magazine - June 2018 - 36
IEEE Robotics & Automation Magazine - June 2018 - 37
IEEE Robotics & Automation Magazine - June 2018 - 38
IEEE Robotics & Automation Magazine - June 2018 - 39
IEEE Robotics & Automation Magazine - June 2018 - 40
IEEE Robotics & Automation Magazine - June 2018 - 41
IEEE Robotics & Automation Magazine - June 2018 - 42
IEEE Robotics & Automation Magazine - June 2018 - 43
IEEE Robotics & Automation Magazine - June 2018 - 44
IEEE Robotics & Automation Magazine - June 2018 - 45
IEEE Robotics & Automation Magazine - June 2018 - 46
IEEE Robotics & Automation Magazine - June 2018 - 47
IEEE Robotics & Automation Magazine - June 2018 - 48
IEEE Robotics & Automation Magazine - June 2018 - 49
IEEE Robotics & Automation Magazine - June 2018 - 50
IEEE Robotics & Automation Magazine - June 2018 - 51
IEEE Robotics & Automation Magazine - June 2018 - 52
IEEE Robotics & Automation Magazine - June 2018 - 53
IEEE Robotics & Automation Magazine - June 2018 - 54
IEEE Robotics & Automation Magazine - June 2018 - 55
IEEE Robotics & Automation Magazine - June 2018 - 56
IEEE Robotics & Automation Magazine - June 2018 - 57
IEEE Robotics & Automation Magazine - June 2018 - 58
IEEE Robotics & Automation Magazine - June 2018 - 59
IEEE Robotics & Automation Magazine - June 2018 - 60
IEEE Robotics & Automation Magazine - June 2018 - 61
IEEE Robotics & Automation Magazine - June 2018 - 62
IEEE Robotics & Automation Magazine - June 2018 - 63
IEEE Robotics & Automation Magazine - June 2018 - 64
IEEE Robotics & Automation Magazine - June 2018 - 65
IEEE Robotics & Automation Magazine - June 2018 - 66
IEEE Robotics & Automation Magazine - June 2018 - 67
IEEE Robotics & Automation Magazine - June 2018 - 68
IEEE Robotics & Automation Magazine - June 2018 - 69
IEEE Robotics & Automation Magazine - June 2018 - 70
IEEE Robotics & Automation Magazine - June 2018 - 71
IEEE Robotics & Automation Magazine - June 2018 - 72
IEEE Robotics & Automation Magazine - June 2018 - 73
IEEE Robotics & Automation Magazine - June 2018 - 74
IEEE Robotics & Automation Magazine - June 2018 - 75
IEEE Robotics & Automation Magazine - June 2018 - 76
IEEE Robotics & Automation Magazine - June 2018 - 77
IEEE Robotics & Automation Magazine - June 2018 - 78
IEEE Robotics & Automation Magazine - June 2018 - 79
IEEE Robotics & Automation Magazine - June 2018 - 80
IEEE Robotics & Automation Magazine - June 2018 - 81
IEEE Robotics & Automation Magazine - June 2018 - 82
IEEE Robotics & Automation Magazine - June 2018 - 83
IEEE Robotics & Automation Magazine - June 2018 - 84
IEEE Robotics & Automation Magazine - June 2018 - 85
IEEE Robotics & Automation Magazine - June 2018 - 86
IEEE Robotics & Automation Magazine - June 2018 - 87
IEEE Robotics & Automation Magazine - June 2018 - 88
IEEE Robotics & Automation Magazine - June 2018 - 89
IEEE Robotics & Automation Magazine - June 2018 - 90
IEEE Robotics & Automation Magazine - June 2018 - 91
IEEE Robotics & Automation Magazine - June 2018 - 92
IEEE Robotics & Automation Magazine - June 2018 - 93
IEEE Robotics & Automation Magazine - June 2018 - 94
IEEE Robotics & Automation Magazine - June 2018 - 95
IEEE Robotics & Automation Magazine - June 2018 - 96
IEEE Robotics & Automation Magazine - June 2018 - 97
IEEE Robotics & Automation Magazine - June 2018 - 98
IEEE Robotics & Automation Magazine - June 2018 - 99
IEEE Robotics & Automation Magazine - June 2018 - 100
IEEE Robotics & Automation Magazine - June 2018 - 101
IEEE Robotics & Automation Magazine - June 2018 - 102
IEEE Robotics & Automation Magazine - June 2018 - 103
IEEE Robotics & Automation Magazine - June 2018 - 104
IEEE Robotics & Automation Magazine - June 2018 - 105
IEEE Robotics & Automation Magazine - June 2018 - 106
IEEE Robotics & Automation Magazine - June 2018 - 107
IEEE Robotics & Automation Magazine - June 2018 - 108
IEEE Robotics & Automation Magazine - June 2018 - 109
IEEE Robotics & Automation Magazine - June 2018 - 110
IEEE Robotics & Automation Magazine - June 2018 - 111
IEEE Robotics & Automation Magazine - June 2018 - 112
IEEE Robotics & Automation Magazine - June 2018 - 113
IEEE Robotics & Automation Magazine - June 2018 - 114
IEEE Robotics & Automation Magazine - June 2018 - 115
IEEE Robotics & Automation Magazine - June 2018 - 116
IEEE Robotics & Automation Magazine - June 2018 - 117
IEEE Robotics & Automation Magazine - June 2018 - 118
IEEE Robotics & Automation Magazine - June 2018 - 119
IEEE Robotics & Automation Magazine - June 2018 - 120
IEEE Robotics & Automation Magazine - June 2018 - 121
IEEE Robotics & Automation Magazine - June 2018 - 122
IEEE Robotics & Automation Magazine - June 2018 - 123
IEEE Robotics & Automation Magazine - June 2018 - 124
IEEE Robotics & Automation Magazine - June 2018 - 125
IEEE Robotics & Automation Magazine - June 2018 - 126
IEEE Robotics & Automation Magazine - June 2018 - 127
IEEE Robotics & Automation Magazine - June 2018 - 128
IEEE Robotics & Automation Magazine - June 2018 - 129
IEEE Robotics & Automation Magazine - June 2018 - 130
IEEE Robotics & Automation Magazine - June 2018 - 131
IEEE Robotics & Automation Magazine - June 2018 - 132
IEEE Robotics & Automation Magazine - June 2018 - Cover3
IEEE Robotics & Automation Magazine - June 2018 - Cover4
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2010
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2010
https://www.nxtbookmedia.com