Method for compensating for coriolis, centrifugal and gravitational couples in a movement simulator and system comprising a movement simulator

11036193 · 2021-06-15

Assignee

Inventors

Cpc classification

International classification

Abstract

Disclosed is a method for compensating for disturbing couples for a movement simulator, the simulator including, for each axis, a monovariable correcting unit that receives a signal giving the difference between the setpoint θ.sup.r.sub.j and the measurement θ.sub.j for the corresponding axis and producing the control signal U.sub.j. The disruptive couples are Coriolis, centrifugal and gravitational couples and furthermore a compensating law calculates a formula (a) estimating the disruptive couples, calculated on the basis of an error ε.sub.j(t) that is the control signal U.sub.j filtered by a filter H(q.sup.−1), and the simulator is modelled with a dynamic model expressing the couples in an affine way with respect to a set of base parameters χ according to a matrix relationship of the type: formula (b), and a subset j of base parameters, the estimation of the couples being formula (c), and, online, the α.sub.j are calculated via an iterative equation.

Claims

1. A method for compensating for disturbing torques for a movement simulator, said simulator including joints controlled by effector members about axes j as a function of movement set points θ.sup.r.sub.j on the axes, each effector member of a specific given axis of the effector member receiving a command U.sub.j and a sensor for the axis measuring θ.sub.j, the action of the effector member about said axis j, the simulator being in a system including, for each axis, a control law with a monovariable corrector block in a feedback loop, said monovariable corrector block of transfer function Corr(q.sup.−1) receiving as an input a signal of difference between the set point θ.sup.r.sub.j and the measurement θ.sub.j for the corresponding axis and producing as an output the command U.sub.j, wherein the disturbing torques are Coriolis, centrifugal and gravitational torques and wherein, for each axis, a control law is implemented, which includes, in addition to the monovariable corrector block per axis, a non-linear and multivariable compensation law combined to the monovariable correctors, the compensation law calculating, as a function of the command U.sub.j, an estimation {circumflex over (P)}.sub.j(t) of the disturbing torques, said estimation {circumflex over (P)}.sub.j(t) being injected into the command U.sub.j sent to the effector member, to compensate for the disturbing torques, and wherein the estimation {circumflex over (P)}.sub.j(t) of the disturbing torques being calculated based on the value of an error signal ε.sub.j(t), which is a version of the command U.sub.j filtered by a transmittance filter H(q.sup.−1) intended to eliminate at least the direct component from the command, and the movement simulator is previously modelled in order to obtain a dynamic model affinely expressing the torques with respect to a set of base parameters % according to a matrix relation of the type: ϕ.sub.j.sup.T(θ, {dot over (θ)}, {umlaut over (θ)})χ.sub.jthe index j corresponding to the different axes, a sub-set α.sub.j of the base parameters corresponding to disturbing torques having a level higher than a determined disturbance threshold is determined, following to the previous modelling of the simulator, the estimation {circumflex over (P)}.sub.j(t) of the disturbing torques being calculated by: {circumflex over (P)}.sub.j(t)=ϕ.sub.j.sup.T(θ, {dot over (θ)}){circumflex over (α)}.sub.j, and wherein the estimations of the sub-sets of base parameters are calculated in line by an iterative equation:
{circumflex over (α)}.sub.j(t+1)={circumflex over (α)}.sub.j(t)+μ.sub.jϕ.sub.Fj.sup.T(t)ε.sub.j(t) with ϕ.sub.Fj(t)=H(q.sup.−1)T(q.sup.−1)ϕ.sub.1(t) the vector elements ϕ.sub.j.sup.T(t) being filtered by H.sub.j.Corr.sub.j.G.sub.j./(1+C.sub.j.H.sub.j) to obtain the vector ϕ.sub.Fj.sup.T(t), T being defined by the relation (1+Corr(q.sup.−1)L(q.sup.−1)).Math.T(q.sup.−1)=Corr(q.sup.−1)L(q.sup.−1), with L.sub.j(q.sup.−1) the discrete transmittance of the transform of the product 1 J j 1 S in the case of a sampled system where J.sub.j are the inertias and μ.sub.j is a defined positive real square matrix serving as an adjustment parameter for the speed of convergence of the estimation.

2. The method according to claim 1, wherein, during the calculation of the estimation {circumflex over (P)}.sub.j(t) of the disturbing torques, the effects of the variation of the inertia matrix are neglected.

