MEASUREMENT OF TRANSFER FUNCTION IN A MECHATRONIC SYSTEM

Information

  • Patent Application
  • 20230082667
  • Publication Number
    20230082667
  • Date Filed
    February 11, 2021
    4 years ago
  • Date Published
    March 16, 2023
    2 years ago
Abstract
A device comprising at least one electromechanical system and an electronic control unit comprising both a servo control loop connecting together the input and the output of the electromechanical system, and also a digital corrector. The device includes a software module having an input and an output connected respectively to the output and to the input of the electromechanical system. For each frequency of a set of frequencies that are to be analyzed, the software module is programmed: to issue a sinusoidal excitation signal on its output and to recover a response signal on its input; to model the response signal by means of a Fresnel representation and to filter it about the excitation frequency by means of at least one Kalman filter in order to obtain a state vector of the filtered response signal; and to obtain at least one transfer function for the system from the model, from the excitation signal, and from the input signal.
Description
BACKGROUND OF THE INVENTION

The present invention relates to the field of servo-controlled systems, such as mechatronic systems or electromechanical systems.


In such a system, the input and the output of the system are linked together by a transfer function. In a system comprising an actuator for servocontrolling the output of the system by taking account of a measurement of that output, the output depends both on the input to the system and also on disturbances that may be internal or external, on defects in the control train and/or in the feedback loop, and/or in the actuator . . . , such that it can be difficult to determine the transfer function of the system. However, knowledge of that transfer function makes it possible to obtain more accurate operation of the system that is thus looped by the actuator and the sensor(s) measuring the output of the system.


In order to determine the transfer function, it is known to connect an analyzer or an oscilloscope for performing mathematical or signal-processing functions between the input and the output of the mechatronic or electromechanical system. Nevertheless, that needs it to be possible for external equipment to be connected, possibly via interfaces such as an analog-to-digital converter (ADC) or a digital-to-analog converter (DAC). Determining the transfer function thus requires operation of the system to be interrupted in order to open the feedback loop and undertake a maintenance operation, which requires the intervention of an operator.


Object of the Invention

A particular object of the invention is to enable at least one of the transfer functions of an electromechanical or mechatronic system to be determined, and to do so with limited impact on its operation and with equipment that is limited.


SUMMARY OF THE INVENTION

To this end, according to invention, there is provided a device comprising at least one electromechanical system having an input and at least one output, and an electronic control unit comprising both a servo control loop connecting together the input and the output of the electromechanical system, and also a digital corrector. The device includes a software module having an input connected to the output of the electromechanical system and an output connected to an input of the electromechanical system, and, for each frequency in a set of frequencies that are to be analyzed, the software module is programmed:

    • to generate at least one sinusoidal excitation signal;
    • to issue the sinusoidal excitation signal on its output and to recover a response signal on its input;
    • to model the response signal by means of a Fresnel representation and to filter it about the excitation frequency by means of at least one Kalman filter in order to obtain a state vector of the filtered response signal;
    • to multiply the state vector by a rotation matrix in order to obtain a real part and an imaginary part; and
    • to perform complex number division to obtain at least one transfer function for the system from the model, from the excitation signal, and from the input signal.


The device of the invention thus makes it possible to determine the following transfer functions for a given system:

    • the transfer function of the closed loop before and after injecting the sinusoidal signal;
    • the transfer function of the open loop;
    • the transfer function of the electromechanical portion; and
    • the transfer function of the corrector portion.


These transfer functions can be determined by the device of the invention without any need to interrupt the servo control loop, and the computations necessary for making the estimates are relatively simple and do not require major computation resources as a result of using:

    • a Fresnel representation for modelling the excitation and measurement signals in the system;
    • a converged-gain Kalman filter for filtering measurements about the excitation frequency;
    • a single matrix product for calculating the transfer function (in complex form) between the excitation and one of the measurements (thereby obtaining the closed loop before or after the disturbance depending on the location of the measurement point); and
    • different measurement points in the loop (for a given excitation) and merely by dividing complex transfer functions by one another, it is possible to obtain:


      a. the transfer function of the open loop;


      b. the transfer function of the electromechanical portion; and


      c. the transfer function of the corrector portion.


By way of example, the invention can be used in a system for orienting and stabilizing the aiming line of an optronic device by controlling the motors of a gyro-stabilized platform on which the optronic device is mounted.


It is also possible to use invention in other actuator systems, such as a system for actuating the control surfaces of an aircraft.


Other characteristics and advantages of the invention appear on reading the following description of a particular and nonlimiting embodiment of the invention.





BRIEF DESCRIPTION OF THE DRAWINGS

Reference is made to the accompanying drawings, in which:



FIG. 1 is a diagrammatic perspective view of an optronic device performing the invention;



FIG. 2 is a diagrammatic view of the control unit of the device;



FIG. 3 is a diagrammatic view showing detail of the control unit of the device;



FIG. 4 is is a diagram of a Fresnel representation of the measurement signal and of the transfer function of the system; and



FIG. 5 is a diagrammatic perspective view of a device of the invention for actuating a flight control.





DETAILED DESCRIPTION OF THE INVENTION

