Abstract

An enhanced inverse dynamics approach is here presented for feedforward control of underactuated multibody systems, such as mechanisms or robots where the number of independent actuators is smaller than the number of degrees of freedom. The method exploits the concept of partitioning the independent coordinates into actuated and unactuated ones (through a QR-decomposition) and of linearly combined output, to obtain the internal dynamics of the nonminimum-phase system and then to stabilize it through proper output redefinition. Then, the exact algebraic model of the actuated sub-system is inverted, leading to the desired control forces with just minor approximations and no need for pre-actuation. The effectiveness of the proposed approach is assessed by three numerical test cases, by comparing it with some meaningful benchmarks taken from the literature. Finally, experimental verification through an underactuated robotic arm with two degrees of freedom is performed.

1 Introduction

1.1 Motivations and State of the Art.

Precise trajectory tracking is a relevant research topic in the field of mechanisms, multibody systems, and robotics. To achieve it, controllers exploiting both feedforward (open-loop) and feedback (closed-loop) actions are usually adopted: the first contribution is aimed at ensuring faster responses with lower tracking errors and low feedback gains (and hence higher robustness margins); the second one is aimed at compensating for model-plant mismatches, at changing the dynamic properties (e.g., the eigenstructure [13]) and at ensuring disturbance rejection. As for feedforward, its implementation requires the computation of the inverse dynamic model of the system under investigation. In the case of fully actuated mechanisms and robots, this computation is usually straightforward and just relies on simple algebraic calculations. On the contrary, when the number of independent actuators is smaller than the number of degrees of freedom (DOF), i.e., underactuated multibody systems are considered, the computation of inverse dynamics is challenging and often relies on the solution of both algebraic and differential equations. Underactuation usually arises because of the presence of passive joints [46] or flexible links [79]. The explicit, algebraic solution of the inverse dynamics problem is possible if the system is differentially flat [10]. In differentially flat systems, inverse dynamics is solved through an algebraic model, and the control forces are algebraically specified by the required output trajectory. Therefore, no pre- and post-actuations are required. Flatness is a system property that is not straightforward to assess; i.e., it requires a lot of algebraic manipulations and finding a flat output definition is not trivial [11], since no systematic approach exists. Additionally, exploiting flatness in underactuated multibody systems imposes very smooth reference trajectories, usually with four continuous derivatives [12]. For example, up to ninth-degree polynomials are usually adopted in the literature. In contrast, high-degree polynomials are not widely adopted in motion planning of mechatronic systems because of large requirements of speed, acceleration (both peak and average) and hence of torque, power, and energy that make these motion profiles often unfeasible when considering limits of the components (in particular, motor and gearbox [1315]).

The difficulties in inverting the dynamic model of underactuated multibody systems are exacerbated for some definitions of desired output, such as in the case of noncolocation of actuators and controlled outputs [16], which leads to unstable internal dynamics. In the case of linear systems, for example, this is related to the presence of right half-plane zeros: by inverting the model to compute the suitable control forces to track the desired output trajectory, these zeros would become right half-plane poles, causing the divergence of the control actions. Generally speaking, with reference to both linear and nonlinear systems, the solution of the inverse dynamic problem of these so-called nonminimum-phase systems leads to unbounded solutions, unless noncausal inversion is adopted [17], or approximated causal solutions are sought [16].

To overcome these difficulties, and given the relevance of the topic in the field of motion control, several papers have been proposed in recent years. An inversion-based approach to exact nonlinear output tracking control is proposed in Ref. [17] where a feedback term is introduced to stabilize the system along the desired trajectory; the problem is solved by applying the Byrnes–Isidori regulator to a specific trajectory, introducing boundedness and integrability requirements. However, the solution is noncausal, i.e., the control forces begin before the starting of the trajectory, and therefore, this technique results to be not implementable through an online procedure. In Ref. [18], an extension of stable inversion to nonlinear time-varying systems is carried on, considering both minimum-phase and nonminimum-phase systems. This technique consists of linearizing the system dynamics and subsequently partitioning it into time-varying stable and unstable sub-systems, which are used to design time-varying filters that ensure a bounded inverse input-state trajectory. However, this approach is local to the time-varying path, and furthermore, it requires that internal dynamics varies slowly. An interesting analysis of the concept of approximated model inversion for nonminimum-phase systems is proposed in Ref. [19], with reference to linear systems. Three stable approximate model inversion techniques are examined: the nonminimum-phase zeros ignore (NPZ-Ignore), the zero-phase-error tracking controller (ZPETC), and the zero-magnitude-error tracking controller (ZMETC). Since the proper choice of one of these techniques highly depends on the system under investigation, this work also discusses how the position of the zeros can indicate the more effective technique to be used to maximize the performances. When dealing with nonlinear systems, an effective and simple approach is the output redefinition, i.e., the approximation of the desired output with a formulation that ensures a simpler problem solution and stable internal dynamics. This idea has been first introduced in the milestone paper [16] and then also exploited with a different formulation in Refs. [20] and [21]. In both the papers, an algebraic-differential scheme is adopted, where the differential part can be easily solved through a standard numerical scheme for integration of ODEs (ordinary differential equations), representing the internal dynamics. A remarkably different approach is proposed in Ref. [22], by handling dynamic models formulated either with ODEs or with DAEs (differential algebraic equations), and without requiring the explicit derivation of the internal dynamics model. In such a paper, inverse dynamics is formulated as an optimal control problem, and a noncausal solution is obtained.

1.2 Contributions of This Paper.

In this paper, a feedforward computation algorithm for nonminimum-phase underactuated multibody systems, modeled through ODEs, is proposed by exploiting and extending the idea of linearly combined output adopted in Refs. [16,20,21]. Compared to the usual formulation of such an approximation, a more general formulation of the linearly combined output is handled in this paper. The goal of such an output representation is to easily obtain the internal dynamics for stabilizing it and then to obtain a stable model inversion, without pre-actuation. The method includes a systematic approach to stabilize the unstable internal dynamics, by means of performing through proper output redefinition. The resulting differential scheme is solved through the forward dynamics of the stabilized internal dynamics, by exploiting any scheme for ODE numerical integration. Then, the approximated formulation of the controlled output is replaced by its actual nonlinear formulation (at the position, speed, and acceleration levels) to compute the commanded value of the actuated variables and to perform exact algebraic inversion of the dynamic model governing the sub-system made by the actuated coordinated. Since no output approximation is done in solving such an algebraic model, the proposed method provides an improvement compared to the existing methods: the approximation assumed through the linearly combined and redefined output is just used in the internal dynamics and hence causes small errors in a large variety of underactuated multibody and robotic systems.

Finally, to tackle different topologies of actuations, an approach for partitioning the model coordinates into actuated and unactuated ones is proposed, by exploiting the QR-decomposition of the input matrix, which allows for handling a large variety of underactuated systems.

The effectiveness of the method is proved through three test cases, aimed at highlighting different features of the proposed method and also by providing a fair comparison with several benchmarks.

Additionally, the experimental verification through a 2-DOF underactuated robotic arm is proposed, thus providing a further improvement of the literature which usually just provides numerical applications.

As a result, a comprehensive, and computationally simple, method for precise and accurate inverse dynamics is formulated, which can be applied to several underactuated systems, by improving the existing state of the art.

2 Method Description

2.1 Definitions.

Let us consider the dynamic model of a multibody system, in the presence of holonomic constraints and with n DOFs, formulated through a set of n ODEs
Mz(z)z¨+cz(z˙,z)+Kz(z)z=fz(z˙,z,t)+Bz(z)u
(1)

zRn is the vector of the independent generalized coordinates, Mz(z)Rn×n is the mass matrix, cz(z˙,z)Rn contains the Coriolis terms, Kz(z)Rn×n is the stiffness matrix, and fz(z˙,z,t)Rn are the external forces projected on the directions of z. t denotes the time; along the paper, the dependence on t is usually not written, unless the cases where it makes the comprehension clearer. The system is controlled through m < n independent control forces collected in vector uRm, and BzRn×m is the force distribution matrix, which is assumed to be full column-rank; such matrix can be dense since this paper will propose a technique to handle arbitrary topologies of Bz.

