0% found this document useful (0 votes)
9 views

robot with flexible links

Uploaded by

Adel Ayoub
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
9 views

robot with flexible links

Uploaded by

Adel Ayoub
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 15

Control Engineering Practice 111 (2021) 104788

Contents lists available at ScienceDirect

Control Engineering Practice


journal homepage: www.elsevier.com/locate/conengprac

Trajectory tracking with collision avoidance for a parallel robot with flexible
links
Merlin Morlock ∗, Valmir Bajrami, Robert Seifried
Institute of Mechanics and Ocean Engineering, Hamburg University of Technology (TUHH), Eißendorfer Straße 42, 21073 Hamburg, Germany

ARTICLE INFO ABSTRACT


Keywords: End-effector trajectory tracking of a highly flexible three-link parallel robot is combined with collision
Collision avoidance avoidance in real-time. Typical real-time collision avoidance algorithms issue commands on actuator level
Flexible robot which can cause large oscillations within flexible robots. Thus, the needed evasive motion at the points
Parallel robot
which are about to collide is used to adapt the desired end-effector trajectory of the underactuated system,
Underactuated robot
even for actuator limits and points other than the end-effector. In contrast to existing real-time collision
avoidance concepts, which are essentially completely based on rigid models, a dynamic flexible model inversion
is then used for tracking. Thereby, output redefinition leads to a minimum phase system. The presented
computationally efficient concepts, being actuator limit and obstacle collision avoidance, use sigmoid functions
providing smooth trajectories. The former calculates a braking factor for the end-effector when an actuator
approaches its limit. The latter avoids external dynamic obstacles based on repulsive vectors. Experiments
validate both concepts with a flexible model inversion which clearly outperforms the classical rigid body
approach.

1. Introduction flexible model inversion is used to realize the desired end-effector


trajectory input being adapted by the collision avoidance concepts.
Nowadays, the demand for human–robot interaction (HRI) is higher These components are summarized in Fig. 1 and are motivated in the
than ever before. Even in the traditional industrial environment robots following.
assisting humans can be increasingly observed. Lightweight robots are Firstly, dynamic obstacles need to be detected in real-time. The
a key to offer an intrinsic safety factor being the basis for making literature points out a variety of concepts for 3D problems such as using
such a collaboration successful. Connected to the potential of a re- depth space information (Flacco et al., 2012) or capacitive sensors
duced mass the challenge occurs to overcome oscillations and control acting as virtual whiskers (Schlegl et al., 2013). Since perception is not
errors due to body flexibility. Classical controllers based on rigid mod- the focus of the presented research the obstacles carry markers which
els typically perform unsatisfyingly for these underactuated systems. are processed by an infrared camera in real-time. As the considered
Therefore, more sophisticated approaches are required for such flexible robot is planar and the obstacles are assumed to occur in the same
robots. plane, the problem reduces to 2D. Nevertheless, the introduced control
Although flexible robots are compliant, for the interaction with concepts can be transferred to 3D.
humans it is important to implement collision avoidance concepts in Secondly, collision avoidance algorithms in general need to ensure
real-time. This is necessary to prevent injuries and damage as the that the motion complies with the actuator limit stops, avoids robot
occurring impacts in the case of a collision can still be devastating. self-collisions as well as collisions with external obstacles. A significant
Hence, this paper considers collision avoidance algorithms which are part of the literature concerning the former two problems focuses on
combined with end-effector trajectory tracking for flexible link robots. rigid redundant robots where the desired end-effector trajectory can
Generally speaking, this includes the three main parts being perception often still be realized. The pseudoinversion with null space projection
to detect the obstacles, collision avoidance and a robot control typically is a popular method used for such scenarios (Klein & Huang, 1983).
based on model inversion. The corresponding implementation within This is applied by Flacco, De Luca et al. (2015), where iterative online
this paper uses a single infrared camera for marker-based obstacle inversion of the differential task kinematics for redundant robots is dis-
detection in 2D. For the collision avoidance two concepts are consid- cussed in the framework of hard joint limits. In contrast, the presented
ered, one preventing collisions with the actuator limits and the other research uses a flexible underactuated robot where the desired end-
avoiding robot collisions with external dynamic obstacles. Finally, a effector trajectory needs to be adapted to prevent collisions. Therefore,

∗ Corresponding author.
E-mail addresses: [email protected] (M. Morlock), [email protected] (V. Bajrami), [email protected] (R. Seifried).

https://doi.org/10.1016/j.conengprac.2021.104788
Received 13 November 2020; Received in revised form 10 February 2021; Accepted 11 March 2021
Available online 7 April 2021
0967-0661/© 2021 Elsevier Ltd. All rights reserved.
M. Morlock, V. Bajrami and R. Seifried Control Engineering Practice 111 (2021) 104788

implemented within real-time experiments and only considers static


obstacles as well as only serial robots. Ata and Myo (2008) implement
obstacle avoidance as a planning task within simulations relying on
optimization for a robot with a rigid and a flexible link. Also, Karray
et al. (1995) and Mclean and Cameron (1995) show path planning with
obstacle avoidance for redundant flexible manipulators being however
not implemented in experiments. While Karray et al. (1995) use piezo-
electric actuators to cope with the flexible vibrations, Mclean and
Cameron (1995) introduce flexibility by adding virtual springs within
a potential field framework.
The presented research extends the obstacle avoidance concept
of Flacco et al. (2012) to flexible link robots which calculates a repul-
sive action together with a so-called pivot motion for the end-effector.
This efficient and simple form of the classical artificial potential field
method guarantees fast calculations being necessary for a safe HRI. A
major difference of the presented paper in contrast to Flacco et al.
(2012) is that the distances between obstacles and several control
points on the robot body, other than the end-effector, are not translated
into joint velocity constraints. As this is not feasible for flexible link
robots repulsive actions are used instead both for the end-effector and
the other control points on the robot and are combined into a single
adapted end-effector trajectory.
Thirdly, the adapted end-effector trajectories from the collision
Fig. 1. Overview of the contents. avoidance algorithms need be realized on the robot. Like collision
avoidance for rigid robots, end-effector trajectory tracking of flexi-
ble link robots has been investigated for several decades (Benosman
& Le Vey, 2004; De Luca & Siciliano, 1989; Talebi et al., 1999).
concepts relying only on pseudoinversion of the differential task kine-
However, a large part of the literature only considers theoretical and
matics are inapplicable. Other approaches use optimization (Bosscher &
numerical results or experiments just for a single flexible link. Kwon
Hedman, 2009) or the artificial potential field concept (Khatib, 1985)
and Book (1990) apply an inverse dynamics control to a single-link
to avoid joint limits in real-time for rigid robots. While the existing
flexible robot which is however limited to linear systems. An offline
real-time concepts typically directly adapt the desired actuator motion
calculated controller is used by Burkhardt et al. (2015) based on
applied to rigid robots this can excite significant oscillations in flexible
stable inversion of a dynamic flexible multibody model of a two-link
link robots. Therefore, only indirect adaptions can be made to the
parallel robot of which one link is flexible. In contrast, Bai et al.
actuator motion such as by changing the desired end-effector trajectory
(1998), Carusone et al. (1993), Jiang (2015) and Oakley and Cannon
and using a flexible model inversion to ensure an effective trajectory
(1990) experimentally control a robot with two flexible links but based
tracking. Here, the challenge is that a dynamic model of the flexible link
robot has to be integrated in real-time which renders optimization and on rigid body inverse kinematics. The presented paper extends the
other iterative approaches typically infeasible, especially when they related literature by validating that a flexible dynamic model inversion
are designed for only kinematic models. The presented actuator limit can be applied to real-time collision avoidance of highly nonlinear
avoidance ensures that the slider and joint limit stops are not reached three-link robots with two flexible links and also including parallel
implying that the considered robot does not collide with itself. It is parts. Thus, as opposed to Flacco et al. (2012) the actuator motion is
based on sigmoid functions resulting in a smooth scalar braking factor not kinematically obtained by pseudoinversion but by a dynamic model
adapting the desired end-effector trajectory without distortion of the inversion of the flexible link robot. The advantage of a dynamic model
direction. inversion compared to an algebraic like feedback linearization is that it
In addition, many real-time concepts for dynamic obstacle avoid- is not necessary to estimate the state and thus no elastic measurements
ance are based on the mentioned artificial potential field method are fed back. This can significantly improve the controller robustness
(Khatib, 1985; Warren, 1989). Amongst others, Haddadin et al. (2010) which is a major requirement when interacting with humans. Never-
extend this method by using an impedance control. Still, most ap- theless, as also the end-effector location is not fed back an accurate
proaches directly adapt the actuator motion which is, as explained model and a controller ensuring small drift is necessary. Therefore,
before, not appropriate for flexible link robots. The elastic strip method instead of forces and torques the desired actuator state trajectories are
(Brock & Khatib, 1998) is better suited as it adapts the desired tra- sent to a cascade control of the actuators which highly reduces the
jectory in the task space instead of the configuration i.e. joint space. influence from disturbances such as friction. Finally, to ensure real-
However, its computational complexity is higher than potential field time calculations the inverse model which is a system of differential
methods (Haddadin et al., 2010). Besides, optimization methods are algebraic equations (DAEs) is transformed into ordinary differential
also popular for obstacle avoidance. See amongst others Kaneko et al. equations (ODEs) by projections (Seifried et al., 2013), which then
(1999) who use control points together with a so-called collision Jaco- might be solved by standard integration techniques. However, as the
bian matrix, or Balan and Bone (2006) who utilize predefined search di- system is non-minimum phase (Slotine & Li, 1991) when tracking the
rections for the end-effector to find free paths by checking for collisions end-effector, stable inversion leads to a noncausal model which has to
several time steps ahead. Mronga et al. (2020) introduce obstacle col- be solved offline e.g. as a two-point boundary value problem (Chen &
lision avoidance as a task space constraint of an optimization problem. Paden, 1996; Seifried, 2014). By output redefinition (De Luca & Lanari,
The optimization problem is solved through quadratic programming. 1991; Seifried, 2014; Yang et al., 1999) a minimum phase system can
Again, while such concepts might be used in real-time for rigid robots, be obtained which allows to integrate the inverse model forward in
this is very difficult for flexible link robots since they rely on a dynamic time, i.e. as initial value problem. Therefore, output redefinition is
model. performed by weighting the elastic deformation and rotation of the two
Collision avoidance for flexible link robots is very rarely found highly flexible links which ensures a zero steady-state error. A redefined
in the literature and as opposed to the presented research it is not output close to the end-effector is identified resulting in a minimum