3. The method according to claim 2, wherein a real-time adaptive compensation is implemented, in which the estimations of the sub-set of base parameters are previously calculated and stored in tables, wherein: in a preliminary phase: for each non-linear effect of each axis, a sensitizing movement is chosen on one or several other constant-speed axes, leading to a significant disturbance in the torque of said axis, estimations of the sub-set of base parameters are calculated by the iterative equation {circumflex over (α)}.sub.j(t+1)={circumflex over (α)}.sub.j(t)+μ.sub.jϕ.sub.Fj.sup.T(t)ε.sub.j(t) until there is convergence, in a real-time implementation phase, the base parameter tables are directly used to calculate the estimation {circumflex over (P)}.sub.j(t) of the disturbing torques by: {circumflex over (P)}.sub.j(t)=ϕ.sub.j.sup.T(θ, {dot over (θ)}){circumflex over (α)}.sub.j.

4. The method according to claim 2, wherein a recursive gradient algorithm is implemented.

5. The method according to claim 2, wherein the movement simulator is used at constant speed or low speed-variation rate in the phase of estimation of the estimates {circumflex over (α)}.sub.j(t).

6. The method according to claim 1, wherein the transmittance filter H(q.sup.−1) intended to eliminate the direct component from the command is a high-pass filter.

7. The method according to claim 6, wherein a real-time adaptive compensation is implemented, in which the estimations of the sub-set of base parameters are previously calculated and stored in tables, wherein: in a preliminary phase: for each non-linear effect of each axis, a sensitizing movement is chosen on one or several other constant-speed axes, leading to a significant disturbance in the torque of said axis, estimations of the sub-set of base parameters are calculated by the iterative equation {circumflex over (α)}.sub.j(t+1)={circumflex over (α)}.sub.j(t)+μ.sub.jϕ.sub.Fj.sup.T(t)ε.sub.j(t) until there is convergence, in a real-time implementation phase, the base parameter tables are directly used to calculate the estimation {circumflex over (P)}.sub.j(t) of the disturbing torques by: {circumflex over (P)}.sub.j(t)=ϕ.sub.j.sup.T(θ, {dot over (θ)}){circumflex over (α)}.sub.j.

8. The method according to claim 6, wherein a recursive gradient algorithm is implemented.

9. The method according to claim 6, wherein the movement simulator is used at constant speed or low speed-variation rate in the phase of estimation of the estimates {circumflex over (α)}.sub.j(t).

10. The method according to claim 1, wherein a real-time adaptive compensation is implemented, in which the estimations of the sub-set of base parameters are previously calculated and stored in tables, wherein: in a preliminary phase: for each non-linear effect of each axis, a sensitizing movement is chosen on one or several other constant-speed axes, leading to a significant disturbance in the torque of said axis, estimations of the sub-set of base parameters are calculated by the iterative equation {circumflex over (α)}.sub.j(t+1)={circumflex over (α)}.sub.j(t)+μ.sub.jϕ.sub.Fj.sup.T(t)ε.sub.j(t) until there is convergence, in a real-time implementation phase, the base parameter tables are directly used to calculate the estimation {circumflex over (P)}.sub.j(t) of the disturbing torques by: {circumflex over (P)}.sub.j(t)=ϕ.sub.j.sup.T(θ, {dot over (θ)}){circumflex over (α)}.sub.j.

11. The method according to claim 10, wherein the convergence corresponds to the fact that the value of the error signal ε.sub.j(t) tends to zero.

12. The method according to claim 11, wherein a recursive gradient algorithm is implemented.

13. The method according to claim 11, wherein the movement simulator is used at constant speed or low speed-variation rate in the phase of estimation of the estimates {circumflex over (α)}.sub.j(t).

14. The method according to claim 10, wherein a recursive gradient algorithm is implemented.

15. The method according to claim 10, wherein the movement simulator is used at constant speed or low speed-variation rate in the phase of estimation of the estimates {circumflex over (α)}.sub.j(t).

16. The method according to claim 1, wherein a recursive gradient algorithm is implemented.

17. The method according to claim 1, wherein the movement simulator is used at constant speed or low speed-variation rate in the phase of estimation of the estimates {circumflex over (α)}.sub.j(t).