With reference in particular to FIG. 1, the invention is described below in application to an optronic device including an optical sensor 1 mounted on a gyro-stabilized platform 2. The gyro-stabilized platform 2 has two motor-driven axes, namely: a bearing axis z for adjusting the orientation of an aiming axis v of the optical sensor 1 about the bearing axis z, and an elevation axis y for adjusting the orientation of the aiming axis v about the elevation axis y. Each of the axes z and y is provided with a respective motor 3 and 4 arranged to orient the aiming line v of the sensor 1 about the corresponding axis z or y, and each motor is associated with a respective angle sensor 3bis or 4bis, such as a coder or a resolver.


The motors 3 and 4, and the associated angle sensors 3bis and 4bis are connected to a control device 10 that issues respective commands m1 and m2 to the motors 3 and 4, and that receives respective measurements c1 and c2 from the angle sensors 3bis and 4bis.


The optical sensor 1 is provided with at least one inertial angle sensor 5 in order to detect an angular velocity c3 of the aiming axis v relative to a first reference axis that is collinear with the elevation axis y, and an angular velocity c4 of the aiming axis v relative to a second reference axis that is perpendicular to the aiming axis v and to the elevation axis y. In this example, the inertial angle sensor is a gyro having two sensing axes, such as the gyro produced under the trademark GSL by the Applicant. In a variant, any other angle measuring device could be used, and for example it is possible to use two inertial sensors, each having a respective sensing axis, such as the device produced under the trademark QUAPASON by the Applicant. The inertial sensor could be a mechanical sensor having a vibrating resonator, e.g. a hemispherical resonator, or use could be made of other technologies, such as optical fibers (a so-called fiber-optic gyro (FOG) sensor).


The inertial sensor 5 is also connected to the control device 10, and it transmits the measurement signals c3 and c4 thereto.


With reference also to FIGS. 2 and 3, for each axis, each of the assemblies formed by means of a motor 3 or 4 and one of the associated angle sensors 5, 3bis, or 4bis (which may be relative and/or inertial sensors) forms a linear system S having an input (the power supply line delivering a voltage signal to the motor 3 or 4) and an output (the output line from an angle sensor 5, 3bis, or 4bis delivering a measurement signal).


For each linear system referenced H, the control device 10 includes an electronic control unit 11 having a servo control loop that connects together the input and the output of the linear system by means of a digital corrector 12. The electronic control unit 11 is thus arranged to act via the digital corrector 12 to control the motors as a function of commands coming from a user interface 20 (visible in FIG. 1) and as a function of the measurement signals coming either from coders or else from inertial sensors. It can be understood that each control signal m input to one of the motors 3 or 4 gives rise to a corresponding movement of the optical sensor 1, which movement is detected by the relative angle sensor 3bis or 4bis or by the inertial angle sensor 5 that senses relative to the axis corresponding to the motor 3 or 4 and that issues a measurement signal c corresponding to the convolution of the transfer function H by the difference between the measurement signal c and the setpoint, i.e.:






m=K*(setpoint−c) and c=H*m.


This mode of operation is conventional and is not described in greater detail herein.


The control device 10 exchanges data with memory modules 30 and 40. The memory module 30 comprises a table of the frequencies fp that are to be scanned, of the amplitudes P0 of the associated excitation signals, and of the vectors of the associated Kalman gains Kf.


The control device 10 includes a software module 13 having an output p connected to an output e3 of the digital corrector 12, at least one first measurement input e1 connected upstream from an input of the digital corrector 12, and two measurement inputs e2 and e3 connected to the output of the digital corrector 12 respectively downstream and upstream from the connection between said output of the digital corrector 12 and the output p of the software module 13. Thus, the output p added to the output e3 of the digital corrector 12 gives the command e2 that is to be applied to the motor via the digital-to-analog converter and the signal m.


The software module 13 is programmed:

    • to form an excitation generator based on a rotation increments matrix and on a Fresnel model, the generator being arranged to issue (to an input p of the system S) final excitation signals P of different frequencies and/or of different amplitudes on the output of the corrector by using a software sum e2=e3+P;
    • to recover on each of its inputs a respective sinusoidal measurement signal e1 to e6 for each of the sinusoidal excitation signals;
    • to model the measurement signals e1 to e6 (FIG. 3) on the basis of a Fresnel vector and of a state representation;
    • to filter the measurement signals e1 to e6 by bandpass filtering about the excitation frequency using a plurality of Kalman filters connected in parallel so as to obtain state vectors of the filtered measurement signals;
    • to multiply the state vectors of the filtered signals by a rotation matrix “T” to obtain the real and imaginary parts of the transfer functions, where the components of the rotation matrix “T” are obtained from the components of the excitation vector; and
    • to store the real and imaginary parts of the transfer functions (reference 40 in FIG. 1) and to obtain the transfer functions of the loop by making use of complex number division.


The software module 13 is arranged to scan a plurality of frequencies, recovering for each frequency the excitation amplitude and the gains of the Kalman filters stored in a memory (30 see FIG. 1).