2
M. Morlock, V. Bajrami and R. Seifried Control Engineering Practice 111 (2021) 104788

Fig. 3. Braking factors realized by the sigmoid function.

as optimization, the considered collision avoidance concepts only intro-


duce a small computational load to ensure real-time execution. Please
note, that the objective is not to provide optimal collision avoidance
Fig. 2. Structure of the considered exemplary system. algorithms, but to show the applicability of computationally efficient
concepts to flexible link robots.

phase input–output relation. It is shown that this natural redefinition 3.1. Actuator limit avoidance algorithm
approach can be used for effective end-effector trajectory tracking.
The main contribution of this paper is the extension of the related Within this subsection an actuator limit avoidance is introduced.
rigid body literature on collision avoidance to flexible link robots and The considered scenario is that a user provides desired end-effector
combining it with end-effector trajectory tracking. It is also validated trajectories, e.g. with a game pad, which leave the workspace of the
that these concepts are efficient enough to successfully apply them to a robot. To prevent a collision an automatic braking command is issued
flexible three-link robot with a parallel part in real-time experiments to this desired end-effector motion when an actuator limit position or
via a dynamic model inversion, which has not been done before. rotation is approached. Thus, the user input is adapted such that the
The significant advantage of the implemented dynamic flexible multi- actuators do not hit their limits resulting in end-effector trajectories
body model inversion over classical rigid multibody model inversion is that stay in the robot workspace. While checking each individual
demonstrated within experiments. actuator is straightforward it is also computationally more efficient as
The content of the paper summarized in Fig. 1 comprises the prob- opposed to e.g. surveilling if the end-effector is close to the workspace
lem formulation in Section 2. To avoid collisions Section 3 introduces boundaries. To provide smooth braking a standard sigmoid function or
a first concept to avoid actuator limits and a second concept to pre- logistic curve with an absolute value is used as
vent collisions with dynamic obstacles, both adapting the desired end- 1
𝑓 (𝑞a ) = , (1)
effector trajectory in real-time. This trajectory is sent to the inversion of 1 + e(|𝑞a |−ℎ)𝑟
the full flexible model presented in Section 4. In Section 5, the control to obtain braking factors from one to zero for each actuator when 𝑞a , de-
concepts are validated experimentally. noting an element from the actuated coordinates 𝒒 a ∈ R𝑓a , approaches
the corresponding actuator limit. Smooth signals are particularly neces-
2. Problem statement sary for flexible link robots as badly conditioned signals can be difficult
for the time integration within a flexible model inversion and might
The problem considered in this research is the avoidance of actua- lead to an internal dynamics with significant oscillation amplitudes.
tor limits and of collisions with dynamic obstacles for planar robotic Within (1), ℎ > 0 specifies the value of |𝑞a | where 𝑓 (𝑞a ) gives a
systems with serial and/or parallel parts. So-called kinematic loops half whereas a large 𝑟 > 0 results in a steep transition rate between
represent such parallel parts. Additionally, the considered systems are minimum and maximum values. Individual parameters ℎ and 𝑟 need
underactuated with one or more flexible links. to be chosen for each actuator such that braking is initiated at a
The 2D system of Fig. 2 is used as application example throughout reasonable distance from the limits without being too sharp.
this research to validate the proposed methods. Its parallel part is In Fig. 3 the utilized braking factors are plotted for the considered
introduced through link 1 and 2 connecting the two linear motors. exemplary robotic system of Fig. 2. It can be seen that the sigmoid
These are powered by the current inputs 𝑢a and 𝑢b . The flexible link 3 is function from (1) is symmetric to the zero i.e. middle position of each
mounted at the end of the flexible link 2 and forms a serial part which actuator. At these points cubic splines are used to obtain a smooth
is actuated by a rotary motor with current input 𝑢𝛾 . Here, the actuated transition. Slider 𝑏 has a smaller range of motion by mechanical design
coordinates are summarized as 𝒒 a = [𝑎, 𝑏, 𝛾]T . Besides, human hands to ensure that the linear motors cannot pull on the joint at point O2 , see
represent dynamic obstacles. Fig. 2. Note that the factors are only depending on the current position
and also slow down a motion away from the actuator limits when
3. Collision avoidance control being close to a limit. This seemingly conservative choice helps to avoid
jumps and edges in the braking factor for direction changes. This is very
As the considered HRI framework allows users to apply desired end- important as the actuators can oscillate due to the mentioned internal
effector trajectories online, dangerous collisions with actuator limits dynamics of the later used inverse model. Besides, for the considered
or with external obstacles, such as a human worker, are possible. robot and the case of realistic elastic deformations within the links, the
Therefore, collision avoidance control concepts are introduced in the actuator limit avoidance also prevents self-collisions.
following. They are designed to only adapt the desired end-effector The resulting end-effector trajectory tracking control structure with
velocity which can then be tracked by a flexible model inversion in actuator limit avoidance is shown in Fig. 4. Here, the user inputs
the subsequent Section 4. As the computational complexity of the the desired velocity trajectories online, e.g. with a game pad, for
flexible model typically does not allow to use costly approaches such the end-effector translation and rotation in 2D. If these inputs come

3
M. Morlock, V. Bajrami and R. Seifried Control Engineering Practice 111 (2021) 104788

Fig. 4. Control structure of the actuator limit avoidance with model inversion.

from a game pad they are low-pass filtered at 1.4 Hz to remove steps.
This ensures a physically meaningful desired translational and rota-
tional end-effector velocity 𝒚̇ i . The product of all three braking factors
provides the conservative but smooth braking factor 𝑏𝛱 between 0
and 1 being multiplied to all three components of 𝒚̇ i . Using the same
factor for all elements prevents a direction distortion of the user input.
Afterwards, a low-pass filter with cutoff frequency at 30 Hz is used. This
guarantees that no high frequencies are fed back being important for a
numerically stable model inversion but is fast enough to ensure a small
delay for braking maneuvers. With the filter the time derivative 𝒚̈ d
is obtained and an Euler forward step is used to integrate 𝒚̇ d . Then,
these adapted desired signals 𝒚̈ d , 𝒚̇ d and 𝒚 d are passed to the dynamic
inverse model in ODE form discussed in Section 4. Here, only the
desired actuator positions 𝒒 a,d and velocities 𝒒̇ a,d but not the currents
are calculated as friction effects within the real system cause them to
be unreliable. A cascade controller with a proportional part on position
level and a proportional–integral part on velocity level ensures a close
tracking of the desired actuator trajectories. To provide additional
safety for HRI a limit checker monitors the desired actuator states
as well as actuator and strain gauge measurements 𝝐 and issues an
emergency stop command if a value becomes too large in the case of
malfunctioning. Here, conservative limits are used as very fast motions
can damage the flexible links and are not desired for HRI. The 2D po-
sition 𝑥ef , 𝑦ef and rotation 𝜗ef of the end-effector 𝒚 ef are reconstructed
via passive markers by an infrared camera giving 𝒚̂ ef , which is used to
evaluate the control performance.

3.2. Obstacle collision avoidance algorithm

The following is based on the so-called pivot algorithm to avoid


external dynamic obstacles in real-time, which was proposed by Flacco
et al. (2012) and Flacco, Kroeger et al. (2015) for rigid robots. It
is now adapted to the considered flexible system type, introducing
the adapted pivot algorithm. The original pivot algorithm uses a case
distinction based on the relative movement between a control point and
an obstacle to create a new direction for the pivot velocity. This causes Fig. 5. Overview of the adapted pivot algorithm for obstacle collision avoidance.
a non-smooth behavior of the pivot velocity. Instead, the proposed
adapted pivot algorithm uses a smooth transition based on the distance
between an obstacle and a control point. Additionally, instead of using Initially, for a single control point described by the position vec-
risk functions for multiple control points on the whole body to impose tor 𝒑 and one obstacle described by the position vector 𝒐 a repulsive
constraints in the joint space, multiple control points are used to create translational velocity is introduced as
a new direction in the task space for a full body collision avoidance.
This enables the application of the collision avoidance algorithm to 𝒗r (𝒑, 𝒐) = 𝑣(𝒑, 𝒐)𝒅(𝒑, 𝒐) (2)
flexible link robots via a dynamic inverse model.
to prevent a collision, with
The pivot algorithm tries to avoid a collision between 𝑛max control
𝒑−𝒐
points, where the 𝑛th control point is located at 𝒑𝑛 ∈ R3 on the robot, 𝒅(𝒑, 𝒐) = . (3)
and 𝑖max obstacles, where the 𝑖th obstacle is located at 𝒐𝑖 ∈ R3 . The ‖𝒑 − 𝒐‖
different parts of the algorithm are visualized in Fig. 5 and are discussed Here, 𝒅(𝒑, 𝒐) is the normalized position vector between 𝒑 and 𝒐 with its
in the following. direction pointing away from the obstacle and ∥∥ denotes the Euclidean

