Pierre Jop

Artyom Petrosyan

Sergio Ciliberto
email: sergio.ciliberto@ens-lyon.fr

Effective Temperature in a Colloidal Glass

Keywords: effective temperature, out of equilibrium systems, colloids, glasses, optical trap, Brownian motion, passive and active rheology

We study the Brownian motion of particles trapped by optical tweezers inside a colloidal glass (Laponite) during the sol-gel transition. We use two methods based on passive rheology to extract the effective temperature from the fluctuations of the Brownian particles. All of them give a temperature that, within experimental errors, is equal to the heat bath temperature. Several interesting features concerning the statistical properties and the long time correlations of the particles are observed during the transition.

Introduction

The glasses and colloids are interesting examples of out of equilibrium systems where the relaxation towards the equilibrium may last much more than a reasonable observation time. One of the problem which has been widely theoretically studied is the definition of an effective temperature T ef f in these systems using the fluctuation dissipation relation (FDR). This relation is an extension of the Fluctuation Dissipation Theorem for an out of equilibrium system and T ef f is defined as the ratio between the correlation and the response function [1]. Using numerical simulations it has been shown that in several models for out of equilibrium systems the effective temperature defined via FDR is higher than the temperature of the thermal bath and it is a good definition of temperature in the thermodynamic sense. However the experimental results are more confused. It has been observed that T ef f in polymer, spin glasses and colloids may depend on the experimental conditions. For example in the dielectric measurements in polymer T ef f depends on the quenching rate and it may be huge because of the presence of intermittent bursts. The same behavior is observed on mechanical variables. Instead in a colloid (Laponite) during the sol-gel transition the electric observables give a T ef f which is quite large whereas measurements done on thermal rheometer indicate that within experimental errors there is no violation of the Fluctuation theorem because the T ef f is always equal to the temperature of the thermal bath.(A discussion on the T ef f obtained from dielectric measurements and mechanical measurements can be found in ref. [2]). The rheological measurement described in ref. [2] was a global measurement and one may wonder whether an experiment of microrheology give or not the same results. This experiment can be performed using as a probe a Brownian particle using active and passive microrheology. These kind of experiments are interesting also from another point of view because one may studies whether the properties of the Brownian motion are affected by the fact that the surrounding fluid (the thermal bath) is out of equilibrium. Several experiments of Brownian motion inside a Laponite solution have been done by different groups using various techniques. The results are rather contradictory. Let us resume them. Abou et al. find an increase and then a decrease of T ef f as a function of time [3]. Bartelett et al. find an increase of T ef f [4]. In contrast Jabbari-Farouji et al. do not observe any change and confirm the results on the thermal rheometer of ref [2]. The purpose of this article is to describe the results of the measurement of the Brownian motion of a particle inside a Laponite solution using a combination of different techniques proposed in previous references. All the techniques do not show, within experimental errors, any increase of T ef f which remains equal to that of the thermal bath for all the duration of the sol-gel transition. Thus the result of this papers agrees with those of Jabbari-Farouji et al. [5] and of Bellon et al. [2]. The article is organized as follow. In section 2 we describe the experimental apparatus and the various techniques used to measure response and fluctuations. In section 3 we describe the experimental results of the various experimental techniques. In section 4 we discuss the result and we conclude.

Experimental set up

We measure the fluctuations of the position of one or several silica beads trapped by an optical tweezers during the aging of the Laponite. The laser beam (λ=980 nm) is focused by a microscope objective (×63) 20 µm above the cover-slip surface to create a harmonic potential well where a bead of 1 or 2 µm in diameter (2r) is trapped. We can trap several beads if the laser is rapidly swept from a position to another to form a multi trap system. The Laponite mass concentration is varied from 1.2 to 3% wt for different ionic strengths. These conditions allow us to obtain either a gel or a glass according to the phase diagramm found in the literature [6]. The Laponite is filtered with a 0.45 µm filter to avoid the formation of aggregates. The aging time t w is measured since the end of this filtering process. Particular attention has been paid in the cell construction indeed the properties of the Laponite are very sensitive to the experimental conditions. First the Laponite solution is prepared under nitrogen atmosphere and second the cell is completely sealed using Gene Frame adhesive spacers in order to avoid evaporation and the use of vacuum grease, used in other experiments. Indeed this grease, whose PH is much smaller than 10, quickens the evolution of the suspension.

In order to measure T ef f for the particle motion two techniques have been used. The first one is based on the laser modulation technique as proposed in ref. [4]. The second is based on the Kramers-Kronig relations with two laser intensities and it combines the advantages of two methods one proposed in ref. [5] and in ref. [4].

Laser modulation technique

Following the method used in [4], the stiffness of the optical trap is periodically switched between two different values (k 1 = 6.34 pN/µm and k 2 = 14.4 pN/µm) every 61 seconds by changing the laser intensity. The position of the bead is recorded by a quadrant photodiode at the rate of 8192 Hz, then we compute the variance of the position over the whole signal, δx 2 = x 2 -x 2 , where the brackets stand for average over the time. To avoid transients, each record is started 20 seconds after the laser switch to be sure that the system has relaxed toward a quasi stationary state. Assuming the equipartition principle still holds in this out-of-equilibrium system, the T ef f is computed as in [4] the expression of the effective temperature and of the Laponite elastic stiffness K Lap is the following:

k B T ef f = (k 2 -k 1 ) δx 2 1 δx 2 2 δx 2 1 -δx 2 2
(1)

K Lap = k 1 δx 2 1 -k 2 δx 2 2 δx 2 1 -δx 2 2 (2)
This technique, although quite interesting and simple, has the important drawback that, being a global measurement, it has no control of what is going on the different frequencies. To overcome this problem we have used the following method.

Kramers-Kronig and modulation technique

This combines the laser modulation technique described in the previous section and the passive rheology technique based on Kramers-Kronig relations. The fluctuation dissipation relations relate the spectrum S i (ω) of the fluctuation of the particle position to the imaginary part α ′′ i of the response of the particle to an external force, specifically :

S i (ω, t w ) = 4 k B T ef f ω α ′′ i (ω, t w ) (3)
with i = 1 and i = 2 for the spectra measured with the trap stiffness k 1 and k 2 respectively. We recall that for a particle inside a newtonian fluid G = 1/α i = k i +iνω with ν = 6πηr and η the fluid viscosity. In Eq. 3 the dependence in t w takes into account the fact that the properties of the fluid changes after the preparation of the Laponite. If one assumes that T ef f is constant as a function of frequency (hypothesis that can be easily checked a posteriori) then the real part α ′ i of the response is related to α ′′ i by the Kramers-Kronig relations [7] that is:

α ′ i (ω, t w ) = 2 π P ∞ 0 ξα ′′ (ξ, t w ) ξ 2 -ω 2 dξ = 1 2πk B T P ∞ 0 ξ 2 S i (ξ, t w ) ξ 2 -ω 2 dξ (4)
where P stands for principal part of the integral and assumed that T ef f = T to write the second equality using Eq. 3. However it can be easily (details will be given in a longer report) shown that using the two measurements at k 1 and k 2 we get:

T ef f (ω, t w ) = T bath k 1 -k 2 G ′ 1 (ω, t w ) -G ′ 2 (ω, t w ) (5)
and

G ′ i (ω, t w ) = k i + K Lap (ω, t w ).
It is clear that if one finds a dependence of T ef f on ω this method cannot be used because α ′′ (ω, t w ) is not simply proportional to S i (ω, t w )ω as assumed in Eq. 4.

Laser modulation method

Fig. 1a) shows the power spectra of the particle fluctuations inside Laponite at concentration measured at four different t w with the trap stiffness k 1 = 6.34 pN/µm. We see that as time goes on the low frequency component of the spectrum increases. That is the frequency cut-off (k i + K Lap )/ν decreases mainly because of the increasing of the viscosity. At very long time this cut-off is well below 0.1Hz. In Fig. 1b) we plot the variance of the particle measured for the same data of Fig. 1a) on time windows of length τ = 61 s. The variance remains constant for a very long time and they begin to decrease because of the increase o the gel stiffness. Using these data and Eq. 1 and Eq. 2 one can compute T ef f and K Lap . The results for T ef f and K Lap are shown in Fig. 2a) and 2b) respectively.

We find that T ef f is constant at the beginning and is very close to T bath = 294 K, then when the jamming occurs, that is when K Lap increases, it becomes more scattered without any clear increase with t w , contrary to Ref. [4]. We now make several remarks. First, we point out that the uncertainty of their results are underestimated. The error bars in Fig. 2a) are here evaluated from the standard deviation of the variance using Eq. 2 in Ref [4] at the time t w . Although they are small for short time t w , (∆T ef f /T ef f ≤ 10%), they increase for large t w . This is a consequence of the increase of variabilities of δx 2 i as the colloidal glass forms. This point is not discussed in in Ref. [4] and we think that the measurement errors are of the same order or larger than the observed effect. The results depend on the length of the analyzing time window and the use of the principle of energy equipartition becomes questionable for the following reasons.

First, these analyzing windows cannot be made too large because the viscoelastic properties of Laponite evolve as a function of time. Second, the corner frequency of the global trap (optical trap and gel), the ratio of the trap stiffness to viscosity, decreases continuously mainly because of the increase of viscosity. At the end of the experiment, the power spectrum density of the displacement of the bead shows that the corner frequency is lower than 0.1 Hz. We thus observe long lived fluctuations, which could not be taken into account with short measuring times. This problem is shown on Fig. 2b). We split our data into equal time duration ∆τ , compute the variance and average the results of all samples. The dotted line represents the duration 3.3 s chosen in [4]. At the beginning of the experiment, the variance of the displacement is constant for any reasonable durations of measurement. However, we clearly see that this method produces an underestimate of δx 2 for long aging times, specially when the viscoelasticity of the gel becomes important. Long lived fluctuations are then ignored.

Passive rheology

This new method, using Kramers-Kronig relation, allows us to test the dependence of the effective temperature on the frequency. The figure 3a) shows the real part of G, which corresponds to the global elastic modulus of the gel and of the laser, for both trap stiffness. This numerical method is very sensitive to the spectrum. Thus, before computing the elastic modulus, we average the spectrum to obtain smooth curves. The uncertainties would then misplace the curve rather than produce a noisy curve. The increase with time is consistent with the increase of the strength of the gel. The elastic behavior of the Laponite is also more pronounced at high frequency. The last decrease of the curves at very high frequencies is due to the numerical method. Indeed, the frequency cutoff should be set at least a decade below the frequency of the data acquisition: data above 200 Hz is not reliable. We see that the curves of each stiffness are well separated except at the end of the measurement, where the results are not accurate due to the large difference between the optical stiffness and the Laponite stiffness.

From these data, we compute the ratio of the effective temperature to the bath temperature along the ageing process. These results are shown on Fig. 3b) for three different frequencies (f = 1 Hz, 10 Hz and 100 Hz). We first note that the three curves are almost identical. This means that the effective temperature does not depends on the frequency. Second, the temperature ratio is close to 1. The dispersion of the data is rather small at early times and again increases when the stiffness of the gel overcomes those of the optical trap. This comes from the uncertainties on the elastic modulus which become larger than the difference between the two curves. This dispersion may also give, for very long time, negative temperatures, not shown in Fig. 3b) which is an expanded view. Even if this method is here less accurate than the previous one, it allows us to verify that the effective temperature is the same for all frequencies.

Conclusion

Finally, a remark has to be made concerning the mean position of the bead during aging. When the stiffness of the gel becomes comparable to the optical one, the bead starts to move away from the centre the optical trap. We observe a drift of the bead position at long time, which could lead to the escape of the bead. Moreover we have performed simultaneous measurements with a multiple trap using a fast camera showing that at very long t w the mean trajectories of beads separated by 7 µm are almost identical. This proves that one must pay attention when interpreting such measurements, specially on the duration of measurements. We also have seen that the way the sample is sealed can accelerate the formation of the gel and the drift of the bead by changing the chemical properties in the small sample. We have used different types of cell, Laponite concentrations, bead sizes, stiffness of the optical trap. In each case we do not find any increase of the effective temperature.

In conclusion, our results show no increase of T ef f in Laponite and are in agreement with those of Jabbari-Farouji [5], who measured fluctuations and responses of the bead displacement in Laponite over a wide range of frequency and found that T ef f is equal to the bath temperature.

Acknowledgement

This work has been partially supported by ANR-05-BLAN-0105-01.

Figure 1

 1 Figure 1. a) Spectra of the particle position fluctuations inside a Laponite solution at 2.3% wt. The spectra has been measured for the trap stiffness k 1 = 6.34 pN/µm at various ageing times: from right to left tw = 30, 110, 190 and 270 minutes. b) Evolution of δx 2 with tw for both stiffness, k 1 = 6.34 pN/µm (•) and k 2 = 14.4 pN/µm, ( ). The variances have been measured on a time window of τ = 61s

Figure 2

 2 Figure 2. a) Evolution of the effective temperature with aging time for the data of Fig. 1 k 1 = 6.34 pN/µm, k 2 = 14.4 pN/µm, 2.3% wt of Laponite and 1 µm glass bead. The error bars are computed from the statistical error of δx 2 i at the time tw. b) Evolution of the stiffness of the Laponite with ageing time. Inset: Evolution of δx 2 ∆τ for k 1 as a function of the duration ∆τ of the samples for different aging times : tw = 30, 57, 83, 110, 137, 163, 190, 217, 243 and 270 minutes.

Figure 3

 3 Figure 3. a) Evolution of G ′ (the global elastic modulus) as a function of frequency for both trap stiffnesses, k 1 = 7.47 pN/µm (solid lines), k 2 = 16.7 pN/µm (dashed lines) and for increasing ageing time: tw = 30 min, 90 min, 140min, 190 min and 240 min (1.2% wt of Laponite, 2 µm glass bead and ionic strength I=5 10 -3 mol.L -1 ). b) Evolution of the ration T ef f /T bath with ageing time (tw) for different frequencies (f=1 Hz , 10 Hz • and 100 Hz ×)).