Since rank(Bz)=m<n, the system is said to be underactuated. In underactuated systems, the dimension of the configuration space is greater than the one of the control input space.

The output vector yRm is defined in accordance with the goal of control, by assuming a number of independent outputs equal to the number of independent control inputs that makes the map hz:RnRm invertible
y=hz(z)
(2)

The goal of inverse dynamics is to compute the time-history of the control input u(t) to make y(t) track the desired output trajectory ydes(t)Rm as closely as possible. It is assumed that ydes(t) is at least twice differentiable, as usually done in motion planning of flexible systems ([23,24]).

It is also assumed that the system's initial conditions z(0) and z˙(0) are known, as well as the external forces fz.

In fully actuated systems, i.e., when n = m, model inversion is straightforward and just relies on simple algebraic calculations by taking advantage of the inversion of matrix Bz. In contrast, in the case of underactuated systems, Bz is rectangular and cannot be inverted; therefore, model inversion should rely on more complicated solutions, as the one discussed in the following of this paper.

2.2 Coordinate Partitioning.

In the general case where Bz is a dense matrix with more than m not-null entries, the model in Eq. (1) does not allow for immediate partition of the coordinates into actuated and unactuated ones (e.g., coordinate permutation is not an effective solution). A coordinate transformation should be therefore performed by exploiting the QR-decomposition of Bz. It yields an orthonormal matrix QRn×n (QTQ=QQT=I, where I denotes the identity matrix of proper dimension) and an upper-triangular matrix BRn×m. B is upper-triangular; hence, it can be written through its sub-matrix BARm×m which collects all its non-null entries and, moreover, is nonsingular, i.e., rank(BA)=rank(Bz)=m
Bz=QB=Q[BA0]
(3)
where 0 denotes a null matrix of proper dimension. A new vector of the generalized coordinates qRn is introduced, such that
q=[qAqU]=QTz
(4)

Although the entries of q have sometimes no straightforward physical interpretation, this transformation partitions the vector of the generalized coordinates into m actuated coordinates, qARm, and nm unactuated coordinates, qURnm.

In the following, it is assumed that Q is constant; otherwise, the definition of q should change during the motion or in time. In contrast, BA can depend on q: this is the occurrence solved in this paper, which is a common situation in several multibody and robotic systems (as shown through the three examples). Nonetheless, this technique provides a more general formulation than the papers in the literature, such as Refs. [16,20,21], which just handles models that are already partitioned.

Pre-multiplying Eq. (1) by QT and introducing the new coordinate vector q, the system dynamic model is transformed into the following one:
M(q)q¨+c(q˙,q)+K(q)q=f(q˙,q,t)+B(q)u
(5)
Partitioning the matrices in Eq. (1) accordingly to the entries of q, it yields
[MAA(q)MAU(q)MAUT(q)MUU(q)][q¨Aq¨U]+[cA(q˙,q)cU(q˙,q)]+[KAA(q)KAU(q)KAUT(q)KUU(q)][qAqU]=[fA(q˙,q,t)fU(q˙,q,t)]+[BA(q)0]u
(6)
where the entries of M, c, K, and f have the following dimensions: MAA,KAARm×m, MAU,KAURm×(nm), MAUT,KAUTR(nm)×m, MUU,KUUR(nm)×(nm), cA,fARm, and cU,fUR(nm). The output equation in Eq. (2) is modified as well, by expressing y as a function of the new coordinate vector q through function h:RnRm
y=h(q)
(7)
The first m equations of the model in Eq. (6) represent the dynamics of the actuated sub-system, which is directly affected by the control forces u through the input matrix BA and by the external forces fA. Conversely, the remaining nm equations represent the dynamics of the unactuated coordinates that are forced by the external disturbance forces fU and are indirectly controlled by the evolution of the actuated coordinates
MUUq¨U+cU+KUUqU=fUMAUTq¨AKAUTqA
(8)

Equation (8) is a set of second-order nonholonomic constraints [25] and hence cannot be used to reduce the system model dimension by removing some generalized coordinates. In order to be feasible, any required trajectory should satisfy such constraints at any time. For this reason, the number of independent outputs has been assumed to be equal to the number of independent control inputs.

2.3 Approximation of the Internal Dynamics Through Linearly Combined Output.

A simple but effective approach to simplify the mechanical and control design of underactuated nonminimum-phase multibody systems, which has been proposed by several authors in the literature [16,20,21], is to approximate the desired output as a linear combination of q. Compared to the mentioned literature, a more general form is proposed in this paper, leading to the following formulation:
y=ΓAqA+ΓUqU
(9)
where ΓARm×m and ΓURm×(nm). Both matrices are assumed to be full rank.

This use of linear approximations of the output map accomplishes several tasks: on the one hand, it easily allows formulating the inverse dynamics; on the other one, it can be exploited to stabilize the internal dynamics whenever it is unstable. The tracking errors that could arise because of such an approximation are treated, in practice, as those due to the unavoidable mismatches between the model and the dynamics of the actual plant, and hence compensated by the necessary feedback control schemes. Indeed, as mentioned in the introduction, feedforward control should be supported by feedback control if precise motion is required.

On the other hand, Eq. (9) might degrade performances in some particular systems where such an approximation is rough; nonetheless, the use of local approximations, such as piecewise-linear models, overcomes this issue.

The time-history of the actuated coordinates (in terms of position qA(t), speed q˙A(t), and acceleration q¨A(t)), just for the purpose of solving the internal dynamics, can be written as functions of the desired output ydes(t) and its derivatives (that are expressed through the desired motion law in time), and of the unactuated coordinates by exploiting Eq. (9)
qA=ΓA1(ydesΓUqU)q˙A=ΓA1(y˙desΓUq˙U)q¨A=ΓA1(y¨desΓUq¨U)
(10)
and the dynamics of the unactuated DOFs in Eq. (8) can be written accordingly by removing qA and its derivatives, leading to the system internal dynamics
MUUq¨U+cU+KUUqU==fUMAUTΓA1(y¨desΓUq¨U)KAUTΓA1(ydesΓUqU)
(11)

The term in Eq. (11) is not constant since MUU=MUU(ydes,qU), cU=cU(y˙des,q˙U,ydes,qU), fU=fU(y˙des,q˙U,ydes,qU,t), MAUT=MAUT(ydes,qU), and KAUT=KAUT(ydes,qU) (these dependencies have been omitted in Eq. (11) for brevity of representation).

The stability of the internal dynamics in Eq. (11) strongly depends on the chosen output y. Usually, the presence of noncolocated pairs of control forces and desired output leads to zeros of the input–output normal form having a positive real part.

If a causal solution of the inverse dynamics problem of a nonminimum-phase system is sought, i.e., no pre-actuation is wanted, stabilization of the internal dynamics should be done to ensure bounded internal dynamics, and hence bounded control forces. A stable approximation of the unstable system should be therefore properly designed. An effective approach is the output redefinition, which is further approximating y within the internal dynamics so that Eq. (11) is stable, leading to the following output to be tracked:
y~=Γ~AqA+Γ~UqU
(12)
Γ~A and Γ~U should be properly chosen to ensure stability with negligible perturbation on the other dynamics. The choice of Γ~A and Γ~U will be discussed during the numerical assessment of the method. In this paper, output redefinition is just used with the goal of stabilizing the internal dynamics, i.e., in the differential part of the computation.
Once the stabilizing Γ~A and Γ~U are chosen, Eq. (11) is in turn recast in the form of a nonlinear, stable, dynamic system forced by the external forces (that are supposed to be known) and by the output reference
(MUUMAUTΓ~A1Γ~U)q¨U+cU+(KUUKAUTΓ~A1Γ~U)qU=fUMAUTΓ~A1y¨desKAUTΓ~A1ydes
(13)