18. The method according to claim 1, wherein a movement simulator is implemented, which has at least two controlled axes and which includes for each axis a control law with a monovariable corrector block in a feedback loop, said corrector receiving as an input a signal of difference between the setpoint θ.sup.r.sub.j and the measurement θ.sub.j for the corresponding axis and producing as an output the command U.sub.j intended to an effector member, and wherein, between the output of the corrector block and the effector member, a hardware module is added, for calculating the compensation law and compensating the command, said module being either a computer program loaded on a support and intended to complete an computer program of the monovariable corrector block, or an electronic and programmable device for capturing the command at the exit of the corrector block and sending to the motor a command compensated by the compensation law.

19. The method according to claim 1, wherein a joint model is used, in which the inertias of the different joints are independent relative to each other, the inertia tensors of the joints of the movement simulator being a diagonal matrix.

20. A system with a movement simulator including a movement simulator and means for compensating for disturbing torques, said simulator including joints controlled by effector members about axes j as a function of movement set points θ.sup.r.sub.j on the axes, each effector member of a specific given axis of the effector member receiving a command U.sub.j and a sensor for the axis measuring θ.sub.j, the action of the effector member about said axis j, the system including, for each axis, a control law with a monovariable corrector block in a feedback loop, said corrector block receiving as an input a signal of difference between the set point θ.sup.r.sub.j and the measurement θ.sub.jfor the corresponding axis and producing as an output the command U.sub.j, wherein the means for compensating for the disturbing torques are a programmable calculator specifically configured to execute the method according to claim 1.

Description

(1) In the appended drawings:

(2) FIG. 1 shows a controlled movement simulator of the state of the art, wherein each control axis has its own monovariable control law with corrector and feedback loop,

(3) FIG. 2 shows a simplified block diagram of the dynamic model of a joint, taking into account, in addition to the frictions, the effects of the Coriolis, centrifugal and gravitational torques (the latter being sometimes called “unbalance mass”),

(4) FIG. 3 shows a simplified block diagram of an application of the dynamic model of FIG. 2 to a monovariable control law with corrector and feedback loop, in the case of a position servo-control,

(5) FIG. 4 shows a simplified block diagram of the type of the application of FIG. 3, but this time in the case of a speed servo-control, wherein the final integration of the speed to obtain the position can then be omitted,

(6) FIG. 5 shows a simplified block diagram of the type of the application of FIG. 3, but with a reorganization of the blocks to isolate the effects of the Coriolis, centrifugal and gravitational torques,

(7) FIG. 6 shows a simplified block diagram based on that of FIG. 5, with introduction of a law for compensating for the effects of the Coriolis, centrifugal and gravitational torques by injecting into the loop of an estimation of these latter based on an error signal obtained from the motor torque signal produced by the corrector, and

(8) FIGS. 7 and 8 show two simplified block diagrams based on that of FIG. 6, in two modes of application of the invention, a second, adaptive mode (FIG. 7), for constant speeds with in-line/real time calculations of a vector sub-set of relevant base parameters, and a first, non-adaptive mode (FIG. 8), with the use of the vectorial sub-set of relevant base parameters calculated in the second mode and then memorized.

(9) The state of the art will now be described in relation with FIG. 1, in order to facilitate the later presentation of the invention based on known elements. In FIG. 1, a control simulator including three joints, which will be hereinafter likened to axes, is controlled as a function of individual set points on each of the axes.

(10) One axis corresponds to one effector/motor and one sensor and, in the case where one joint of the simulator corresponds to one effector/motor and one sensor, the joint may be likened to an axis. In the case where the joint is complex, for example with several effectors and/or several sensors, it can be likened to a set of axes that will be processed as described. It is the same in the case of a joint with one effector/motor and several sensors or several motors and only one sensor.

(11) One monovariable corrector block is implemented on each axis with a loop of feedback and measurement of the angular position about the corresponding axis. In this description, the term “corrector” covers a monovariable corrector block as conventionally used, i.e. without taking into account of the interactions between the axes, without compensation for the Coriolis, centrifugal and gravitational torques.

(12) In FIG. 1, the variables: θ.sub.1, θ.sub.2, θ.sub.3 corresponding to the angular positions of the axes, θ.sub.1.sup.r, θ.sub.2.sup.r, θ.sub.3.sup.r are the set points of the angular positions of said axes and U.sub.1, U.sub.2, U.sub.3 are the commands coming from the monovariable correctors and driving the power amplifiers of the simulator motors. One corrector is implemented per controlled axis.

