Controller

Information

  • Patent Grant
  • 5532565
  • Patent Number
    5,532,565
  • Date Filed
    Tuesday, April 11, 1995
    29 years ago
  • Date Issued
    Tuesday, July 2, 1996
    28 years ago
Abstract
A controller for controlling a non-linear mechanical system having a plurality of degrees of freedom, comprises compensation means to compensate the non-linear behavior of the mechanical system, the controller further comprises a reference model of both a control unit and the linearized mechanical system, and the controller further comprises adaptation means which adapts the compensation means in dependence on a difference between an output signal of the mechanical system and an output signal of the reference model.
Description

BACKGROUND OF THE INVENTION
1. Field of the Invention
The invention relates to a controller for controlling a non-linear mechanical system having a plurality of degrees of freedom.
2. Description of the Related Art
A degree of freedom is a possibility of the mechanical system to move in a certain direction, like a translation along an x-,y- and/or z-axis or a rotation around an x-,y- and/or z-axis. A mechanical system can have a plurality of degrees of freedom, which need to be controlled to obtain a desired position or rotation.
Such a controller is used to realise for example accurate positioning of a mechanical system. Examples of such mechanical systems can be found in both consumer products (so-called CD-players, DCC-players) and in industrial production equipment (wafersteppers, component-placement-equipment). Many mechanical systems are subject to friction and/or backlash, which makes it difficult to position the mechanical system accurately. Instead of demanding higher accuracy of the mechanical system, which inevitably leads to more expensive components, a controller can be used. However, controllers which control the non-linear aspects of the mechanical system, like friction and backlash, and which accurately position a mechanical system are not known.
SUMMARY OF THE INVENTION
It is an object of the invention to provide a controller for controlling non-linear mechanical systems and obtaining a relatively high position accuracy.
This controller according to the invention is characterized in that the controller comprises a subtracter for subtracting an output signal of the mechanical system from a setpoint signal, the output signal of the subtracter being the input signal of a control unit of the controller, the controller further comprises compensation means to compensate the non-linear behaviour of the mechanical system, the controller further comprises an adder for adding an output signal of the compensation means to an output signal of the control unit, the output signal of the adder being the input signal of the mechanical system, the controller further comprises a reference model of both the control unit and the linearized mechanical system, the setpoint signal being an input signal of the reference model, and the controller further comprises adaptation means which adapt the compensation means in dependence on a difference between the output signal of the mechanical system and the output signal of the reference model.
The reference model, which is a model of the control unit and the linearized mechanical system, receives the same setpoint signals as the control unit and the non-linear mechanical system. Assuming that the reference model gives a good description of the linear part of the mechanical system, the difference between the output of the reference model and the non-linear mechanical system originates from the non-linear part of the mechanical system. The compensation means comprises a model of the non-linear part of the mechanical system. Based on the output signal of the mechanical system, the compensation means adds a compensation signal to the output signal of the control unit. If the model of the non-linear part of the mechanical system gives a good description of the non-linearity of the mechanical system, the difference between the output of the reference model and the output of the non-linear mechanical system will be zero. If the difference is not zero than the model of the non-linear part of the mechanical system is not correct. In that case, the adaptation means adapts the model of the compensation means as long as the difference between the output of the reference model and the output of the non-linear mechanical system is not zero.
Another advantage of adaptation of the compensation is that temperature, wear and time dependence of the non-linear part of the mechanical system are taken into account.
An embodiment of the controller according to the invention is characterized in that the non-linear behaviour of the mechanical system is due to Coulomb-friction which compensated for by the is compensation means, whereby the output signal of the compensation means represents a compensation force F.sub.c, which depends on the direction of a velocity V of the mechanical system according to:
if V<-.epsilon. then F.sub.c =-c.sub.2
if .vertline.V.vertline..ltoreq..epsilon. then -c.sub.2 .ltoreq.F.sub.c .ltoreq.c.sub.1
if V>.epsilon. then F.sub.c =c.sub.1
whereby .epsilon. is a velocity below which accurate determination of the direction of the velocity is not possible, c.sub.1, c.sub.2 are compensation values, and the compensation force F.sub.c is added to a force output signal F.sub.s of the control unit.
Coulomb-friction is friction which can be described as a constant friction force which opposes the motion of the mechanical system, when the velocity of the mechanical system is not zero. A relatively small dead zone .epsilon. around zero velocity is used, because the direction of the velocity can only be determined when the mechanical system is moving with a minimum velocity .epsilon.. In many mechanical systems the fiction can be described as Coulomb-friction.
A correct determination of the value c.sub.1, c.sub.2 of the compensation is very important: if the compensation is smaller than the fiction present, no full suppression of the friction effect will take place; if the compensation is greater than the friction present, limit cycling will occur.
The compensation is determined according to another embodiment of the controller according to the invention, which is characterized in that the adaptation means adapts the compensation values c.sub.1, c.sub.2 by calculating a remaining force F.sub.r, which depends on a difference between a position output signal of the mechanical system and a position output signal of the reference model, after which new values for c.sub.1 and c.sub.2 are calculated according to ##EQU1##
if .vertline.V.vertline..ltoreq..epsilon. and e>.alpha. then c.sub.1 and c.sub.2 are not changed and F.sub.c =c.sub.1
if .vertline.V.vertline..ltoreq..epsilon. and e<-.alpha. then c.sub.1 and c.sub.2 are not changed and F.sub.c =-c.sub.2
if .vertline.V.vertline..ltoreq..epsilon. and .vertline.e.vertline..ltoreq..alpha. then c.sub.1, c.sub.2 and F.sub.c are not changed
with:
t.sub.0 : the moment at which the velocity changes its direction
.tau.: adaptation factor
e: difference between a position setpoint signal and the position output signal of the mechanical system
.alpha.: desired accuracy.
The adaptation means will strive to reduce the remaining force F.sub.r to zero all the time, in which case full compensation takes place. In this way a high position accuracy is obtained. The model of the compensation means is only adapted when the velocity is larger than .epsilon.. When the velocity is smaller than .epsilon., the direction of the compensation might be adapted if the desired accuracy is not yet obtained.
The compensation is determined according to a further embodiment of the controller according to the invention, which is characterized in that the adaptation means adapts the compensation values c.sub.1, c.sub.2 by calculating a remaining force F.sub.r, which depends on a difference between a position output signal of the mechanical system and a position output signal of the reference model, after which new values for c.sub.1 and c.sub.2 are calculated according to ##EQU2## with t.sub.0 : the moment at which the velocity changes its direction
.tau.: adaptation factor.
The adaptation means will strive to reduce the remaining force F.sub.r to zero all the time, in which case full compensation takes place. The adaptation is very easy and the obtained position accuracy is good.
Another embodiment of the controller according to the invention is characterized in that the control unit comprises proportional and derivative feedback.
Such a control unit can easily be implemented and is relatively fast.
An embodiment of the controller according to the invention is characterized in that the control unit comprises integral feedback.
With the integral feedback, the output signal of the mechanical system will always become equal to the setpoint signal.
An embodiment of the controller according to the invention is characterized in that acceleration terms in the remaining force F.sub.r are neglected by the adaptation means.
The effect of the acceleration terms on the adaptation of the compensation is relatively small. Neglecting the acceleration terms makes it easier to calculate the remaining force F.sub.r.