The ODEs in Eq. (13) can be solved by forward integration to compute q¨U(t), q˙U(t), and qU(t), i.e., the time-history of unactuated coordinates in the execution of the desired motion profile y¨des(t), in the presence of the external forces in fU(t). The selection of the discretization time-step and of the numerical scheme adopted for integration relies on the usual rules adopted in the numerical simulations of multibody systems [26].

2.4 Solution of the Algebraic Equation for the Actuated Coordinates.

Once qU(t), q˙U(t), and q¨U(t) are computed over the whole cycle time (and will be henceforth denoted as qUdes(t), q˙Udes(t), and q¨Udes(t)), the control force vector u(t) is computed by solving the m algebraic equations representing the inverse dynamics problem of the actuated sub-system. Rather than using again the approximations of the desired output provided by Eqs. (9), (10), and (12), this second step can be performed by inverting the actual map ydes=h(qA,qU), together with its first- and second-time derivatives y˙des=H(q)q˙ and y¨des=H(qA,qU)q¨+H˙(qA,qU,q˙A,q˙U)q˙, to compute the reference trajectory for the actuated coordinates qAdes(t), q˙Ades(t), q¨Ades(t), where H(qA,qU)Rm×n is the Jacobian matrix relating the desired output with the actuated and unactuated coordinates, while H˙(qA,qU,q˙A,q˙U)Rm×n indicates its time derivative. This original approach proposed in this paper partially compensates for the approximation introduced by the linear approximation, as well as by its stabilizing form in Eq. (12). By defining as g:RnRm such an inverse map, the motion of the actuated coordinates at the position level is inferred as follows:
qAdes=g(ydes,qU)
(14)
Equation (14) is an algebraic, and usually nonlinear, vectorial equation that can be often analytically solved by exploiting trigonometric relations or numerically through well-established and reliable methods. The inversion at the velocity and acceleration levels are, in contrast, linear, once Eq. (14) is solved
q˙Ades=G(ydes,qU)[y˙desq˙U]
(15)
q¨Ades=G(ydes,qU)[y¨desq¨U]+G˙(ydes,qU,y˙des,q˙U)[y˙desq˙U]
(16)
G is the Jacobian matrix of g, i.e., q˙Ades=g(ydes,qU)ydesy˙des+g(ydes,qU)qUq˙U.
By imposing such references into the first m equations in Eq. (6), which represent the forced dynamics of the actuated sub-system, the required control forces can be inferred from the following algebraic computation, which provides exact inversion of the actuated part of the dynamic model
uFFW(t)=BA1(MAAq¨Ades+MAUq¨Udes+cA+KAAqAdes+KAUqAdesfA)
(17)
where MAA=MAA(qdes), MAU=MAU(qdes), cA=cA(q˙des,qdes), KAA=KAA(qdes), KAU=KAU(qdes), and fA=fA(q˙des,qdes,t). To have a clearer image of the steps regarding the proposed method, a block diagram is reported in Fig. 1.

Besides computing the feedforward control force, the proposed method can be exploited to generate consistent references to the actuated variables (qAdes(t),q˙Ades(t)) that can be fed to the feedback control loop (or loops in case of decoupled feedback controllers) to compute the closed-loop corrections required to compensate for the unavoidable model mismatches.

3 Test Case 1: Flexible Beam With Lumped Masses

3.1 Description and System Model.

The first test case is a linear system composed of a flexible beam, modeled through the finite-element approach, plus some lumped spring-damper-mass systems, that recall the model of linear vibratory feeders often adopted in manufacturing plants to convey small components [27]. Despite the apparent simplicity of the system, due to its linearity, the proposed test case has several challenging issues to be properly tackled.

The system is represented in Fig. 2. It consists of a flexible beam modeled through four Euler–Bernoulli finite elements (each one with length 0.75 m, flexural rigidity EJ = 1.93 × 105 N · m2, and linear mass density ρA = 22.87 kg · m−1). The beam is connected to the frame through two springs (kl = kr = 1.5 × 105 N · m−1). Three actuators exert three pairs of independent forces, as shown in Fig. 2, and are modeled through three lumped masses (mai = 23 kg, with i = 1, …, 3) connected to the beam by means of three linear springs (with stiffness kai = 4.6e5 N · m−1, with i = 1, …, 3). The resulting model has 13 DOFs, which include five absolute transversal translations (ηj, with j = 1, …, 5), five absolute rotations (φj, with j = 1, …, 5) of the beam, and three absolute translations of the actuators (ηa1,ηa2,ηa3)
z=[η1φ1η2φ2η3φ3η4φ4η5φ5ηa1ηa2ηa3]T
(18)
Fig. 1
Block diagram of the method for computing the feedforward force
Fig. 1
Block diagram of the method for computing the feedforward force
Close modal
Fig. 2
Sketch of the linear vibratory feeder
Fig. 2
Sketch of the linear vibratory feeder
Close modal
A linear model is obtained, which recalls the usual form of a second-order vibrating system [28]
Mzz¨+Czz˙+Kzz=Bzu
(19)
where u=[u1u2u3]R3 is the vector collecting the three independent control forces. MzR13×13 and KzR13×13 are obtained by assembling the mass and stiffness sub-matrices of the finite elements. The damping matrix CzR13×13 is obtained through the well-known Rayleigh model, imposing low viscous friction coefficients at each damped spring with the goal of fairly reproducing an underdamped real case scenario.
The definition of the vector of the physical displacements zR13 leads to the following dense matrix BzR13×3, which does not directly partition the dynamics into actuated and unactuated coordinates
Bz=[001000000010000001000000100000001000001]T
(20)
The equation of motion of the system in the transformed coordinates qR13 is achieved through QR-decomposition of Bz=QB, leading to
Mq¨+Cq˙+Kq=Bu
(21)
where M=QTMzQR13×13, C=QTCzQR13×13K=QTKzQ, R13×13, and BR13×3, which is the input distribution matrix of the new system of coordinates.
The following state transformation matrix is obtained:
QT=[0000000.50000.700.500000.70000000.700.7000000.40000.500.40001.000000000000.7000.50000000.50000001.00000000000.70000.5000000.500000001.000000000000001.000000000000001.00000.7000000.40000.500.400.7000.50000000.50000.70000.5000000.5]
(22)

Matrix QTR13×13 in Eq. (22), which maps z into q=[qAqU]T, with qAR3 and qUR10, reveals that the actuated coordinates qA represent the relative translations of the nodes where each actuator is placed. In contrast, many coordinates in qU have not a clear physical meaning.

The desired output vector ydesR3, here chosen as a meaningful example, includes the transversal displacement of the beam in the three attachment nodes
ydes=[η2η3η4]T
(23)

Since ydes is a subset of z, by considering the linear state transformation due to the QR-decomposition, z=Qq, it can be easily inferred that ΓAR3×3 and ΓUR3×10 are proper sub-matrices of Q. Hence, the use of linearly combined output is an exact representation of the test case under consideration.

Inverse dynamics is exploited to compute the actuator forces that make y track a periodic, non-sinusoidal, asymmetric reference waveform, as sometimes adopted in feeders [29]. Each period of the wave consists of a rising phase lasting 25 ms, followed by a drop phase of 5 ms, and the absolute value of the peak displacement is 5 mm. The period of oscillation is 35 Hz, as often adopted in feeding small parts ([28,30]). The position references of the three controlled output are set with a 40deg phase shift.

3.2 Stabilization of the Internal Dynamics.