4
M. Morlock, V. Bajrami and R. Seifried Control Engineering Practice 111 (2021) 104788

norm. The term


𝑣max
𝑣(𝒑, 𝒐) = ( ( ) ) (4)
‖𝒑−𝒐‖ 𝜌2 −1 𝜎
1+e
is the magnitude of the repulsive velocity. It consists of the maximum
speed 𝑣max at which the control point 𝒑 can move and is shaped by
a sigmoid function. Thus, the shape is similar to Fig. 3 but defined
only for a positive distance between obstacle and control point. Eq. (4)
depends on the parameter 𝜌 > 0 which defines at which distance
between control point 𝒑 and obstacle 𝒐 the repulsive velocity becomes
significant. It can be regarded as the radius of a collision avoidance
zone around the control point 𝒑. The parameter 𝜎 > 0 is used to shape
the slope of the sigmoid function.
So far the repulsive velocity 𝒗r provides a straightforward way of Fig. 6. Visualization of the repulsive, normal and pivot velocity when an obstacle
collision avoidance for one obstacle. However, for multiple obstacles approaches the control point.
the repulsive velocity 𝒗r needs to be adjusted, such that the control
point can avoid all obstacles 𝒐𝑖 close to it. Combining all resulting
repulsive velocities 𝒗r (𝒑, 𝒐𝑖 ) gives the new direction of the repulsive which will simply be denoted as pivot velocity in the following. The
vector pivot velocity 𝒗piv , i.e. the pivot action, is a combination of the repul-
∑𝑖max
𝒗r (𝒑, 𝒐𝑖 ) sive action being the first summand and the normal action, which is the
𝒅 all (𝒑, 𝒐𝑖 ) = ∑𝑖=1
𝑖max
. (5) second summand. The sigmoid function depends analogously to (4) on
‖ 𝑖=1 𝒗r (𝒑, 𝒐𝑖 )‖
the parameters 𝜇 > 0, 𝑐 > 0, the pivot factor 0 ≤ 𝑝 ≤ 1 and on the
To ensure a collision avoidance only the closest obstacle 𝒐min is taken closest distance between an obstacle and the control point. The pivot
into account for the magnitude yielding the repulsive velocity for all factor 𝑝 is used to weight the pivot effect. For 𝑝 = 0 the pivot velocity
considered obstacles 𝒗piv is simply the repulsive velocity 𝒗r,all . For 𝑝 = 1 and a small distance
‖𝒑 − 𝒐min ‖ only the normal action is significant.
𝒗r,all (𝒑, 𝒐𝑖 ) = 𝑣(𝒑, 𝒐min )𝒅 all (𝒑, 𝒐𝑖 ). (6) Figure 6 visualizes the different velocities when an obstacle ap-
Although in most cases (6) provides an effective and robust way of proaches a control point. Three different time instances of an obstacle
collision avoidance, the case of an obstacle moving faster than the max- moving towards a control point can be seen. The velocity generated
imum speed of the control point might still lead to a collision. Flacco from the obstacle collision algorithm is not applied to the control
et al. (2012) propose to use a pivot motion in such instances, which is point, to obtain a better understanding of the change in direction and
now briefly described for one obstacle. The pivot velocity includes the magnitude of the repulsive velocity 𝒗r,all and the normal to the repulsive
relative motion between the obstacle and the control point by using the velocity 𝒗n,all . The third time instance is used as an example to see the
first time derivative of the repulsive velocity. In the pivot algorithm a advantage of the adapted pivot algorithm. It can be seen that the pivot
case distinction is introduced. If the obstacle moves into the direction of velocity 𝒗piv is almost normal to the movement of the obstacle. Using
the control point the pivot velocity is applied and if the obstacle moves 𝒗piv instead of 𝒗r,all in this scenario tends to result in a more effective
away from the control point, the repulsive velocity is used. Even though collision avoidance motion.
this pivot algorithm can lead to an effective collision avoidance for Until now the collision avoidance algorithm is only introduced for
rigid robots, undesirable effects for flexible robots may appear. There one control point e.g. only for the end-effector. For a safe collision
is no smooth transition between the cases, causing the direction of avoidance between human and robot more control points need to be
the resulting velocity to jump. In addition, the obstacle might move added to cover a larger area on the robot. Flacco et al. (2012) treat
back and forth, also causing the direction of the pivot velocity to jump. the additional control points on the robot body differently than the
Both instances would lead to jerky movements that are very difficult control point on the end-effector. While the control point on the end-
to realize on a flexible link robot which can also lead to significant effector uses the pivot velocity to avoid any possible collision with an
oscillations. obstacle, the control points on the robot body use risk functions to
modify the actuator velocities, such that possible collisions with the
Therefore, an adapted pivot algorithm is proposed which produces
robot can be avoided. However, directly controlling the actuators is
smooth velocities for flexible link robots. Again, the objective is not
not desirable for flexible systems, since this might excite oscillations.
to provide optimal collision avoidance but to show the applicability to
Therefore, for the considered system of Fig. 2, a different approach
flexible systems. Instead of using the time derivative of the repulsive
is proposed. Here, a pivot velocity is calculated for all control points.
velocity 𝒗̇ r,all and a normal to it, 𝒗n,all being a normal to the repulsive
Although this approach is feasible in 3D, in regard of the considered
velocity 𝒗r,all with the same magnitude is utilized. Note that for a
system the corresponding 2D case is investigated in the following.
movement in 2D, there are two possible directions that fulfill the
Since only the end-effector shall be tracked the velocity for the other
condition of being normal to the repulsive velocity. To obtain the
control points needs to be transformed into an end-effector velocity.
normal velocity 𝒗n,all , the repulsive velocity vector 𝒗r,all can simply be
The planar end-effector velocity 𝒗ef ∈ R2 and any other control point
rotated by 𝜋2 or − 𝜋2 . To decide which of the vectors is better suited
velocity 𝒗p𝑛 ∈ R2 can be expressed in minimal coordinates via the
for the algorithm depends on the considered scenario. Sticking to only
actuated coordinates 𝒒 a ∈ R𝑓a and the elastic coordinates 𝒒 e ∈ R𝑓e ,
one of these two directions is necessary in order that no jumps occur.
as well as the corresponding time derivatives, as
Furthermore, instead of using a case distinction as Flacco et al. (2012),
[ ]
sigmoid functions are used to provide a smooth transition between 𝒒̇
𝒗ef = 𝑱 ef (𝒒 a , 𝒒 e ) a , (8a)
repulsive and normal action. This yields the adapted pivot velocity 𝒒̇ e
[ ]
⎛ ⎞ 𝒒̇
𝑝 𝑝 𝒗p𝑛 = 𝑱 p𝑛 (𝒒 a , 𝒒 e ) a . (8b)
𝒗piv = 𝒗r,all ⎜1 − ( ( ) ) ⎟ + 𝒗n,all ( ( ) ) , 𝒒̇ e
⎜ ‖𝒑−𝒐min ‖ 𝜇2 −1 𝑐 ⎟ ∥𝒑−𝒐min ∥ 𝜇2 −1 𝑐
⎝ 1+e ⎠ 1+e Here, 𝑱 ef ∈ R2×(𝑓a +𝑓e ) and 𝑱 p𝑛 ∈ R2×(𝑓a +𝑓e ) are the corresponding Jaco-
(7) bian matrices. The end-effector also has a rotational degree of freedom

5
M. Morlock, V. Bajrami and R. Seifried Control Engineering Practice 111 (2021) 104788

Fig. 7. Control structure of the obstacle collision avoidance with model inversion.

which is not directly relevant for obstacle avoidance and thus needs to
be selected by the user. Therefore, the collision avoidance motion of
the control points (8b) is extended by the rotational velocity 𝜔ef of the
end-effector as
[ ] [ ]
𝒗p𝑛 𝒒̇
= 𝑱 m,p𝑛 (𝒒 a , 𝒒 e ) a , (9)
𝜔ef 𝒒̇ e

