he present invention relates to a method for identification of the parameters of an electro-mechanical system, in particular an electro-mechanical servo system, comprising a mass actuated by a force. Further, the present invention relates to a method for autotuning a controller of an electro-mechanical system and a method for controlling such an electro-mechanical system. Still further, the invention relates to corresponding devices, in particular a device for identification of the parameters of an electro-mechanical system, to an autotuner and to a controller, as well as to an electro-mechanical system itself. Finally, the present invention relates to a computer program for implementing said methods on a computer.
A numerical control unit for controlling the position of a movable part, such as a machine table, in response to input machining information is known from U.S. Pat. No. 5,159,254. The unit employs a servo control loop that can measure the values of the position, velocity, acceleration and motor current for the movable part at predetermined times. Using such measured values and, on the basis of a representative spring mass system model, values of inertia, mass, viscous friction and sliding friction can be calculated and used for automatically optimising the gain and offset parameters applicable to control of the machine.
Usually, parameter identification of an electro-mechanical system and controller tuning are performed by either an expert who needs to perform measurements by using special equipment, which is even impossible for highly integrated digital servo loops, or by a non-expert who performs a trial and error procedure which often does not result in an optimised performance. It is therefore an object of the present invention to provide a method for identification of the parameters of an electro-mechanical system as well as methods for autotuning the controller of such an electro-mechanical system and a method for controlling the system which do not require any tuning expertise and special measurement equipment and which allow system identification and autotuning to be performed within a very short time, i.e. which only require several seconds or minutes so that a user can save a lot of time. Further, corresponding devices, an electro-mechanical systems and a computer program for implementing said methods shall be provided.
The object is achieved by a method for system identification as claimed in claim 1 comprising the steps of:
The invention is based on the idea to obtain a smooth movement of the electro-mechanical system as response to the application of a force to the electro-mechanical system during which the system remains in the allowable moving range. The smooth movement is obtained by setting the amplitude and the time period of the applied force carefully. If the predetermined time period is too short the influence of dynamics and virtual play on the estimators will be significant, virtual play meaning play that is commonly caused by a combination of friction and flexibility with the consequence the the actuator may move and load does not. If the predetermined time period is too long it may be impossible to remain within the allowable moving range or the maximum velocity may be exceeded.
The force amplitude is found by an iterative procedure. Starting at sub-friction level the amplitude is raised in small steps until it is detected that the velocity is monotonously increasing during application of the constant force. At this point initial estimates are generated which are used for predicting the displacements of the subsequent steps.
In the subsequent steps the force amplitude is raised at least for another two times, in particular with x % and 2x %, respectively, wherein x is chosen such that the predicted displacement is smaller than the allowable displacement. The responses to the application of these forces are used for identifying friction, mass and damping.
It shall be noted that the present invention is not limited to translating systems, but can be applied to rotating electro-mechanical systems with equal success. Thus, the term “mass” shall be broadly understood as including an inertia (i.e. a rotational mass), and the term force shall be broadly understood as including a torque. The present invention is mainly applied in electro-mechanical servo systems which are often referred to as double integrator systems, but can also be applied in a velocity control loop (single integrator system) or other electro-mechanical systems.
Preferably, the initial friction is estimated based on the ratio between the time required for acceleration and the time required for stopping the mass. Further, a mass-friction-damping mathematical model of the electromechanical system is used for estimating mass, friction and damping of the system. Therein, friction estimation may consist of two estimates, i.e. one estimate for both directions of movement. Based on the differential equations of a mass-friction-damper system and using e.g. four position measurements during two consecutive movements, i.e. by a total of 8 measurements, all important parameters of the system can be estimated.
In a preferred embodiment the force is applied as a block-wave signal having a constant maximum amplitude in step a), i.e. also in the iterations of step a). An alternative is a trapezoidal signal. Said signal may also have, after the positive force amplitude, a negative force amplitude in order to stop the mass according to step b). Amplitude and time period of the positive and negative part of the signal may be identical, however, can also be different.
The required smooth movement is then obtained by setting the amplitude and the frequency of the block-wave signal carefully. A preferred range for the predetermined time period for application of the constant (positive) force is given in claim 5, i.e. in case of a block-wave signal the block-wave frequency is preferably fixed in a range between 0.1 Hz and 50 Hz, preferably at 2 Hz.
To determine the initial amplitude of the force to be applied in step a) the following further steps are provided in a preferred embodiment:
Thus, the sub-friction level for the amplitude of the force can be determined Preferably, the force is applied as a ramp signal in step a0).
The estimation of the friction in step f) is completely independent of the damping and mass estimates. Preferably, the movements in step e) are in the same direction. However, if the direction dependency of friction is also preferred to be determined at least four movements are required, two with a positive force amplitude and two with a negative force amplitude as claimed in claim 9.
The object of the invention is further solved by a method for autotuning a controller of an electro-mechanical system, wherein the parameters of said electro-mechanical system are identified by a method as described above, said parameters being used to determine the control parameters of a controller, in particular amplification including its sign, i.e. its polarity, integrator frequency, differentiator frequency and/or low-pass filter settings, so that the electro-mechanical system is operated stable in a low frequency area According to the present invention autotuning can be performed easily without special expertise and measurement equipment within a very short time.
Preferably the controller comprises a feedback control unit and a feedforward control unit. However, the feedforward control unit can also be omitted.
An automatic bandwidth optimisation is proposed in claim 12. Based on the response of the system on a short set-point profile a criterion judges whether increasing the bandwidth was an improvement. Values of the bandwidth and the bandwidth increase are given in claim 14. A criterion for judging whether an increase of the bandwidth has led to an improvement is preferably based on a root-mean-square (RMS) error of the difference between the measured movement and the set-point movement, in particular both during movement and during settling. This RMS error shows a clear minimum allowing to identify the optimum bandwidth.
A method for controlling an electro-mechanical system according to the present invention is defined in claim 15. Therein, the parameters of the electro-mechanical system are identified as described above. These parameters are used to determine the control parameters of the controller such that the electro-mechanical system is operated stable by a method for autotuning as described above.
A device for identification of the parameters of an electro-mechanical system comprising control means, sensor means and processing means is defined in claim 16. An autotuner according to the invention is defined in claim 17. A controller according to the invention is defined in claim 18. An electro-mechanical system according to the invention is defined in claim 19. A computer program for implementing the methods according to the invention is defined in claim 20.
The invention will now be explained in more detail with reference to the drawings in which:
A particular embodiment of an electro-mechanical servo system under particular assumptions will be discussed in the following, which do, however, not limit the invention.
First, the application range and the user requirements shall be discussed.
The autotuner algorithm according to the present invention has been designed for electro-mechanical systems comprising a lumped mass, possibly with friction and damping, on which a force can be applied. Generally this mass is referred to as a double integrator. The lumped mass approximation is always only valid for a certain frequency range. The main assumption is that the system behaves like a lumped mass in between 1 and 10 Hz. More specifically this means:
For the autotuner algorithm it is assumed that the items below are known to the user:
Even though some of the above items may be difficult to specify by the user, these inputs are expected to be essential for some autotuner steps as well as for reasons of safety. It may be possible to apply some smart procedures for detecting the encoder resolution or maximum displacement (e.g.: move system manually to maximum position), but yet no attention has been given in this direction.
Further, in the following no attention is given to the initialisation of the system. For example the important questions of how to get the system within the allowable moving range and how to initialise the measurement system are not discussed in the following. It is assumed that when the autotuner algorithm is started the system is in the middle of the allowable moving range.
Next, system parameters and variables and autotuner parameters shall be illustrated.
The system parameters are parameters which are specific for the system to be tuned. These parameters may be specified by the user. In some cases they have default values as shown in the following table.
System variables are variables containing measurements and computation results as shown in the following table.
The autotuner parameters are parameters which characterise some actions of the autotuner. All these parameters and default values are motivated below:
The method for identification of the system parameters shall be explained in the following with reference to the flow chart of
First, ramp excitation of step S1 shall be explained.
The main goal of the first step S1 is to obtain a starting voltage for the block-wave analysis. By applying a slowly increasing voltage and by tracing the position measurement the break-away voltage can be detected. The break-away voltage is a measure for stick-slip which, for dry-lubricated systems, will be close to the friction. For systems with a lot of play or virtual play the estimate may be poor.
The two important autotuner parameters to be set are the slope of the ramp function and the break-away detection level, i.e. the displacement at which the system is expected to have exceeded the stick-slip level.
The break-away level detection has to detect the stick-slip level. This may be hard as is shown in
In a particular practical embodiment a break-away level detection of 100 incr. was found to be efficient. As it is hard to obtain better information on theoretical grounds a break-away detection level of 100 incr. is proposed as an example.
The importance of the slope of the ramp can also be explained with reference to
After applying the ramp function the system brakes on friction or damping (if present).
Damping and friction levels are unknown at this point, so for safety the controller has to make sure the system brakes. This can be performed by reversing the controller output immediately after exceeding the break-away-level, and to hold this output until the velocity equals zero.
Most systems will have some direction dependency in the stick-slip level and thus also in the break-away voltage. It is expected that the direction dependency is small and that an estimator for one direction is also a sufficient accurate estimator for the opposite direction.
As a movement is performed the polarity can be set. With the assumption that the initial polarity in the controller is set to 1 the polarity can be computed by:
POLARITY=SIGN(Cut)*SIGN(X).
The proposed algorithm has been applied to a 4th order experimental set-up.
The results are shown in
Thus, as a result of the ramp excitation (S1) a first estimate of the fiction and direction of movement is obtained (S2) which are used in the following block-wave excitation (S3) to be explained next.
For the autotuner algorithm it is assumed that the system to be tuned can be modelled as a mass-friction-damper system comprising a mass m2 and a damper b as shown in
The model can be described with the differential equations:
F+Ff=m{umlaut over (x)}+b{dot over (x)} (Equation 1)
Assuming a constant force F is applied, solving the velocity with the assumption that x(0)=x0 and x(0)=v0 gives the relation:
Now also x can be solved, with x(0)=x0 the relation can be written as:
If damping tends to zero
and v0=0 and x0=0 the relation simplifies to:
If x is measured at three time points after applying a constant force up to T1 (and known initial conditions) b/m can be solved. The three time points are chosen as respectively TB, 2TB, 4TB with TB=¼T1=¼ ½Tblock (a fourth of one half period of the block-wave)
with
and fbd the damping breakpoint frequency (frequency below which damping dominates the system). After solving b/m it is possible to estimate Kdc (estimator for 1/m if another movement with a different block-wave amplitude is performed:
The above equation can also be used for two movements with identical initial velocities. When the damping tends to zero the above formula simplifies to:
Now also an estimate of the damping can be obtained (using equation 4):
With the estimate of Kdc and the measured displacement during applying Ablock2 it is possible to estimate coulomb friction (Kfc)
With help of Equation 5 it can be shown that the friction estimator can be written such that it is completely independent of the damping and mass estimates. It should be noted that when using the above equations 5 and 7 the movements as a result of Ablock1 and Ablock2 should be in the same direction. So, if the direction dependency of friction is also preferred to be computed 4 movements are required (Ablock1, Ablock2 and −Ablock1, −Ablock2). Equation 7 can also be used when Kdc has been computed in a certain direction (two movements required) and the friction is computed for the opposite direction (at cost of error propagation of the Kdc and b/m estimate). Then three movements are required for computing friction in two directions (Ablock1, Ablock2 and −Ablock2).
For reasons of accuracy in the Kfc estimate in both directions it is proposed to perform 4 movements (Ablock1, Ablock2 and −Ablock1, −Ablock2) with the autotuner.
For the analysis two responses are needed in one direction resulting from a constant force (S3). As also a braking mechanism has to be applied (S4) since the system is in open loop the most convenient wave form is a block-wave.
For applying a block-wave two parameters have to be set carefully:
The frequency of the block has to be that small that the system behaves in a (quasi) static way. Mostly, system dynamics can be represented by a fourth order system comprising two masses m1 and m2 connected by a spring and a damper as shown in
The first resonance of systems for which the autotuner is used is assumed to be above 10 Hz. After applying a step on the force it depends on the level of vibrations relative to the absolute displacement (x1 or x2) for how long the dynamics significantly influences the position measurement. It can be shown that the maximum error (defined as position difference between motor and load position) equals eml=F/k,. Assuming that m1=m2 the amplitude of the motor vibration is: e=½F/k, with F the input force and k the transmission stiffness. The position (x) of the motor can be approximated with:
using the assumption that the worst case resonance frequency equals
and assuming that m1=m2 =m the relation can be rewritten as:
Now the relative error can be computed:
This relation means that for example after 0.25 s the error caused by 4th order dynamics is smaller than 1.6% of the resulting displacement, even when the system is undamped. The formula is illustrated with help of
It should be noted that the dynamics may significantly influence the response below 0.1 s. For systems with low-frequent dynamics it may be much better to choose other time points for analysis. For example: choose 4 equidistant time-points between 0.1 s and 0.25 s for analysis. Worst case error in the position due to dynamics is less than 10%. The initial velocity and position can easily be dealt with in the formulas for the estimators.
When the motor mass m1 is larger than the load mass m2 the same relation, i.e. equation 8, can be used for a worst case estimate. However, when the mass of the load is larger than the motor mass, influence of dynamics will be worse. Systems are usually designed to have a larger motor mass than load mass.
A second consideration for the duration of the block-wave is that the motor may start resonating in the virtual play. If the duration of the constant force is larger than 0.1 seconds a movement in the virtual play can be distinguished from a movement outside the virtual play. This is explained in the block-wave amplitude section below.
Because of the influence of dynamics and the possibility to check if the movement is outside the virtual play it is proposed to choose the block-wave frequency as 2 Hz.
Now, the block-wave amplitude shall be discussed. It is not possible to establish a sensible block-wave amplitude with the available system knowledge (user input and results from ramp-analysis). For this reason the amplitude of the block-wave is increased in steps until a good movement is measured. A start level for the block-wave amplitude has been derived in the ramp-function analysis (steps S1, S2). For safety it is proposed to choose the initial block-wave amplitude as A_BREAK-AWAY_SAFETY * u_break-away. As an example it is proposed to choose A_BREAK-AWAY_SAFETY as 0.9.
For detecting a good movement two items are important: all parts are moving (not just the motor), and the system behaves linear.
A motion of all parts shall now be achieved. A complex system is a motor controlled system which drives by some transmission a load which is subjected to more friction than the motor, as depicted in
A reliable check if the movement is in the virtual play or outside the virtual play is possible on the velocity signal: if the movement is outside the virtual play the velocity increases in time (proportional with the time if damping is absent). The proposed check is to divide the constant force interval (½Tblock=0.25 [s]) in four equidistant sections and to compute the average velocity for these intervals. The section are defined by 0−TB−2TB−3TB−4TB with TB=¼ 1/2Tblock=0.0625 S. Then the following check (S5) must be performed:
V4>V3>V2>V1>0
or
Besides virtual play, actual play may exist in the system. If the system moves in the play the movement is like a free moving mass. This can not be distinguished from a movement outside the play. So this is very hard to deal with, and it can only be assumed that the actual play is small.
Now, linearity shall be discussed. Effects like cogging or play may have significant influence for small movements and as a consequence the estimators may be poor. Cogging depends on the number of magnets/coils in a motor which for rotating motors typically varies between 6 and 12. The velocity check of step S5 may not be sufficient for detecting these non-linear effects. Adding a check on minimal displacement may prevent mistakes. For rotating systems a minimal displacement of ⅙ rotation and for translating systems 0.5 mm will in most cases guarantee that the influence of cogging and play is small. Care must be taken that 0.5 mm or ⅙ rotation is not close to the maximum displacement (close means 10% of the maximum displacement); in that case a minimal displacement of 1/10 of the maximum displacement is preferred.
When the velocity check (S5) or the minimal displacement check have not been passed the amplitude of the block-wave must be increased (S6). The new amplitude must be that small that the system remains within its limits, so a small raising of the amplitude improves safety. However, when the steps are too small the block-wave analysis may consume quite some time. As an example, a step size of 0.1 V is proposed.
When the checks (S5) have been passed for the first time a linear movement has been obtained. The corresponding block-wave amplitude (defined as Alinear) is mostly just above the friction level. It was found in experiments that this first linear movement did not result in the best estimators; however, a preliminary estimate for mass and friction can be found (S7).
Therefore, it is proposed to increase the block-wave amplitude in step S8 and to perform further block-wave excitations (S10) including a stop of the mass (S11). It is expected generally that increasing the amplitude with 25% and 50% (at least two movements are required for analysis; a counter is applied in step S13) suffices:
Ablock1=1.25 Alinear and Ablock2=1.5 Alinear.
Numerous variations are possible for computing Ablock1 and Ablock2. The best way is to verify the settings on several set-ups. Usually it is expected that it is possible to apply a force of 1.5 times the friction force without exceeding maximum displacement levels.
Care must be taken that the system boundaries (maximum displacement and Umax) are not exceeded (S9). After applying Alinear it is possible to predict displacements. When assuming zero damping an initial estimate Kdci of Kdci can be obtained by:
with T1 half a period of the block-wave (0.25 s for the proposed 2 Hz block-wave) and with
in which Tv=0 is the time-point were the direction of movement changes. Kdc is in the presence of damping an overestimation.
Now it can be checked (S9) if the expected displacement is smaller than 50% of the maximal displacement. The 50% is a safety margin: the system starts braking at T1 but it may take up to time 2T1 before the system actually stops. The total displacement is then maximal 2 x(T1).
If the above inequities apply, the new block-waves with Ablock1 and Ablock2 can be applied. If not, other block-wave amplitudes have to be chosen (S12). Another constraint to be dealt with is the maximum controller output.
The following dealing with constraints is proposed:
Block-Wave Amplitude Constraints:
The amplitude variation between Ablock1 and Ablock2 should be large enough to ensure a good resolution. For systems with little friction it may be wiser to choose Ablock1 and Ablock2 for example as respectively Alinear+0.1Umax and Alinear+0.2Umax, instead of a certain percentage of Alinear (approximately equal to friction).
Finally (S14), good estimates for friction, mass and damping are obtained by equations 5-7 above.
The above has been verified in an experimental set-up. First, a one-period block-wave with an amplitude of 90% of Ubreak-away is applied. Ubreak-away was established at 0.48 V, which is just above the friction level of 0.46 V. The results of the first block-wave are shown graphically in
For judging linearity the (average) velocity for 4 equidistant intervals between 0 and 0.25 s (constant force part) is computed. The velocities computed are respectively: v1=1475, v2=903, v3=419 and v4=1226 [incr/s]. As this is not an increasing sequence the movement is considered not linear (or in the virtual play) and the block-wave amplitude is raised with 0.1 V (S6) and applied again (S3). The new results are shown in
Again the (average) velocity is computed for 4 equidistant intervals between 0 and 0.25 s: v1=2459, v2=5419, v3=7113 and v4=7903 [incr/s]. An equivalent check would be to check if the displacement is monotonously increasing. Now the movement is judged to be linear, so Alinear=0.532. Now an initial Kfc and Kdc is estimated (S7; for reasons of safety only):
{circumflex over (K)}fc=0.45 [V](computed with T1=0.25 s and Tv=0=0.271 s).
{circumflex over (K)}dc=5.6 106[incr/Vs2]
Both estimates are reasonably accurate (actual values (0.48 and 4.8 106). It should be noted that Kdc is overestimated, which is typical for this estimation method.
Now it is checked whether it is possible to raise Ablock with another 50% (S8, S9).
As xexpected is smaller than 50% of the maximum displacement it is expected to be possible to raise the amplitude with 25% (Ablock1) and 50% (Ablock2). First the block-wave with amplitude Ablock1=1.25 Ablocklinear is applied. The results are shown in
Next, the block-wave with amplitude Ablock2 is applied, the results are shown in
Now all data needed for processing in one direction is acquired. The successive movements have been shown in
The same experiments have also been performed in the opposite direction.
The estimators, resulting from the equations presented above, are presented in the tables below:
After averaging: {circumflex over (f)}bd = 0.48 Hz
After averaging: Kdc = 4.97 106
With the estimated Kdc also an estimate for the absolute damping can be computed (equation 6): The results for the positive and negative direction are respectively: {circumflex over (b)}=6.8 10−7 and {circumflex over (b)}=5.3 10−7
The results are very accurate, especially the most important estimator Kdc estimate is very good. It was analysed how estimators are influenced by block-wave amplitudes and if estimator errors in b/m propagate in the other estimators. It appeared that estimator errors in b/m hardly propagate.
Next, controller tuning shall be explained.
The most important feedback controller objective is to stabilise the system. In the autotuner this is realised by providing a phase lead at the bandwidth frequency. For controller tuning the Kp and Kv part are used for providing the necessary amplification as well as for providing the phase lead. The phase lead has to be chosen large as it can not be excluded that there is phase loss in the system at the bandwidth frequency (e.g. phase lag in amplifier etc.)
It is also possible, and in some cases desirable, to tune a 2nd order low-pass filter and an integrator provided in the controller. The 2nd order low-pass filter reduces the high frequent amplification which usually results in a smoother (less noisy) controller output. As a consequence the controller tuning seems more reliable to the user. Disadvantage is that it gives additional phase lag at the bandwidth frequency. This can be compensated for by increasing Kv, but this results in less amplification at low frequencies (for a certain bandwidth and phase margin). The integrator may be used for 1) improving setpoint tracking by increased low-frequent gain, 2) improve settling by realising a zero-error in the presence of friction 3) increasing the settling speed by activating the integrator at the end of the setpoint. Disadvantage is that it also results in a phase lag at the bandwidth frequency (which also can be compensated by Kv).
The term “bandwidth” shall be understood as the (most low-frequent, descending) 0 dB crossing of the open loop frequency response function of x/Cin wherein x is the output (position or rotation measurement) of the system and Cin is the controller input signal.
The controller (consisting of Kp, Kv, integrator and low-pass filter) can be approximated (continuous description) with the relation
with Kp the proportional gain, Kv the derivative gain, Ki the integrator gain, flp the 2nd order low pass filter frequency and βlp the damping of the low pass filter. The controller has breakpoints at the frequencies: fi=Ki/(2π), fd=Kp/(Kv2π) and flp.
With the controller a certain phase margin and a certain amplification at the bandwidth frequency shall be established. For computing the Kp and Kv formulas are derived below. It is assumed that first the low-pass filter and optionally the integrator have been set (rules of thumb for the settings will be discussed later) and then to compute Kp and Kv to establish the desired phase margin and amplification.
Due to the integrator a phase loss at the bandwidth frequency of
is obtained. The low pass filter results in an additional phase loss of
Also the phase loss due to calculation delay can be computed
φc(fbw)=fbwTc360[8]
(so for a calculation delay of 0.1 ms this results in a phase loss of 0.18° at 5 Hz).
From the system
a damping estimate is obtained. The phase provided by damping at the bandwidth frequency equals
The phase lead to be given by the Kp−Kv filter now equals
φkv(fbw)=φpm+φlp(fbw)+φi(fbw)+φc(fbw)−φsystem(fbw)
with φpm the desired phase margin.
The Kp−Kv part of the controller provides a phase lead of
(Equation 9)
It should be noted that a maximum phase lead of 90° can be achieved by the Kp−Kv controller part. The KpKv part also has to realise a amplification such that the open loop gain equals one at the bandwidth frequency.
The amplitude of the open loop at the bandwidth frequency can be computed from
|Hol(fbw)|=1=√{square root over (Kp2+(Kv2πfbw)2)}Ksystem(fbw)Klp(fbw)Kintegrator(fbw) (Equation 10)
with:
Using equations 9 and 10 Kp and Kv can be solved from the estimated Kdc, estimated damping, the desired phase margin and bandwidth frequency.
From equation 9 it follows that:
Substituting in equation 10 Kp can be solved:
Kp
Now, with help of equation 11 Kv can be solved as well:
So, when an integrator frequency, a low-pass frequency and low-pass damping have been set the Kp and Kv can be computed such that the feedback requirements (phase margin and bandwidth) are satisfied. It depends on the user requirements whether or not the integrator is advantageous.
Next, the proposed methods for tuning the controller respectively with and without integrator are explained. For both strategies the tuning aims at a 5 Hz bandwidth system with 45° phase margin
First, controller tuning without integrator shall be discussed.
For the autotuner it is hard to determine an optimal setting for the low-pass filter. When tuning manually, one usually hears (noise) and sees (noisy controller output) whether a low pass filter is required. The low-pas filter can also be used for dealing with dynamics when a frequency response function has been measured. None of the above information is available, so it is best to start with a best guess for the low pass filter. Roughly two ‘best guesses are available’ (although all in between values may be as good or better as well):
Both strategies have been simulated.
It is proposed to choose N as 20 samples as an example.
If Anoise exceeds a certain value (proposed is 0.5 V) the low-pass filter frequency is decreased to flp=3.8fbw and the KpKv settings are computed again and the controller is applied.
An exemplary proposed tuning is:
flp=30 fbw (decrease only if measure of noise exceeds maximum level)
βlp=0.65
Kp and Kv to match the desired gain and phase margin according to equation 12 and equation 13.
Next, controller tuning with integrator shall be discussed.
As mentioned above adding the integrator improves disturbance rejection, tracking and provides a zero error in the presence of friction. It does not necessarily improve settling and it gives a phase lag at the bandwidth frequency which has to be compensated for by increasing the Kv. When an integrator is desired it is usually set to maximal gain without violating the stability margins (phase margin in this case). For an integrator gain which corresponds with an integrator breakpoint frequency of 0.31 fbw the bode diagram is shown in
An exemplary proposed tuning is:
flp=30 fbw (decrease if measure of noise exceeds maximum level)
βlp=0.65
Ki=0.31 fbw2π(fi=0.31 fbw).
Kp and Kv to match the desired gain and phase margin according to equation 12 and equation 13.
With help of the estimates as described above the controller tuning has been computed as proposed above with low-pass filter and integrator and implemented in dSPACE. The measured open loop FRF of the actual system (with the dSPACE controller) and autotuner model (i.e. the mass-damper model and controller formula) are shown in FIGS. 20 and 21. The measured bandwidth was 4.9 Hz and the phase margin was 44° (so very close to the target of 5 Hz and 45°). It can be concluded that the estimated parameters and the proposed controller tuning results in the desired objectives.
Now, an optimisation of the described method shall be explained with reference to the flow chart of
For performing a bandwidth optimisation it is proposed to increase the bandwidth in steps, i.e. to perform autotuning (S23) to obtain an increased bandwidth. After every step of autotuning (S23) a movement is performed (S24) and the autotuner decides on a criterion whether increasing the bandwidth (or actually the expected bandwidth) was an improvement (S25). Improvement means that the error, i.e. the difference between trajectory and measured position, during and after movement has become smaller. If there was an improvement the algorithm returns back to step S23 to further increase the bandwidth, while in the negative case the best bandwidth is selected (S26) and the algorithm terminates.
Important parameters to be set for this step are:
For choosing the step size the items below are of importance:
A double integrator system (−2 slope) implies that when increasing the bandwidth with a factor k the magnitude increases with k2. A magnitude raising of 3 dB is usually acceptable (i.e. the system will not become unstable). A magnitude raising of 6 dB (or bandwidth frequency raising of √{square root over (2)}) is already risky (starting from a relatively safe amplitude margin of 9 dB the amplitude margin may be reduced to 3 dB in one step, a 3 dB amplitude margin is very close to instability). By performing simulations or more experiments it is possible to check how risky a raising of 6 dB actually is. These checks have not yet been performed and for that it is proposed to remain on the safe side and the increase the controller gain with 3 dB per step. So the bandwidth is increased in steps of {fourth root}{square root over (2)}=1.19. Then in 18 steps a 100 Hz bandwidth system can be achieved starting from a 5 Hz bandwidth system. Whether or not the duration of the optimisation is acceptable depends on the setpoint duration which is discussed below.
The movement setpoint and optimisation criterion are closely linked to each other. The representative movement at least has to deal with the issues:
Other movement characteristics depend on the chosen optimisation criterion.
Basically two approaches are possible:
In experiments it was found that using the second approach it is very hard to avoid a local optimum. The second approach also takes more time because of the large constant velocity part. Experimentally good results were found using the first approach with a short setpoint duration in combination with the optimisation criterion as explained below.
Now, feedforward/feedback during optimisation will be explained.
The feedback tuning will be like explained above. All parameters (integrator and low-pass) have to be implemented during optimisation as they influence performance and stability. Less clear is, if it is advantageous to activate the feedforward parameters during optimisation. The friction part of the feedforward is meant to compensate for non-linear behaviour and it ensures that the system starts moving at the beginning of the setpoint. But if, for example, the complete feedforward tuning is perfect and the system behaves like a mass-friction-damper system there will be no difference in the response of a 5 Hz and 10 Hz bandwidth system. For this, the acceleration and damping part of the feedforward should not be activated during optimisation. This theory is also supported by experimental results.
A reasonable value for the setpoint acceleration asp may be found by choosing the same acceleration as previously used (safely) during the block-wave analysis:
asp=(Ablock2−Kfc)Kdc.
The maximum velocity is chosen such that the total setpoint duration equals the desired setpoint duration (proposed: 0.2 s).
The setpoint displacement can now also be computed:
The setpoint is shown in
For judging the performance the RMS value of the error during (1) settling or (2) during the setpoint or (3) during both setpoint and settling can be considered It was found that the latter seems most reliable. (1) is not recommended as it is possible that the systems at the end of the setpoint stops on friction (after that is may take quite some time before the integrator manages to overcome friction). Using (2) may result in missing errors after the setpoint. It is proposed to use the combination of both.
For the proposed movement other criteria can be applied as well for judging the performance, such as:
the RMS of the error after the setpoint during 0.3 s;
the RMS of the error during the setpoint only (0.2 s);
the RMS of the error during 0.5 s;
the RMS of the controller output during 0.5 s.
The proposed optimisation is as follows: Apply 2nd order setpoint without constant velocity part with a duration of 0.2 [s] and an acceleration magnitude of Ablock2−Kfc. Compute the RMS value of error during the 0.2 [s] setpoint and 0.3 [s] settling.
In an experimental verification, first the 5 Hz feedback tuning is applied based on the results obtained from the block-wave analysis (see
The proposed error criterion as a function of the bandwidth frequency is shown in
Other optimisation criteria are computed and possible. However, the RMS error has been shown to be the best criterion.
Another movement well worth examining is a movement as a result of a step on the position setpoint. Dealing with friction is the main challenge in this strategy.
Another alternative strategy would be to perform a ‘representative movement’ and ask the user if he wants to increase the bandwidth. After increasing the bandwidth the movement is repeated and the results are shown graphically.
Even with small steps in the bandwidth raising there is still a risk of becoming unstable in one optimisation step (e.g. the presence of badly damped resonances). It is recommended to apply a measure for instability (e.g. controller output), when instability is detected a switch to an old (stable) controller can be made.
From the above the following can be concluded.
The proposed autotuner algorithm performed very well on the experimental set-up. Within several seconds estimates are obtained for damping, friction and the mass. The estimator of the mass and friction were within 10% accurate. The damping estimate was a little bit less accurate, but still within 20% of its actual value. By means of analysis and simulation of dynamics and other common system characteristics like play, virtual play and stick slip it has also been made likely that the autotuner will perform well on other set-ups.
It proved to be important to estimate damping as well. For the experimental set-up estimator errors of over 25% were made if damping was neglected.
The autotuner method is different from other known methods. The main difference is that it was found that analysing the response of a block-wave excitation in open loop leads to more accurate results than could be obtained from a closed-loop sine excitation and closed loop feedforward parameter estimation. Moreover, a block-wave analysis is very efficient. From four movements, which only take 0.5 s each, all important parameters can be estimated.
For the feedback controller, tuning formulas are proposed which compute Kp and Kv settings which provide the correct phase lead and amplification, given the mass and damping estimate, integrator frequency and low-pass filter settings. There are no settings which are optimal for all systems. Generally it is recommended to use the low-pass filter only if noise is present on the controller output. A rule of thumb (based on maximum low-frequent gain) is proposed for the integrator setting.
An automatic bandwidth optimisation is proposed. The optimisation performed well on the experimental set-up. Based on the response of the system on a short setpoint profile a criterion judges whether increasing the bandwidth was an improvement. The proposed criterion was selected as it was the only tested criterion which could avoid a local optimum during the optimisation process.
Number | Date | Country | Kind |
---|---|---|---|
02078264.5 | Aug 2002 | EP | regional |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/IB03/03406 | 8/4/2003 | WO | 2/2/2005 |