The internal dynamics of this system is modeled through the following linear equations:
MAUTq¨A+MUUq¨U+CAUTq˙A+CUUq˙U+KAUTqA+KUUqU=0
(24)
where MAUT,CAUT,KAUTR10×3 and MUU,CUU,KUUR10×10. The introduction of the linearly combined output, see Eq. (9), enables to express the actuated coordinates as a function of the desired displacements and the unactuated coordinates, leading to
MIDq¨U+CIDq˙U+KIDqU=BIDuID
(25)
where MID=MUUMAUTΓA1ΓUR10×10, CID=CUUCAUTΓA1ΓUR10×10, KID=KUUKAUTΓA1ΓUR10×10, and BID=[MID1KAUTΓA1MID1CAUTΓA1MID1MAUTΓA1]R10×9. The input uIDR9 of the ODEs governing the internal dynamics is the output reference, in terms of position, speed, and acceleration
uID=[ydesy˙desy¨des]
(26)

The eigenvalue analysis of the internal dynamics reveals that it is unstable, as it can be inferred from Fig. 3, because of the presence of poles with positive real parts.

Fig. 3
(a) Internal dynamics poles of the vibratory feeder system and (b) detail about the imaginary axis
Fig. 3
(a) Internal dynamics poles of the vibratory feeder system and (b) detail about the imaginary axis
Close modal

The literature sometimes suggests a simple approach to stabilize the nonminimum-phase system by removing from the linear model the nonminimum-phase zeros, and hence the unstable poles of the internal dynamics, leading to the so-called “nonminimum-phase zeros ignore” (NPZ-ignore) approach [19]. Although this option could seem effective at a first glance because the unstable poles are quite far from the reference harmonic components, its application leads to large errors. The results of the application of the NPZ-ignore approach are therefore omitted to keep the paper concise.

Therefore, the stabilization approach by exploiting approximated values of ΓA and ΓU in Eq. (12), hereafter denoted Γ~A and Γ~U, is adopted. Such matrices should be wisely chosen to ensure asymptotic stability with the negligible spillover on the other poles, while allowing for a precise approximation of the tracked output. To simplify the analysis, ΓA has been kept constant while the approximation of ΓU is parametrized through just a scalar α, as Γ~U=αΓU. Figure 4 shows that α = 1 is the boundary condition between stable and unstable internal dynamics.

Fig. 4
Stability analysis by considering different values of α
Fig. 4
Stability analysis by considering different values of α
Close modal

3.3 Numerical Results.

To prevent instability arising from numerical integration error, it has been assumed α = 0.99. The ODEs in Eq. (25) have been integrated through the fourth-order Runge–Kutta scheme with a sampling time of 10 μs, due to the presence of some high-frequency poles. The time-history of the control forces u is reported in Fig. 5, while the tracking responses are reported in Fig. 6 together with the corresponding tracking errors. The maximum tracking error is 5.2 × 10−2 mm, that is the 1.0% of the amplitude of the periodic motion; the average RMS (root mean square) error is instead 2.1 × 10−2 mm. Such errors are due to the output redefinition to stabilize the internal dynamics; additionally, the presence of underdamped dominant dynamics in the system model exacerbates such errors, by creating some residual, although small, oscillations after motion completion.

Fig. 5
Fig. 6
Tracking responses (on the left) and related tracking errors (on the right)
Fig. 6
Tracking responses (on the left) and related tracking errors (on the right)
Close modal

It should be noted that no pre-actuation is required. In contrast, post-actuation is required after the end of the required motion, with a small force to be exerted by the actuators (and a very small position error that quickly settles) since the system is not differentially flat.

4 Test Case 2: Overhead Cartesian Crane

4.1 Description and System Model.

The second test case is an underactuated nonlinear system consisting of a 4-DOF overhead cartesian crane, as sketched in Fig. 7. The following independent coordinates are assumed to model the system: two translations describing the planar motion of the platform, which are the two actuated coordinates qA=[xPyP]T, and two unactuated components of the swing angle qU=[θXθY]T. θX is the oscillation angle projected on the XZ plane, while θY is the angle measured from the XZ plane. By assuming that the cable is taut with tensile stress and that hoisting is not allowed (i.e., the cable length h is constant), the following four nonlinear equations describe the system's dynamic behavior [31]
[(MX+m)0mhcos(θX)cos(θY)mhsin(θX)sin(θY)0(MY+m)0mhcos(θY)mhcos(θX)cos(θY)0mh2cos2(θY)0mhsin(θX)sin(θY)mhcos(θY)0mh2][x¨Py¨Pθ¨Xθ¨Y]+[mhθ˙X2sin(θX)cos(θY)mhθ˙Y2sin(θX)cos(θY)2mhθ˙Xθ˙Ycos(θX)sin(θY)+cXx˙Pmhθ˙Y2sin(θY)+cYy˙P2mh2θ˙Xθ˙Ysin(θY)cos(θY)+cθθ˙Xmh2θ˙X2sin(θY)cos(θY)+cθθ˙Y]=[00mhgsin(θX)cos(θY)mhgcos(θX)sin(θY)]+[10000100][uxuy]
(27)

The following definitions have been introduced in Eq. (27): uX, uY are the forces that are applied to the platform along the X and Y directions; m is the lumped mass of the suspended load; cX,cY,cθ are the viscous friction coefficients; MX, MY are the translational masses of the platform along the X and Y directions respectively; g is the gravity acceleration. The values of all the parameters of the system model are reported in Table 1.

Table 1

Values of the parameters of the overhead cartesian crane

ParameterValue
MX, MY30 kg
m0.7 kg
h1 m
cX, cY0.5 N · s · m−1
cθ0.25 N · m · s · rad−1
ParameterValue
MX, MY30 kg
m0.7 kg
h1 m
cX, cY0.5 N · s · m−1
cθ0.25 N · m · s · rad−1
Fig. 7
Sketch of the overhead cartesian crane
Fig. 7
Sketch of the overhead cartesian crane
Close modal
The goal of feedforward control is to make the load track a prescribed path in the cartesian plane, defined through the load cartesian absolute coordinates [xLyL]T. The following output vector is therefore defined
y=[xLyL]=[xP+hsinθXcosθYyP+hsinθY]
(28)

In this example, both the dynamic model and the output map are nonlinear. The approximation of y as a linear combination of q=[qATqUT]T is obtained by linearizing Eq. (28) about the vertical equilibrium configuration (i.e., θX=θY=0deg), leading to ΓA=IR2×2 and ΓU=hIR2×2.

4.2 Stabilization of the Internal Dynamics.

The dynamic model can be directly partitioned as follows without the state transformation of Eq. (4), where the swing angle components are the unactuated coordinates
[MAAMAUMAUTMUU][q¨Aq¨U]+[cAcU]=[fAfU]+[BABU]u
(29)
where u=[uXuY]TR2; BA=IR2×2, and BU=0R2×2 (0 denotes a null matrix).

To study the stability of the internal dynamics, the equations of motion of the unactuated sub-system (MAUTq¨A+MUUq¨U+cU=fU) are linearized around the stable downward equilibrium point defined by θX=θY=0deg, and secondly, q¨A is replaced thanks to the linearly combined output technique described in Sec. 2.3, with y¨des=q¨A+ΓUq¨U.

If the exact ΓU is used, the internal dynamics is unstable. As in the previous test, stabilization is achieved by simply defining Γ~U=αΓU, leading to the following model
MIDq¨U+CIDq˙U+KIDqU=BIDy¨des
(30)
where MID,CID,KID,BIDR2×2 are defined as follows:
MID=[mh2(1α)00mh2(1α)]CID=[cθ00cθ]KID=[mhg00mhg]BID=[mh00mh](31)
(31)

If the exact ΓU is used, and therefore α = 1, MID becomes a null matrix and therefore the internal dynamics features poles with infinite positive values. To assess the effect of α on the stability, Eq. (30) can be treated as two independent scalar equations by considering that MID, CID, and KID are diagonal matrices, and the two characteristic polynomials are separately discussed. Since all the entries of CID and KID are positive, Descartes’ Rule of Signs reveals that the internal dynamics is stable if and only if α < 1. As in the previous test case, the parameter α should be, therefore, chosen as close as possible to the unitary value, without exceeding it, ensuring a good reconstruction of the desired output and making negligible the pole spillover, while accounting for numerical issues of the ODE solver that can make the system unstable even with α < 1. In the following, it has been chosen α = 0.99 that leads to the following poles of the internal dynamics: λ1 = λ2 = −17.86 + 25.73i and λ3 = λ4 = −17.86 − 25.73i.