Marco Faroni

Manuel Beschi

Nicola Pedrocchi
email: nicola.pedrocchi@stiima.cnr.it

An MPC Framework for Online Motion Planning in Human-Robot Collaborative Tasks

come   L'archive ouverte pluridisciplinaire

I. INTRODUCTION

Human Robot Collaboration (HRC) is a trending topic nowadays, both for the academic and the industrial communities. Collaboration between robots and humans in the execution of tasks combines the strengths of both, increasing the flexibility and the throughput of the process. However, this combination also brings about safety issues, which translate into new planning requirements. Safe motion planning means, for example, avoidance or energy limitation of the collisions and requires an intensive use of runtime modifications of the motion and re-scheduling of tasks. Industrial applications have often taken the easy way out: robots are still fenced in cells and static environments and the presence of operators causes the stop of the robot or the reduction of the speed of execution of the task. Although safety is guaranteed, the result is an alleged collaboration that does not exploit the full potential of the parts, leaving the wish of a holistic human-robot combination unattended [START_REF] Koppenborg | Effects of movement speed and predictability in human-robot collaboration[END_REF]. Better solutions should be able to react more dynamically to the presence of humans and changes in the environment. New strategies tend to modify the robot nominal tasks based on current information about the system. A typical approach consists in applying virtual repulsive forces to the robot to move it away from the operator [START_REF] Kulić | Real-time safety for human-robot interaction[END_REF], [START_REF] Flacco | A depth space approach to human-robot collision avoidance[END_REF]. A trajectory scaling method for safe HRC is proposed in [START_REF] Zanchettin | Safety in human-robot collaborative manufacturing environments: Metrics and control[END_REF]: given a Cartesian trajectory, the timing law is modified online to match safety requirements. Similarly, [START_REF] Lippi | Safety in human-multi robot collaborative scenarios: a trajectory scaling approach[END_REF] uses trajectory scaling for safe HRC in case of multi-robot systems.

In general, trajectory scaling consists in modifying the timing law of a given desired trajectory. It is typically adopted to preserve the geometrical path in case the nominal trajectory exceeds the constraints of the system. Relevant examples can be found in [START_REF] Dahl | Torque-limited path following by online trajectory time scaling[END_REF], [START_REF] Antonelli | A new on-line algorithm for inverse kinematics of robot manipulators ensuring path tracking capability under joint limits[END_REF], [START_REF] Flacco | Control of redundant robots under hard joint constraints: Saturation in the null space[END_REF]. In particular, [START_REF] Flacco | Control of redundant robots under hard joint constraints: Saturation in the null space[END_REF] solves the inverse kinematics of redundant manipulators as a Quadratic Program (QP) where a scalar variable, which multiplies the current task velocity, acts as a scaling factor.

Recently, [START_REF] Faroni | Predictive inverse kinematics for redundant manipulators with task scaling and kinematic constraints[END_REF] improved task scaling for redundant manipulators by means of a Model Predictive Control (MPC) approach: the scaling principle described in [START_REF] Flacco | Control of redundant robots under hard joint constraints: Saturation in the null space[END_REF] is applied along the predictive horizon and this gives significant improvements of the average scaling and the deformation of the path.

In this work, we exploit the predictive method [START_REF] Faroni | Predictive inverse kinematics for redundant manipulators with task scaling and kinematic constraints[END_REF] to build an HRC-MPC framework. Such framework lies between the planning and the control layers most robot architectures realize. Given that trajectory planners typically output a collisionfree joint-space trajectory expressed as a sequence of positions and velocities with the corresponding timestamps (instead of parametric curves and timing laws), an interpolator is here implemented to provide a parametrized desired motion, which is then converted into the Cartesian space. The nominal Cartesian motion is then given as input to the MPC algorithm [START_REF] Faroni | Predictive inverse kinematics for redundant manipulators with task scaling and kinematic constraints[END_REF], which computes the scaled inverse kinematics and gives the result as reference to the joint controller. The MPC method implements a Stack of Tasks (SoT) (see also [START_REF] Escande | Hierarchical quadratic programming: Fast online humanoid-robot motion generation[END_REF], [START_REF] Kanoun | Kinematic control of redundant manipulators: generalizing the task priority framework to inequality tasks[END_REF]) such that the robot should, in order of priority: i) follow the nominal Cartesian task (decomposed in its geometrical and timing part thanks to the scaling); ii) maximize the distance from the operator when closer than a certain threshold; iii) follow the original joint-space trajectory (which is collisionfree with respect to static obstacles). Furthermore, the original scaling method is slightly modified: the scaling reference is not constant anymore, but changes based on a safety function in the human-robot relative distance and velocity. In this way, the speed of execution automatically decreases proportionally to the risk of a collision. Preliminary experiments on a 7-degreeof-freedom platform prove the validness of the approach.

II. PRELIMINARIES

We briefly recall the predictive inverse kinematics and task scaling method [START_REF] Faroni | Predictive inverse kinematics for redundant manipulators with task scaling and kinematic constraints[END_REF], which is the core of the proposed framework. Consider an n-degree-of-freedom manipulator and denote with q, q, q ∈ R n its joint configuration, velocity, and acceleration vectors respectively. The robot is required to perform a primary task x d (t) ∈ R m , m < n, in the Cartesian space, such that f 0 (q(t)) = x d (t) ∀ t, where f 0 is the forward kinematic function of the task. The task is considered at differential level and implements a Closed Loop Inverse Kinematics (CLIK) scheme. A task scaling factor ṡ ∈ [0, 1] is introduced to slow down the execution of the task if needed (e.g., when the desired motion is too demanding for the physical capability of the robot). The primary task can be therefore written as:

J 0 (q) q + Ke p -x (s) ṡ = 0 (1)
where J 0 ∈ R m×n is the task Jacobian, x := dx/ds, K ∈ R m is a positive-definite (usually diagonal) gain matrix, and the task position error e p id defined as e p := x d (s)f 0 (q) (computation of e p with different orientation descriptions is detailed in [START_REF] Caccavale | The role of Euler parameters in robot control[END_REF], [START_REF] Roveda | Highaccuracy robotized industrial assembly task control schema with force overshoots avoidance[END_REF]). Scaling variable ṡ allows the decomposition of the geometrical and the timing parts of the task. Indeed, (1) represents the imposition of the desired geometrical path, while the timing law performed by the robot resembles the nominal one as much as ṡ is close to 1.

Consider now a sequence of secondary tasks in the form E i q + g i = 0. The planner should compute the optimal joint variables to: i) minimize the path error of the Cartesian task; ii) minimize the deviation with respect to the nominal timing law; and iii) minimize the deviation with respect to the secondary tasks (according to their priority). The method in [START_REF] Faroni | Predictive inverse kinematics for redundant manipulators with task scaling and kinematic constraints[END_REF] does so by considering the system and the tasks at p time instants along a given predictive horizon. At each time k, this results in a lexicographic optimization problem as follows:

lex min q, ṡ {w 1 , . . . , w b } subject to q ≤ q k+i ≤ q ∀i = 1, . . . , p q ≤ qk+i ≤ q ∀i = 1, . . . , p q ≤ qk+i ≤ q ∀i = 0, . . . , p -1 q k+1 = q k + T qk + 0.5T 2 qk qk+1 = qk + T qk (2)
where q, q, q ∈ R n and q, q, q ∈ R n are the lower and upper limits of the joint configuration, velocity, and acceleration respectively, and w 1 , . . . , w b , b ∈ N, are the desired tasks (in order of decreasing priority), which are equal to:

w 1 = p i=1 J 0 (q k+i ) qk+i + Ke p,k -ṡk+i x (s k+i ) 2 , ( 3
)
w 2 = p i=1 ṡref -ṡk+i 2 with ṡref = 1, (4)
w j = p i=1 E j qk+i + g j 2 ∀ j = 3, . . . , b. ( 5
)
Feasibility of (2) with simultaneous constraints on position, velocity, acceleration and/or torque is treated in details in [START_REF] Faroni | Viability and feasibility of constrained kinematic control of manipulators[END_REF].

In brief, ( 2) is guaranteed to be feasible for all possible states if viability constraints are added to [START_REF] Kulić | Real-time safety for human-robot interaction[END_REF]. The derivation of such constraints in terms of linear inequalities is also given in [START_REF] Faroni | Viability and feasibility of constrained kinematic control of manipulators[END_REF]. Problem ( 2) is solved at each cycle time and the joint variables corresponding to the first time instant are given as reference to the robot controller and the procedure is then repeated. It is possible to notice that w 1 is nonlinear in the optimization vector as the Jacobians nonlinearly depend on the joint variables. The method in [START_REF] Faroni | Predictive inverse kinematics for redundant manipulators with task scaling and kinematic constraints[END_REF] linearizes the task at each cycle k by using the solution obtained at the previous cycle k -1 to compute a prediction of the joint configurations q k+i . This prediction is then used to compute the Jacobians at future time instants, and, in this way, w 1 becomes a quadratic cost function. This strategy can be adopted for nonlinear secondary tasks as well. In this way, Problem (2) becomes a hierarchical QP, which can be solved in real time. Finally, input blocking is adopted to reduce the computational burden of the online optimization (see also [START_REF] Faroni | Fast MPC with staircase parametrization of the inputs: Continuous Input Blocking[END_REF] for details).

III. PROPOSED FRAMEWORK

The proposed framework exploits the features of the method in [START_REF] Faroni | Predictive inverse kinematics for redundant manipulators with task scaling and kinematic constraints[END_REF] to cope with the presence of an operator in the robot workspace. The aim is to perform a given primary task at best, exploiting the redundancy to maximize the distance between the robot and the operator and slowing down the execution of the task depending on such distance. As shown in Figure 1, the planner is inserted as an intermediate layer between an existing offline trajectory planner and the robot controller. The inputs to the planner consists in: i) a nominal trajectory, coming from the higher-level offline planner; and ii) information about the human position in the workspace (typically provided by a vision system). The outputs are the joint position/velocity references q, q to be given to the robot controller. The offline planner is typically in charge of finding a collisionfree trajectory by taking into account the static obstacles in the workspace. From a practical perspective, the output of the offline trajectory planner consists in a sequence of joint position/velocities, due to the collision-check procedure, which is carried out in the robot configuration space. We therefore denote with q d (s) ∈ R n the nominal trajectory. This trajectory is collision-free with respect to the static obstacles, but does not take into account the possible human presence (which will be handled by the online MPC planner).

A. Stack of tasks for human-robot distance maximization

The proposed framework maximizes the distance between the human and the robot, while preserving the robot primary task. This is possible thanks to a smart exploitation of the robot kinematic redundancy. Moreover, deviating the least from the original joint-space trajectory is a desirable behavior, as such trajectory is known to be collision-free with respect to static obstacles. Assume the human position provided by the vision system refers to the robot base frame and is denoted with x obs ∈ R 3 , and l points of interest on the robot are considered, and denote with f r (q) and J r (q) ∀ r = 1, . . . , l the forward kinematic functions and the linear part of the Jacobians of those points with respect to the robot base. Referring to (2), the stack of tasks is composed of:

• The primary Cartesian task w 1 , obtained by mapping the joint-space desired motion as:

x d (s) = f 0 (q d (s)), (6) x d (s) = J 0 (q d (s)) q d (s). (7)
(Notice that it is possible to select the task axis of interest by selecting just the corresponding rows in f 0 and J 0 .)

• A clearance task, defined as:

w 3 = p i=1 l r=1
J r (q k+i ) qk+iκ r f r (q k+i )x obs 2 (8) where κ r ∈ R + are positive gains. This task is activated only when min r f r (q k )x obs,k < d safe , where d safe ∈ R + is a safety distance threshold.

• A joint-space trajectory-following task given by:

w 4 = p i=1 q k+i -q d (s k+i ) 2 . ( 9
)
The resulting planner therefore aims to: i) follow at best the desired Cartesian task; ii) maximize the human-robot distance if the operator is closer than a given threshold; iii) following the original joint-space motion (which is known to be collisionfree with respect to static obstacles). Notice that in case the human is not within d safe , the inverse kinematics solution is forced to the original joint-space trajectory, whereas, in case the human-robot distance is smaller than d safe , priority is given to avoiding the operator.

B. Safety velocity override through modification of the scaling reference

The second feature of the MPC framework is the possibility of slowing down the task execution according to the humanrobot relative distance and/or velocity. This is straightforwardly implementable by exploiting the structure of the MPC planner. As a matter of fact, the value of ṡref in (4) represents the percentage of the nominal speed at which the task should be executed. In [START_REF] Faroni | Predictive inverse kinematics for redundant manipulators with task scaling and kinematic constraints[END_REF], ṡref is always equal to 1, in order to follow the nominal timing law at best. However, by modifying ṡref based on a safety rationale, it is possible to slow down the robot without losing the path tracking of the primary task. In particular, ṡref is modified according to the following function:

ṡref = h(d, ḋ ) if d < d s 1 otherwise (10)
where

d = f 0 (q k ) -x obs , h is a monotonic decreasing function such that h(d stop , ḋ ) = 0, h(d s , ḋ ) = 1, d s ∈ R +
is the safety-scaling activation distance, and d stop ∈ R + is the distance that requires the stop of the robot. The overall working scheme of the method is shown in Figure 1.

IV. SOFTWARE IMPLEMENTATION

The proposed method has been implemented in ROS (Robot Operating System): the MPC planner has been implemented in ROS-control as an intermediate controller between MoveIt! and the PID-based controller of the robot joints. All MoveIt! planners can be therefore used interchangeably to generate the nominal trajectory, which then feeds the MPC planner. In these experiments, STOMP [START_REF] Kalakrishnan | STOMP: Stochastic trajectory optimization for motion planning[END_REF] has been used as high-level planner.

