Keywords

1 Introduction

Machine tools represent an enormous investment risk for small and medium-sized enterprises (SMEs). Conventional IR offer the possibility of flexible machining of large components at significantly lower investments. However, due to the serial kinematics and the resulting high compliance, they usually achieve insufficient machining qualities. In the field of research, model-based simulation and control methods are used to increase the accuracy of IR in both planning and the process itself [14]. One approach is the derivation of equations of motion, which calculate the drive torques, that are needed to perform a certain movement, including the influence of intalk- and crosstalk forces within the mechanical structure of the IR. The torques can either be fed forward to the control loop during machining or used for the calculation of predicted deviations during the process planning [5, 7, 10]. The accuracy of the equations of motion, which are usually derived from the recursive Newton–Euler approach, depends significantly on the inertial parameters.

This paper is structured as follows: In the following chapters, the current state of the art regarding the identification of inertial parameters and the basic idea of this paper is presented. Afterwards the theoretical background and the derivation of the necessary equations are explained. Then, the approach is validated followed by an evaluation and a conclusion.

2 State of the Art

In general, the identification topic for industrial robots is widely discussed in research journals over the past decades. The presented approaches in literature share the following similarities:

  • Using a model that is linear regarding the inertial parameters

  • Construction of an overdetermined system of equations that is generated with data points of a measured trajectory

  • Parameter identification via linear regression techniques

Linear models following different methods like the energy model, the power model or the most commonly used inverse dynamics model were developed [3, 4, 8]. Those models are derived by calculating the systems energy, power or drive torques as outputs based on the linear relationships between the motion inputs (positions, velocities and accelerations) and the geometric and inertia parameters, while the geometric parameters are usually known. In order to construct an overdetermined system of equations, the IRs discrete motion values and drive torques for a given trajectory are measured during a predefined time interval and fed into the model equations, which leads to:

$$Y=W\left(q,\dot{q},\ddot{q}\right)\mathrm{\rm X}+\rho $$
(1)

Where \(Y\) is the models output, \(W\) is the (\(n\times m\)) observation matrix with \(n\gg m\), \(\mathrm{\rm X}\) is the vector of inertial parameters and \(\rho \) is the residual error vector. A commonly used linear regression method is the least squares (LS) approach [12]. Besides LS, other regression techniques like the instrumental variable approach and output error methods were also used [2, 6]. The common goal of the various strategies is to identify inertial parameters which, when used in the selected model, provide results that best fit the measurements and are also physically plausible [15].

The system of equations in (1) can only be solved if \(W\) has a full rank. Due to a lack of excitation, a restricted workspace and invariant motion during the experiments, some equations provide redundant information because they linearly depend on other equations. Hence, (1) can be reduced to a set of so-called minimal base parameters, which means that some parameters can only be identified as linear combinations [11]. However, the results are still sensitive to noise. Vandanjon et al. already observed this problem in 1995 and tried to overcome those disadvantages by planning dedicated trajectories to capture gravity, inertial, centrifugal and inertial coupling forces separately [13]. Rackl et al. attempted to solve the problem of poor excitation by parameterizing B-spline trajectories with a constraint optimization algorithm [9].

However, the presented approach of drawing the equations from the frequency response of each axis intrinsically eliminates the problem of noisy measurements and friction. Noise and zero-mean disturbances do not have an impact on the amplitude within areas of lower frequencies for measurements over several excitation periods of constant frequency. In addition, friction causes damping, which can be observed in the phase response and subtracted from the amplitude response (see Subsect. 3.2).

Current processes require complex derivation of the exciting trajectories. The presented approach offers a less complex way to get the ideal measurements to increase the rank of Eq. (1). The observation matrix here only depends on the axes’ positions leading to a simpler optimization of the measurement poses.

The frequency response offers a wide range of information regarding the dynamical system, which is utilized by the presented measurement methods. The current results can be characterized as a first step to develop a new frequency-based method.

3 Theoretical Background

In the following chapters the derivation of equations is explained. The equations form the basis for the LS identification.

3.1 Modeling of Serial Kinematics

Without external forces acting on the end effector, the dynamic model for axis k of an open loop IR with n axes can be expressed as:

$${J}_{AXk}\left({q}_{k+1, \dots ,{q}_{n}}\right){\ddot{q}}_{\mathrm{k}}+{{\uptau }_{ck}\left({\mathrm{q}}_{k},{\dot{\mathrm{q}}}_{\mathrm{k}}\right)+\uptau }_{\mathrm{gk}}\left({\mathrm{q}}_{k}\right) +{\uptau }_{\mathrm{fk}}({\mathrm{q}}_{k},{\dot{\mathrm{q}}}_{\mathrm{k}})= {\tau }_{k}$$
(2)

Where \({q}_{k}, {\dot{q}}_{k}\) and \({\ddot{q}}_{\mathrm{k}}\) are the angular position, velocity and acceleration of joint k, \({J}_{AXk}\left({q}_{k+1, \dots ,{q}_{n}}\right)\) is the total inertia effecting axis k, \({\uptau }_{ck}\left(\mathrm{q},\dot{\mathrm{q}}\right)\) is the torque due to Coriolis and centripetal forces, \({\uptau }_{gk}\left(\mathrm{q}\right)\) is the gravity torques and \({\uptau }_{\mathrm{fk}}({\dot{\mathrm{q}}}_{\mathrm{k}})\) is the friction-related torque which together add up to the drive torque \({\tau }_{k}\). For the presented experiments, just one axis is moved at a time by a maximum of 4°. Therefore, Coriolis effects do not occur and centripetal forces are absorbed by the bearings. The short trajectory and therefore small change of gravity forces leads to the assumption that gravity effects correspond to frequencies close to zero and therefore can be neglected here.

For an undamped system, the angular velocity would follow the drive torque with a phase shift of −90°. Since the analysis of the phase response reveals a deviation from this assumption, frictional damping effects cannot be neglected. There are various ways to describe friction with all its complex aspects [1]. An adequate and often used model is the combination of Coulomb and viscous friction [13]. Due to the constant velocity offset during the experiments, which causes a force excitation in a constant direction the discrete Fourier transformation of the Coulomb friction would generate a spectral line at 0 Hz, so that only the viscous friction, represented by \({\mu }_{vk}\), has to be included. The described assumptions lead to the following differential equation:

$${J}_{AXk}\left({q}_{k+1, \dots ,{q}_{n}}\right){\ddot{q}}_{\mathrm{k}}+ {\mu }_{vk}{\dot{q}}_{k}={\tau }_{k}$$
(3)

The load-side total inertia of an axis is composed of the sum of the following axes’ inertia tensors \({J}_{I,i}^{k}\), transformed into the corresponding joint coordinate system, the inertia due to the parallel displacement of the rotational axes described by the Huygens-Steiner theorem \({J}_{HS,i}^{k}\) and the load-side inertia of the motor \({J}_{mls,k}\). The latter can be expressed by the inertia of the motor on the drive side multiplied by square of the gear ratio \({u}_{k}\) leading to the following equation:

$${J}_{AXk}\left({q}_{k+1},\dots ,{q}_{n}\right)=\sum_{i=k}^{n}{z}_{k}^{^{\prime}}\left({R}_{ki}^{k}{I}_{i}^{i}{R}_{ki}^{{k}^{^{\prime}}}-{ m_{i} \tilde{v}_{i}^{k} \tilde{v}_{i}^{k} }\right){z}_{k}+{u}_{k}^{2}{J}_{mms,k}$$
(4)

Where \({z}_{k}\) is the vector of the rotational axis, \({R}_{ki}^{k}\) is the rotation matrix of coordinate frame k to i and \({I}_{i}^{i}\) is the inertia tensor described in coordinate frame i.

3.2 Systems Theory

To simplify the following equations, the index k is left out in the following explanations. The application of the Laplace transform to (3) leads to the transfer function:

$$\frac{\Omega }{\Gamma }=\frac{\mu }{{\mu }^{2}+{\omega }^{2}{J}^{2}}-i\cdot \frac{\omega J}{{\mu }^{2}+{\omega }^{2}{J}^{2}}$$
(5)

Decomposing (5) into amplitude and phase results in two equations:

$$\left|\frac{\Omega }{\Gamma }\right|=\frac{1}{\sqrt{{\mu }^{2}+{\omega }^{2}{J}^{2}}}$$
(6)
$$\varphi =\mathrm{arctan}\left(\frac{\Omega }{\Gamma }\right)=\mathrm{arctan}\left(-\frac{\omega J}{\mu }\right)\iff \mu =-\frac{\omega J}{\mathrm{tan}(\varphi )}$$
(7)

Inserting (7) into (6) leads to the final equation of the total inertia:

$$J=\frac{1}{\omega }\cdot \left|\frac{\Gamma }{\Omega }\right|\cdot \frac{1}{\sqrt{1+\frac{1}{{\mathrm{tan}(\varphi )}^{2}}}}$$
(8)

Here \(\left|\frac{\Gamma }{\Omega }\right|\) is the reciprocal of the amplitude and \(\varphi \) the phase of the measured frequency response of the sweep measurements.

4 Experiments and Validation

After introducing the theory to derive the necessary equations for the LS identification, the approach has to be validated. In order to reduce the complexity the following experiments focus on the first three axes (as seen from the base) while the last three axes are locked.

4.1 Measurement Setup

The used IR system consists of a MAX 100 of the company Mabi Robotics AG with a Sinumerik 840D sl control. The IR has six degrees of freedom and is equipped with direct and indirect encoders at each axis. The Computerized Numerical Control (CNC) is traditionally used for machine tools and therefore offers a wide range of testing methods for the dynamic behavior of the system, e.g.:

  • Frequency response measurements of the RSCS for broader bandwidths

  • And sweep measurements at discrete frequencies

The analysis of the first measurements provides the optimal frequency for the second experiment. The sweep measurements lead to more accurate amplitude responses for lower frequencies with shorter motions to perform.

As explained in Chap. 3, the amplitude of the RSCS is related to the total inertia that is acting at the observed axis. The Sinumerik enables the user to measure the frequency response of the RSCS for each axis individually. In order to reduce the influence of the control cascades, the control parameters are softened manually. During the experiment, the observed axis rotates with a speed offset while an interfering pseudo-random noise torque with specified frequency bandwidth is applied. The CNC simultaneously measures the torque via torque-related motor currents and the rotational speed using the encoders and then automatically calculates the frequency response of the RSCS (see Fig. 1). Numerous experiments with various test parameters have shown that a setting with bandwidths below 40 Hz, speed offset of 0.1 rpm and an amplitude of the excitation signal of 1% of the nominal torque generated sufficient results.

Fig. 1
figure 1

Amplitude responses of axis 1 for various poses of axes 2 and 3 a) and the geometrical identification of the ideal sweep frequency b)

In theory the sweep measurement can be set up for arbitrary excitation frequencies. After examining the RSCS via the experiment explained above, these frequencies are selected as 2, 3, 4 and 5 Hz, below the first resonant frequency and thus lower than the frequency where the load decouples from the drivetrain. The measurement superimposes sine waves of the mentioned frequencies with a rotational speed offset, which is previously optimized by considering the periodic disturbances of the drive train (e.g. cogging forces). Therefore, a rotational speed profile is determined which leads to a target path of the axis position via integration. Hence, the control parameters are not softened for this experiment because the exciting frequencies are part of the target trajectory and the control does not treat them as interfering signals. During the measurement, the time courses of the drive torque and the rotational speed are measured and transformed into the frequency domain via the discrete Fourier transformation.

4.2 Initial Analysis of the Frequency Response

Figure 1a shows the amplitude responses for axis 1 for different poses of axis 2 and 3. An important landmark is the first locked-rotor frequency, which decreases from about 12 Hz to 5 Hz as the inertia increases. For the decade immediately below the resonance the system behaves like a first order pole. Elsewhere, this assumption is not valid. In any case, the effect of changing the robots pose and thus increasing its moment of inertia about axis 1, results in a decreased the first locked-rotor frequency.