4.3 Numerical Results.

The test consists of a planar circle with a diameter of 0.5 m in the XY plane. The entire circular path is set to be completed in 10 s through a fifth-degree polynomial timing law; to assess the behavior of the load at steady-state conditions, two idle intervals of 4 s are introduced both at the beginning and at the end of the trajectory. The ODEs in Eq. (25) have been integrated through the fourth-order Runge–Kutta scheme with a sampling time of 10 μs.

The displacements of the load and the trolley are shown in Fig. 8, which also provides details on the tracking errors: the reference trajectory is tracked with high precision, with a maximum transient error of 0.11 mm, and with a negligible residual oscillation after motion completion.

Fig. 8
Reference tracking responses (on the left), and related tracking errors (on the right)
Fig. 8
Reference tracking responses (on the left), and related tracking errors (on the right)
Close modal

The path-tracking response is shown in Fig. 9. Figure 9(a) compares the motion of the trolley with the one of the load, by clearly showing that the proposed technique properly shapes the trolley path (by means of the control forces applied to it), by considering that centrifugal effects will make the load path differ from the one of the load. Figure 9(b) details the contour error of the load, with respect to the reference path: the maximum value is 0.12 mm, the RMS error during the motion is 0.04 mm, while the residual error after motion completion is negligible. Finally, Fig. 10 displays the computed forces applied to perform the desired task.

Fig. 9
(a) Path-tracking response and (b) related contour error
Fig. 9
(a) Path-tracking response and (b) related contour error
Close modal
Fig. 10

A final assessment of the capability of the proposed method is obtained by comparing it with the method presented in Ref. [20], by adopting the same stabilized linearly combined output. The results are summarized in Fig. 11, which shows the tracking and the contour errors sported by the two different ways of calculating uFFW, by adopting the same stabilization scheme for the internal dynamics. It is evident the benefit of the approach proposed in this paper, which remarkably reduces the errors: using Ref. [20] leads to a maximum tracking error equal to 0.35 mm, and a maximum contour error equal to 0.35 mm as well. Indeed, due to the centrifugal forces, the mismatch between the nonlinear model and the linearized one becomes relevant.

Fig. 11
Comparison of (a) the tracking and (b) contour errors sported by the proposed method and benchmark [20]
Fig. 11
Comparison of (a) the tracking and (b) contour errors sported by the proposed method and benchmark [20]
Close modal

5 Test Case 3: Underactuated Robotic Arm With Flexible Passive Joint

5.1 Description and System Model.

The third test case is a planar flexible robotic arm lying in the vertical plane, as shown in Fig. 12, made by two rigid links connected through a passive revolute joint (B) with a linear torsional spring. Another joint (A) is directly actuated by a DC (direct current) motor. The actuated link is of length l1, mass m1, and moment of inertia J1 (defined with respect to point A). The moment of inertia of the motor, Jm, and of the rigid coupling, Jd, should be accounted for as well. The other link is of length l2, mass m2, and a moment of inertia J2 (defined with respect to point B). A nodal mass mB is placed at joint B to include the mass contribution of the rotational encoder. Two linear springs couple the two links, resulting in an equivalent rotational spring with rotational stiffness ks. All the values of the mentioned parameters are reported in Table 2.

Fig. 12
The flexible robotic arm: (a) picture of the experimental setup and (b) model definitions
Fig. 12
The flexible robotic arm: (a) picture of the experimental setup and (b) model definitions
Close modal
Table 2

Nominal values of the parameters of the flexible robotic arm

ParameterValueParameterValue
l10.17 ml20.155 m
m10.05 kgm20.021 kg
J14.82 × 10−4 kg · m2J21.68 × 10−4 kg · m2
Jm2.7 × 10−5 kg · m2Jd2.3 × 10−5 kg · m2
mB0.178 kgks0.177 N · m/rad
ParameterValueParameterValue
l10.17 ml20.155 m
m10.05 kgm20.021 kg
J14.82 × 10−4 kg · m2J21.68 × 10−4 kg · m2
Jm2.7 × 10−5 kg · m2Jd2.3 × 10−5 kg · m2
mB0.178 kgks0.177 N · m/rad

The computed torque is commanded by translating it as the reference current through the nominal torque constant of the motor. Such a reference current is fed to the drive current loop through Simulink Real Time scheme that communicates the current to be delivered at each instant to the motor through an external input–output board. It should be noted that the current loop is the sole closed-loop controller adopted in these experiments: neither the position nor the speed feedback loops are used, since trajectory tracking just relies on an open-loop scheme to assess the effectiveness of the proposed approach.

The two independent coordinates q=[θ1θ2]T are the absolute rotation of the actuated link (controlled through the motor torque u) with respect to the vertical configuration, and the relative position of the passive link with respect to the actuated one, denoted θ1 and θ2, respectively, as shown in Fig. 12. The following nonlinear model of the system is formulated:
[Jm+Jd+J1+(m2+mB)l12+m2l1l2cos(θ2)+J212m2l1l2cos(θ2)+J212m2l1l2cos(θ2)+J2J2][θ¨1θ¨2]+[12m2l1l2sin(θ2)θ˙2(2θ˙1+θ˙2)+cmθ˙112m2l1l2sin(θ2)θ˙12+csθ˙2]+[0ksθ2]=[(12m1+m2+mB)gl1sin(θ1)12m2gl2sin(θ1+θ2)12m2gl2sin(θ1+θ2)]+[10]u
(32)

5.2 Stabilization of the Internal Dynamics.

Describing the system through the relative coordinate of the passive link allows us to directly partition Eq. (32) as follows:
[MAAMAUMAUMUU][q¨Aq¨U]+[cAcU]+[kAkU]=[fAfU]+[BABU]u
(33)
where q¨A=θ¨1 and q¨U=θ¨2. Considering only the unactuated sub-system, its dynamics is described by
MAUq¨A+MUUq¨U+cU+kU=fU
(34)
The tip horizontal displacement is set as the desired output and, to formulate the linearly combined output technique; it is defined through the equivalent rotation of a one-DOF rigid link whose length is l1 + l2, linearized around the stable downward equilibrium point defined by θ1 = θ2 = 0
ydes=l1l1+l2sin(θ1)+l2l1+l2sin(θ1+θ2)θ1+l2l1+l2θ2=qA+ΓUqU
(35)
To study the stability of the internal dynamics, Eq. (34) is also linearized around the same configuration, by obtaining
(M¯UUM¯AUΓU)q¨U=f¯Uc¯Uk¯UM¯AUy¨des
(36)
where M¯UU,M¯AU,f¯U,c¯U,k¯UR are the linearized forms of MUU,MAU,fU,cU,kU, respectively
M¯UU=J2M¯AU=12m2l1l2+J2f¯U=12m2gl2(θ1+θ2)c¯U=csθ˙2k¯U=ksθ2
(37)
Therefore, the linearized internal dynamics is reformulated as follows for stability analysis
MIDq¨U+CIDq˙U+KIDqU=BIDy¨des
(38)
where MID, CID, KID, BID ∈ ℝ assume the following meaning:
MID=J2((32l1l2+1)ΓU1)CID=csKID=12m2gl2+ksBID=12m2l1l2+J2
(39)
The following eigenvalues λ1,2 ∈ ℂ of the homogeneous characteristic equation associated with Eq. (38) are calculated
λ1,2=MID1CID±(MID1CID)24MID1KID2
(40)
Re{λ1,2}<0 if and only if MID1KID>0 and hence if and only if
Γ~U<2l23l1+2l2
(41)

To provide a similar treatment as the previous test cases, defining Γ~U=αΓlim (with α ∈ ℝ ) and Γlim=2l23l1+2l2 recasting the inequality in (41) as α < 1. The same result can be obtained by considering the stability features of the associated zero-dynamics [16], which is unstable in nonminimum-phase systems.