(13) The correctors may have, as in the figure, one degree of freedom, and be, for example of the PID type, or also two degrees of freedom, for example RST, LQG, predictive control, H-infinity . . . . These correctors are essentially linear. The set points θ.sub.1.sup.r, θ.sub.2.sup.r, θ.sub.3.sup.r are provided by a set point generator, itself acting as a function the orders given by the user of the movement simulator.

(14) Moreover, a movement simulator itself is modellable by means of the traditional tools of robotics. In particular, to determine the dynamic model of the movement simulator, the Euler-Lagrange equations may in particular be used:

(15) d d t ( L ( θ , θ . ) θ . ) - L ( θ , θ . ) θ = Γ ( 1 )

(16) with:

(17) θ: the angular position vector of each axis,

(18) {dot over (θ)}: the angular speed vector of each axis,

(19) Γ: the vector of the torques produced by the motors of each axis, and

(20) where L(θ, {dot over (θ)}) is the Lagrangian of the system that is, by definition:
L(θ,{dot over (θ)})=E.sub.c(θ,{dot over (θ)})−E.sub.p(θ)  (2)

(21) where:

(22) E.sub.c(θ, {dot over (θ)}) is the total kinetic energy of the simulator,

(23) E.sub.p(θ) the potential energy thereof.

(24) The fundamental equation of the dynamics of the robotic systems then writs as:
A(θ){umlaut over (θ)}+M(θ,{dot over (θ)})d+G(θ)+F({dot over (θ)})=Γ  (3)

(25) with:

(26) {umlaut over (θ)}: the angular acceleration vector of each axis,

(27) A(θ): a square matrix that is called “inertia matrix”,

(28) M(θ, {dot over (θ)}): the square matrix of the centrifugal and Coriolis torques,

(29) G(θ): the gravitational torque vector,

(30) F({dot over (θ)}): the friction torque vector.

(31) A(θ), MI(θ, {dot over (θ)}), G(θ) depend on the geometry of the movement simulator and in particular on the inertia tensors of each of the joints, on the positions of the mass centres with respect to the axes of rotation, etc. The dynamic model of the robot may be obtained using various conventions used in robotics, in particular the Denavit-Hartenberg convention or, also the modified Denavit-Hartenberg convention (described in the article: “A new geometric notation for open and closed-loop robots”, in IEEE international conference on robotics and automation, San Francisco, April 1986).

(32) In particular, using the modified Denavit-Hartenberg convention, it is shown that a dynamic model is obtained, which is linear with respect to a set of parameters χ, called base parameters, according to a matrix relation of the type:
Γ=Φ.sup.T(θ,{dot over (θ)},{umlaut over (θ)})χ  (4)

(33) In the matrix Φ, the terms depending on {umlaut over (θ)} are necessarily related to the coefficients of the inertia matrix.

(34) Hence, the torque Γ.sub.j of the joint j for 1≤j≤N, where N is the number of joints, may be written as:
Γ.sub.j=A.sub.1j{umlaut over (θ)}.sub.1+A.sub.2j{umlaut over (θ)}.sub.2+A.sub.3j{circumflex over (θ)}.sub.3+Σ.sub.i.sup.NΣ.sub.k.sup.NB.sub.jik{dot over (θ)}.sub.i{dot over (θ)}.sub.k+Σ.sub.i.sup.NC.sub.ji{dot over (θ)}.sub.i.sup.2+G.sub.j+F.sub.j  (5)

(35) where the A.sub.1j, B.sub.jik, C.sub.ji, G.sub.j depend on the angular positions of the axes (i.e. the vector θ) and on the base parameters (i.e. on χ). Whereas F.sub.j depends on the angular speeds of the axes (i.e. the vector {dot over (θ)}).

(36) The friction torque F.sub.j can be decomposed into a dry friction torque that is considered, in a first approximation, as being proportional to the sign of {dot over (θ)}.sub.j, and a viscous friction torque that is considered, in a first approximation, as being proportional to {dot over (θ)}.sub.j Under these first approximation conditions, it is observed that, at constant speed of a joint, and hence without acceleration, the friction torque is constant and can hence be eliminated by high-pass filtering or at the very least by elimination of the direct components.

(37) Within the framework of the procedure of adjustment of the law for compensating for the Coriolis, centrifugal and gravitational torques, the following approximations are made:

(38) 1) the inertia matrix of the movement simulator has terms independent from the vector θ, which is the angular position vector,

(39) 2) the inertia matrix of the movement simulator is diagonal.

(40) The first approximation is quite well justified in general, taking into account the geometry of the movement simulators. The second is justified by the fact that the tests performed within the framework of the adjustment of the compensation law are made at constant speed and hence null acceleration, as will be seen hereinafter during the implementation of the multivariable control law of the invention.

(41) These two approximations amount to say that, for the inertia matrix:

(42) A [ J 1 0 0 0 J 2 0 0 0 J 3 ] ( 6 )

(43) Under these conditions of approximation, it is possible to determine, for each joint of the simulator, a block diagram describing the dynamic model of the system, which is schematized in FIG. 2.

(44) Within the framework of the application of a conventional control law, i.e. a monovariable law, a simplified linearized dynamic model (that is to say, that does not take into account the Coriolis, centrifugal, gravitational effects and the dry frictions) of the system developed hereinabove may be used. The obtained corrector-based conventional monovariable control law is schematized for, respectively, a position and speed servo-control, in FIGS. 3 and 4.

(45) The role of the corrector is to ensure the follow-up of position and speed set points and hence to compensate for the disturbing torques. According to the dynamics of this corrector, the disturbing torques are more or less well compensated for. In particular, the more the corrector dynamics is high, the better the disturbance rejection is made, and the less the disturbance effect occurs on the servo-controlled variable, whether it is the speed or the position.

(46) However, in many cases, even if the corrector is optimally adjusted so as to have a significant dynamic, these disturbances are too imperfectly compensated for, due to the fact that monovariable correctors are implemented and hence that the interactions/couplings between joints/axes are not taken into account as a whole.

(47) This is hence for that purpose that, with the present invention, a means is proposed, which performs a more efficient compensation for the non-linear disturbances, in particular the Coriolis, centrifugal and gravitational torques, than those which the only conventional monovariable correctors seen hereinabove can perform, and so as to minimize the impact of said disturbances on the servo-controlled values.

(48) The compensation law proposed, which is non-linear and multivariable, will now be described, as well as the adjustment method thereof.

(49) First of all, the inertias J.sub.j as well as the amplifier gains K.sub.aj, and the torque constants K.sub.mj of the motors, are supposed to be known. In other words, the ratio

(50) K a j K m j J j
is directly or indirectly known.

(51) The term “amplifier gains” must be understood herein within the broad meaning and as possibly including gains of potential digital-analogic converters, analogic-digital converters and of reducers or other elements of the loop.

(52) Let's K.sub.j be the whole gain between the command coming from the control law and the torque produced by the motor(s) of the axis j.

(53) Likewise, the transfer functions Corr.sub.j(q.sup.−1) of each monovariable corrector are supposed to be known.

(54) For that purpose, the linearized dynamic model of the system formed by the simulator will have been identified, and the monovariable control law, i.e. the corrector, will have been adjusted, as shown hereinabove, in order to collect these data. The constants of the motor torque are data from the motor manufacturers. The amplifier gains are measurable or calculable data, according to the case. The inertias are obtained by identification and, on this matter, reference may be made to the work of L.Ljung “System identification, Theory for the user”, Prentice Hall.

(55) In a variant of implementation, estimations or hypotheses may be made about the model, and in particular about the inertias, or even be calculated based on an analysis of a modelled computer representation of the simulator.

(56) The multivariable compensation and monovariable corrector control law proposed may be declined into two modes of application of the compensation law: a first embodiment for non-adaptive compensation for the disturbing torques using previous determined parameters, and a second mode for in-line/real time estimation and compensation of the parameters necessary to the application of the first mode.

(57) The second mode of in-line estimation, which may be qualified as adaptive, is used in a phase of adjustment of the compensation law for determining the parameters that are useful for the first mode. In a phase of functional application to tests, the first mode of compensation for the disturbing torques is preferably used, using the parameters previously determined with the second mode.

(58) We will first describe the second mode of estimation of the parameters useful for the compensation law.