with the mixed Jacobian 𝑱 m,p𝑛 ∈ R3×(𝑓a +𝑓e ) . While the control point
velocity 𝒗p𝑛 comes from the collision avoidance algorithm setting 𝜔ef =
0 shall avoid a change of the end-effector rotation through a collision
Fig. 8. Control points used for obstacle collision avoidance on link 3 with 𝜌 ≈ 0.29 m.
avoidance motion. Rearranging (8a) and (9) transforms the control
point velocity into an end-effector velocity
[ ]
𝒗p𝑛
𝒗ef,p𝑛 = 𝑱 ef (𝒒 a , 𝒒 e )𝑱 +
m,p𝑛 (𝒒 a , 𝒒 e ) 0 . (10) The magnitude of the pivot velocity is chosen similar to (6) giving the
final pivot velocity
Since the considered system is underactuated with the elastic coordi-
𝒗piv,all = 𝑣(𝒑min , 𝒐min )𝒅 piv,all , (14)
nates 𝒒 e being not directly actuated, 𝑱 m,p𝑛 is non-square with more
columns than rows. Using a pseudoinverse + for (9) will lead to neces- where 𝒑min and 𝒐min denote the closest control point and obstacle pair.
sary elastic deformation velocities 𝒒̇ e that cannot be directly controlled. Since this pair can change throughout operation, the resulting mini-
Consequently, only taking the kinematics of a dynamic inverse system mum or critical distance should be filtered to remove edges. Adding
into account could lead to an undesired behavior. Using a dynamic the pivot velocity to avoid a collision will eventually lead to the end-
inverse for each control point is typically not feasible as this often effector moving away from the original desired trajectory. Thus, a
involves a non-minimum phase behavior. Even if this is not the case, the high-pass filter is used to remove the steady-state offset on position
computational cost of the dynamic model inversion would significantly level for each end-effector component such that the robot smoothly
limit the number of control points. Therefore, for the considered system returns to the user trajectory when the obstacles are not in range
the idea is to use the Jacobians of the fully actuated equivalent rigid anymore. It is realized as a stable state space model
system with 𝑓a = 3 instead, turning (10) into
[ ] 𝑦f = 𝑥̇ f = 𝑎f 𝑥f + 𝑢f , (15)
𝒗p𝑛
𝒗ef,p𝑛 = 𝑱 ef,rigid (𝒒 a )𝑱 −1 (𝒒
m,p𝑛,rigid a
) , (11) with 𝑎f < 0. The input 𝑢f is a component of 𝒗piv,all and the output 𝑦f
0
being the filtered pivot velocity component is added to the original
with 𝑱 m,p𝑛,rigid ∈ R3×3 . These rigid Jacobians adapt the desired end- desired end-effector velocity trajectory 𝒚̇ i , see Fig. 7. The state 𝑥f
effector velocity 𝒗ef,p𝑛 again via kinematic relations. Using this velocity of the filter corresponds to the integral of the filtered pivot velocity
later within a flexible dynamic model inversion will also not result component.
in the original desired 𝒗p𝑛 . But as this approach aims at preventing For the exemplary system of Fig. 2, the third link is covered with
collisions for the underlying rigid body motion it is typically an ef- five equally distributed control points including the end-effector and
fective way for obstacle avoidance since the flexible system basically corresponding avoidance zones with radius 𝜌, see Fig. 8. The amount
oscillates around this motion. Occurring errors through simplifications of control points, their positions and their radius need to be selected
are treated by the algorithm running in a feedback loop. Also, this such that the area of interest is completely covered. Additionally, the
straightforward adaption of the end-effector velocity is computationally covered area needs to be small enough to avoid unnecessary collision
more efficient than calculating the pseudoinverse of the Jacobians of avoidance movements. The setup in Fig. 8 ensures that the shape
the flexible system being advantageous for real-time control. of link 3 is appropriately reproduced by the avoidance zones. Since
Calculating all pivot velocities 𝒗piv,p𝑛 at each control point via (7) providing collision avoidance is the most important task, the scalar
and transforming them via (11) into 𝒗piv,ef ,p𝑛 yields the combined pivot 𝑎f = −1.2 1s for the high-pass filter is chosen such that the pivot
velocity velocity is slowly filtered. With regard to the possible change of the
𝑛max
∑ closest control point and obstacle pair, low-pass filtering with a cutoff
𝒗piv,c = 𝒗piv,ef + 𝒗piv,ef,p𝑛 . (12) frequency at 12 Hz is used to remove edges within the desired velocity
𝑛=2
profile. Also, the same low-pass filter with a cutoff frequency at 30 Hz
As this might exceed the maximum allowed velocity only its direction as in Section 3.1 is applied, which provides the time derivative 𝒚̈ d for
is used by normalizing analogously to (5) as the model inversion, see Fig. 7.
𝒗piv,c It should be noted that singularities in 𝑱 m,p𝑛,rigid only occur near the
𝒅 piv,all = . (13) edges of the workspace. These are practically not relevant as here the
‖𝒗piv,c ‖

6
M. Morlock, V. Bajrami and R. Seifried Control Engineering Practice 111 (2021) 104788

actuators are very close to their limits where safety concepts take effect. 4.2. Model inversion
Nevertheless, being close to a singularity does not cause a problem for
the collision avoidance algorithm due to the normalization in (13). The For trajectory tracking control the dynamic model (16) is now
velocities produced by the algorithm would stay limited, however they being inverted. Therefore, the concept of servo constraints (Blajer &
would not be meaningfully realizable on the robot. Kołodziejczyk, 2004) is applied which yields the inverse model by
simply adding 𝑛𝜍 algebraic equations
3.3. Actuator limit and obstacle collision avoidance
𝝇(𝒒, 𝑡) = 𝒚 o (𝒒) − 𝒚 d (𝑡) = 0 (18)
Both concepts from the preceding subsections can be conveniently to (16). These servo constraints are similar to geometric constraints but
combined. Here, it is advisable to first add the adapted velocity from are not enforced by Lagrange multipliers but by the control inputs 𝒖
the obstacle collision avoidance framework to the user input trajectory. which ensure that the output of interest 𝒚 o , being e.g. the end-effector
Subsequently, this sum is multiplied by the braking factor 𝑏𝛱 from the position and rotation in 2D, is restricted to a desired trajectory 𝒚 d . Here,
actuator limit avoidance. This ensures that the robot stops if no space the number of inputs and servo constraints is assumed to be equal,
is left to avoid an obstacle. This means it does not crash into actuator i.e. 𝑛𝜍 = 𝑓a . For real-time integration of the inverse model of (16)
limitations which could cause large oscillations being dangerous for the and (18), the obtained set of DAEs is transformed to ODEs. First, the
robot and a human interacting with it. Thus, only the obstacle itself can constraints (16b) and (18) need to be differentiated twice with respect
crash into the robot which is typically less problematic than the other to time 𝑡, giving
way around.
𝒄̇ = 𝑪 𝒒̇ = 0, (19a)
4. Model inversion control 𝝇̇ = 𝑯 𝒒̇ − 𝒚̇ d = 0, (19b)

In order to be able to track the adapted desired end-effector trajec- 𝒄̈ = 𝑪 𝒒̈ + 𝑪̇ 𝒒̇ = 𝑪 𝒒̈ + 𝒄 ′′ = 0, (19c)