It is worth pointing out that the MPC planner is based on the assumption that the desired trajectory is parametrized with respect to the curvilinear abscissa s that represents the time of the nominal trajectory. However, most state-of-the-art planners generate as output a list of timed waypoints instead of a parametric curve. To cope with this, an interpolator has been devised. The algorithm works as follows: at each cycle, it searches for the interval of the nominal time within which the current values of s k+i , i = 1, . . . , p, lie; then, it performs a polynomial interpolation of the joint positions and velocities of the nominal trajectory and passes them to the MPC planner. The MPC planner, in turn, returns to the interpolator the updated value of the curvilinear abscissa.

The low-level controller of the joints consists in a cascade of a proportional position controller implemented in ROS as primary controller, and the manufacturer velocity built-in controller. The MPC planner gives as output the reference joint position which feeds the position controller and the reference joint velocity, which is given as a feed-forward term.

V. RESULTS

The proposed framework has been tested on a 7-degreeof-freedom experimental platform composed of a 6-degreeof-freedom Universal Robot UR5 manipulator mounted on a linear guide. The limits of the system are set as follows: q = ( 1.75, π, π, π, π, π, π ) rad, q = ( 0. 0, -π, -π, -π, -π, -π, -π ) rad, q = -q = ( 0.5, π, π, π, 3.2, 3.2, 3.2 ) rad/s, q = -q = ( 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0 ) rad/s 2 .

Clearance task (8) considers the robot elbow as point of interest. A vision system composed of four Mesa Swissranger 4000 Time-of-Fly cameras provides the position information of the human in the workspace. Function h in [START_REF] Escande | Hierarchical quadratic programming: Fast online humanoid-robot motion generation[END_REF] Fig. 2. Experimental results for a pick-and-place task.

preliminary approach, the human position is assumed to be constant along the predictive horizon, that is, at each time k, x obs (k + i) = x obs (k) ∀i = 1, ..., p. Further developments should take into account a model to predict the human motion during the predictive horizon as, for example, in [START_REF] Mainprice | Goal set inverse optimal control and iterative replanning for predicting human reaching motions in shared workspaces[END_REF], [START_REF] Bajcsy | A scalable framework for realtime multi-robot, multi-human collision avoidance[END_REF]. As an illustrative example, we consider a repetitive pickand-place task back and forth from a point P A to a point P B corresponding respectively to the joint configurations q A = (0.2, -1.6, -1.9, -1.5, -1.3, 1.6, 0.0) rad and q B = (0.6, -2.0, -2.0, -1.4, -1.3, 1.6, 0.0) rad. The task considers the Cartesian position of the end-effector and its rotations around the x and y axis, while the rotation around the z axis (orthogonal to the ground) is let free. The primary task has therefore m = 5, and the redundant degrees of freedom of the system are equal to nm = 2. The experiment consists in the robot executing the task repetitively while a person moves in its proximity. The video of the test execution is available at the following link 1 . Figure 2 shows the results for 70 of task execution. The top plot shows the distance between the robot end-effector and the human (blue line) and the scaling factor ṡ (black line). When the distance is below the threshold d s (dashed green line), the scaling factor decreases to reduce the speed of the robot. If the distance reaches the safety value d stop the robot should stop and, as a matter of fact, ṡ decreases to zero (at about 45 seconds in the plot). The bottom plot shows the distance between the robot point of interest (elbow) and the human, in the case that the clearance strategy is activated (black line) and in the case it is not (blue line). Dotted orange line is the clearance activation threshold d safe . Results show that the distance from the operator is always larger when the clearance strategy is used. This is visible especially when the scaling is not particularly heavy: when ṡ decreases significantly, then the redundancy is exploited mainly to accomplish the primary task and the difference between the two cases (in terms of distance from the robot elbow to the human) decreases.

VI. CONCLUSIONS

We have proposed the proof of concept of an MPC framework for HRC and validated it through experiments on an 1 youtu.be/JiQ9yobm1Is industrial manipulator. Future works will focus on the use of models for the prediction of the human motion and the derivation of a general rationale to derive the safety scaling function and thresholds.

Fig. 1 .

 1 Fig. 1. Illustrative scheme of the proposed HRC-MPC planner.

  is defined as a third-order polynomial ind such that h(d s ) = 1, h(d stop ) = 0, dh dd (d s ) = dh dd (d stop ) = 0, d s = 1.4 m, d stop = 0.3 m.The sampling period of the MPC planner is equal to T = 8 ms; the predictive horizon is equal to 0.5 s and the number of time-instants considered in the horizon is p = 5. As a

ACKNOWLEDGMENT

The research leading to these results was partially funded by the European Union H2020-ICT-2017-1 -Pickplace: Flexible, safe and dependable robotic part handling in industrial environment (grant agreement: 780488).


Marco Faroni
email: marco.faroni@stiima.cnr.it

Roberto Pagani
email: r.pagani001@unibs.it

Giovanni Legnani
email: giovanni.legnani@unibs.it

Real-time trajectory scaling for robot manipulators

published or not. The documents may come

I. INTRODUCTION

Industrial robotics is facing many new challenges nowadays. Most of times, robots needs to be endowed with some degree of autonomy to adapt their behavior to the state of the environment and other agents. It is the case, for example, of Human Robot Collaboration (HRC) applications, where the robot has to take into account the operator presence to avoid/limit collisions, reduce interference, and maximize the process throughput. HRC requires a change of paradigm with respect to classic industrial robot applications: humanrobot interaction has to be considered at different levels (safety, planning, control, scheduling, sociology) and an integrated approach is necessary to deploy an effective HRC framework. Among all the aforementioned aspects, it is clear that a fundamental requirements for such dynamic applications is the ability of the robot to change its motion at runtime. Such ability is of great importance as it allows the robot to react immediately to the current state of the other agents (e.g., humans and other robots). This directly affects the safety of the interaction but also the maximization of the throughput, as an optimized motion re-planning might reduce or avoid robot stops and overly conservative slowdowns. Online modification of the robot motion can be performed mainly in two different ways: by modifying the whole trajectory that the robot has to follow, or by modifying only the velocity profile but keeping the original path. The first option is typically more complex as it requires to run pathplanning algorithms and to check for collisions at run-time. The second option is often preferred because it only requires to slow down the execution of the trajectory along the same path. It therefore does not require to devise a new collisionfree path and it is way lighter from the computational point of view.