As previously seen, the parameter α should be chosen as close as possible to the unitary value, without exceeding it, ensuring a good reconstruction of the desired output and, at the same time, making the spillover effect of the poles negligible.

As a final consideration, it is useful to highlight that the exact value of Γ~U, defined in Eq. (35), leads to an unstable internal dynamics, as shown in Fig. 13, since Γ~U>Γlim.

Fig. 13
Internal dynamics poles of the flexible robotic arm, with different choices of Γ~U
Fig. 13
Internal dynamics poles of the flexible robotic arm, with different choices of Γ~U
Close modal

5.3 Numerical Application.

The test consists of a pick-and-place repetitive cycle, from the pick-position to the place one, and then back again to the pick-location. Indeed, pick-and-place tasks have great importance for robots employed in manufacturing plants [32,33], and hence, the end-effector motion should be properly controlled. Two different amplitudes of the motion have been considered, corresponding to two different opening angles of the equivalent rigid single-link mechanism equal to 30deg and 50deg. The motion time of each displacement is 1.2 s, and fifth-degree polynomial timing laws have been assumed. Additionally, rest intervals, lasting 1 s for the 30deg case and 2 s for the 50deg one, are required between each motion.The method application has led to the torques shown in Fig. 14, which are continuous and do not require pre-actuation. The ODEs in Eq. (25) have been integrated through the fourth-order Runge–Kutta scheme with a sampling time of 1 ms.

Fig. 14
Feedforward motor torques with different opening angles: (a) 30deg and (b) 50deg
Fig. 14
Feedforward motor torques with different opening angles: (a) 30deg and (b) 50deg
Close modal

Figure 15 shows the result obtained, by applying the computed torque to the simulator of the nonlinear mechanism: precise tracking is obtained for the three references, and just some small errors are present since references and actual displacement are almost overlapped.

Fig. 15
Numerical trajectory tracking responses with their relative tracking errors with different opening angles: (a), (c) 30deg and (b), (d) 50deg
Fig. 15
Numerical trajectory tracking responses with their relative tracking errors with different opening angles: (a), (c) 30deg and (b), (d) 50deg
Close modal

A clearer view is provided by the analysis of the tracking error for both the tests and through benchmarking: the outcomes of the proposed method have been compared with those sported by the methods proposed in Refs. [16] and [34], which are assumed as the benchmarks for this test case. In the application of Ref. [16], the same output redefinition is adopted to stabilize the internal dynamics. The results are shown in Fig. 16, where the tracking errors are detailed to corroborate the effectiveness of the method proposed in this paper and the advancement it provides compared with the state-of-the-art methods. In the case of an opening angle equal to 30deg, the proposed method leads to a maximum error equal to 1.3 mm and to an RMS error equal to 0.45 mm ; the benchmark I, i.e., the method proposed in Ref. [16], leads to a maximum error equal to 2.1 mm (+62%) and to an RMS error equal to 0.9 mm (+100%). Even larger errors are sported by benchmark II, i.e., the method proposed in Ref. [34]: the maximum error is equal to 17.6 mm (+1254%) and the RMS error is 7.1 mm (+1478%), with visible residual oscillations.

Fig. 16
Comparison of the tracking errors of the proposed method and the two benchmarks, with different opening angles: (a), (c) 30deg and (b), (d) 50deg
Fig. 16
Comparison of the tracking errors of the proposed method and the two benchmarks, with different opening angles: (a), (c) 30deg and (b), (d) 50deg
Close modal

In the presence of the 50deg opening angle, the proposed method still outperforms the benchmarks since it leads to a maximum error equal to 2.5 mm and to an RMS error equal to 0.8 mm ; benchmark I leads to a maximum error equal to 3 mm (+20%) and to an RMS error equal to 1.2 mm (+50%); again, remarkably larger errors are sported by benchmark II: the maximum error is equal to 54.2 mm (+2068%), and the RMS error is 28.1 mm (+3412%).

Finally, the comparison of the computed torques is provided in Fig. 17: very similar values are provided since all these methods are aimed at best approximating the exact torques; in particular, benchmark I, that is the most accurate one between the two benchmarks, is almost overlapped with the proposed method.

Fig. 17
Comparison of the torques computed by proposed method and the two benchmarks, with different opening angles: (a) 30deg and (b) 50deg
Fig. 17
Comparison of the torques computed by proposed method and the two benchmarks, with different opening angles: (a) 30deg and (b) 50deg
Close modal

5.4 Robustness Considerations Against Model Uncertainties.

Since dynamic models are always affected by uncertainties with respect to the real setups, the robustness of the results achieved by the proposed method is assessed in the following by applying some perturbations to the dynamic model emulating the real system, to which feedforward torques computed through the nominal model are applied. The uncertain parameters of the dynamic models are the motor moment of inertia, the masses and lengths of the links (and hence the related moment of inertia), the stiffness of the rotational spring, and the entries of the damping matrix. First, the decoupled effect of the uncertainty of just one parameter at a time, by keeping the other ones to their nominal values, has been evaluated to assess which is the most sensitive parameter in terms of trajectory tracking error. The results of this analysis are reported in Fig. 18, for both the opening angles considered (30 deg and 50 deg), where ±10% variations of the nominal parameters are assumed. It can be noticed that the lengths of the two links are the most influential parameter; this is due mainly to the error in the kinematics (Eq. (35)), which would also severely affect the inverse dynamic in a rigid link system. Among the two opening angles, smaller errors are obtained in the case of 30 deg, because of the smaller accelerations.

Fig. 18
RMS trajectory tracking errors in the presence of model mismatch, when each +10% perturbations affect one parameter at a time
Fig. 18
RMS trajectory tracking errors in the presence of model mismatch, when each +10% perturbations affect one parameter at a time
Close modal

A second robustness analysis is done with respect to the uncertainty of the motor torque loop dynamics. In this paper, as well as in all the papers on inverse dynamics of multibody and robotic systems quoted in the references, model inversion is done by assuming the ideal response of the actuator current loop, i.e., infinite bandwidth of such a loop. This assumption is often reasonable since modern servomotors can reach up to 5000 − Hz bandwidth [35]. On the other hand, “cheap” or old motors might have a slower dynamic response. To evaluate this issue, robustness analysis is also performed by simulating the system response in the presence of a current loop modeled as a first-order system with a bandwidth ranging from 500 Hz to 5000 Hz. The results are summarized in Fig. 19 that shows the RMS error as a function of the bandwidth (by assuming no uncertainty on the other parameters). It is evident that the tracking error approaches the ideal one as the bandwidth increases, and for the case under investigation, bandwidth greater than 1500 Hz just causes a negligible increase. In contrast, the harmonic distortion and the lag in reproducing the commanded torque profile remarkably amplify the tracking error in the case of 500 − Hz bandwidth.

Fig. 19
RMS trajectory tracking errors in the presence of non-ideal motor torque loop dynamics
Fig. 19
RMS trajectory tracking errors in the presence of non-ideal motor torque loop dynamics
Close modal

To further assess the robustness, a Monte Carlo analysis (with 2000 random tests) has been performed by considering the simultaneous perturbations of all the above-mentioned parameters. As for the current loop bandwidth, a uniform distribution in the interval (500 Hz, 5000 Hz ) has been assumed. As for the other parameters, Gaussian distributions have been assumed, with a standard deviation equal to the 5% of the nominal value. The average RMS value of the tracking error over a cycle is equal to 1.0 mm when the test case with the opening angle equal to 30deg is considered, while the maximum RMS error achieved in such an analysis is 3.0 mm. In the case of a 50 deg opening angle, the average RMS value is 1.8 mm while the worst-case simulated leads to 5.6 mm. The Monte Carlo analysis is summarized through the trajectory tracking responses reported in Fig. 20, to highlight the bands of uncertainty for both the opening angles evaluated, when the proposed method is adopted.