tories coming from the collision avoidance algorithms from Section 3, ′′
𝝇̈ = 𝑯 𝒒̈ + 𝑯̇ 𝒒̇ − 𝒚̈ d = 𝑯 𝒒̈ + 𝒉 − 𝒚̈ d = 0. (19d)
a flexible multibody model is introduced which needs to be inverted
in real-time. Here, a redefined output is utilized since using the end- Here, 𝑯 = 𝜕𝒚 o ∕𝜕𝒒 ∈ R𝑛𝜍 ×𝑓 holds. The following QR decompositions
effector as output typically leads to a non-minimum phase system for [ ]
[ ] [ ] 𝑹r
flexible link robots. Γ T = 𝑪 T 𝑯 T = 𝑸r 𝑱 r = 𝑸r 𝑹 r , (20a)
0
[ ]
[ ] [ ] 𝑹𝓁
4.1. Flexible multibody model 𝑮 T = 𝑪 T 𝑩 = 𝑸𝓁 𝑱 𝓁 = 𝑸𝓁 𝑹 𝓁 , (20b)
0
The planar robot is modeled as a flexible multibody system using give the projection matrices 𝑱 r ∈ R𝑓 ×(𝑓 −𝑛c −𝑛𝜍 ) and 𝑱 𝓁 ∈ R𝑓 ×(𝑓 −𝑛c −𝑓a ) to
the floating frame of reference approach (Shabana, 2005). Existing cancel the unknown Lagrange multipliers 𝝀 and inputs 𝒖 from (16a).
kinematic loops are virtually opened. This leads to serial subsystems This method is also called the null space method, where the columns
which are described by the coordinates 𝒒 ∈ R𝑓 . Closing the loops of 𝑱 r and 𝑱 𝓁 span the null space of Γ and 𝑮, respectively. With (19)
yields 𝑛c algebraic constraint equations 𝒄(𝒒) = 𝟎. The equations of and (20) the inverse dynamics (16), (18) can be transformed similar
motion of the flexible link parallel robot can then be written as to Seifried et al. (2013) to equations of motion in ODE form
̇ + 𝑩(𝒒)𝒖 + 𝑪 T (𝒒)𝝀,
𝑴(𝒒)𝒒̈ = 𝒇 (𝒒, 𝒒) (16a) ( )−1 T ( )
𝒒̇ = 𝑱 r 𝑱 Tr 𝑱 r 𝑱 r 𝒒̇ − 𝜽′ + 𝜽′ , (21a)
𝒄(𝒒) = 0, (16b) ( T )−1 T ( ′′
) ′′
𝒒̈ = 𝑱 r 𝑱 𝓁 𝑴𝑱 r 𝑱 𝓁 𝒇 − 𝑴𝜽 + 𝜽 . (21b)
which is a system of DAEs with differentiation index 3. It contains the These equations are in a form which can be directly used within
mass matrix 𝑴 ∈ R𝑓 ×𝑓 , the vector of the Coriolis, centrifugal, gyro- an integrator. Here, 𝜽′ and 𝜽′′ include the terms 𝒚̇ d , 𝒚̈ d , 𝒄 ′′ and 𝒉′′ ,
scopic and elastic forces 𝒇 ∈ R𝑓 and the applied forces being the con- see Seifried et al. (2013) for details. It should be noted that the right
trol inputs 𝒖 ∈ R𝑓a multiplied by the input matrix 𝑩 ∈ R𝑓 ×𝑓a . The La- hand side of (21) is evaluated leading to the left hand side needed by
grange multipliers 𝝀 ∈ R𝑛c multiplied by the transposed an integrator. Here, 𝒒̇ appears on both sides of (21a) which does not
𝑪 = 𝜕𝒄∕𝜕𝒒 ∈ R𝑛c ×𝑓 matrix enforce the kinematic loops. indicate that one has to solve for 𝒒, ̇ but by inserting and projecting
For the exemplary system of Fig. 2, the elastic deformation in link 1 it with 𝑱 r it is ensured that the resulting 𝒒̇ on the left side complies
and 2 is described within a chord frame of reference and for link 3 with the constraints on velocity level. Consequently, integration leads
within a tangent frame of reference. To reduce the computational load only to a linear drift of the constraints (16b) and (18) on position
of the inversion control, the finite element models of link 2 and 3 level. By integrating (21) the state trajectories are obtained including
are modally truncated (Nowakowski et al., 2012) after the first and the actuator motion. As these are used within real-time control and
only significant eigenmode. Link 1 is approximated as rigid body since HRI, the QR decomposition provides the needed additional safety.
only negligible oscillations are excited through normal operation. The Since it automatically selects dependent and independent coordinates
error introduced by using only two modes is typically much smaller in each time step it prevents singularities within the calculation of the
than modeling errors e.g. caused by using linear finite elements. Also, projection matrices, which can occur for a manual selection such as
experimental errors such as within measurement and actuation are within the classical coordinate partitioning approach (Seifried, 2014).
much larger. Besides, the term 𝑱 Tr 𝑱 r in (21a) yields the identity matrix for the QR
Opening the kinematic loop at joint O2 leads to two serial subsys- decomposition but typically not for manual coordinate partitioning. It
tems which are described by 𝑓 = 7 coordinates 𝒒. These are the slider should be noted that for serial robots no loop closing constraints 𝒄 = 0
positions 𝑎 and 𝑏, the angles 𝛼, 𝛽 and 𝛾 as well as the elastic coordinates occur such that they are typically described by ODEs. Nevertheless,
𝒒 e = [𝑞e,2 , 𝑞e,3 ]T . The 𝑛c = 2 algebraic constraint equations servo constraints lead to DAEs such that purely serial robots can be
treated analogously to parallel robots.
𝒄(𝒒) = 𝒓O2 ,1 (𝒒) − 𝒓O2 ,2 (𝒒) = 0 (17)
When considering the system of Fig. 2 with 𝑛𝜍 = 𝑓a = 3, neglecting
close the kinematic loop at O2 . They follow from the 2D vectors 𝒓O2 ,1 the flexibilities yields an equivalent rigid system which is fully actu-
and 𝒓O2 ,2 which describe the position of O2 with respect to link 1 and 2. ated. Then, the projected parts of (21) vanish since no independent
The control inputs are summarized as 𝒖 = [𝑢a , 𝑢b , 𝑢𝛾 ]T . coordinates exist, leading to 𝒒̇ = 𝜽′ and 𝒒̈ = 𝜽′′ . Consequently, the

7
M. Morlock, V. Bajrami and R. Seifried Control Engineering Practice 111 (2021) 104788

Table 1
Output redefinition weights.
Link Position Rotation
2 𝑤p,2 = 0.8 𝑤r,2 = 1.07
3 𝑤p,3 = 0.8 𝑤r,3 = 0.5

This exactly corresponds to the position 𝒓ef and rotation 𝜗ef of the end-
effector 𝒚 ef when setting all four elastic weighting design parameters
to one, with 𝑤p,2 , 𝑤p,3 for the deflections and 𝑤r,2 , 𝑤r,3 for the elastic
rotations. This formulation ensures zero steady-state error independent
of the weights. In (22a), 𝓁22 and 𝓁3 denote the undeformed length of
the second part of link 2 and link 3, see Fig. 9. The parameter 𝑜 = 61 cm
describes the offset in 𝑥−direction between the zero position of slider 𝑏
and the inertial frame. In (22) the angles 𝛽̃ and 𝛽̃ + 𝛾̃ denote the rotation
of the second and the weighted rotation of the third floating frame of
reference with respect to the inertial frame. The angle 𝛾̃ consists of 𝛾
and the elastic rotation of link 2 at the rotary motor. The parameters 𝜙
and 𝜓 are the shape functions for the elastic deflections of link 2
and 3 in the local 𝑦−directions and the shape functions for the elastic
Fig. 9. Kinematics of the flexible three-link robot.
rotations evaluated at the corresponding link tips.
Now, the four weights need to be selected such that the internal
dynamics turns stable which however is usually very difficult to ensure
inverse is purely algebraic and could also be solved by root finding for a nonlinear time-variant system. Therefore, typically only the zero
of (16b) and (18) as well as with (19a) and (19b) to obtain the state dynamics (Isidori, 2013), i.e. the internal dynamics with fixed output,
trajectories. The term rigid model inversion denotes this root finding is considered. Furthermore, the stability property of the zero dynamics
in the current research. For the flexible model inversion (21) is used. of the system under consideration, i.e. if it is minimum phase or non-
minimum phase, does not change when changing the robot poses. In
4.3. Output redefinition this study, stability is consequently guaranteed locally by ensuring that
all eigenvalue real parts of the linearized zero dynamics at a single
The underactuation results in a dynamic inverse model (21) with working point are negative. The linearization can be realized with finite
its dynamics corresponding to the so-called internal dynamics known differences for (21) where the zero eigenvalues from the dependent
from feedback linearization (Isidori, 1995; Slotine & Li, 1991). It is coordinates should be removed as they do not contribute to the zero
a well-known property of most flexible link robots to exhibit a non- dynamics and its stability. By using e.g. a brute-force search one can
minimum phase input–output behavior when using the end-effector 𝒚 ef obtain stable designs close to the end-effector. Time simulations of
as output 𝒚 o (De Luca & Lanari, 1991). Therefore, the internal dynamics the nonlinear inverse system however show that most of these close
is unstable and (21) cannot be solved by forward time integration. solutions introduce significant actuator oscillations while the redefined
Stable inversion of the model leads to a noncausal solution which has output is at rest. This is the zero dynamics which apparently can be
to be obtained offline such as by solving a two-point boundary value significant although it is stable. In a practical scenario this means,
problem (Chen & Paden, 1996; Seifried, 2014). that errors within the model inversion are punished more heavily as
Thus, the concept of output redefinition is used to get a minimum the oscillations in the actuators will excite the end-effector. Also for
phase system which can be solved online. Here, a virtual redefined HRI it is desired that the amplitudes of the internal dynamics are
output 𝒚 r is selected as output 𝒚 o such that it is close to the end- small to ensure safer interaction with enough distance to the stability
effector 𝒚 ef , ensuring small tracking errors while yielding a stable and limits. Based on the mentioned time simulations a conservative choice
robust model inversion. Seifried (2014) used output redefinition for a still with good tracking performance is obtained with the weights
robot with two flexible links but only in simulations with serial links summarized in Table 1. These will be used throughout the paper.
and with a linearly combined output being an approximation of the real Further results on this output redefinition approach with less robust
end-effector. weights and without collision avoidance have been recently discussed
In contrast, the idea that has been successfully applied to two-link by Morlock et al. (2021).
parallel robots with a single flexible link (Morlock et al., 2016, 2018) Note that since a dynamic online model inversion is utilized one
is now used for the considered system of Fig. 2 with two flexible links, can safely pick weights based on time simulations. In contrast, concepts
analogously to Morlock et al. (2021). Here, the flexibility introducing such as feedback linearization, where an estimated state is fed back
the internal dynamics is directly used as design parameter within the using often disturbed elastic measurements, demand an even more
end-effector description. As only the first bending eigenmodes of link 2 conservative choice for the weights.
and link 3 are retained, the kinematics follows as visualized in Fig. 9.
Details on the link parameters can be found in Appendix A. Based on 5. Experiments
Fig. 9, one obtains the position 𝒓r and rotation 𝜗r of the redefined
end-effector 𝒚 r as For validation purposes the proposed collision avoidance concepts
[ ] [ ][ ] with dynamic model inversion are now experimentally applied to the
𝑜+𝑏 ̃
cos (𝛽) − sin (𝛽)̃ 𝓁 22
𝒓r = + ̃ ̃ previously mentioned planar parallel robot with flexible links, illus-
0 sin (𝛽) cos (𝛽) 𝑤p,2 𝜙2 𝑞e,2
[ ][ ] trated in Fig. 10. It consists of three spring steel sheets with a thickness
cos (𝛽̃ + 𝛾̃ ) − sin (𝛽̃ + 𝛾̃ ) 𝓁3 of 2 mm for link 1, 1 mm for link 3 and 2 mm for the right part of link 2
+ ̃ ̃ , (22a)
sin (𝛽 + 𝛾̃ ) cos (𝛽 + 𝛾̃ ) 𝑤p,3 𝜙3 𝑞e,3 while the left part is 6 mm thick and made from standard stainless steel.
𝜗r =𝛽̃ + 𝛾 + 𝑤r,2 𝜓2 𝑞e,2 +𝑤r,3 𝜓3 𝑞e,3 . (22b) This results in first bending eigenfrequencies below 2.25 Hz of link 2
⏟⏞⏞⏞⏞⏞⏞⏟⏞⏞⏞⏞⏞⏞⏟ and 3 with corresponding bearing. A slider limit stop ensures that link 1
𝛾̃ and link 2 cannot fold down which prevents the connected singularities