Speed modulation is also more and more exploited to ensure safety during human-robot interaction. In particular, two of the four safety functions defined by the collaborative robot safety standard ISO/TS 15066:2016 [START_REF]:2016 Robots and robotic devices -Collaborative robots[END_REF] (namely, speed and separation monitoring and power force limitation) can be implemented by means of the online reduction of the robot speed according to the constraints defined by the standard. Safety speed modulation has typically been addressed in a static way. The workspace is divided in danger zones based on a risk assessment analysis that considers the reachability of the robot and the operator. Then, if an operator enters the workspace, the robot is slowed down according to the risk level of the zone accessed by the human. However, such approach usually leads to overly conservative slowdowns and stops of the robot, with consequent decay of the process throughput and of the smoothness of the collaboration. Recent approaches tend to modulate the robot speed dynamically, based on the human-robot distance to satisfy the minimum protective distance criterion or the maximum impact force in an optimized manner [START_REF] Marvel | Implementing speed and separation monitoring in collaborative robot workcells[END_REF], [START_REF] Byner | Dynamic speed and monitoring collaborative robot and performance[END_REF]. Such approach might benefit from the use of optimized speedmodulation algorithms that take into account also the robot physical limits.

A. Related works

Recently, speed modulation algorithms for safe HRC goes toward the use of online trajectory scaling methods because the speed modulation can be optimized based on the human-robot relative distance (and velocity). This avoids overly conservative motion that would jeopardize the fruitfulness of the HRC. Online trajectory scaling methods deform the original timing law to satisfy the robot constraints. From a practical perspective, the advantage of online scaling is that the nominal motion can be devised without rigorously taking the robot limits into account, as the online algorithm will account for them at runtime. The offline planning can be therefore made simpler and less conservative, without compromising the quality of the process. Trajectory scaling algorithms are usually based upon the optimization of a performance criterion (e.g., minimum time), whereas physical and safety-related limits are modeled as optimization constraints. The resulting constrained optimization problem is then solved at each cycle to find the new velocity profile to be given to the robot. As a general approach, trajectory scaling algorithms exploit the path-velocity decomposition of the task and they use the parametrization variable of the path curve as an additional degree of freedom to meet the robot constraints. The input of the algorithm is the desired motion to be followed (in the Cartesian or the joint space) and the output is the scaled trajectory (typically the joint positions and velocities given to the robot low-level controller).

Several approaches have been proposed in the literature, including feedback techniques [START_REF] Dahl | Torque-limited path following by online trajectory time scaling[END_REF], [START_REF] Lo Bianco | Online trajectory scaling for manipulators subject to high-order kinematic and dynamic constraints[END_REF], look-ahead methods [START_REF] Faroni | Predictive joint trajectory scaling for manipulators with kinodynamic constraints[END_REF], [START_REF] Faulwasser | Implementation of nonlinear model predictive path-following control for an industrial robot[END_REF], and methods specific for redundant robots [START_REF] Flacco | Control of redundant robots under hard joint constraints: Saturation in the null space[END_REF], [START_REF] Faroni | Predictive inverse kinematics for redundant manipulators with task scaling and kinematic constraints[END_REF]. Safety-oriented applications for HRC were proposed in [START_REF] Zanchettin | Safety in human-robot collaborative manufacturing environments: Metrics and control[END_REF], [START_REF] Lippi | Safety in human-multi robot collaborative scenarios: a trajectory scaling approach[END_REF], [START_REF] Faroni | An MPC framework for online motion planning in human-robot collaborative tasks[END_REF]. All the aforementioned methods have pros and cons:

• Feedback methods (also referred to as local), such as [START_REF] Dahl | Torque-limited path following by online trajectory time scaling[END_REF], [START_REF] Lo Bianco | Online trajectory scaling for manipulators subject to high-order kinematic and dynamic constraints[END_REF], [START_REF] Flacco | Control of redundant robots under hard joint constraints: Saturation in the null space[END_REF], have low computational burdens, but they do not take into account future information about the tasks, the robot constraints, and possible predictions of the environment/human states. This results in poor solutions in terms of process throughput and quality (i.e., the scaling are not able to avoid path deformation). • Look-ahead/predictive techniques, such as [START_REF] Faroni | Predictive joint trajectory scaling for manipulators with kinodynamic constraints[END_REF], [START_REF] Faulwasser | Implementation of nonlinear model predictive path-following control for an industrial robot[END_REF], [START_REF] Faroni | Predictive inverse kinematics for redundant manipulators with task scaling and kinematic constraints[END_REF], give much better solutions, but have higher computational burdens. In particular, they make use of nonlinear and constrained mathematical programming.

To deal with sampling periods in the order of few milliseconds, they use approximated solutions such as linearization of constraints and cost functions, and down-sampling. However, their implementation might be troublesome on commercial hardware both from the software and hardware point of view due to the lack of advanced mathematical tools and limited computational resources.

• All trajectory scaling methods slow down the nominal trajectory when it is too demanding with respect to the robot physical limits or when it would violate safety or technological requirements. This results in a delay with respect to the nominal task. In some cases, such delay can be recovered by speeding up the remainder of the task. However, most of the algorithms in the literature do not show any delay-recovering feature, except for [START_REF] Lo Bianco | Online trajectory scaling for manipulators subject to high-order kinematic and dynamic constraints[END_REF] and [START_REF] Lippi | Safety in human-multi robot collaborative scenarios: a trajectory scaling approach[END_REF]. Nonetheless, also in these cases, the recovering of the delay might lead to jerky motion and overshoots due to difficulties in the tuning phase.

B. Contribution

This paper presents an online trajectory scaling method with the following novelties:

• It formulates a delay-recovering scheme as a standard control loop that can be applied to any trajectory scaling method as an outer control loop. It guarantees ease of implementation, intuitive tuning and it allows using common control strategies such as PID controllers to improve the control performance. • It implements an additional inner loop that smooths steep changes of the scaled velocity profile. This results in a dramatic improvement of the path-following performance compared to standard feedback methods. Moreover, the method is tested on an industrial robot and its commercial controller (namely, the 6-axis robot Efort model ER3A C-60 with controller Robox RP-1) to prove the suitability of the approach on industrial equipment. The experimental results show that the integration of scaling methods in the existing control architecture can improve the process throughput by reducing the cycle time without worsening the quality of the task. Finally, results show that the proposed scheme outperforms state-of-the-art feedback techniques without increasing the computational burden.

II. PRELIMINARIES

A. Online trajectory scaling

Consider a curve x d in the Cartesian space, parametrized with respect to the scalar variable γ such that:

x d : R → R 6 , γ → x d (γ). (1)
The trend of γ with respect to time defines the timing law of the trajectory. Often, the timing law is given due to technological requirements (for example, constant-speed traits may be needed in the process), but it might be relaxed to ensure safety or to preserve the quality of the process. Feedback trajectory scaling algorithms allow the relaxation of the timing law by using γ as a control variable. In particular, given a velocity profile γref and denoting with q, q, and q the robot joint configuration, velocity, and acceleration vectors, the algorithm solves the following control problem at each time instant t 0 :

minimize q,v x d γ(t 0 ) -f (q) 2 Q + u(t 0 ) -v 2 R (2)
subject to γ = v and the robot limitations, for example:

q min ≤ q ≤ q max (3) -qmax ≤ q ≤ qmax (4) -q max ≤ q ≤ qmax (5)
where u = γref , f is the forward kinematic function of the robot, Q and R are weighting matrices, x 2 Q = x T Qx, q min and q max are the joint mechanical limits, qmax is the maximum joint velocity vector, and qmax is the maximum joint acceleration vector. Additional constraints can be added to account for safety limits [START_REF] Zanchettin | Safety in human-robot collaborative manufacturing environments: Metrics and control[END_REF]. Notice that (2) only concerns the trajectory and the robot state at time t 0 . A more advanced approach would consider also the cost (2) and the constraints (3) in the future instants, as in [START_REF] Faroni | Predictive joint trajectory scaling for manipulators with kinodynamic constraints[END_REF], [START_REF] Faulwasser | Implementation of nonlinear model predictive path-following control for an industrial robot[END_REF], [START_REF] Faroni | Predictive inverse kinematics for redundant manipulators with task scaling and kinematic constraints[END_REF].

B. Issues and illustrative examples

Feedback trajectory scaling algorithms suffer from large path deformation when the nominal timing law has steep acceleration and deceleration profiles. The reason is that the scaling takes action when the deceleration phase has already begun and it is therefore too late to avoid overshoots and deviations with respect to the nominal path, given the hard deceleration limits of the joints. As an illustrative example, consider a 6-degree-of-freedom Efort ER3A C-60 robot that performs a circular path in the Cartesian space. Referring to Figure 1b, the robot moves counter-clockwise from point (0.5,0) to (0.3,0), it stops, and then moves from (0.3,0) to (0.5,0), counter-clockwise. The nominal timing law would exceed the acceleration bounds of the robot (Figure 1d) in the first movement. This results in the saturation of the joint acceleration (Figure 1d) and in a significant deformation of the path when the robot is supposed to stop in (0.3,0) (see Figure 1b). Figure 1a shows the ratio between the scaled velocity and the nominal velocity computed by the scaling algorithm. It is possible to see that the algorithm is not able to prevent the steep deceleration that occurs in the highlighted area and thus lead to a significant path-following error.

Another issue of many trajectory scaling methods is that they do not recover the delay given by the slowdown. In the example, the robot might recover the delay in the second half of the circle by speeding up the nominal timing law (i.e., by computing a ratio greater than one in Figure 1a), but the scaling algorithm does not implement such feature.

III. PROPOSED ALGORITHM