(59) In the adjustment phase, the adaptive law is based on the fact if an axis j rotates at a constant speed and if the dry friction torque is considered as being constant over 360°, and in the hypothesis that there is no Coriolis, centrifugal or gravitational torque, which are then null, then the output of the corrector U.sub.j(t) is constant. Conversely, still at constant speed, but in the hypothesis that Coriolis, centrifugal and gravitational torques are present, then the command U.sub.j(t) is no longer constant due to the feedback caused by the presence of the loop. As will be seen, a filtering makes it possible to separate the non-constant elements from those which are constant.

(60) We will now use a representation of the looped system that makes it possible to isolate the effects of the Coriolis, centrifugal and gravitational torques with respect to the other effects mentioned hereinabove.

(61) Let's P.sub.j(t) be equal to the sum of the Coriolis, centrifugal and gravitational torques acting on the axis j, the whole multiplied by the inverse of the amplifier gain K.sub.aj and by the inverse of the torque constant of the motor K.sub.mj, i.e.:

(62) P j ( t ) = 1 K j ( .Math. i N .Math. k N B j i k θ . i θ . k + .Math. i N C j i θ . i 2 + G j ( θ j ) ) ( 7 )

(63) With these conventions, a simplified scheme of the control loop peculiar to a joint may be modelled according to the scheme of FIG. 5 in the case of a position servo-control.

(64) To obtain a compensation for the effects of the Coriolis, centrifugal and gravitational torques, it is hence just necessary to inject a compensation P.sub.j(t), which is an estimation of P.sub.j(t), into the output of the corrector, according to the scheme of FIG. 6.

(65) The adaptive compensation law of the second mode is used when the speed set point is constant. This law consists in minimizing the square or, in a variant, the sum of the squares, of an error signal ε.sub.j(t), corresponding to the command U.sub.j(t) passed through a high-pass filter intended to eliminate the direct component of U.sub.j(t) and whose discrete transmittance is noted H(q.sup.−1), where q.sup.−1 is the delay operator in this sampled system.

(66) Let's L.sub.j(z) be the z-transform of the system

(67) 1 J j s
provided with a sample and hold circuit, and L.sub.j(q.sup.−1) the associated discrete transmittance.

(68) Taking into account the representation of FIG. 6, we have:

(69) .Math. j ( t ) = H ( q - 1 ) Corr j ( q - 1 ) L j ( q - 1 ) 1 + Corr j ( q - 1 ) L j ( q - 1 ) .Math. ( P j ( t ) - P ^ j ( t ) ) ( 8 )

(70) But, taking into account the relation (4) that affinely expresses the disturbing torques with respect to the base parameters, the relations (9), (10), (11) can be deduced, in which the components of the vectors α.sub.j form a sub-set of χ as defined by the relation (4). It other words, only the components of α.sub.j that are the elements of χ that have an impact of the Coriolis, centrifugal and gravitational torques of axis j will be kept:
P.sub.1(t)=ϕ.sub.1.sup.T(θ,{dot over (θ)})α.sub.1  (9)
P.sub.2(t)=ϕ.sub.2.sup.T(θ,{dot over (θ)})α.sub.2  (10)
P.sub.3(t)=ϕ.sub.3.sup.T(θ,{dot over (θ)})α.sub.3  (11)

(71) There hence exists a generic relation of the type of equation (12):
P.sub.j(t)=ϕ.sub.j.sup.T(θ,{dot over (θ)})α.sub.j  (12)

(72) This sub-set hence includes the components of the most significant α.sub.j, i.e. the base parameters for which the associated disturbing torques are the highest, in practice higher than a threshold that will have been determined. It hence understood that, as a function of the threshold and hence of the significance level chosen, the compensation will be more or less accurate. For example, based on a theoretical modelling, we will first determine the base parameters that produce the highest disturbing torque.

(73) The dependence of ϕ.sub.j on {umlaut over (θ)} is omitted, taking into account the fact that the adaptive law is intended to operate at constant or almost-constant speeds, corresponding to null or almost-null accelerations.

(74) Indeed, the movement simulator is herein used at constant speed of movement and, if there is a variation of speed, the latter must be the lowest possible, for example lower that 1%.

(75) Let's {circumflex over (α)}.sub.1(t) be the estimate of α.sub.j. The estimate of P.sub.j(t), noted {circumflex over (P)}.sub.j(t), is written:
{circumflex over (P)}.sub.j(t)=ϕ.sub.j.sup.T(θ,{dot over (θ)}){circumflex over (α)}.sub.j  (13)

(76) Hence, the signal E(t) may be expressed as follows:

(77) .Math. j ( t ) = H ( q - 1 ) Corr j ( q - 1 ) L j ( q - 1 ) 1 + Corr j ( q - 1 ) L j ( q - 1 ) .Math. ( α j T ( t ) - α ^ j T ( t ) ) ϕ j ( t ) ( 14 )

(78) The previous relation (14) leads to propose the following estimation formula:
{circumflex over (α)}.sub.j(t+1)={circumflex over (α)}.sub.j(t)+μ.sub.jϕ.sub.j.sup.T(t)ε.sub.j(t)  (15)

(79) where μ.sub.1 is a positive real defined square matrix, which serves as a parameter for adjusting the speed of convergence of the estimation. This formula results from the application of the recursive gradient algorithm.

(80) According to the passivity theory, a sufficient condition of convergence of the convergence formula (15) is given by the following condition:

(81) e ( H ( z ) C ( z ) L ( z ) 1 + C ( z ) L ( z ) ) > 0 z ( 16 )

(82) This condition of convergence may sometimes prove restricting, so it is preferable to free from it by a suitable filtering of ϕ.sub.j(t). This filtering consists in filtering the components of the matrix ϕ.sub.j.sup.T(t) by H.sub.jCorr.sub.jG.sub.j/(1+C.sub.jH.sub.j) to obtain the matrix ϕ.sub.Fj(t).

(83) Let's define T(q.sup.−1) such that:
(1+Corr(q.sup.−1)L(q.sup.−1)).Math.T(q.sup.−1)=Corr(q.sup.−1)L(q.sup.−1)  (17)

(84) The following compensation law is finally proposed:
{circumflex over (α)}.sub.j(t+1)={circumflex over (α)}.sub.j(t)+μ.sub.jϕ.sub.Fj.sup.T(t)ε.sub.j(t)  (18)
with ϕ.sub.Fj(t)=H(q.sup.−1)T(q.sup.−1)ϕ.sub.j(t)  (19)
If the vector ϕ.sub.Fj(t) is decorrelated from the noise of the loop j, then the estimation of the vector {circumflex over (α)}.sub.j is not biased.

(85) FIG. 7 shows the whole control law implementing this compensation law with in-line estimation of the {circumflex over (α)}.sub.j and that corresponds to the second mode of in-line estimation that allows calculating the parameters useful for the compensation.

(86) In this second embodiment, the control law of FIG. 7 may be used as such to obtain the compensation during the use of the movement simulator to perform tests on measurement devices.

(87) However, the compensation is efficient/obtained only for constant-speed movements and when one or several movement speeds are modified in the simulator, transients are liable to occur, which are detrimental to the compensation, but also to the quality of the estimation.

(88) Consequently, it is preferred that the first embodiment shown in FIG. 8 for the compensation during tests on movement simulator, corresponding to a phase of functional use of the movement simulator and that uses the results of the control law of FIG. 7, the results (base parameters) being stored for a later use with the control law corresponding to FIG. 8.

(89) To be able to fully use this first mode of FIG. 8, the following action that passes through the second mode is used: for each non-linear effect of each axis, a constant-speed sensitizing movement leading to a significant disturbance on one or several other axes is chosen. This process is hence repeated to process all the axes. the adaptive law of the second mode, i.e. according to the control law of FIG. 7, is applied until there is convergence, i.e. the signal ε(t) tends to 0 and hence the base parameters become constant at the desired accuracy. after convergence, the estimated base parameters {circumflex over (α)}(t) become/are constant and are memorized in tables. The tables are hence consisted of estimated base parameters {circumflex over (α)}, with a table for each axis, wherein the number of parameters to be stored does not exceed about ten for each axis. once the tables obtained, the control law of the first compensation mode as shown in FIG. 8 may be used, that is to say that the values of a memorized in the table are reused according to a law of the type:
{circumflex over (P)}.sub.j(t)=ϕ.sub.j.sup.T(θ,{dot over (θ)}){circumflex over (α)}.sub.j

(90) It hence becomes possible, in the first mode, to use the compensation on other movements than constant-speed movements.

(91) The invention has been applied to a movement simulator of the IXBLUE Company, herein a machine Evo-30, with three controlled-axes, and it has been possible to obtain attenuations of the coupling disturbances of 17 dB and 22 dB according to the axes and the type of disturbance Coriolis, centrifugal and/or gravitational.