8
M. Morlock, V. Bajrami and R. Seifried Control Engineering Practice 111 (2021) 104788

Fig. 10. Components of the flexible three-link robot.

and possible large joint forces. Encoders measure the positions of the
sliders of the linear motors and the rotation of the rotary motor as well
as the rotation of the joint on the left slider. The elastic deformations
for limit checking are obtained by strain gauges. They are well-suited
for dynamic measurements as they are very lightweight and their
measurable frequency limit is extremely high. The end-effector point
to be tracked is located at the pneumatic gripper. An external infrared Fig. 11. Experimentally measured actuator locations with limit avoidance and flex-
motion tracking camera measures the position of two reflective markers ible ( ) as well as rigid ( ) inversion, compared to simulated actuator
locations without limit avoidance and flexible ( ) as well as rigid ( )
to reconstruct the end-effector position and rotation in 2D. Two hands
inversion.
represent dynamic obstacles whereby a marker on each hand is used
for tracking. The utilized camera processes 360 frames per second and
extracts the centers of all visible markers on-board in the time between
two frames. As the C++ software development kit of the camera relies
on Windows, a dedicated PC is used to ensure a fast program execution.
The camera is called within a Simulink C++ S-Function to provide
straightforward signal processing and visualization tools. Exporting the
Simulink model to LabVIEW via the National Instruments VeriStand
Model Framework for Windows targets ensures a nearly deterministic
program timing. The end-effector and obstacle data is sent via UDP to
the real-time target running the collision avoidance control algorithms
and the model inversion.
For the flexible model inversion (21) with redefined output is
integrated with the standard explicit fourth-order Runge–Kutta method
and a time step of 1 ms, which is also the sample time of the collision
avoidance algorithms. These algorithms are in addition combined with
a model inversion of an equivalent rigid model. This will show that
rigid models cannot ensure safe collision avoidance for the considered
robot but flexible modeling is required. To provide repeatable results
the raw user input and obstacle trajectories are recorded and applied
online in cases where comparisons between controllers are drawn.
It should be noted that the delay of the camera system and data
processing is with around 3 ms small enough to apply the concepts also
without prerecording marker data.

5.1. Actuator limit avoidance experiments

The necessity and effectiveness of the actuator limit avoidance intro-


duced in Section 3.1 for user defined end-effector trajectories, coming
here from a game pad, becomes clear in Fig. 11 where limited actuator
motion is compared to unlimited actuator motion. Not using a limit
avoidance, i.e. 𝑏𝛱 = 1, leads to a desired motion hitting the physical
actuator limits such as for actuator 𝑎 at around 1.7 s independent of
using a flexible or equivalent rigid model inversion. As this would
result in a crash or emergency stop motion with large and dangerous
Fig. 12. Snapshots of the test rig at the trajectory end for (a) the rigid and (b) the
oscillations the unlimited case is only applied within simulations. With flexible model inversion with actuator limit avoidance, seen from above.
active actuator limit avoidance the motion diverges from the unlimited

9
M. Morlock, V. Bajrami and R. Seifried Control Engineering Practice 111 (2021) 104788

Fig. 14. End-effector trajectory tracking errors with actuator limit avoidance for flexi-
ble (measured , simulated ) and rigid (measured , simulated )
model inversion.

The advantage of the flexible inversion is more obvious in the end-


effector plots of Fig. 13 coming from the measurements of the two
passive markers at the end-effector. The poor performance of the rigid
inversion, even before the actuator limit avoidance becomes significant,
is clearly visible for the chosen trajectory as it excites significant
bending. Despite output redefinition, the flexible model tracks the
position and rotation adapted by the actuator limit avoidance very
effectively leading to a fast and safe braking maneuver. In the path plot
of Fig. 13(a) one can also see, that the limit avoidance does not distort
the direction of the user input as the desired paths from the flexible and
rigid cases lie exactly over the infeasible case without limit avoidance,
which finally leaves the robot’s workspace. A difference between the
desired motion of the flexible and rigid cases can only be observed in
Fig. 13(b). As the desired rotation is constant Fig. 13(c) shows three
constant lines which are closely tracked in the flexible case.
The corresponding maximum end-effector tracking errors are dis-
played in Fig. 14. Here, simulations of the flexible inversion visualize
the deviation introduced by the redefined output being the only error
source. As it is quite small and since the measurements, which include
all kinds of other errors, are close the effectiveness of the flexible
model inversion with redefined output together with a cascade control
structure is validated. It should be noted that despite the control
concepts do not feed back the output tracking error, the long-term drift
through modeling errors between flexible model and the actual robot
will be small for typical scenarios which include short stops where the
system comes to rest.

5.2. Obstacle collision avoidance experiments

The obstacle collision avoidance algorithm from Section 3.2 is now


being applied within different scenarios. In all scenarios five control
Fig. 13. End-effector trajectory tracking experiments with actuator limit avoid- points are used as seen in Fig. 8. In addition to that, the position of
ance for the flexible (desired , measured ) and rigid (desired , the control points on the robot are taken from the corresponding model
measured ) model inversion, as well as a case without limit avoidance (de- inversion as shown in Fig. 7. For the flexible case this prevents difficult
sired ). marker based tracking on the flexible link or the need for a state
estimator, based e.g. on strain gauge measurements, to reconstruct the
control point positions. For the rigid case this ensures safe operation,
cases when approaching the limits. This starts at around 1 s where 𝑏𝛱 since feeding back large oscillations from a flexible robot into a rigid
begins to drop from a value of one. For both cases, flexible and model inversion can cause instability.
rigid, there is still a substantial safety distance which the user can
only reduce with extremely small velocity as the underlying sigmoid 5.2.1. Static obstacles with purely repulsive action
functions quickly approach zero close to the limits. For the flexible Two static external obstacles, representing e.g. the hands of a
inverse robot model braking at the end-effector does not directly lead to human worker, collide in the following scenario with a desired end-
a stop motion in the actuators because of the internal dynamics which effector trajectory being a line in 𝑥𝑦-coordinates. The obstacle collision
will come to rest shortly afterwards. Therefore, the actuator curves avoidance is used to prevent such a collision. Snapshots from the
scenario with a rigid and a flexible model inversion are shown in
for the flexible case are more bumpy. Further significant differences
Fig. 15. Here, the markers on the hands represent the obstacle centers.
between the rigid and flexible cases can be seen within 𝑎 and 𝛾 being
It can be seen that the obstacle avoidance algorithm adapts the desired
necessary to ensure a good end-effector tracking performance. This is
line trajectory between start and endpoint, resulting in a curvy motion
illustrated in Fig. 12 where snapshots of the rigid and flexible model which successfully avoids a collision for the rigid and flexible model
inversion are shown after the considered braking maneuver. Whereas inversion. Nevertheless, the rigid inversion leads to heavy oscillations
large oscillations are visible at the end-effector for the rigid case, the at the endpoint which can be dangerous if the obstacles and the robot
flexible inversion reduces them very effectively. This can be noticed approach each other before they are damped out. The corresponding
especially at link 2 which in the rigid case deviates significantly from plots are shown in Fig. 16. It should be noted that in this experiment
the red dashed line connecting the link endpoints. the hand positions are given as constant and are not being measured to

10
M. Morlock, V. Bajrami and R. Seifried Control Engineering Practice 111 (2021) 104788

Fig. 15. Snapshots of the test rig for (a) the rigid and (b) the flexible model inversion
combined with static obstacle avoidance for a motion from right to left.

Table 2
Obstacle collision avoidance parameters for static obstacles.
Fig. 16. Static obstacles: End-effector trajectory tracking experiments with obstacle
Parameter Value
collision avoidance for the flexible (desired , measured ) and rigid (de-
𝜌 0.29 m sired , measured ) model inversion, as well as the desired motion without
𝜎 5 obstacle collision avoidance ( ).
𝑣max 0.6 m∕s
𝑝 0