If the torque and angular velocities are interpreted in terms of inertia the frequency response of the RSCS can be transformed leading to Fig. 1b. The graph illustrates how an ideal sweep frequency can be identified. The ideal frequency lies in between the resonant frequency and an area of lower frequencies where friction is affecting the amplitude for \(f<0{.}7 Hz\)). For a given pose the resonant frequency and the frequency at the intersection of the asymptotes of inertia- and friction-dominated areas (3 dB point) are calculated. The ideal frequency is the geometrical mean of those frequencies. In order to circumvent drive train harmonics while also maintaining a specified number of sine wave periods during the trajectory, the frequency is rounded to the next integer number of 2, 3, 4 or 5 Hz. This procedure is performed with different robot poses leading to ideal excitation frequencies for the sweep measurements described below.

4.3 Sweep Measurements

The amplitude at a discrete frequency for Eq. (8) is provided by the sweep measurements. The measured total inertia and the corresponding position values are the inputs that generate new equations for the LS procedure. In order to add as many not linearly dependent equations as possible the pose of the IR has to vary. When attempting to select poses, a criterion for decision making is required. The standard procedure, which is also employed in this work, is to calculate the condition number of the identification matrix. The condition number allows the quantification of the maximum error of the identified parameters due to disturbances. To optimize the condition number an iterative procedure is used: Initially a list of all collision-free poses in a 5° grid that fit into the robot cell is generated. Then for each step, the pose, which results in the lowest condition number is added to the list.

Figure 2 illustrates the relationship between the positions of axes 2 and 3 and the total inertia measured at axis 1 for the measured data and the data generated with the reference model. The shown graph validates the presented approach as the measurements clearly match the expectable values regarding the inertial parameters provided by the manufacturer. In general, the logical relationship is that the measured inertia is higher the wider the distance between the following links of the IR and the center of rotation of the observed axis is.

Fig. 2
figure 2

Correlation of measured and reference data

5 Evaluation

In general, the whole approach of calculating new poses for the measurements proved to be comprehensible and efficient. The optimization leads to over 300 different poses for the identification. After performing the measurements the system of equations for the LS procedure was constructed. As described before, the last three axes were locked, which allows the combination of the last four links and the end effector of the robot into one body. The resulting 30 parameters were transformed into a set of eight base parameters. After carrying out the standard LS the identified set of base parameters is inserted into the model equations and compared to the model based on the reference parameters of the manufacturer. A frequently used measure for the differences between model values and a measurement is the root-mean-square error (RMSE).

In Table 1 the RMSEs between the LS fitted model, the reference model and the measurements at the various poses are listed. The high deviations between the reference model and the measurement can probably be traced back to the CAD calculation of inertial parameters, which only considers the large casting components of the IR. In addition, the reference model does not take the additional structures like the assembled ducts and hose packages into account, which results in a significantly larger RMSE for all axes. Summing up, the identified LS fitted model can map the measured inertias for the different poses adequately. The significantly lower RMSE values indicate an improved model accuracy. The last line in Table 1 illustrates the models ability to depict the physical behavior of the IR. In contrast to axes 1 and 3, the increase in RMSE of axis 2 indicates a poorer conditioning of the observation matrix which could be optimized by further poses in the future.

Table 1 Comparison of the RMSEs for the LS fitted model, the reference model and the measurements

Similarly good results are expected when extending the approach to the other axes of the robot. Nevertheless, further equations generated by additional exciting trajectories would provide information that could be used to identify more parameters. However, the presented approach does lead to a reduced model, which accurately matches the dynamics of the IR.

6 Conclusion

Current methods to identify masses and inertias of IR links are performed with a model consisting of differential equations, exciting trajectories and linear regression algorithms. However, those methods fail to identify the parameters properly because the algorithms are sensitive to noise and effects like friction are difficult to reproduce in a model. The presented approach of a frequency response based identification of inertial parameters delivers promising results. Due to the analysis in the frequency domain and the possibility of frequency selective measurements, the procedure offers the decisive advantage of independency to noise and a simplified process for the generation of exciting trajectories. In conclusion, the identified set of base parameters properly matches the reference and measurement data for the first three axes.

Currently the procedure is extended to all six axes. In addition, the authors plan to add more information through further exciting trajectories. The combination of the presented approach with additional equations for the LS procedure leads to an identification routine for six-axis IRs.