Fig. 20
Trajectory tracking responses in the presence of random model mismatches when perturbations affect all parameters simultaneously (proposed method): (a) 30deg and (b) 50deg
Fig. 20
Trajectory tracking responses in the presence of random model mismatches when perturbations affect all parameters simultaneously (proposed method): (a) 30deg and (b) 50deg
Close modal

The same perturbations have been applied to Benchmark I, by obtaining worse results because of the higher approximation it exploits in model inversion: the average and maximum RMS errors are, respectively, 1.6 mm (+60% compared with the proposed method) and 3.8 mm (+27%) with the 30 deg opening angle, and 2.5 mm (+38%) and 5.9 mm (+6%).

5.5 Experimental Application.

The motor torques shown in Fig. 14, and computed through the method proposed in this paper, by exploiting the nominal model parameters, have been applied to the experimental setup. As far as friction is concerned, the viscous term is considered in Eq. (32), and hence, it affects also the internal dynamics. Additionally, a Coulomb term related to the friction at the active joint (and hence including the contribution of the motor rotor) and equal to ±0.01 Nm has been included in the algebraic Eq. (17) by adding the term 0.01sign(θ˙1) Nm. Such a value has been estimated through experimental identification. A more complicated friction model can be employed in the algebraic part, by taking advantage of the wide literature on friction modeling and compensation; this goes, however, beyond the scope of the paper. No feedback terms are adopted, and therefore, the showed results just rely on open-loop control through model inversion, thus providing a fair and severe evaluation of its effectiveness.

The achieved displacements are reported in Fig. 21, for each opening angle, and have been measured through a high-resolution Vicon motion capture exploiting four cameras Vicon Vantage V5. A precise tracking of the references is obtained, although the tracking error is greater than the one expected by the numerical analysis: the RMS values of the error are equal to 3.5 mm with the 30 deg opening angle, and 4.3 mm with the 50 deg one. This aspect is mainly due to the unavoidable presence of model mismatches between the nominal one, used to compute the torque, and the real setup. In particular, among the parameters investigated through the Monte Carlo analysis, it should be noted that the current loop bandwidth of the actuator is about 500 Hz, thus approaching the worst-case scenario for such a parameter. A second relevant uncertainty source is friction, which has been remarkably simplified in the model and whose compensation has been performed in a very simple algebraic way. Finally, the deformation of the wire of the encoder placed at the passive joint significantly perturbs the system dynamics both in terms of mass distribution, by creating an equivalent stiffness (that slightly changes as the wire moves, since the diameter is 5 mm) and by acting as an external disturbance force acting on the system itself. Nonetheless, by considering that no feedback is adopted, tracking is accurate if compared with the resolution sported by the two encoders mounted on the mechanism, which is equal to 4.1 mm.

Fig. 21
Experimental trajectory tracking responses with their relative tracking errors with different opening angles: (a), (c) 30deg and (b), (d) 50deg
Fig. 21
Experimental trajectory tracking responses with their relative tracking errors with different opening angles: (a), (c) 30deg and (b), (d) 50deg
Close modal

6 Conclusions

This paper proposes enhanced inverse dynamics techniques for non-differentially flat, nonminimum-phase underactuated multibody systems, to obtain a feedforward control term without pre-actuation. The method is suitable for mechanisms and robots with passive joints or flexible links and allows boosting the design of closed-loop control schemes with high robustness, thanks to the possibility of lowering the feedback gains.

By taking advantage of the idea already proposed in the literature, of properly approximating the desired output as a linearly combined output, and by performing the output redefinition to stabilize the internal dynamics, stable inversion of such a dynamic is obtained. Then, by exploiting the exact model of the actuated sub-system, the computation of the feedforward forces is obtained with just a minor approximation. This possibility is allowed by a general approach that exploits the QR-decomposition of the input matrix to partition the independent coordinates into actuated and unactuated ones, thus simplifying the definition of the internal dynamics and hence its stabilization.

The concurrent use of these tools results in a comprehensive, and computationally simple, method for precise and accurate inverse dynamics, which can be applied to several underactuated systems where linear (or piecewise-linear) output approximations are reasonable, by improving the existing state of the art.

The effectiveness of the proposed method has been assessed numerically with three different test cases, highlighting different features of the method also by means of comparison with several state-of-the art techniques. In all the studied cases, the proposed method has shown higher accuracy in tracking the desired trajectory with tracking errors that are smaller than all the benchmarks. Furthermore, the proposed technique has been experimentally applied on a 2-DOF underactuated robotic arm, made by two rigid links and a passive joint. The experimental results highlight the enhanced performances achieved through the proposed method even in the presence of plant uncertainties and model mismatches. As a result, the mean experimental tracking errors lay inside the uncertainty band defined by the resolution of the encoders mounted on the mechanism.

The absence of pre-actuation and the simple proposed formulation, which exploits some algebraic calculations and the numerical integration of the equation of motions of the stabilized internal dynamics without the need of optimization procedures, make the method suitable for applications where no pre-calculation is allowed and, therefore, where a real-time calculation of feedforward is required.

Funding Data

  • This research was funded by the Italian Ministry of University and Research through the research grant “SISTEMA—Dipartimenti di Eccellenza” and by the PRIN 2020 “Extending Robotic Manipulation Capabilities by Cooperative Mobile and Flexible Multi-Robot Systems (Co-MiR)” (Prot. 2020CMEFPK).

Conflict of Interest

There are no conflicts of interest.

Data Availability Statement

The data sets generated and supporting the findings of this article are obtainable from the corresponding author upon reasonable request.

References