and control points, which for this scenario is always with respect to
the end-effector. The minimal critical distance for both flexible and
ensure repeatability. The utilized parameters for all control points are rigid inversion is quite similar and significantly better than without
listed in Table 2 where the choice depends on the considered scenario. obstacle avoidance, which would lead to a collision with the fingers.
In Fig. 16(a) the path plot visualizes the successful collision avoid- Note that the illustrated critical distance for the flexible and the rigid
ance. Whereas for the flexible inversion the trajectory is tracked very case is based on camera measurements of the end-effector. As men-
closely, significant oscillations occur in the rigid case. tioned before these measurements are not used within the obstacle
Negligible differences occur within the desired trajectories of the avoidance algorithm. For example, the rigid model inversion uses
flexible and the rigid model inversion. The reason is that in the flexible instead a rigid approximation of the end-effector as feeding back the
case a redefined output, close to the end-effector, is controlled on the oscillations within the critical distance from the camera measurements
desired trajectory. Therefore, the modeled control point at the end- could further amplify the deformations.
effector is slightly off the desired trajectory. This leads to a different
desired trajectory when avoiding an obstacle compared to the rigid case 5.2.2. Dynamic obstacle with purely repulsive action
which controls the actual end-effector of an equivalent rigid model. In order to validate the applicability of the collision avoidance
While the end-effector position needs to be adapted to avoid a algorithm with a dynamic obstacle, three different experimental sce-
collision, the desired rotation still follows the original user input, see narios are considered. In the first scenario, a hand of a human worker
Fig. 16(b). As expected, the flexible inversion tracks the rotation much comes close to link 3 of the robot at rest, approaching multiple control
better than the rigid case. Finally, in Fig. 16(c) the critical distance points. Thus, the desired end-effector trajectory is reduced to a fixed
is shown which denotes the minimum distance between the obstacles point showing how the robot behaves just by avoiding a collision with

11
M. Morlock, V. Bajrami and R. Seifried Control Engineering Practice 111 (2021) 104788

Fig. 18. Snapshots of the elliptical motion with obstacle collision avoidance and the
flexible model inversion.

Fig. 17. Dynamic obstacle: End-effector trajectory tracking experiments with obstacle
collision avoidance for the flexible (desired , measured ) and rigid (de-
sired , measured ) model inversion, as well as the desired motion without
obstacle collision avoidance ( ).

Table 3
Obstacle collision avoidance parameters for dynamic obstacles.
Parameter Value
Fig. 19. Dynamic obstacle with elliptical end-effector motion: End-effector trajectory
𝜌 0.35 m tracking experiments with obstacle collision avoidance for the flexible (measured:
𝜎 5 round 1 , round 2 , round 3 ) model inversion as well as the desired
𝑣max 0.6 m∕s motion without obstacle collision avoidance ( ).
𝑝 0

running the rigid model can be dangerous as it significantly oscillates.


a moving hand. The hand first moves closely parallel to the third Since it has been thoroughly shown that the flexible model inversion
link, approaches it and then moves away from it. Here, for a full clearly outperforms the rigid model inversion, only the flexible model
body collision avoidance the utilized control points as shown in Fig. 8 inversion is applied in the following experiments.
become crucial. In Fig. 17 the corresponding measurements are shown.
In the next scenario, the end-effector tracks an elliptical trajec-
Clearly, Fig. 17(a) and (b) confirm that the flexible model is again
tory three times in a row. In round 2, the hand of a human worker
necessary to keep the oscillations small. Here, the parameters from
approaches this trajectory, see Fig. 18. Here, frame 3 and 4 show
Table 3 are used, which corresponds to Table 2 but with 𝜌 = 0.35 m
to ensure a larger avoidance zone. In Fig. 17(c) the critical distance is that a successful collision avoidance is also possible when both the
plotted which depends on the control point being closest to the hand. As end-effector as well as the obstacle are in motion. The correspond-
the control points on the flexible robot link 3 are here not measured by ing measurements can be seen in Fig. 19. Round 1 is completely
the camera the illustrated critical distance completely depends on data undisturbed and the end-effector is able to closely track the desired
from the flexible model. The plot indicates that both concepts avoid the ellipse. The obstacle approaches the end-effector in round 2 where its
hand with almost the same minimal critical distance of around 0.12 m. elliptical motion is significantly adapted to ensure a successful collision
Nevertheless, it can be clearly seen that further approaching the robot avoidance. With the obstacle moving away in round 3, the end-effector

12
M. Morlock, V. Bajrami and R. Seifried Control Engineering Practice 111 (2021) 104788

Fig. 20. Hand permanently blocks desired gripper position.

Table 4
Obstacle collision avoidance parameters for pivot action.
Parameter Value
𝜌 0.42 m
𝜎 5
𝑣max 0.6 m∕s
𝜇 0.35 m
𝑐 5

is able to steadily recover the elliptical motion and approaches the


desired trajectory closely in the end.
Besides, cases can occur in which an obstacle permanently blocks
the desired end-effector position. Such a scenario is shown in Fig. 20,
where a hand has moved to the original end-effector position and
stays there. Thus, the end-effector is displaced. Nevertheless, due to
the high-pass filter of (15) a steady-state configuration is reached. This
means that the output 𝑦f of the filter vanishes. Thus, the state 𝑥f of
the filter, which here corresponds to the end-effector displacement,
balances the repulsive action, which here corresponds to the input 𝑢f
of the filter. Consequently, a larger end-effector displacement 𝑥f results
Fig. 21. Motion (a) with purely repulsive action and (b) with pivot action both
in a larger repulsive action in steady state. As the repulsive action
combined with the flexible model inversion.
rises for a reduced critical distance, this means that the hand comes
closer to the end-effector in steady state the more it is displaced from
its original position. Thus, the filter of (15) balances both objectives
purposes also uses the parameters from Table 4, but now with 𝑝 = 0 for
of trajectory tracking and obstacle avoidance. The resulting steady-
all control points to ensure a purely repulsive motion.
state configuration also depends on the filter parameter 𝑎f and on the
Within the conducted experiments the obstacle approaches the end-
design parameters 𝜌, 𝜎 and 𝑣max of the repulsive velocity as described
effector. With only repulsive action the obstacle pushes the end-effector
by (4). For a larger 𝑣max or a larger 𝜌 the critical distance in steady
eventually to its workspace limits. In contrast, for the pivot action,
state increases. For a variation of 𝜎 the critical distance can increase or
which includes a normal motion, the end-effector is pushed to the side
decrease depending on the specific case. such that the obstacle can pass. A direct comparison is shown in Fig. 21.
Here, in (a) the repulsive action pushes the end-effector to the top,
5.2.3. Dynamic obstacle with pivot action while in (b) the additional normal action within the pivot action lets the
So far the collision avoidance algorithm with purely repulsive action end-effector move to the side. After the avoidance motion both cases re-
performed effectively. Still, in some scenarios it might be better to turn in frame 4 to the starting position. The corresponding paths can be
additionally introduce a normal action, which moves the robot to the seen in Fig. 22. The completely different collision avoidance motion is
side instead of only away from the obstacle. To validate the resulting obvious. The flexible model inversion again ensures a close end-effector
pivot action a comparison to a purely repulsive action is performed in trajectory tracking and an effective obstacle collision avoidance.
the following.
The parameters for the pivot action for all control points can be 5.3. Actuator limit and obstacle collision avoidance experiments
found in Table 4. For the control point at the end-effector the pivot
factor is set to 𝑝 = 1. Since a pivot movement loses its effectiveness As described in Section 3.3, both actuator limit and obstacle col-
for control points far away from the end-effector, the pivot factor 𝑝 is lision avoidance are now combined. A typical scenario is shown in
linearly decreased by steps of −0.25 between the end-effector and the Fig. 23. Here, a hand approaches the robot and the dominating obstacle
rotary motor. As a result, the control point next to the end-effector has collision avoidance moves the end-effector away from the obstacle,
a pivot factor of 𝑝 = 0.75 and the control point at the rotary motor see frame 1. Again, only repulsive action is used with the parameters
has a pivot factor of 𝑝 = 0. Nevertheless, choosing the factors is up to from Table 3. With an actuator further approaching its limit the limit
the needed behavior. For this experiment, the normal velocity 𝒗n,all is avoidance starts to dominate. Thus, the robot slows down to prevent an
obtained through rotation of the repulsive velocity 𝒗r,all by − 𝜋2 around actuator collision. Consequently, obstacles cannot be avoided as shown
the 𝑧-axis. The case with only repulsive action utilized for comparison in frame 2, since not enough space is left for a repulsive action. As the

13
M. Morlock, V. Bajrami and R. Seifried Control Engineering Practice 111 (2021) 104788

Fig. 23. Combination of actuator limit avoidance and obstacle collision avoidance.

Fig. 22. Dynamic obstacle: End-effector trajectory tracking experiments with obstacle rotations within the end-effector kinematics a redefined output is ob-
collision avoidance with (a) purely repulsive action and (b) pivot action for the flexible
tained which allows for robust online inversion of the flexible model.
(desired , measured ) model inversion.
Both collision avoidance concepts are applied to a parallel robot with
flexible links within real-time experiments, showing their effectiveness
and the significant advantage of the flexible model inversion compared
robot is practically at rest close to its limits, such an obstacle collision
to the classical rigid body approach.
only means that the hand collides with the static robot. This is typically
In future investigations, the obstacle collision avoidance algorithm
unproblematic.
should be extended to cover more complex scenarios. For instance,
contrasting configurations with close obstacles from different sides of
6. Conclusions the control points can lead to significant oscillations with the current
formulation.
Two collision avoidance algorithms are introduced and combined
with end-effector trajectory tracking for parallel robots with flexible Declaration of competing interest
links. First, actuator limits are avoided by surveilling the actuator
locations, which are used to calculate a scalar braking factor obtained The authors declare that they have no known competing finan-
by sigmoid functions. Using the same factor for all end-effector velocity cial interests or personal relationships that could have appeared to
components prevents a distortion of the desired direction. Secondly, influence the work reported in this paper.
external and dynamic obstacles interfere with the desired robot motion.
With the field of application being real-time scenarios, the computa-
Acknowledgments
tionally efficient obstacle avoidance pivot algorithm is used being a
simplified version of the well-known artificial potential field method.
This work was supported by the German Research Foundation
This algorithm is here adapted to flexible link robots to ensure an
(DFG) [projects SE1685/3-2 and SE1685/7-1].
evasion of the last link of the considered robotic system by using
control points on the whole link length. The algorithm does not limit
the number of control points or obstacles which can be advantageous Appendix A
in more complicated scenarios. Both algorithms prevent collisions by
transforming the reactive motion at the points which are about to Table 5 shows further parameters of the utilized link models.
collide into an adapted end-effector trajectory. Here, smooth adaptions
ensure that no sharp changes are fed back being important for the Appendix B. Supplementary data
subsequently utilized flexible model inversion. Servo constraints are
used for this inversion resulting in a non-minimum phase system when Supplementary material related to this article can be found online
tracking the end-effector. By weighting the elastic deformations and at https://doi.org/10.1016/j.conengprac.2021.104788.