BRIEF DESCRIPTION OF THE DRAWINGS
The invention will be explained in more detail with reference to the drawings in which
FIG. 1 shows a controller according to the invention,
FIG. 2 shows a mechanical system with compensation means,
FIG. 3 shows a controlled, compensated system and a reference model of the controlled system,
FIG. 4 shows a differentiating network,
FIG. 5 shows a controller according to the invention, comprising the mechanical system and compensation means of FIG. 2 and a control unit and the reference model of FIG. 3,
FIG. 6 shows another controlled, compensated system,
FIG. 7 shows another controller according to the invention, comprising the controlled compensated system of FIG. 6,
FIG. 8 shows a PID-control unit of a controller according to the invention,
FIGS. 9a-d show results of a computer simulation of a second order mechanical system and a PD-control unit,
FIG. 10 shows a simplified model of a fourth order system,
FIGS. 11a-b show results of a computer simulation of a controller for the fourth order system of FIG. 10;
FIGS. 12a-b show results of a computer simulation of a controller whereby acceleration terms are neglected by adaptation means of the controller,
FIG. 13 shows results of a computer simulation of a controller whit a PID-control unit,
FIG. 14 shows a mechanical system,
FIGS. 15a-f show results of experiments with a controller and the mechanical system of FIG. 14.