1.
Richiedei
,
D.
, and
Tamellin
,
I.
,
2021
, “
Active Control of Linear Vibrating Systems for Antiresonance Assignment With Regional Pole Placement
,”
J. Sound Vib.
,
494
, p.
115858
.
2.
Ouyang
,
H.
,
2010
, “
Pole Assignment of Friction-Induced Vibration for Stabilisation Through State-Feedback Control
,”
J. Sound Vib.
,
329
(
11
), pp.
1985
1991
.
3.
Araújo
,
J. M.
,
Dórea
,
C. E. T.
,
Gonçalves
,
L. M. G.
,
Carvalho
,
J. B. P.
, and
Datta
,
B. N.
,
2018
, “
Robustness of the Quadratic Partial Eigenvalue Assignment Using Spectrum Sensitivities for State and Derivative Feedback Designs
,”
J. Low Freq. Noise Vib. Act. Control
,
37
(
2
), pp.
253
268
.
4.
Audet
,
J. M.
, and
Gosselin
,
C.
,
2021
, “
Rotational Low-Impedance Physical Human–Robot Interaction Using Underactuated Redundancy
,”
ASME J. Mech. Rob.
,
13
(
1
), p.
014503
.
5.
Blajer
,
W.
,
2014
, “
The Use of Servo-constraints in the Inverse Dynamics Analysis of Underactuated Multibody Systems
,”
ASME J. Comput. Nonlinear Dyn.
,
9
(
4
), p.
041008
.
6.
Bastos
,
Jr. G.
,
2018
, “
A Synergistic Optimal Design for Trajectory Tracking of Underactuated Manipulators
,”
ASME J. Dyn. Syst. Meas. Control
,
141
(
2
), p.
021015
.
7.
Wang
,
Q.
,
Quan
,
Q.
,
Deng
,
Z.
, and
Hou
,
X.
,
2016
, “
An Underactuated Robotic Arm Based on Differential Gears for Capturing Moving Targets: Analysis and Design
,”
ASME J. Mech. Rob.
,
8
(
4
), p.
041012
.
8.
Ma
,
R. R.
, and
Dollar
,
A. M.
,
2013
, “
Linkage-Based Analysis and Optimization of an Underactuated Planar Manipulator for In-Hand Manipulation
,”
ASME J. Mech. Rob.
,
6
(
1
), p.
011002
.
9.
Biao
,
L.
,
Youwei
,
L.
,
Xiaoming
,
X.
,
Haoyi
,
W.
, and
Longhan
,
X.
,
2022
, “
Design and Control of a Flexible Exoskeleton to Generate a Natural Full Gait for Lower-Limb Rehabilitation
,”
ASME J. Mech. Rob.
,
15
(
1
), p.
011005
.
10.
Fliess
,
M.
,
Levine
,
J.
,
Martin
,
P.
, and
Rouchon
,
P.
,
1995
, “
Flatness and Defect of Non-linear Systems: Introductory Theory and Examples
,”
Int. J. Control
,
61
(
6
), pp.
1327
1361
.
11.
Heyden
,
T.
, and
Woernle
,
C.
,
2006
, “
Dynamics and Flatness-Based Control of a Kinematically Undetermined Cable Suspension Manipulator
,”
Multibody Syst. Dyn.
,
16
(
2
), pp.
155
177
.
12.
Blajer
,
W.
,
Dziewiecki
,
K.
,
Kołodziejczyk
,
K.
, and
Mazur
,
Z.
,
2011
, “
Inverse Dynamics of Underactuated Mechanical Systems: A Simple Case Study and Experimental Verification
,”
Commun. Nonlinear Sci. Numer. Simul.
,
16
(
5
), pp.
2265
2272
.
13.
Biagiotti
,
L.
, and
Melchiorri
,
C.
,
2008
,
Trajectory Planning for Automatic Machines and Robots
,
Springer Science & Business Media
.
14.
Richiedei
,
D.
, and
Trevisani
,
A.
,
2016
, “
Analytical Computation of the Energy-Efficient Optimal Planning in Rest-to-Rest Motion of Constant Inertia Systems
,”
Mechatronics
,
39
, pp.
147
159
.
15.
Richiedei
,
D.
,
2018
, “
Integrated Selection of Gearbox, Gear Ratio, and Motor Through Scaling Rules
,”
Mech. Based Des. Struct. Mach.
,
46
(
6
), pp.
712
729
.
16.
De Luca
,
A.
,
Lucibello
,
P.
, and
Ulivi
,
A. G.
,
1989
, “
Inversion Techniques for Trajectory Control of Flexible Robot Arms
,”
J. Robot. Syst.
,
6
(
4
), pp.
325
344
.
17.
Devasia
,
S.
,
Chen
,
D.
, and
Paden
,
B.
,
1996
, “
Nonlinear Inversion-Based Output Tracking
,”
IEEE Trans. Autom. Control.
,
41
(
7
), pp.
930
942
.
18.
Devasia
,
S.
, and
Paden
,
B.
,
1998
, “
Stable Inversion for Nonlinear Nonminimum-Phase Time-Varying Systems
,”
IEEE Trans. Autom. Control.
,
43
(
2
), pp.
283
288
.
19.
Butterworth
,
J. A.
,
Pao
,
L. Y.
, and
Abramovitch
,
D. Y.
,
2012
, “
Analysis and Comparison of Three Discrete-Time Feedforward Model-Inverse Control Techniques for Nonminimum-Phase Systems
,”
Mechatronics
,
22
(
5
), pp.
577
587
.
20.
Seifried
,
R.
,
2012
, “
Integrated Mechanical and Control Design of Underactuated Multibody Systems
,”
Nonlinear Dyn.
,
67
(
2
), pp.
1539
1557
.
21.
Seifried
,
R.
,
2012
, “
Two Approaches for Feedforward Control and Optimal Design of Underactuated Multibody Systems
,”
Multibody Syst. Dyn.
,
27
(
1
), pp.
75
93
.
22.
Bastos
,
G.
,
Seifried
,
R.
, and
Brüls
,
O.
,
2017
, “
Analysis of Stable Model Inversion Methods for Constrained Underactuated Mechanical Systems
,”
Mech. Mach. Theory
,
111
, pp.
99
117
.
23.
Zanotto
,
V.
,
Gasparetto
,
A.
,
Lanzutti
,
A.
,
Boscariol
,
P.
, and
Vidoni
,
R.
,
2011
, “
Experimental Validation of Minimum Time-Jerk Algorithms for Industrial Robots
,”
J. Intell. Rob. Syst. Theory Appl.
,
64
(
2
), pp.
197
219
.
24.
Boscariol
,
P.
,
Gasparetto
,
A.
, and
Vidoni
,
R.
,
2012
, “
Planning Continuous-Jerk Trajectories for Industrial Manipulators
,”
Proceedings of the ASME 2012 11th Biennial Conference on Engineering Systems Design and Analysis
,
Nantes, France
,
Feb. 3
, pp.
127
136
.
25.
Oriolo
,
G.
, and
Nakamura
,
Y.
,
1991
, “
Control of Mechanical Systems with Second-Order Nonholonomic Constraints: Underactuated Manipulators
,”
Proceedings of the 30th IEEE Conference on Decision and Control
,
Brighton, UK
,
Dec. 11–13
, pp.
2398
2403
.
26.
García de Jalón
,
J.
,
1994
,
Kinematic and Dynamic Simulation of Multibody Systems: The Real-Time Challenge
,
Springer
,
New York, NY
.
27.
Belotti
,
R.
,
Richiedei
,
D.
,
Tamellin
,
I.
, and
Trevisani
,
A.
,
2020
, “
Inverse Structural Modification for Improving the Design of Harmonic Excitation Forces in Underactuated Vibration Generators
,”
ISMA
,
Leuven, Belgium
,
Sept. 7–9
, pp.
1069
1079
.
28.
Belotti
,
R.
,
Richiedei
,
D.
,
Tamellin
,
I.
, and
Trevisani
,
A.
,
2021
, “
Response Optimization of Underactuated Vibration Generators Through Dynamic Structural Modification and Shaping of the Excitation Forces
,”
Int. J. Adv. Manuf. Technol.
,
112
(
1–2
), pp.
505
524
.
29.
Okabe
,
S.
,
Kamiya
,
Y.
,
Tsujikado
,
K.
, and
Yokoyama
,
Y.
,
1985
, “
Vibratory Feeding by Nonsinusoidal Vibration—Optimum Wave Form
,”
ASME J. Vib. Acoust.
,
107
(
2
), pp.
188
195
.
30.
Caracciolo
,
R.
,
Richiedei
,
D.
,
Trevisani
,
A.
, and
Zanardo
,
G.
,
2015
, “
Designing Vibratory Linear Feeders Through an Inverse Dynamic Structural Modification Approach
,”
Int. J. Adv. Manuf. Technol.
,
80
(
9–12
), pp.
1587
1599
.
31.
Richiedei
,
D.
, and
Trevisani
,
A.
,
2008
, “
Delayed-Reference Anti-swing Control of Overhead Crane Systems
,”
Proceedings of the 2008 10th IEEE International Workshop on Advanced Motion Control
,
Trento, Italy
,
Mar. 26–28
, Vol. 1, pp.
92
97
.
32.
Choi
,
S. B.
,
Seong
,
M. S.
, and
Ha
,
S. H.
,
2013
, “
Accurate Position Control of a Flexible Arm Using a Piezoactuator Associated With a Hysteresis Compensator
,”
Smart Mater. Struct.
,
22
(
4
), p.
045009
.
33.
Scalera
,
L.
,
Boscariol
,
P.
,
Carabin
,
G.
,
Vidoni
,
R.
, and
Gasparetto
,
A.
,
2020
, “
Enhancing Energy Efficiency of a 4-DOF Parallel Robot Through Task-Related Analysis
,”
Machines
,
8
(
1
), pp.
1
14
.
34.
Wang
,
X.
, and
Chen
,
D.
,
2006
, “
Output Tracking Control of a One-Link Flexible Manipulator via Causal Inversion
,”
IEEE Trans. Control Syst. Technol.
,
14
(
1
), pp.
141
148
.
35.
Kollmorgen
, “
S200 High Performance Compact Brushless Servo Drives
,” https://www.kollmorgen.com/sites/default/files/public_downloads/S200 Base Unit Reference Manual Rev C.pdf.