14
M. Morlock, V. Bajrami and R. Seifried Control Engineering Practice 111 (2021) 104788

Table 5 Haddadin, S., Urbanek, H., Parusel, S., Burschka, D., Roßmann, J., Albu-Schäffer, A.,
Link parameters. & Hirzinger, G. (2010). Real-time reactive motion generation based on variable
Description Parameter Value attractor dynamics and shaped velocities. In Proc. IEEE/RSJ Int. Conf. Intell. Robots
Syst. (pp. 3109–3116).
Length link 1 𝓁1 42 cm
Isidori, A. (1995). Nonlinear Control Systems (3rd ed.). London: Springer.
Length link 21 𝓁2 1 60 cm
Isidori, A. (2013). The zero dynamics of a nonlinear system: From the origin to the
Length link 22 𝓁2 2 40 cm
latest progresses of a long successful story. European Journal of Control, 19(5),
Length link 3 𝓁3 47.6 cm
369–378.
Beam elements per link 𝑛𝓁 100
Jiang, Z. H. (2015). Workspace trajectory control of flexible robot manipulators using
Density 𝜌𝓁 7900 kg/m3
neural network and visual sensor feedback. In Proc. IEEE Can. Conf. Elect. Comput.
Poisson’s ratio 𝜈𝓁 0.3
Eng. (pp. 1502–1507).
Link height ℎ𝓁 8 cm
Kaneko, H., Arai, T., Inoue, K., & Mae, Y. (1999). Real-time obstacle avoidance for
Young’s modulus link 1, 21 , 3 𝐸sp 180 GPa
robot arm using collision Jacobian. In Proc. IEEE/RSJ Int. Conf. Intell. Robots Syst.
Young’s modulus link 22 𝐸st 200 GPa
Vol. 2. (pp. 617–622).
Karray, F., Modi, V., & Chan, J. (1995). Path planning with obstacle avoidance as
applied to a class of space based flexible manipulators. Acta Astronautica, 37, 69–86.
Khatib, O. (1985). Real-time obstacle avoidance for manipulators and mobile robots.
References In Proc. IEEE Int. Conf. Robot. Autom. Vol. 2 (pp. 500–505).
Klein, C. A., & Huang, C. H. (1983). Review of pseudoinverse control for use with
Ata, A., & Myo, T. (2008). Optimal trajectory planning and obstacle avoidance for kinematically redundant manipulators. IEEE Transactions on Systems, Man, and
flexible manipulators using generalized pattern search. World Journal of Modelling Cybernetics, SMC-13(2), 245–250.
and Simulation, 4(3), 163–171. Kwon, D. S., & Book, W. J. (1990). An inverse dynamic method yielding flexible
Bai, M., Zhou, D. H., & Schwarz, H. (1998). Adaptive augmented state feedback control manipulator state trajectories. In Proc. Am. Control Conf. (pp. 186–194).
for an experimental planar two-link flexible manipulator. IEEE Transactions on Mclean, A., & Cameron, S. (1995). Path planning and collision avoidance for redundant
Robotics and Automation, 14(6), 940–950. manipulators in 3D. In Proc. Intell. Auton. Syst. (pp. 381–388). IOS Press.
Balan, L., & Bone, G. M. (2006). Real-time 3D collision avoidance method for safe Morlock, M., Burkhardt, M., & Seifried, R. (2016). Control concepts for a parallel
human and robot coexistence. In Proc. IEEE/RSJ Int. Conf. Intell. Robots Syst. (pp. manipulator with flexible links. In PAMM. Vol. 16 (pp. 819–820).
276–282). Morlock, M., Meyer, N., Pick, M.-A., & Seifried, R. (2018). Modeling and trajectory
Benosman, M., & Le Vey, G. (2004). Control of flexible manipulators: A survey. Robotica, tracking control of a new parallel flexible link robot. In: Proc. IEEE/RSJ Int. Conf.
22(5), 533–545. Intell. Robots Syst. (pp. 6484–6489).
Blajer, W., & Kołodziejczyk, K. (2004). A geometric approach to solving problems of Morlock, M., Meyer, N., Pick, M.-A., & Seifried, R. (2021). Real-time trajectory tracking
control constraints: theory and a DAE framework. Multibody System Dynamics, 11(4), control of a parallel robot with flexible links. Mechanism and Machine Theory, 158,
343–364. Article 104220.
Bosscher, P., & Hedman, D. (2009). Real-time collision avoidance algorithm for robotic Mronga, D., Knobloch, T., de Gea Fernández, J., & Kirchner, F. (2020). A constraint-
manipulators. In Proc. IEEE Int. Conf. Techn. Pract. Robot Applicat. (pp. 113–122). based approach for human–robot collision avoidance. Advanced Robotics, 34(5),
Brock, O., & Khatib, O. (1998). Elastic strips: Real-time path modification for mobile 265–281.
manipulation. In Robot. Res. (pp. 5–13). Springer. Nowakowski, C., Fehr, J., Fischer, M., & Eberhard, P. (2012). Model order reduction
Burkhardt, M., Seifried, R., & Eberhard, P. (2015). Experimental studies of control in elastic multibody systems using the floating frame of reference formulation. In
concepts for a parallel manipulator with flexible links. Journal of Mechanical Science IFAC Proc. Vol. 45 (pp. 40–48).
and Technology, 29(7), 2685–2691. Oakley, C. M., & Cannon, R. H. (1990). Anatomy of an experimental two-link flexible
Carusone, J., Buchan, K. S., & D’Eleuterio, G. M. T. (1993). Experiments in end-effector manipulator under end-point control. In Proc. IEEE Conf. Decis. Control. (pp.
tracking control for structurally flexible space manipulators. IEEE Transactions on 507–513).
Robotics and Automation, 9(5), 553–560. Schlegl, T., Kröger, T., Gaschler, A., Khatib, O., & Zangl, H. (2013). Virtual whiskers—
Chen, D., & Paden, B. (1996). Stable inversion of nonlinear non-minimum phase highly responsive robot collision avoidance. In Proc. IEEE/RSJ Int. Conf. Intell.
systems. International Journal of Control, 64(1), 81–97. Robots Syst. (pp. 5373–5379).
De Luca, A., & Lanari, L. (1991). Achieving minimum phase behavior in a one-link Seifried, R. (2014). Dynamics of Underactuated Multibody Systems. Switzerland: Springer.
flexible arm. In Proc. Int. Symp. Intell. Robots. (pp. 224–235). Seifried, R., Burkhardt, M., & Held, A. (2013). Trajectory control of serial and parallel
De Luca, A., & Siciliano, B. (1989). Trajectory control of a non-linear one-link flexible flexible manipulators using model inversion. In J. Samin, & P. Fisette (Eds.),
arm. International Journal of Control, 50(5), 1699–1715. Multibody Dyn.: Computational Methods Applicat. Computational Methods Ap. Sci. Vol.
Flacco, F., De Luca, A., & Khatib, O. (2015). Control of redundant robots under hard 28 (pp. 53–75). Springer.
joint constraints: Saturation in the null space. IEEE Transactions on Robotics, 31(3), Shabana, A. (2005). Dynamics of Multibody Systems. Cambridge University Press.
637–654. Slotine, J. J., & Li, W. (1991). Applied Nonlinear Control. Prentice Hall, Ch. 6.
Flacco, F., Kroeger, T., De Luca, A., & Khatib, O. (2015). A depth space approach Talebi, H. A., Khorasani, K., & Patel, R. V. (1999). Experimental results on tracking
for evaluating distance to objects. Journal of Intelligent and Robotic Systems, 80(1), control of a flexible-link manipulator: A new output re-definition approach. In Proc.
7–22. IEEE Int. Conf. Robot. Autom. Vol. 2 (pp. 1090–1095).
Flacco, F., Kröger, T., De Luca, A., & Khatib, O. (2012). A depth space approach Warren, C. W. (1989). Global path planning using artificial potential fields. In Proc.
to human–robot collision avoidance. In Proc. IEEE Int. Conf. Robot. Autom. (pp. IEEE Int. Conf. Robot. Autom. (pp. 316–321).
338–345). Yang, H., Krishnan, H., & Ang, M. H. (1999). Tip-trajectory tracking control of single-
link flexible robots via output redefinition. In Proc. IEEE Int. Conf. Robot. Autom.
Vol. 2 (pp. 1102–1107).

15

You might also like