DESCRIPTION OF THE PREFERRED EMBODIMENT
The same reference numerals are used for the corresponding parts in the various figures.
FIG. 1 shows diagrammatically a controller 1 according to the invention for controlling a non-linear mechanical system 2. The controller 1 comprises a subtracter 3 for subtracting an output signal S.sub.out of the mechanical system 2 from a setpoint signal S.sub.set. The output signal of the subtracter 3 is the input signal of a control unit 4 of the controller 1. The controller 1 further comprises compensation means 5 to compensate the non-linear behaviour of the mechanical system 2. The controller 1 further comprises an adder 6 for adding an output signal S.sub.c of the compensation means 5 to an output signal S.sub.s of the control unit 4. The output signal S.sub.a of the adder 6 is the input signal S.sub.a of the mechanical system 2. The controller 1 further comprises a reference model 7 of both the control unit 4 and the linearized mechanical system 2, the setpoint signal S.sub.set being an input signal of the reference model 7. The controller 1 further comprises adaptation means 8 which adapts the compensation means 5 in dependence on a difference between the output signal S.sub.out of the mechanical system 2 and the output signal S.sub.m of the reference model 7. The reference model 7 gives a description of the linear part of the mechanical system, so that the difference between the output signal S.sub.m of the reference model 7 and the output signal S.sub.out of the non-linear mechanical system 2 originates from the non-linear part of the mechanical system 2. The compensation means 5 comprises a model of the non-linear part of the mechanical system 2. If the model of the non-linear part of the mechanical system 2 gives a good description of the non-linearity of the mechanical system 2, the difference between the output signal S.sub.m of the reference model 7 and the output signal S.sub.out of the non-linear mechanical system 2 will be zero. If the difference is not zero than the model of the non-linear part of the mechanical system is not correct. In that case, the adaptation means 8 adapts the model of the compensation means 5 as long as the difference between the output signal S.sub.m of the reference model 7 and the output signal S.sub.out of the non-linear mechanical system 2 is not zero. The input S.sub.set of the controller 1 is one or more desired positions or rotations of the mechanical system 2, like a position along an x-,y- and/or z-axis or a rotation around an x-,y- and/or z-axis.
FIG. 2 shows a part of the controller 1 of FIG. 5 comprising a mechanical system 2 and compensation means 5. The mechanical system 2 represents a mass m which is movable in the X-direction on a surface, whereby Coulomb-friction F.sub.w between the mass m and the surface occurs. The mechanical system 2 is denoted in the Laplace-transform. The Coulomb-fiction F.sub.w opposes the motion of the mass m, so that the force which causes the mass m to move as if there is no friction, equals F.sub.ss =F.sub.a -F.sub.w, whereby F.sub.a is the force which is applied on the mechanical system 2. The Coulomb-friction F.sub.w =d.sub.1 if the velocity V>0 and F.sub.w =d.sub.2 if the velocity V<0, but the values d.sub.1, d.sub.2 are unknown and depend a.o. on temperature and wear. The compensation means 5 comprises a differentiator 9 which estimates a velocity V based on different position output signals x. The compensation means 5 further comprises a model 10 of the non-linear mechanical part of the mechanical system 2. The model 10 represents a Coulomb-friction whereby, the friction F.sub.c =c.sub.1 if V>.epsilon. and F.sub.c =-c.sub.2 if V<-.epsilon.. If the velocity .vertline.V.vertline..ltoreq..epsilon., no compensation is applied. A small dead zone is present around V=0 for reasons of implementation technology; there must be a certain minimum velocity .epsilon. for a positive or negative speed direction to be detected. Based on the direction of the velocity V, a compensation force which equals the expected friction F.sub.c is added to the force F.sub.s from the control unit 4 by the adder 6. If c.sub.1 =d.sub.1 and c.sub.2 =d.sub.2, the compensation force F.sub.c =F.sub.w, so that the force F.sub.ss =F.sub.a -F.sub.w =F.sub.s +F.sub.c -F.sub.w =F.sub.s is the same force which would have been applied to a mechanical system without friction. When F.sub.c =F.sub.w, full compensation is achieved.
FIG. 3 shows a part of the controller 1 of FIG. 5 comprising the mechanical system 2 of FIG. 2, a control unit 4, a reference model 7, a subtracter 3 and an adder 6. The subtracter 3 subtracts the position output signal x of the mechanical system 2 from a position setpoint signal x.sub.set. The output signal x.sub.set -x of the subtracter 3 is the input signal of a control unit 4. The control unit 4 comprises a proportional action k.sub.p, and a differentiating action H.sub.vel k.sub.v, whereby k.sub.p is a proportional control parameter, k.sub.v is a derivative control parameter and H.sub.vel represents a transfer function of a differentiating network 22, which is used to estimate the velocity x.sub.est. The working of the differentiating network 22 will be explained with reference to FIG. 4. The reference model 7 comprises a model of the control unit 4 and the linearized part ##EQU3## of the mechanical system 2. The input signal x.sub.set of the reference model 7 is the same as the input signal of the control unit 4. The output signal x.sub.m of the reference model 7 would be the same as the position x of the mechanical system 2 if no friction F.sub.w would occur on the mechanical system 2.
FIG. 4 shows a differentiating network 22 which can be used to estimate the velocity x.sub.est and the acceleration x.sub.est of the mass m. The differentiating network 22 comprises a subtracter 23 which subtracts an output signal of an integrator 24 from the position input signal x. The output signal of the subtracter 23 is multiplied by a constant K.sub.2 and represents an estimation of the acceleration x.sub.est. The estimated acceleration x.sub.est is supplied to an integrator 25. The output of the integrator 25 represents an estimation of the velocity x.sub.est. The output signal of the subtracter 23 is multiplied by a constant K.sub.1 and added to the estimated velocity x.sub.est by an adder 26. The output of the adder 26 is the input signal of the integrator 24. The transfer functions of the differentiating network 22 are: ##EQU4##
The transfer function H.sub.vel comprises a differentiator (s) followed by a second order low pass filter ##EQU5## The transfer function H.sub.acc comprises a double differentiator (s.sup.2) followed by the same second order low pass filter. The low pass filter can be characterized by a crossover frequency f.sub.dif and a relative damping .zeta..sub.dif. The constants K.sub.1, K.sub.2 of the low pass filter are given by K.sub.1 =4.pi.f.sub.dif .zeta..sub.dif and K.sub.2 =(2.pi.f.sub.dif).sup.2. If the crossover frequency f.sub.dif is too high, noise will disturb a correct determination of x.sub.est and x.sub.est. If the crossover frequency f.sub.dif is too low, the estimation of x.sub.est and x.sub.est is slow and fast changes of x.sub.est and x.sub.est can not be determined. Suitable values for the crossover frequency f.sub.dif and a relative damping .zeta..sub.dif are f.sub.dif =100 Hz and .zeta..sub.dif =0,7.
FIG. 5 shows the complete controller 1 for controlling the mechanical system 2 of FIG. 2. The controller 1 comprises the mechanical system 2 and the compensation means 5 of FIG. 2 and the control unit 4 and the reference model 7 of FIG. 3. The controller 1 further comprises adaptation means 8. With the adaptation means 8 a difference between the real position x of the mechanical system 2 and the calculated position x.sub.m is calculated. The difference (x.sub.m -x) is caused by residual non-linear forces F.sub.r, which are not compensated for by the compensation means 5. The residual forces are determined as follows:
F.sub.r =mH.sub.acc (x.sub.m -x)+k.sub.v H.sub.vel (x.sub.m -x)+k.sub.p (x.sub.x -x)
whereby H.sub.acc represents a transfer function of a differentiating network 22, which is used to estimate the acceleration x.sub.est.
The sign of F.sub.r depends on the direction of the velocity x.sub.est of the mechanical system 2 and on the values of the compensation and friction. Multiplication of F.sub.r by the sign of the velocity, sign(x.sub.est), yields the variable F.sub.r sign(x.sub.est), the sign of which is independent of the direction of the speed.
The following holds approximately for
x.sub.est >.epsilon. (sign(x.sub.est)=+1): F.sub.r sign(x.sub.est)=d.sub.1 -c.sub.1 ;
and for
x.sub.est <-.epsilon. (sign(x.sub.est)=-1): F.sub.r sign(x.sub.est)=d.sub.2 -c.sub.2.
In these expressions, d.sub.1 and d.sub.2 are the friction forces for the positive and the negative directions of movement, c.sub.1 and c.sub.2 are the compensation forces for the positive and the negative directions of movement.
The parameters c.sub.1 and c.sub.2 and the compensation force F.sub.c are adapted as follows: ##EQU6## with t.sub.0 : the moment at which the velocity changes its direction
.tau.: adaptation factor.
FIG. 6 shows a part of another controller according to the invention, comprising a control unit 4, a mechanical system 2 and compensation means 5. The mechanical system 2 represents a rotating mass with an inertia J which is rotated in .phi.-direction, whereby a Coulomb-torque T.sub.f opposes the rotation of the mass. The system 2 is denoted in the Laplace-transform. The control unit 4 comprises a proportional action k.sub.p acting on a difference .phi..sub.set -.phi., between an position setpoint signal .phi..sub.set and a position output signal .phi.. The control unit 4 further comprises a differentiating action H.sub.vel k.sub.v acting only on the position .phi., whereby H.sub.vel represents a transfer function of a differentiating network 22 according to FIG. 4, which is used to estimate the velocity .phi..sub.est of the mass of the mechanical system 2. The transfer function is ##EQU7## The compensation means 5 also comprises the transfer function H.sub.vel for estimating the velocity .phi..sub.est. The compensation means 5 further comprises a model 10 of the non-linear mechanical part of the mechanical system 2. The model 10 represents a Coulomb-friction whereby, the friction compensation torque T.sub.c =c.sub.1 if .phi..sub.est >.epsilon. and T.sub.c =-c.sub.2 if .phi..sub.est <-.epsilon.. If the velocity .vertline..phi..sub.est .vertline..ltoreq..epsilon. no compensation is applied. The torque T.sub.c is added to a torque T.sub.s of the control unit 4.
FIG. 7 shows another controller 1 according to the invention with the control unit 4, the mechanical system 2 and the compensation means 5 of FIG. 6. The compensation means 5 of FIG. 6 are integrated with adaptation means of the controller 1 in one unit 11. The controller 1 further comprises a reference model 7 comprising a model of both the control unit 4 and the linearized part ##EQU8## of the mechanical system 2. The position output signal .phi..sub.m of the reference model 7 would be the same as the position output signal .phi. of the mechanical system 2 if no friction T.sub.f would occur in the mechanical system 2. With the unit 11 a residual torque T.sub.r is calculated based on a difference between the position .phi. of the mechanical system 2 and the position .phi..sub.m of the reference model 7 according to:
T.sub.r =T.sub.f -T.sub.c =JH.sub.acc (.phi..sub.m -.phi.)+k.sub.v H.sub.vel (.phi..sub.m -.phi.)+k.sub.p (.phi..sub.m -.phi.).
H.sub.acc represents a transfer function of a differentiating network 22, which is used to estimate the acceleration .phi..sub.est, whereby ##EQU9##
FIG. 8 shows a PID-control unit 12 of a controller 1 according to the invention, which can be used instead of the control unit 4 of FIG. 6 in the controller 1 of FIG. 7. The control unit 12 comprises a proportional (P) action k.sub.p acting on the difference of .phi..sub.set -.phi., an integrating (I) action ##EQU10## whereby k.sub.i is an integral control parameter, and a differentiating (D) action H.sub.vel k.sub.v acting only on the position .phi., whereby H.sub.vel represents a transfer function of a differentiating network 22, which is used to estimate the velocity .phi..sub.est of the mass of the mechanical system 2. Due to the integral action an additional torque T.sub.ki is applied to the mechanical system 2. If the reference model 7 of FIG. 7 remains the same, the remaining torque T.sub.r will be:
T.sub.r =T.sub.f -T.sub.c =JH.sub.acc (.phi..sub.m -.phi.)+k.sub.v H.sub.vel (.phi..sub.m -.phi.)+k.sub.p (.phi..sub.m -.phi.)+T.sub.ld
With a PD-control unit, no adaptation of the compensation takes place if the velocity .vertline..phi..sub.est .vertline..ltoreq..epsilon.. Because of this a position error e will remain if the friction T.sub.f is not yet entirely compensated. Although the position error e might be small, it can exceed a desired high accuracy. Due to the integral action the position of the mechanical system 2 will always reach the desired accuracy.
The FIGS. 9a-d, 11a-b, 12a-b and 13 show results of computer simulations with a controller 1 according to the invention, whilst FIGS. 15a-f show results of experiments with a controller 1 according to the invention on a mechanical system 14 as shown in FIG. 14. By the computer simulations it is assumed that d.sub.1 =d.sub.2 =d, that c.sub.1 =c.sub.2 =c and that the adaptation of the compensation value c and the compensation torque T.sub.c works as follows: ##EQU11##
For the computer simulations no dead zone .epsilon. is needed around
.phi..sub.est =0, so .epsilon.=0.
The FIGS. 9a-d show results of a computer simulation with the controller 1 comprising the elements as shown in the FIGS. 6 and 7, whereby .tau.=0,2/s.
FIG. 9a shows the results of a simulation, whereby the compensation and adaptation unit 11 is disabled. Due to the friction a static position error e of 0,05 (rad) will remain. The static position error is the position error of the mechanical system when it is not moving, .phi. is constant or .phi..sub.est =0.
FIG. 9b shows the results of a simulation with adaptive compensation, whereby at the beginning of the simulation the compensation value c=0. At the beginning of the simulation is the remaining torque T.sub.r =0,05 Nm. Since there is no compensation at the beginning, the remaining torque T.sub.r is equal to the friction T.sub.f, T.sub.f =T.sub.r =0,05 Nm. At the end of the simulation the remaining torque T.sub.r =0 and the compensation value c=0,05 Nm equals the friction T.sub.f. The static position error decreases in time to zero. As can be seen by the horizontal lines in the graphic of the compensation value c, no adaptation of the compensation takes place if the velocity is zero (if .phi..sub.set is constant).
FIG. 9c shows the results of a simulation with a compensation value c=2 d=0,1 Nm but without adaptation of the compensation. The remaining torque T.sub.r is only depicted for information and varies around d-c=0,05-0, 1=-0,05 Nm. The position error shows limit cycling due to the over-compensation of the friction.
FIG. 9d shows the results of a simulation with adaptive compensation, whereby at the beginning of the simulation the compensation value c=2d=0,1 Nm. At the beginning of the simulation the remaining torque T.sub.r =d-c=-0,05 Nm. Since there is over-compensation at the beginning, the position error e and the remaining torque T.sub.r oscillate. Due to the oscillation there is no zero velocity and the compensation value c decreases continuously until it equals the friction d=0,05 Nm. At the end of the simulation the remaining torque T.sub.r =0. The static position error e decreases in time to zero.
The simulations of the FIGS. 9a-d show that the adaptation technique works correctly. Starting without friction compensation the compensation value c increases until it is equal to the friction d. Starting with over-compensation the compensation value c decreases until it is equal to the friction d. In both cases the mechanical system behaves ultimately like a mechanical system without friction.
FIG. 10 shows a simplified model of a mechanical system 13, which can be described as a fourth order system. The mechanical system 13 comprises two inertias J.sub.1, J.sub.2, whereby J.sub.2 is much smaller than J.sub.1, and a stiffness K.sub.1 between the inertias J.sub.1,J.sub.2. The controller 1 of FIG. 7 is used, with the control unit 4 of FIG. 6 and whereby the mechanical system 2 is replaced by the mechanical system 13. The position .phi..sub.1 is used in the controller 1. Further it is assumed that friction only acts on the first inertia J.sub.1. The reference model 7 is not adapted, for the value of the inertia J, J.sub.1 +J.sub.2 is taken.
The FIGS. 11a-b show the results of a simulation with the mechanical system 13.
FIG. 1a shows results of a simulation with adaptive compensation, similar to the simulation of FIG. 9b, whereby at the beginning of the simulation the compensation value c=0. At the beginning of the simulation the remaining torque T.sub.r =0,05 Nm is equal to the friction T.sub.f, T.sub.f =T.sub.r =0,05 Nm. At the end of the simulation the remaining torque T.sub.r =0 and the compensation torque c=0,05 Nm is equal to the friction T.sub.f. The static position error decreases in time to zero. As can be seen by the horizontal lines in the graphic of the compensation value c, no adaptation of the compensation takes place if the velocity is zero (if .phi..sub.set is constant).
FIG. 11b shows the results of a simulation with adaptive compensation, similar to the simulation of FIG. 9d, whereby at the beginning of the simulation the compensation value c=2d=0,1 Nm. At the beginning of the simulation the remaining torque T.sub.r =d-c=-0,05 Nm. Due to the over-compensation at the beginning, the position error e and the remaining torque T.sub.r oscillate. Due to the oscillation there is no zero velocity and the compensation value c decreases continuously until it equals the friction d=0,05 Nm. At the end of the simulation the remaining torque T.sub.r =0. The static position error e decreases in time to zero.
The FIGS. 12a-b show results of a computer simulation with the controller 1 comprising the elements as shown in the FIGS. 6 and 7, whereby .tau.=0,2/s. However, by calculating the remaining torque T.sub.r the acceleration terms are neglected so that T.sub.r =T.sub.f -T.sub.c =k.sub.v H.sub.vel (.phi..sub.m -.phi.)+k.sub.p (.phi..sub.m -.phi.).
FIG. 12a shows the results of a simulation with adaptive compensation, whereby at the beginning of the simulation the compensation value c=0. At the beginning of the simulation the remaining torque T.sub.r =0,05 Nm is equal to the friction T.sub.f, T.sub.f =T.sub.r =0,05 Nm. At the end of the simulation the remaining torque T.sub.r =0 and the compensation value c=0,05 Nm is equal to the friction T.sub.f. The static position error decreases in time to zero. As can be seen by the horizontal lines in the graphic of the compensation value c, no adaptation of the compensation takes place if the velocity is zero (if .phi..sub.set is constant).
FIG. 12b shows the results of a simulation with adaptive compensation, whereby at the beginning of the simulation the compensation value c=2d=0,1 Nm. At the beginning of the simulation the remaining torque T.sub.r =d-c=-0,05 Nm. Due to the over-compensation at the beginning, the position error e and the remaining torque T.sub.r oscillate. Due to the oscillation there is no zero velocity and the compensation value c decreases continuously until it equals the friction d=0,05 Nm. At the end of the simulation the remaining torque T.sub.r =0. The static position error e decreases in time to zero.
From the FIGS. 12a-b it can be noted that adaptive compensation without the acceleration terms gives the same results as the adaptive compensation including the acceleration terms. This can be explained as follows. At high acceleration of the mechanical system 2 the friction d is relatively small compared to the torque T.sub.s necessary to achieve the acceleration. So the difference between the acceleration of the reference model 7 and the mechanical system is also relatively small. At low acceleration, the influence of the friction is of importance. But since the acceleration is small, the acceleration term of T.sub.r will be small too.
FIG. 13 shows a computer simulation with adaptive compensation with a controller 1 comprising the mechanical system 2 of FIG. 6, the reference model 7 and the compensation and adaptation unit 11 of FIG. 7, and the control unit 12 of FIG. 8, whereby .tau.=0,2/s.
At the beginning of the simulation the compensation value c=0 and the position error due to the friction is nullified by the integral torque T.sub.ki. The static position error is almost zero from the beginning. At the end of the simulation the friction T.sub.f is compensated by the compensation value c and the integral torque T.sub.ki is used to guarantee the desired position accuracy in a short time. The compensation value c is used to permanently compensate the friction T.sub.f whilst the integral torque T.sub.ki is used to reduce the static position error.
FIG. 14 shows a mechanical system 14, which has been used for experiments with the controller 1 according to the invention. The mechanical system 14 comprises a slide 15 which is connected to a ball nut 16. The ball nut 16 is movable along a spindle 17 which is driven by a motor 18 via a gearwheel transmission, comprising two gearwheels 19a,b. The angular position .phi. of the motor 18 is measured with an encoder 20. The spindle 17 is carried by two bearings 21. By multiplication of the angular position .phi. of the motor 18 with the transmission ratios of the gearwheels 19a,b and the spindle 17, the position x of the slide 15 is obtained. A model of the mechanical system 14 is shown in FIG. 10. For controlling the angular position .phi. of the motor 18 a controller 1 according to the invention is used, comprising the control unit 4 of FIG. 8. For the reference model 7 the fourth order system of FIG. 10 is simplified to a second order system as shown in FIG. 7. Furthermore, the reference model 7 only comprises the proportional and differentiating actions but not the integral action of the control unit 4. If the mechanical system 14 is not moving, the velocity .phi..sub.est should be equal to zero. Due to noise, however, the velocity detection can be distorted. Therefore, it is implemented in the controller 1 that the absolute value of the velocity has to exceed a certain value .epsilon. before movement is detected. The compensation of the compensation means and adaptation unit 11 of the controller 1 works as follows: ##EQU12## whereby
T.sub.r =T.sub.f -T.sub.c =JH.sub.acc (.phi..sub.m -.phi.)+k.sub.v H.sub.vel (.phi..sub.m -.phi.)+k.sub.p (.phi..sub.m -.phi.)+T.sub.ki.
The mechanical system 14 are subject to friction between all the moving parts.
The FIGS. 15a-f show the results of different experiments with a controller 1 comprising the mechanical system 14 of FIG. 14, the reference model 7 and the compensation and adaptation unit 11 of FIG. 7 with the above mentioned adaptation rules, and the control unit 12 of FIG. 8. The desired position accuracy is .alpha.=0,004 rad, depicted by dashed lines in the figures.
FIG. 15a shows the result of an experiment, whereby the compensation and adaptation unit 11 and the integral action of the control unit 4 are disabled.
Due to the friction a static position error remains which exceeds the desired accuracy .alpha.. Although the friction is not compensated for, the remaining torque T.sub.r is depicted to give an indication of the detected friction. The friction is not constant but depends on the position .phi..sub.est.
FIG. 15b shows the result of an experiment, whereby the compensation and adaptation unit 11 is enabled, whilst the integral action of the control unit 4 is disabled.
In the beginning of the experiment the compensation values c.sub.1 =c.sub.2 =0 Nm and the adaptation factor .tau.=0,5/s.
The system behaves as expected. At the end of the experiment, the compensation values c.sub.1, c.sub.2 are increased, the static position error and the remaining torque T.sub.r are decreased. At the end some unexplainable limit cycling occurs, However, the static position error is nearly the same as the desired position accuracy .alpha..
FIG. 15c shows the result of an experiment, whereby the compensation means are enabled, whilst the adaptation means (.tau.=0) and the integral action of the control unit 4 are disabled.
During the experiment the compensation values c.sub.1 =c.sub.2 =0,1 Nm, a value whereby over-compensation is expected.
Due to the over-compensation limit cycling occurs which can be seen by the oscillating values of the position error .epsilon. and the remaining torque T.sub.r.
FIG. 15d shows the result of an experiment, whereby the compensation and adaptation means are enabled, whilst the integral action of the control unit 4 is disabled.
In the beginning of the experiment the compensation values c.sub.1 =c.sub.2 =0,1 Nm, a value whereby over-compensation is expected and the adaptation factor .tau.=0,5/s. The setpoint signal .phi..sub.set =0 (rad). At t=0 (see) a distortion is applied to the system. Subsequently limit cycling occurs around .epsilon.=0. The adaptation means work as expected and the over-compensation is nullified, limit cycling no longer occurs and the position error is decreased to a value smaller than the desired accuracy .alpha..
FIG. 15e shows the result of an experiment, whereby the compensation and adaptation means are enabled, whilst the integral action of the control unit 4 is disabled.
By calculating the remaining torque T.sub.r the acceleration terms are neglected, so that the remaining torque T.sub.r T.sub.f -T.sub.c =k.sub.v H.sub.vel (.phi..sub.m -.phi.)+k.sub.p (.phi..sub.m -.phi.). In the beginning of the experiment the compensation values c.sub.1 =c.sub.2 =0 Nm and the adaptation factor .tau.=0,5/s. Although the acceleration terms are neglected, the results show good similarity with the results of FIG. 15b.
FIG. 15f shows the result of an experiment, whereby the compensation and adaptation means and the integral action of the control unit 4 are enabled.
However other adaptation rules are applied, whereby the compensation for velocities .phi..sub.est smaller than .epsilon. depends on whether the position error e exceeds the desired accuracy .alpha. according to: ##EQU13## if .vertline..phi..sub.est .vertline..ltoreq..epsilon. and e>.alpha. then T.sub.c =c.sub.1
if .vertline..phi..sub.est .vertline..ltoreq..epsilon. and e<-.alpha. then T.sub.c =-c.sub.c
if .vertline..phi..sub.est .vertline..ltoreq..epsilon. and .vertline.e.vertline..ltoreq..alpha. then T.sub.c remains the same
whereby:
T.sub.r =T.sub.f -T.sub.c =JH.sub.acc (.phi..sub.m -.phi.)+k.sub.v H.sub.vel (.phi..sub.m -.phi.)+k.sub.p (.phi..sub.m -.phi.)+T.sub.ki.
The static position error is reduced smoothly within the desired accuracy .alpha.. This happens very fast and without any problems. The position error is nullified without overshoot.
Instead of using an estimation of the velocity is it is also possible to use a resolver for measuring directly the velocity on the mechanical system.
Claims
  • 1. A controller for controlling a non-linear mechanical system having a plurality of degrees of freedom in accordance with a setpoint signal representing a desired position of the mechanical system with respect to at least one of said plurality of degrees of freedom, the mechanical system being representable as a combination of a linear part and a non-linear part and producing an output signal representing a current position of the mechanical system with respect to said at least one degree of freedom, the controller comprising:
  • a subtracter for subtracting the output signal of the mechanical system from the setpoint signal to produce an error signal;
  • a control unit for receiving the error signal and producing a control signal;
  • compensation means to compensate the non-linear behavior of the mechanical system, the compensation means producing an output signal;
  • an adder for adding the output signal of the compensation means to the control signal to produce an input signal to the mechanical system;
  • a reference model of the control unit in series with the linear part of the mechanical system, the reference model receiving the setpoint signal as an input signal and producing an output signal; and
  • adaptation means for adapting the compensation means in dependence on a difference between the output signal of the mechanical system and the output signal of the reference model.
  • 2. The controller according to claim 1, in which the control unit comprises proportional and derivative feedback.
  • 3. The controller according to claim 2 in which the control unit comprises integral feedback.
  • 4. A controller for controlling a non-linear mechanical system having a plurality of degrees of freedom in accordance with a setpoint signal representing a desired position of the mechanical system with respect to at least one of said plurality of degrees of freedom, the mechanical system being representable as a combination of a linear part and a non-linear part and producing an output signal representing a current position of the mechanical system with respect to said at least one degree of freedom, the controller comprising:
  • a subtracter for subtracting the output signal of the mechanical system from the setpoint signal to produce an error signal;
  • a control unit for receiving the error signal and producing a control signal;
  • compensation means to compensate the non-linear behavior of the mechanical system, the compensation means producing an output signal;
  • an adder for adding the output signal of the compensation means to the control signal to produce an input signal to the mechanical system;
  • a reference model of the control unit in series with the linear part of the mechanical system, the reference model receiving the setpoint signal as an input signal and producing an output signal; and
  • adaptation means for adapting the compensation means in dependence on a difference between the output signal of the mechanical system and the output signal of the reference model,
  • the non-linear behaviour of the mechanical system being due to Coulomb-friction which is compensated for by the compensation means, whereby the output signal of the compensation means represents a compensation force F.sub.c, which depends on the direction of a velocity V of the mechanical system according to:
  • if V<-.epsilon. then F.sub.c =-C.sub.2
  • if .vertline.V.vertline..ltoreq..epsilon. then -C.sub.2 .ltoreq.F.sub.c .ltoreq.C.sub.1
  • if V>.epsilon. then F.sub.c =C.sub.1
  • whereby .epsilon. is a velocity below which accurate determination of the direction of the velocity is not possible, C.sub.1, C.sub.2 are compensation values, and the compensation force F.sub.c is added to a force output signal F.sub.s of the control unit.
  • 5. The controller according to claim 4, in which the adaptation means adapts the compensation values c.sub.1, c.sub.2 by calculating a remaining force F.sub.r, which depends on a difference between a position output signal of the mechanical system and a position output signal of the reference model, after which new values for c.sub.1 and c.sub.2 are calculated according to ##EQU14##
  • if .vertline.V.vertline..ltoreq..epsilon. and e>.alpha. then c.sub.1 and c.sub.2 are not changed and F.sub.c =c.sub.1
  • if .vertline.V.vertline..ltoreq..epsilon. and e<-.alpha. then c.sub.1 and c.sub.2 are not changed and F.sub.c =-c.sub.2
  • if .vertline.V.vertline..ltoreq..epsilon. and .vertline.e.vertline..ltoreq..alpha. then c.sub.1, c.sub.2 and F.sub.c are not changed
  • with:
  • t.sub.0 : the moment at which the velocity changes its direction
  • .tau.: adaptation factor
  • e: difference between a position setpoint signal and the position output signal of the mechanical system
  • .alpha.: desired accuracy.
  • 6. The controller according to claim 5, in which acceleration terms in the remaining force F.sub.r are neglected by the adaptation means.
  • 7. The controller according to claim 4, in which the adaptation means adapts the compensation values c.sub.1, c.sub.2 by calculating a remaining force F.sub.r, which depends on a difference between a position output signal of the mechanical system and a position output signal of the reference model, after which new values for c.sub.1 and c.sub.2 are calculated according to ##EQU15## with t.sub.0 : the moment at which the velocity changes its direction
  • .tau.: adaptation factor.
Priority Claims (1)
Number Date Country Kind
92203795 Dec 1992 EPX
Parent Case Info

This is a continuation of application Ser. No. 08/164,226, filed Dec. 7, 1993 abandoned. Priority of application Ser. No. 92203795.7, filed on Dec. 7,1992 in EUROPE, is claimed under 35 U.S.C. 119 abandoned.

US Referenced Citations (8)
Number Name Date Kind
4195337 Bertrand et al. Mar 1980
4539633 Shigemasa et al. Sep 1985
4663703 Axelby et al. May 1987
4679136 Shigemasa Jul 1987
4719561 Shigemasa Jan 1988
4725942 Osuka Feb 1988
4862054 Schauder Aug 1989
5268625 Plummer Dec 1993
Foreign Referenced Citations (1)
Number Date Country
0196417 Oct 1986 EPX
Non-Patent Literature Citations (1)
Entry
"Basics of Motion Control", Machine Design, Jun. 1992, vol. 64. No. 12, pp. 9, 10, 16, 18, 22, 27, 28, 32, 47, 48.
Continuations (1)
Number Date Country
Parent 164226 Dec 1993