By way of example, the software module 13 is arranged to be capable of estimating a plurality of transfer functions, which are identified as FT1 to FT6 in FIG. 3, each representing a set of six measurements (e.g. currents, inertial speeds, relative positions) relating to an electromechanical system S implemented in a single device.


The principle of the invention for determining one of the transfer functions is described below in its three main stages: generating a sinusoidal excitation signal at the frequency fp, bandpass filtering using a Kalman filter about the frequency fp, and multiplying by a rotation matrix in order to obtain the real and imaginary parts of the transfer function between the excitation and the measurement under consideration at the frequency fp.


The excitation signal (disturbance) is a sinusoidal signal, for example a cosine of amplitude P0 at the frequency fp, and it can be modelled in the form of a vector that is representative of a complex number and that rotates at a constant speed {dot over (θ)}=2π·fP (known as a “Fresnel representation”). At the instant tk, the complex number is written as follows:






{circumflex over (P)}
k
custom-character
P
0·exp(2π·fP·tk)=P0·exp(i·θk)=P0·cos(θk)+i·P0·sin(θk)


The voltage disturbance that is actually injected may be expressed as being the real part of the complex number, i.e.:






P
k
=P(tk)=P0·cos(θk)=Re{P0·exp(2π·fP·tk)}


While the imaginary part of the complex number is left free:






P
0·sin(θk)=Im{P0·exp(2π·fP·tk)}


This can be written in matrix form as follows:







X
k
P


=
Δ



[




Re


{

P
^

}







Im


{

P
^

}





]

=


[




Re


{


P
0

.

exp

(

i
.2

π
.

f
P

.

t
k



)


}







Im


{


P
0

.

exp

(

i
.2

π
.

f
P

.

t
k



)


}





]

=

[





P
0



cos

(

θ
k

)








P
0



sin

(

θ
k

)





]







For a constant frequency fp, the transition matrix between two sampling periods Te corresponds to rotation through the angle Δθ=θk+1−θk=2π·fP·Te, where Te is the sampling period of the calculation means (Te=tk+1−tk). The transition matrix is written as follows:







Δ

A

=

[




cos

(

2

π


f
p



T
e


)




-

sin

(

2

π


f
p



T
e


)








sin

(

2

π


f
p



T
e


)




cos

(

2

π


f
p



T
e


)




]





The matrix relationship between two consecutive instants is thus:







[





P
0



cos

(

θ

k
+
1


)








P
0



sin

(

θ

k
+
1


)





]

=


[





P
0



cos

(


θ
k

+
Δθ

)








P
0



sin

(


θ
k

+
Δθ

)





]

=

Δ


A
[





P
0



cos

(

θ
k

)








P
0



sin

(

θ
k

)





]







Below, it should be understood that the rotation matrix at the instant k is the product of k transition increments:







A
k

=



(

Δ

A

)

k

=


[




cos

(

θ
k

)




-

sin

(

θ
k

)







sin

(

θ
k

)




cos

(

θ
k

)




]

=


1

P
0


[





(

X
k
P

)

1




-


(

X
k
P

)

2








(

X
k
P

)

2





(

X
k
P

)

1




]







It should be observed that the inverse rotation matrix is simply the transpose. It too is calculated using the components of the excitation vector:








(

A
k

)


-
1


=


[




cos

(

θ
k

)




sin

(

θ
k

)






-

sin

(

θ
k

)





cos

(

θ
k

)




]

=


1

P
0


[





(

X
k
p

)

1




-


(

X
k
p

)

2








(

X
k
p

)

2





(

X
k
p

)

1




]






The notation (●)n designates the “nth” component of the vector representative of the disturbance.


Taking the disturbance Pk as the first component of the state vector, the following discrete dynamic system is obtained:






{





X

k
+
1

P

=

Δ


A
.

X
k
P










P
k

=

C
.

X
k
P










in which B=D=0 and C=[1 0].


As shown in FIG. 2, the excitation signal (disturbance) is applied to the output of the digital corrector by using a software sum e2=e3+P.


The matrix form of the dynamic system is adapted for performing Kalman filtering. P0 is taken as the initial amplitude condition of the excitation signal (disturbance) associated with a phase of zero, such that the initial vector is:







X
0
P

=

[




P
0





0



]





Concerning the frequency response of the electromechanical system and the matrix product, a formulation in the form of a linear dynamic system makes it possible to treat the physical system as a linear filter that receives the disturbance Pk as input to give the measurement Mk as output. Using the z transform and the notation {circumflex over (F)}(z) for the transfer function that is to be estimated, the following is obtained:






{circumflex over (M)}(z)={circumflex over (F)}(z){circumflex over (P)}(z)


When the delay operator z−1=exp(−i·2π·f·Te)∀f, this gives:






M
k−1
=z
−1
·M
k


For a linear system excited with a pure cosine at the frequency fp, the measurement is a cosine of amplitude MP and of phase ψP, and it takes the following matrix form:







X
k
M


=
Δ



[




Re


{


M
^

k

}







Im


{


M
^

k

}





]

=

[





M
P

.

cos

(


2


π
.

f
P

.

t
k



+

ψ
P


)








M
P

.

sin

(

2


π
.

f
P

.

t
k

.

+

ψ
P




)





]






The measurement that is directly accessible is Mk=C·XkM, whereas it is the following that is being looked for:








F
^

(

f
p

)


=
Δ





M
^

(

f
P

)



P
^

(

f
P

)


=




M
P

.

exp

(

i

(


2


π
.

f

P
.





t
k


+

ψ
P


)

)




P
0



exp

(

i
.2

π
.

f
P

.

t
k



)



=




M
P


P
0




exp

(

i


ψ
P


)


=




M
P


P
0




cos

(

ψ
P

)


+

i



M
P


P
0




sin

(

ψ
P

)










This can be written in matrix form:







X
F


=
Δ



[




Re


{


F
^

(

f
P

)

}







Im


{


F
^

(

f
P

)

}





]

=

[






M
P


P
0


.

cos

(

ψ
P

)









M
P


P
0


.

sin

(

ψ
P

)





]






Where the “matrix” measurement XkM and the transfer function XF are associated by the following trigonometrical relationships (see the Fresnel diagram of FIG. 4):







X
k
M

=


[




cos

(

θ
k

)




-

sin

(

θ
k

)







sin

(

θ

k



)




cos

(

θ
k

)




]

.

X
F

.

P
0






I.e., on being inversed:







X
F

=





1

P
0


[




cos

(

θ
k

)




-

sin

(

θ
k

)







sin

(

θ
k

)




cos

(

θ
k

)




]


-
1




X
k
M


=




1

P
0


[




cos

(

θ
k

)




sin

(

θ
k

)






-

sin

(

θ
k

)





cos

(

θ
k

)




]



X
k
M


=




A
k

-
1



P
0




X
k
M


=



1

P
0
2


[





(

X
k
p

)

1





(

X
k
p

)

2






-


(

X
k
p

)

2






(

X
k
p

)

1




]



X
k
M













and
:










X
F

=


T
k

.

X
k
M












T
k

=


1

P
0
2


[





(

X
k
P

)

1





(

X
k
P

)

2






-


(

X
k
P

)

2






(

X
k
P

)

1




]






The real and imaginary components of the transfer function are obtained merely by a matrix product of the ideal measurement signal multiplied by a single rotation matrix of components that have already been calculated by generating the excitation signal:






{circumflex over (F)}(fP)=(XF)1+i(XF)2


where i is the imaginary unit such that i2=−1.


There follows a description of the bandpass filtering by Kalman filtering.


In order to estimate the real part and the imaginary part of the measurement XkM from the real measurement Mk, use is made of a converged-gain Kalman filter that acts as a selective bandpass filter about the excitation frequency:






{





X

k
+
1

M

=


Δ


A
.

X
k
M



+

B
.

w
k










M
k

=


C
.

X

k


M


+

v

k












In which:

    • wk is the noise of the scalar model;
    • vk is the scalar measurement noise;
    • ΔA is the transition matrix;
    • C=[1 0] is the observation matrix of the disturbance generator; and
    • BT=[1 1] is the state noise injection matrix.


The variance of the measurement noise is V=E[vk2].


The variance matrix of the model noise is:






W=BE[wk2]BT


The filter may be represented in the form of the following state representation:






{






X
^


k
+

1




"\[LeftBracketingBar]"

k



M

=


Δ


A

(

I
-


K
f


C


)




X
^


k




"\[LeftBracketingBar]"


k
-
1



M


+


Δ


AK
f



M
k











X
^



k


"\[RightBracketingBar]"



k

M

=



(

I
-


K
f


C


)




X
^




k


"\[RightBracketingBar]"



k

-
1

M


+


K
f



M
k












The matrix Kf is the converged-gain matrix of the Kalman filter, such that:






K
f
=ZC
T(CZCT+V)−1





and





ΔAZA)T−Z−ΔAZCT(CZCT+V)−1CZA)T+W=0


In which Z is the solution of the Riccati equation.


In practice, in order to determine the transfer function of the linear system in real time, the following are known, the frequency fP of each disturbance signal, the amplitude P0, the duration of the filtering Tf, and the gain of the Kalman filter, i.e.:







K
f

=

[




k
1






k
1




]





In order to scan all of the frequencies in a given interval, the following algorithm is performed:












Algorithm:


















Review all of the frequencies fP













If tk = 0









Initialize:X0P=[P00]










CalculateA=[cos(2πfpTe)-sin(2πfpTe)sin(2πfpTe)cos(2πfpTe)]









If 0 < tk < Tf then









Calculatethedisturbance{Xk+1P=A·XkPPk=C·XkP









 Store the state of the disturbance XkP ← Xk+1P





 Allocate the disturbance to the motor voltage: Pk





 Read the measurements: Mk





 For each measurement, filter:








  
{X^k+1|kM=A(I-KfC)X^k|k-1M+ΔAKfMkX^k|kM=(I-KfC)X^k|k-1M+KfMk









 For each measurement, store: {circumflex over (X)}k|k−1M ← {circumflex over (X)}k+1|kM













If



t
k


=



T
f



then



T
k


=


1

P
0
2


[





(

X
k
P

)

1





(

X
k
P

)

2






-


(

X
k
P

)

2






(

X
k
P

)

1




]














 For the current frequency of each measurement,





 calculate and store: XF = Tk · {circumflex over (X)}k|kM





   tk = 0 and move on to the





 new frequency.









Output

XF=[real FT,imag FT]T for each frequency and for each measurement.


It should be observed that in this example, the equations of the Kalman filter are put in the form of a recursive filter with a single state vector, as in equation 2.31 of the document “Introduction to Kalman filtering” by D. Alazard. Nevertheless, it is also possible to write them in the prediction/updating form with two state vectors (see equations 2.23 and 2.25 of that document) as in the description below of the continuous component.


Estimates are thus obtained of at least three transfer functions of the looped system, between the excitation signal and at least three measurements, such that









F
ˆ


mes

n


(

f
p

)

=


e
n


s
1






without any need for operator intervention in order to separate the servo control loop from the actuator.


The various transfer functions of the loop are then determined as follows.


With the notation of FIG. 2 and using complex number division, the following operations are performed:


a/ For the current frequency, storing for the current frequency the real parts of at least the following three closed loops:









F
ˆ


m

e

s

1


(

f
p

)

=



e
1


s
1


=

H

1
+

K

H













F
ˆ


m

e

s

2


(

f
p

)

=



e
2


s
1


=

1

1
+

K

H













F
ˆ


m

e

s

3


(

f
p

)

=



e
3


s
1


=


K

H


1
+

K

H








b/ Calculating the open loop with:







H

K

=



e
3


e
2


=



F
ˆ


m

e

s

3


/


F
ˆ


m

e

s

2








c/ Calculating the transfer function of the electromechanical portion:






H
=



e
1


e
2


=



F
ˆ


m

e

s

1


/


F
ˆ


m

e

s

2








There follows a description of a preferred embodiment, making use of reformulation and extension in order to take the continuous components of the measurements into account.


In the preferred embodiment, it is not a cosine that is injected, but rather an excitation sine having a predetermined frequency fP in hertz (Hz).


When a sine type excitation signal is injected into a linear system, the system responds with a sine line that is amplified by a gain







G
p

=


M
p


P
0






and phase shifted by a phase Ψp.


The state representation of the sinusoidal line of the measurement without a continuous component thus has two dimensions and is given by:






{





X

k
+
1

s

=


[




cos



(

2

π


f
p



T
e


)






-
sin




(

2

π


f
p



T
e


)







sin



(

2

π


f
p



T
e


)





cos



(

2

π


f
p



T
e


)






]



X
k
S









Y
k
S

=


[



0


1



]



X
k
S










where







X
0
S

=

[





M
p



cos



(

Ψ
p

)








M
p



sin



(

Ψ
p

)





]








X
k
S

=

[





M
p



cos



(


2

π


f
p


k


T
e


+

Ψ
p


)








M
p



sin



(


2

π


f
p


k


T
e


+

Ψ
p


)





]








Y
k
S

=


G
p



P
0



sin



(


2

π


f
p


k


T
e


+

Ψ
p


)






The state vector represents the cosine (plotted along the x-axis) and the sine (plotted along the y-axis) on a circle of radius Mp=GpP0 for a vector rotating at the frequency fp and starting from an initial position determined by the angle Ψp.


Thus, the following matrices are obtained for the state representation of the Fresnel vector:






{






Δ

A

=

[




cos



(

2

π


f
p



T
e


)






-
sin




(

2

π


f
p



T
e


)







sin



(

2

π


f
p



T
e


)





cos



(

2

π


f
p



T
e


)






]





B
=

[



0




0



]







C
=

[



0



1
]









D
=
0






















where, in conventional manner for state representation, ΔA is the transition matrix, B is the control matrix, C is the observation matrix, and D is the direct action matrix.


Nevertheless, in practice, it is probable that the response of the system also includes a continuous component corresponding to the operating point about which the system is excited.


This continuous component constitutes a bias that has the following discrete representation:









{





X

k
+
1

B

=

X
k
B








Y
k
B

=

X
k
B












X
0
B

=
bias







By adding this representation to the state representation of the sine line, the state representation is obtained for a sine having a continuous component in three-dimension for the various measurements, namely:









{





X

k
+
1

M

=


[




cos



(

2

π


f
p



T
e


)






-
sin




(

2

π


f
p



T
e


)




0





sin



(

2

π


f
p



T
e


)





cos



(

2

π


f
p



T
e


)




0




0


0


1




]



X
k
M









Y
k
M

=


[



0


1


1



]



X
k
M










(
1
)







where:









{





Δ


A
M


=

[




cos



(

2

π


f
p



T
e


)






-
sin




(

2

π


f
p



T
e


)




0





sin



(

2

π


f
p



T
e


)





cos



(

2

π


f
p



T
e


)




0




0


0


1




]





B
=

[



0




0



]








C
M

=

[



0


1



1
]










D
M

=
0








(
2
)










X
0
M

=

[





M
p



cos



(

Ψ
p

)








M
p



sin



(

Ψ
p

)







b
0




]








X
k
M

=

[





M
p



cos



(


2

π


f
p


k


T
e


+

Ψ
p


)








M
p



sin



(


2

π


f
p


k


T
e


+

Ψ
p


)







b
0




]








Y
k
M

=


b
0

+


G
p



P
0



sin



(


2

π


f
p


k


T
e


+

Ψ
p


)







There is no need for the excitation generator to have a continuous component. In order to design the sinusoidal excitation generator, it suffices to simulate the model described by the state representation of the sine line. The amplitude and the phase are selected by imposing initial conditions on the model. A phase of zero is selected for the sine wave that is to be generated so as to start excitation of the system progressively (sin(t=0)=0). A generator of a sine wave of amplitude P0 is obtained as follows:

    • initial condition







X
0
P

=

[




P
0





0



]







    • with the excitation signal having the dynamic range:









X
k+1
P
=ΔA
P
X
k
P






P
k
=C
P
X
k
P




    • and with the following state representation matrices:









{





Δ


A
P


=

[




cos



(

2

π


f
p



T
e


)






-
sin




(

2

π


f
p



T
e


)







sin



(

2

π


f
p



T
e


)





cos



(

2

π


f
p



T
e


)






]






B
P

=

[



0




0



]








C
P

=

[



0



1
]










D
P

=
0








Each measurement from a sensor is a sine line PGP-including a continuous component, from which the state of the Fresnel vector is estimated by using a Kalman filter constituting an estimator corresponding to a bandpass filter about the frequency fp for the first two components of the state vector, and a lowpass filter for the continuous portion, based on the models (1) and (2).


Once this state has been estimated, it is possible to estimate the corresponding transfer function between the excitation (input) and the measurement (output).


At the output from the transfer function estimator, there are obtained directly in the real part and the imaginary part of the transfer function at the frequency fp.


The model of the augmented Kalman estimator takes the following general form:






{





X

k
+
1

M

=


Δ


A
M



X
k
M


+


B
M



U
k


+

M


w
k










Y
k
M

=



C
M



X
k
M


+


D
M



U
k


+

v
k










With:

    • ΔAM, BM, CM, DM as above;
    • Uk represents the commands;
    • vk the measurement noise;
    • wk the noise of the model; and
    • the selected matrix M is the following:






M
=

(



1


0


0




0


1


0




0


0


1



)





Since the matrices BM, DM are zero, it is possible to simplify the model:






{





X

k
+
1

M

=


Δ


A
M



X
k
M


+

Mw
k









Y
k
M

=



C
M



X
k
M


+

v
k










The notation V[1×1] and W[3×3] is used for the covariance matrices of the measurement noise vk and of the model noise wk, which noise is assumed to be Gaussian for a linear Kalman estimator. The steady state of the estimator is determined solely by the selected covariance matrices V and W. Given that the estimator is implemented with converged gain, it is possible to set V=1 arbitrarily without loss of generality. W, the covariance matrix of the noise of the model, is selected as follows:






W
=

(




σ
line
2



0


0




0



σ
line
2



0




0


0



σ
bias
2




)





Thus, selecting the variance pair (σline2 σbias2) serves to define completely the steady state of the Kalman estimator.


A state representation of the estimator is written:






[




A
K




B
K






C
K




D
K




]




The following is then obtained:






{





A
K

=

Δ



A
M

(

I
-


K
f



C
M



)







B
K

=

Δ


A
M



K
f









C
K

=

I
-


K
f



C
M








D
K

=

K
f









where:






K
f
=ZC
M
T(CMZCMT+V)−1


In this representation, Z is the only solution that stabilizes the algebraic Riccati equation:






Z=ΔAZA)T−ΔAZCMT(CMZCMT+V)−1CMZA)T+W


It should be observed that this equation presents a singularity in the event that the frequency fp is equal to half the sampling frequency Fe=1/Te. In the general case, this equation can be solved for example using the “dare” function of the “Matlab” language that also serves to determine the eigenvalues of Ak that enable the time constant τK of the bandpass filter to be determined for the first two components of the state vector and of the lowpass filter of the continuous component.


As mentioned above, the settings of the estimator (i.e. the width of the band about fp, and the cut-off frequency for the lowpass filter) are obtained by selecting the pair of variances (σline2 σbias2) that enable the steady state Kalman estimator to be defined completely.


Assuming that the variance σbias2 is fixed, then reducing the variance σline2 gives rise to a reduction in the width of the bandpass filtering, and thus to a better estimate of the sine line as a result of better filtering of the noise and of any nonlinearities of the system. If the time constant τK of the filter is equal to the time constant of the line, then this reduction in the variance σline2 is accompanied by an increase in the time constant of the filter. It is therefore necessary to seek a compromise between the quality of the estimate (narrowness of the filter) and the convergence time of the estimator.


Assuming that the variance σline2 is fixed, then a reduction in the variance σbias2 give rise to a deterioration in the filtering of low frequencies for the cosine and sine components. In addition, the cut-off frequency of the response corresponding to the continuous component (bias) decreases when the variance σbias2 decreases (which amounts to increasing measurement noise relative to the noise of the model), giving rise to filtering that is more conservative.


By way of example, for a given sampling frequency Fe, for given minimum and maximum frequencies fmin and fmax of the excitation signal, and for a number Npoints of frequencies to be identified in this frequency range, it is proposed to set the estimator as follows:

    • determine the variance σline2 so as to obtain the desired width for the bandpass filtering. This is done more for middle/high frequencies in the frequency range so that the filter is not disturbed by the continuous component of the model. It is ensured that the filter is indeed symmetrical about the selected frequency;
    • determine the variance σbias2 on the lowest frequency that is to be identified (fmin) so that the selectivity of the filter remains acceptable at this frequency; and
    • calculate the total duration for the identification induced by these settings. If the generation is not satisfactory, increase the variance σline2 or decrease the number of frequencies to be identified. This type of scanning has a strong impact on the duration of identification: in order to reduce it, it is preferable to select scanning that is linear rather than logarithmic.


In the present example, (σline2 σbias2)=(10−4 10−2) is selected for a sampling frequency Fe of 3 kHz. By way of example, this setting is appropriate for aiming an optronic device. For some other application, the above-mentioned values can serve as starting points for converging on settings that are more appropriate for said application.


In particular, such an application might require a sampling frequency that is different. However, it is known that for a given setting of the pair (σline2 σbias2), the width of the bandpass filter increases with increasing sampling frequency: identification is thus faster but of poorer quality. This problem can be solved by recalculating the values of the (σline2 σbias2) pairs so as to guarantee a time constant that is almost identical and a frequency response that is equivalent when changing from one sampling frequency to another.


In a variant, it is possible to reduce the calculation burden by making use of an estimator that is no longer in the form of a state representation






[




A
K




B
K






C
K




D
K




]




as described above (i.e. in the form of a recursive filter having a single state vector, but rather in the prediction/updating form with two state vectors, by using the notation {circumflex over (X)}k+1|kM for the predicted state and {circumflex over (X)}k+1|k+1M for the updated state (output from the estimator), with the recurrence equations of the filter at instant k+1 being:






{






X
^



k
+
1


k

M

=

Δ


A
M




X
^


k

k

M










X
^



k
+
1



k
+
1


M

=



X
^



k
+
1


k

M

+


K
f

(


Y

k
+
1

M

-


C
M




X
^



k
+
1


k

M



)










The Kalman gain Kf is the same as that defined above. This implementation is mathematically equivalent to the preceding implementation, but less expensive in calculation time.


The transfer function estimator calculates the real and imaginary parts of the transfer function {circumflex over (F)}, between the sinusoidal excitation signal and the measurement that is obtained, for one of the following three closed loops:









F
^


mes


1


(

f
p

)

=



e
1


s
1


=

H

1
+
KH












F
^


mes


2


(

f
p

)

=



e
2


s
1


=

1

1
+
KH












F
^


mes


3


(

f
p

)

=



e
3


s
1


=

KH

1
+
KH







It is thus sought to estimate the following (where i is the imaginary unit such that i2=−1):






{circumflex over (F)}(fp)=Rp+i Ip=Gp(cos(Ψp)+i sin(Ψp))


The state of the excitation generator at instant k is written XkP, and the process estimated by the Kalman filter on the basis of the measurement is written {circumflex over (X)}k|kM. The following is obtained:






{





X
k
P

=


P
0

[




cos

(

2

π


f
p



kT
e


)






sin

(

2

π


f
p



kT
e


)




]










X
^


k

k

M



X
k
M


=

[





G
P



P
0



cos

(


2

π


f
p



kT
e


+

Ψ
p


)








G
P



P
0



sin

(


2

π


f
p



kT
e


+

Ψ
p


)







b
0




]









The pair






[





G
P



cos

(

Ψ
p

)








G
P



sin

(

Ψ
p

)





]




is obtained from the state of the process {circumflex over (X)}k|kM by a matrix T constructed using the terms XkP and P0:






T
=


1

P
0
2


[





(

X
k
P

)

1





(

X
k
P

)

2



0





-


(

X
k
P

)

2






(

X
k
P

)

1



0




0


0


1



]





As before;








(

A
k

)


-
1


=


1

P
0


[





(

X
k
P

)

1





(

X
k
P

)

2



0





-


(

X
k
P

)

2






(

X
k
P

)

1



0




0


0



P
0




]





is a rotation matrix.


This gives:







X
F

=


[





G
P



cos

(

Ψ
p

)








G
P



sin

(

Ψ
p

)








b
0


P
0
2





]

=

TX
k
M






giving rise to estimates of the real part Rp and of the imaginary part Ip such that:







X
F

=


[





G
P



cos

(

Ψ
p

)








G
P



sin

(

Ψ
p

)








b
0


P
0
2





]



T



X
^


k

k

M







This estimation should not be performed until the Kalman estimator has converged sufficiently. In order to be sure that it has, a length of time is allowed to elapse that is equal to several times the characteristic time constant τK of the estimator before estimating the transfer function. By taking a length of time that is equal to six times the characteristic time constant τK, it is ensured that the estimation error has convergence of 0.25%.


In order to ensure that the bias of the mechanical system (e.g. associated with the presence of unbalance or of a return member in a movement transmission) does not disturb determination the transfer function, it should be observed that it is necessary to ensure that the amplitude of the sinusoidal signal is sufficient to be able to ignore the effects that are not generated by the sinusoidal signal.


With reference to FIG. 5, for an airplane control surface device, the aiming line v is replaced by the plane of the aileron. The aileron 1 is connected to the assembly of the motor 3 and the coder 3bis by a transmission shaft 2 pivotally connected to the remainder of the airplane.


Naturally, the invention is not limited to the implementation described, but covers any variant coming within the ambit of the invention as defined by the claims.


In particular, the invention is applicable to any type of electromechanical system that can be modelled by means of a linear transfer function, and it is therefore not limited to an application to an airplane control surface or to a device for aiming and stabilizing an optical sensor. In particular, the invention can be used with any device including an actuator controlled by servocontrol and measurements that are accessible to calculation means.


Other modelling parameters may be selected as a function of the intended application. The sampling frequency, the variances, the number of frequencies to be estimated, . . . .


The term “sinusoidal signal” is used to cover both a sine signal and a cosine signal.


The software module may receive as input the measurement of the output variable of the linear system and/or the difference between the measurement of the output variable of the linear system and the control setpoint.


Although in the embodiments described the rotation matrix is defined as a function of the components of the vector representative of the sinusoidal excitation signal, which is advantageous in terms of simplifying calculation, that is not essential.


Furthermore, it should be observed that in the embodiment described, account is taken of three measurements e1, e2, and e3:

    • e2 and e3 for the “open loop” (K*H), i.e. one upstream from the summing circuit (e3) and one downstream from the summing circuit (e2); and
    • e1 and e2 for the transfer function of the electromechanical system (H).


In contrast, if it is desired to measure simultaneously both inertial speeds, the positions of the two coders, and both motor currents, it is possible to use e4, e5, and e6 in addition to e1.


The matrix T may have various different forms:

    • to have b0, use:






T
=


1

P
0
2


[





(

X
k
P

)

1





(

X
k
P

)

2



0





-


(

X
k
P

)

2






(

X
k
P

)

1



0




0


0



P
0
2




]







    • to have b0/P0, use:









T
=


1

P
0
2


[





(

X
k
P

)

1





(

X
k
P

)

2



0





-


(

X
k
P

)

2






(

X
k
P

)

1



0




0


0



P
0




]







    • to have b0/P02, use:









T
=


1

P
0
2


[





(

X
k
P

)

1





(

X
k
P

)

2



0





-


(

X
k
P

)

2






(

X
k
P

)

1



0




0


0


1



]







    • it is possible not to calculate b0:









T
=


1

P
0
2


[





(

X
k
P

)

1





(

X
k
P

)

2



0





-


(

X
k
P

)

2






(

X
k
P

)

1



0




0


0


0



]




Claims
  • 1. A device comprising at least one electromechanical system having an input and at least one output, and an electronic control unit comprising both a servo control loop connecting together the input and the output of the electromechanical system, and also a digital corrector, the device being characterized in that it includes a software module having an input connected to the output of the electromechanical system and an output connected to an input of electromechanical system, and in that, for each frequency in a set of frequencies that are to be analyzed, the software module is programmed: to generate at least one sinusoidal excitation signal (P);to issue the sinusoidal excitation signal on its output and to recover a response signal on its input;to model the response signal by means of a Fresnel representation and to filter it about the excitation frequency by means of at least one Kalman filter in order to obtain a state vector of the filtered response signal;to multiply the state vector by a rotation matrix in order to obtain a real part and an imaginary part; andto perform complex number division to obtain at least one transfer function for the system from the model, from the excitation signal, and from the input signal.
  • 2. The device according to claim 1, wherein the signal generator is based on a representation of a Fresnel vector rotating in compliance with the following model: initial condition:
  • 3. The device according to claim 1, wherein the dynamic range of the excitation signals and the dynamic range of the measurement signals are defined by the following equations:
  • 4. The device according to claim 3, wherein the matrices ΔAM, BM, CM, DM are determined as follows:
  • 5. The device according to claim 3, wherein the matrices ΔAM, BM, CM, DM are determined as follows:
  • 6. The device according to claim 3, wherein the matrices ΔAM, BM, CM, DM are determined as follows:
  • 7. The device according to claim 3, wherein the matrices ΔAM, BM, CM, DM are determined as follows:
  • 8. The device according to claim 3, wherein the Kalman filter is implemented in the following simplified form:
  • 9. The device according to claim 2, wherein the covariance matrix of the measurement noise is selected to be equal to 1 and the covariance matrix W of the model noise is selected as follows:
  • 10. The device according to claim 9, wherein the variance σbias2 is set at 10−2 and the variance σline2 is set at 10−4 for a sampling frequency equal to 3 kHz.
  • 11. The device according to claim 2, wherein the rotation matrix is defined as a function of the components of the vector that is representative of the sinusoidal excitation signal.
  • 12. The device according to claim 11, wherein the rotation matrix has the following form:
Priority Claims (1)
Number Date Country Kind
2001504 Feb 2020 FR national
PCT Information
Filing Document Filing Date Country Kind
PCT/EP2021/053388 2/11/2021 WO