This section addresses the issues presented in Section II. First, a closed-loop controller is proposed to recover from the delay introduced by the scaling of the trajectory. Then, the proposed scheme is modified by adding an inner integral control loop (named saturation fly-wheel to improve the pathfollowing performance of the algorithm.

A. Delay-recovering control loop

The delay-recovering feature can be implemented as an external control loop, where the controlled variable is the parameter γ, the reference signal is γ ref , and the control error is therefore given by e γ = γ ref -γ. Finally, γref can be seen as a feedforward action: in the case no slowdowns occur, the control input is just γref ; when the scaling is activated, the external loop increases the control action to recover the delay. The overall control scheme is shown in Figure 2, where the online control problem (2)-( 3) is represented as a nonlinear saturation block between u and γ.

B. Saturation fly-wheel block

Look-ahead scaling techniques show significant improvements compared to feedback methods. However, as also suggested in [START_REF] Lo Bianco | Techniques to preserve the stability of a trajectory scaling algorithm[END_REF], using the past history of the desired trajectory and the behavior of the algorithm might give good results in preserving the path feasibility. In [START_REF] Lo Bianco | Techniques to preserve the stability of a trajectory scaling algorithm[END_REF], heuristic thresholds were set to slow down the trajectory in advance, based upon the trend of γ and its derivatives. However, the tuning of such thresholds is cumbersome and their effectiveness varies from case to case. Moreover, the delay-recovering scheme in Figure 2 introduces an additional issue. When the optimal control problem returns a constrained solution, the control system behaves like a saturation block. Given that γ ref is monotonically increasing with respect to time, the control error and the control variable might increase unboundedly. When the trajectory exits the slowdown phase, the large control error drives the system to saturation. To avoid this, the control error should be bounded to a value that drives the γref close to the saturated value of γ.

We propose to insert an inner control loop composed of an integral system with gain K f . As shown in Figure 3, the control input is now computed as:

u = γref + C(e γ ) + u f ( 6
)
where C is the delay-recovering control function and u f = K f t0 0 ( γ -u) dt. This new control loop stabilizes γref to a bounded value. The higher K f , the faster γref tracks γ. A forgetting factor F f is also used to avoid the influence of outdated data on the current iteration. By using a zero-order discrete time approximation with sampling period T , u F becomes:

u f = K f T F f i=1 γ(t 0 -iT ) -u(t 0 -iT ) (7)
The effect of this additional control loop is to keep γref close to γ during saturation and to accumulate a "saturation inertia" (from which the name saturation fly-wheel) that reduces the growth of γref that occurs when the saturation ends.

IV. RESULTS

Simulation and experimental tests have been performed on a 6-degree-of-freedom Efort robot (model ER3A-C60) installed at the Industrial Robotics Laboratory of the University of Brescia. It has a total weight of 27 kg and a payload of 3 kg. Figure 4 shows the mechanical structure of the manipulator and its controller. The robot joints limits, reported below, have been obtained from the datasheet To generate the nominal trajectory, we use the motion planner embedded in the robot controller. The planner tends to compute conservative trajectories with respect to the limits of the actuators. The reason is that an optimal minimumtime planning would result in a complex mathematical programming problem and industrial planners usually use empirical methods to avoid such heavy computation.

To evaluate the algorithms performances in preserving the desired path, the nominal trajectory is made more demanding by shrinking the execution time computed by the robot planner by a factor λ < 1. In this way, the maximum velocity and acceleration values of the trajectories are increased as follows:

v m2 = v m1 /λ, a m2 = a m1 /λ 2 (9)
where v m1 and a m1 are the maximum velocity and acceleration values of the original trajectory and v m2 and a m2 are the maximum velocity and acceleration values of the new trajectory. In this way it is possible to generate more demanding trajectory that are expected to exceed the robot limits if the scaling algorithms are not implemented.

As regards the online trajectory scaling, two algorithms have been tested for comparison:

• The approach proposed in the previous section with the Delay-Recovering loop and the saturation Fly-wheel block. The method will be also referred to as DRF.

• The feedback method (also referred to as FB) based on the solution of ( 2), (3). This is equivalent to the method proposed in [START_REF] Flacco | Control of redundant robots under hard joint constraints: Saturation in the null space[END_REF] with joint acceleration limits added as described in [START_REF] Cheng | Resolving manipulator redundancy under inequality constraints[END_REF]. As regard the DRF method, a simple proportional controller C = Ke γ with K = 0.1 has been used. The integral gain and forgetting factor of the saturation fly-wheel have been set to K f = 100 and F f = 125.

A. Simulations

Simulations have been performed on a constrained kinematic model of the robot. The desired task consists in the interpolation of five poses in the Cartesian space through successive circular arcs. The chosen poses are:

X 1 = ( 0.5 m, 0.0 m, 0.5 m, 5 • , -175 • , 5 • ) X 2 = ( 0.4 m, 0.2 m, 0.5 m, 5 • , -175 • , 5 • ) X 3 = ( 0.3 m, 0.0 m, 0.5 m, 5 • , -175 • , 5 • ) X 4 = ( 0.4 m, -0.2 m, 0.5 m, 5 • , -175 • , 5 • ) X 5 = X 1 (10)
where the first three terms of the vectors represent the (x, y, z) position of the end effector and the the last three terms represent the orientation expressed in XYZ Euler angles. The robot is programmed in such a way that it starts in X 1 , it moves through X 2 and then stops in X 3 . Then, it moves from X 3 through X 4 and finally stops in X 5 .

Results compare the maximum and mean path-following errors (e max and e mean ) and the average slowdown due to the algorithms. Position path-following error is computed as the Euclidean distance between the end-effector position and the closest point on the desired path. Orientation error is the absolute value of the angle between the end-effector reference frame and the desired reference frame. The average slowdown is the ratio between the time t real taken by the robot to perform the whole task and the desired execution time t end .

Results for several values of the nominal total time t end are shown in Tables I, II, and III. The less demanding case (t end = 1.45 s) does not activate the scaling mechanism and it is therefore taken as reference to evaluate the following tests. It is possible to see that as the task gets more demanding (i.e., smaller values of t end ), the mean and maximum pathfollowing errors tend to increase. However, the error obtained by DRF is of the same order of magnitude of the base case, while the FB method gives significantly larger error (up to two order of magnitude larger than the reference case). This is clear also from Figure 5, which shows the comparison of the performed path for three different values of t end . The paths performed by FB (red lines) show a significant deviation with respect to the nominal path, especially in the breaking phase. On the contrary, DRF is able to preserve the nominal path also for small values of t end . Moreover, Table III shows that the delay-recovering method enhances the performance of the algorithm from the point of view of the total execution time. As a matter of fact, the ratio between the real execution time of the task t real and the nominal time t end is much closer to 1 when DRF is used. Finally, Figure 6 shows the positions, velocities, and accelerations of the first, second, and third joints for the case t end = 0.85 s. It is possible to see that the nominal trajectory is expected to exceed the velocity and acceleration limits, but the scaling algorithms adapt the motion not to overpass them. In general, DRF gives smoother trends of the joint variables and a shorter execution time.

B. Experiments

The desired task consists in the pentagonal path given by the linear interpolation of the following six poses in the Cartesian space: tested, namely: t end = 2.2 s, t end = 1.6 s, and t end = 1.0 s. A video of the experiments can be found in the enclosed material. The first case is the less demanding and does not activate the scaling mechanism. The successive cases are more and more demanding and require the activation of the scaling algorithms.

Figure 7 shows the nominal path and the paths performed by the two methods. Moreover, Figure 8 shows a graphical reconstruction of the performed paths from the aforementioned video 1 . As expected, for the case t end = 2.2 s does not activate the scaling, the performed paths do not differ from the nominal one (Figures 7a and8a). As soon as the trajectories get more demanding the scaling algorithms are activated: FB method shows a visible path-following error, while DRF is able to preserve the geometry of the path (Figures 7b and8b). Also in the extreme case t end = 1.0 s, DRF still shows good path-following performance, while FB results in a completely deformed path (Figures 7c and8c).

V. CONCLUSIONS

The paper presented a feedback trajectory scaling algorithm for industrial robot manipulators. The proposed method can be applied to any trajectory scaling algorithms to improve the execution time and the path-following performance of the algorithm. Simulation and experimental results showed the potentiality of the method on a 6-degreeof-freedom robot. It is worth stressing that the ease of implementation and the light computational burden allow the implementation on commercial industrial hardware, as shown in the experiments.

ACKNOWLEDGMENT

The research leading to these results was partially funded by the European Union H2020-ICT-2017-1 -Pickplace: Flexible, safe and dependable robotic part handling in industrial environment (grant agreement: 780488).

Fig. 1 :

 1 Fig. 1: Issues on feedback trajectory scaling algorithms. (a) Ratio between the scaled and the nominal velocity profile. (b) Path performed by the robot. Dashed blue: nominal path; solid black: performed path. (c) Second joint's velocity. (d) Second joint's acceleration. Dashed blue: joint limits; dash-dotted gray: nominal trajectory; solid black: performed trajectory. The red areas highligths the braking phase.

Fig. 2 :

 2 Fig. 2: Proposed delay-recovering loop scheme.

Fig. 3 :

 3 Fig. 3: Proposed scheme with delay-recovering loop and saturation fly-wheel block.

Fig. 4 :

 4 Fig. 4: Robot Efort ER3A C-60 with controller Robox RP-1

X 1 =Fig. 5 : 3 Fig. 6 :

 1536 Fig. 5: Simulation results: performed paths in plain xy. Dashed blue: nominal path; solid black: DRF method; solid red: FB method (solid black and dashed blue are often indistinguishable because of overlapping).

Fig. 7 :

 7 Fig. 7: Experimental results: performed paths in plain yz. Dashed blue: nominal path; solid black: DRF method; solid red: FB method (solid black and dashed blue are often indistinguishable because of overlapping).

Fig. 8 :

 8 Fig. 8: Experimental results: graphical reconstruction of the performed paths from the enclosed video.

TABLE I :

 I Translation error for the circular task.

	t end [s]	emax [m]		emean [m]
		DRF	FB	DRF	FB
	1.45	2.70 • 10 -4 2.91 • 10 -4 9.08 • 10 -5 9.37 • 10 -5
	1.25	3.68 • 10 -4 3.77 • 10 -3 1.19 • 10 -4 5.59 • 10 -4
	1.05	4.60 • 10 -4 1.43 • 10 -2 1.58 • 10 -4 2.89 • 10 -3
	0.85	5.89 • 10 -4 2.44 • 10 -2 2.18 • 10 -4 6.06 • 10 -3
	0.65	7.92 • 10 -4 2.54 • 10 -2 3.26 • 10 -4 6.53 • 10 -3

TABLE II :

 II Angular error for the circular task. 10 -5 1.72 • 10 -5 5.68 • 10 -6 5.92 • 10 -6 1.25 2.18 • 10 -5 2.89 • 10 -4 6.88 • 10 -6 3.82 • 10 -4 1.05 2.69 • 10 -5 1.01 • 10 -3 7.71 • 10 -6 2.01 • 10 -4 0.85 2.96 • 10 -5 1.87 • 10 -3 8.45 • 10 -6 4.17 • 10 -4 0.65 2.96 • 10 -4 1.99 • 10 -3 8.81 • 10 -6 4.45 • 10 -4

	t end [s]	emax [rad]		emean [rad]
		DRF	FB	DRF	FB
	1.45	1.65 •

TABLE III :

 III Ratio between the time taken to perform the trajectory and the nominal execution time t real /t end for the circular task.

	t end [s]	t real /t end
		DRF	FB
	1.45	1.022 1.003
	1.25	1.067 1.009
	1.05	1.198 1.312
	0.85	1.368 1.868
	0.65	1.714 2.400