Time delay controlled processes

Abstract: A time delay control system in which estimated unknown dynamics of a controlled process are calculated using calculations representative of convolutions of a state transition matrix with past data. A user or high level controller provides desired dynamics for a process. Periodic measurements of the processor taken to determine an error vector between the desired dynamics and the actual state of the process. The desired dynamics are used to determine the desired effects based on the present measured value of the state variables. The desired effects and the estimated effects of unknown dynamics are combined and multiplied by a pseudo inverse of a control matrix to obtain a control value. An error vector is multiplied by a feedback gain matrix and added to the control value to produce signal inputs to the process.

Description: BACKGROUND OF THE INVENTION This invention is directed to time delay controlled processes, such as those that may be useful with a servosystem, a robot arm or a magnetically suspended rotor. A general control strategy consists of at least two levels: a high level controller and a low level controller. The high level controller may perform several functions: (1) observe the state of the system, (2) accept inputs from environment, (3) perform filtering and estimation, (4) decide whether a task is realizable, etc. It then generates a command which is sent to a low level controller. The low level controller, on the other hand, has a few other functions: (1) observe the state of the system, (2) filter and estimate and (3) compute the control action. The control action is generated in order to execute a realizable command issued by the high level controller independent of system dynamic varations. These variations may be due to internal system changes or external disturbances. Internal factors may include parameter changes and/or function changes. A function change could be manifested by the change of the "constituted relation of an element". For example, a spring characteristic could vary from a linear one, where only one constant is used in the model to a hardening spring where two constants may be used. The present invention is directed to the design of low level controllers that guarantee the proper execution of realizable tasks. The low level control of systems with unknown dynamics and unpredictable disturbances has raised some challenging problems. This is particularly important when high system performance is to be guaranteed at all times. Some classical control methods deal with well known, linear, time-invarient systems. In many applications, however, some relevant part of the system may be unknown, time varying, or nonlinear. Controlled systems are thus often limited to operating in only a small portion of their available range. For example, servo motors must operate in the linear part of their range for accurate control. Robot arms and magnetically controlled rotors, such as those used in a turbo molecular pump, are examples of physical processes which would benefit greatly from improved control systems. Several types of control strategies have been developed to deal with nonlinear, time-variant systems. One of the first methods to accommodate nonlinear systems was Model Reference Control. This technique employs a model of the system and uses the difference between the model response and the plant response as the input signal to the plant [7]. The model is either a physical model or a simulated system on a computer. Although it has no variable parameters, it is very useful for either specifying desired performance or for the observation of unaccessable states. A drawback in this technique is that it requires knowledge of the full dynamic model and system limitations. When perfect cancellation of the system nonlinearities is not achieved due to imperfect modeling or inaccurate parameter values, the dynamic performance of the plant may be degraded to the point of closed loop instability [8]. Another advanced technique is Adaptive Control. An adaptive system measures a certain index of performance which is a function of the inputs, states or outputs of the system. From the comparison of the measured index of performance with a set of given ones, the adaptation mechanism modifies the parameters of the controller [6]. There are several classes of adaptive control. A very common variation used a model for the system as a basis for comparison and is termed Model Reference Adaptive Control (MRAC). It adjusts the controller parameters while keeping the model parameters constant. In contrast is the 'self-tuning' system introduced in reference [1] in which the controller parameters are held fixed while the model parameters are modified. Another approach generates the control action in part by an adaptive feedforward controller which 'behaves' as the 'inverse' of the plant [8]. All adaptive controllers share the distinguishing feature of system identification followed by variation of parameters to maintain desired performance. A drawback of adaptation is that it is generally slow and computationally intense. Often the environment changes faster than the system, causing performance degradation or even instability. Other control methods, such as Variable Structure Controllers, take totally different strategies to achieve stability in nonlinear, time-invariant systems. This type of controller utilizes state feedback in a control law which switches the structure of the closed loop system between trajectories which may themselves be unstable or marginally stable but when combined by the control law in a switching technique, result in a system which is stable. A method of switching called 'sliding mode', described in [9,10,11], arranges the switching so that ideally the system remains on one of the switching lines (or surface) as it 'slides' stably toward the origin of the phase plane. Real systems, however, take time to switch trajectories, resulting in periods of infinite frequency, or no control, as the system switches from one trajectory to another while attempting to remain on the switching line. This high frequency chattering undesirably excites high frequency dynamics. During the 1970's, several control algorithms emerged which attempt to force a systems response to track a desired trajectory. Two such algorithms which have received significant attention are Model Algorithmic Control (MAC) and Dynamic Matrix Control (DMC) [2,12]. These two algorithms utilize a discrete model representation of a controlled system to minimize predicted future errors relative to a given reference trajectory over a given preview horizon [5]. These two approaches might be grouped under the two more general topics of preview or predictive control. Predictive and preview control are similar in that they attempt to minimize a predicted error, or cost function, over a given preview horizon. Preview control, however, does require a state-space description of the plant. A predictive controller may be used if a simulation and the system step responses are available. Predictive and preview control algorithms are generally computationally intensive since they involve the minimization of some cost function over a preview horizon. Accordingly, they are suitable for control of systems with relatively large time constants. Many improvements to the general method of predictive control have been made over the years to generalize controller design to multivariable systems and to make possible several types of stability robustness analyses. Increases in computational speeds of commonly available microprocessors continue to allow the application of such a control algorithm to systems with increasingly fast dynamics. However, it should be emphasized that the algorithm is based upon the assumption that the dynamics of the controlled system are known, either in terms of analytical models or step response data. Another method, Time Delay Control (TDC) was originally formulated by Youcef-Toumi and Ito [12] for a class of nonlinear systems with linear input action. Time delay control introduced in references [13,14,15,16], depends neither on estimation of specific parameters, repetitive actions, infinite switching frequencies, nor discontinuous control. It employs, rather, direct estimation of the effect of the plant dynamics through the use of time delay. The controller uses the gathered information for position, velocity and acceleration to cancel the unknown dynamics and disturbances simultaneously and then inserts the desired dynamics into the plant. The TDC employs past observation of the system response and control inputs to directly modify the control actions rather than adjusting the controller gains. It updates its observation of the system every sampling period, therefore, estimation of the plant is dependent upon the sampling frequency. There are other systems referred to as time-lag or retarded systems, where time delay exists between the cause and effect. In time delay systems, these delays arise as a result of delays existing in the hardware components or computation [1]. In the present invention, the time forumulation for such time delay systems leads to delayed differential equations. A special class of these equations are referred to as integral-differential equations which were studied by Volterra [10]. Volterra was the first to study such systems and developed the theory to investigate the consequences of time delay. Several other researchers have contributed to the development of the general theory of the Volterra type. It is an object of the present invention to adapt time delay control for use with magnetically suspended rotors and for robot arms. It is a further object of the present invention to provide an improved formulation of time delay control by using convolutions. SUMMARY OF THE INVENTION The present invention is directed to a time delay control method for controlling a process having a plurality of input variables and a plurality of state variables dependent on the input variables. The method estimates the effects of unknown dynamics by using calculations representative of convolutions involving past data. The state variables of a process are periodically measured and stored. A vector of desired state variables and a vector of commands are provided to the system by a user of a high level controller. Desired dynamics are generated from these vectors to produce a corresponding constant matrix for each vector. Measured variables are compared to the desired variables to produce an error vector. Unknown dynamics are estimated by using calculations representative of convolutions involving past data and a state transition matrix. Desired effects are calculated by substituting the present values of the state variables and of the command vector into the desired dynamics. The estimated effects of unknown dynamics and the present desired effects and the effects of known dynamics, if any, are combined. The combination is multiplied by a pseudo inverse of a control matrix. The result is combined with the product of an error vector and a feedback gain matrix to produce control signals that are used to provide adjusted input variables into the process. The method of the present invention can be used with a magnetically suspended rotor. In such an application, the state variables correspond to the position of the rotor relative to the magnetic bearings used to suspend the rotor. The control method is used to adjust the currents into each of the magnetic bearings. The present invention may also be used to control a robot arm in which the state variables correspond to the location and orientation of the robot arm links. The control method is used to adjust the power used to drive each of the motors which operate the arm. The present invention advantageously only needs to make use of the state variables. The second derivative such as acceleration is not required. It is a further advantage of the present invention that the control method is dynamically adaptable so as to overcome disturbances to the process which functionally alter the relationships between the input variables and the state variables. Other objects and advantages of the invention will become apparent during the following description of the presently preferred embodiments of the invention taken in conjunction with the drawings. BRIEF DESCRIPTION OF THE DRAWINGS Fig. 1 is a flow chart of the control method of the present invention. Fig. 2 is a side view of a turbo molecular pump with a magnetically suspended rotor which is controlled by the method of the present invention. Fig. 3 is a sectional view of the pump of Fig. 2. Fig. 4 is an illustration of a robot manipulator controlled by the method of the present invention. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS The systems of interest to be controlled with the present invention are described by the following dynamic equations: x = f(x,u, t ) = F(x, t ) + G(x, u, t) + D( t ) where x ∈ R n is a plant state vector, i.e., a vector of state variables, and u ∈ R r is a control vector, i.e., a vector of control inputs. F(x,t) and G(x,u,t) ∈ R n are nonlinear vectors representing respectively the known and unknown part of the plant dynamics, and D(t) ∈ R n is an unknown disturbance vector. The variable t represents time. The expression of Eqn.(1) is common in many applications. For example, in magnetic suspensions, the function G(x, u, t) involves both the control currents and the air gaps. This is the case since the magnetic force is proportional to the current squared and inversely proportional to the square of the air gap. The vector D(t) represents other kinds of effects that are state independent. The objective of this invention is to be able to control such systems and guarantee performance despite the presence of large dynamic changes in G(x, u, t) and large unexpected disturbances in D(t). Eqn. (1) can be rewritten as: x = F(x, t ) + H(x, u, t ) + Bu + D( t ) where B ∈ R nxr is a known constant control matrix of rank r to be selected by the control system designer and the term H(x, u, t) is defined as H(x,u,t) = G(x,u,t) - Bu(t) A linear time-invariant reference model describes the desired dynamics of the process being controlled. A user or high level controller provides x m ∈ R n which is a vector of desired state variables, also called a reference model state vector, and r ∈ R r which is a vector of commands or command vector. Both of these vectors may be functions of time. The vector of desired state variables is a set of desired trajectories that a process is to follow. In a robot manipulator, this could be the desired trajectory of the robot hand. For a magnetically suspended rotor, the desired state variables may indicate the time function of how the rotor is to move from a touch down position to a levitated position. The command vector may represent break points along such a trajectory or may simply represent the end point of the trajectory. The linear time-invariant reference model generates a desired dynamics as follows: x m = A m x m + B m r where A m ∈ R nxr is a constant stable system matrix, and B m ∈ R nxr is a constant command distribution matrix. The error vector, e, is defined as the difference between the plant state vector and the reference model state vector, e = x m - x The time rate of change of the error, e ˙ is then, e = x m - x Using equations (1) and (3) the above equation becomes, e = A m x m + B m r - [F(x, t ) + H(x,u, t ) + Bu + D( t )] We can add and subtract the state vector term A m x to the above equation in order to bring about an error term. This step leads to e = A m x m + B m r - [F(x, t ) + H(x,u, t ) + Bu + D( t )] + A m x - A m x which can also be written as e = A m e + [A m x + B m r - F(x, t ) - Ψ(x,u, t ) - Bu] The vector Ψ represents the effects of both unknown dynamics H and D, Ψ(x,u, t ) = H(x,u, t ) + D( t ) A control action u is the vector of signals used to determine the inputs to the process being controlled. For example, in a magnetic suspension u represents the currents into the respective magnetic bearings. A control action u can be chosen such that the term between brackets in equation (7) is zero at any instant of time. However, this makes the error dynamics decay at a rate dictated by the reference system matrix A m . Since this is not practical in general it is desired to have the error vanish much faster than the plant or the reference model dynamics. Under these conditions the plant state x will track the reference model trajectory x m . A control action u is desired that forces the error e to zero despite the presence of unknown system dynamics and unpredictable disturbances. In order to adjust the error dynamics, a new vector of control variables v is defined such that v = u - Ke where K is a feedback gain matrix. The error dynamics now takes the form e = [A m - BK]e + p where the vector p is given by p = A m x + B m r - F(x,t) - Ψ(x,u,t) - Bv The control law is chosen as v = B + [A m x + B m r - F(x, t ) - Ψ (x,u, t )] where B⁺ is the pseudo inverse of B. The actual control input vector u is computed from control variable vector v using Eqn.(9). The term Ψ and (x, u, t) is the best estimate of the unknown vector function Ψ (x,u,t). The control law as given by Eqn.(12) and Eqn.(9) consists of a few terms. The first two terms in Eqn.(12) dictate the desired dynamics, the third term compensates for the known dynamics and the fourth term compensates for the unknown dymamics. The first three terms are evaluated using the present values of the state variables and the fourth term is evaluated using past information. The expression leading to u involves the error dependent term Ke. Referring now to Fig. 1, a flow chart of the process for producing the control input vector u is given. The process includes the following steps: 1. Compute the unknown dynamic vector Ψ and. During the first sampling period, this estimate is set arbitrarily to zero since no past information is available at this time. Computation of Ψ and is described below. 2. Calculate the control variable vector v such that p = 0 using the best estimate of the unknown vector Ψ. 3. Compute the control input vector u = v + Ke. 4. Output u to the process being controlled and then repeat step 1 in the next sampling period. A key to this control problem is to obtain a good estimate of Ψ and without using an explicit description of Ψ. In references [14,16], past information has been used including the system state, the input and an estimate of the rate of change of the state to obtain an estimate of the unknown dynamics. In accordance with the present invention, however, we will obtain this estimate using convolutions. The dynamic behavior of the error is governed by Eqn.(10) and its time response involves a state transition matrix Φ (t, t o ), Equation (13) is usually used to obtain the time response e(t) in the interval [t₀,t]. This is possible once the matrices A m , B and K are specified along with the initial condition e(t o ) and the time history of the forcing term p over the interval [t o ,t]. A time interval [t o ,t] represents one sampling period. In each sampling period, the state variables are measured and reported to the control system. The method of the present invention for obtaining an estimate Ψ and is derived from Eqns.(11,13). Rearranging Eqns.(11,13) leads to, The integrand of the left hand side of Eqn. (15) is the product of Φ (t, r ) and the unknown vector Ψ. Eqn. (15) involves past information and one unknown vector Ψ assuming that the control variable v has been calculated for the time period of interest. Eqn. (15) and the convolutions found therein are a major feature of the present invention. The state transition matrix Φ is convolved with the desired dynamics functions A m x and B m r, the known dynamics function F and the control signal function Bv. Assuming that the functions Ψ x, r, F, and v do not vary significantly over the time interval [t o ,t], the convolutions can be simplified to obtain where the convolution dummy matrix Γ(t,t o ) is given by The vectors Ψ and (ξ), x(ε), r(ε), F(ζ) and v(η) are based on past information representing estimates at times ξ, ε , ε , ζ and η within [t o ,t]. Equation (16) can be simplified leading to Ψ (ξ) = -Γ -1 e( t ) + Γ -1 Φ (t, t o )e( t o ) + A m x(ε) + B m r(ε) - F(ζ) - Bv(η) The last four terms in Eqn.(18) are representative of the convolutions involving the state transition matrix and past information, in particular, the desired dynamics, the known dynamics and the control matrix function. The method used to compute the convolutions in Eqn.(15) and evaluate the different functions at specific times within the interval [t o ,t] is central to obtaining an estimate of the vector Ψ. The accuracy in obtaining this estimate also depends on the interpolation scheme used when more than one sampling period is considered. Of course, the selection of the time interval [t o ,t] is important. If we use data from one sampling period in the past, the vector Ψ can be estimated by Ψ ≃ -Γ -1 e( t ) + Γ -1 e (A m + BK)(t-t o ) e(t o ) + A m x avg + B m r avg - F avg - Bv( t o ) where x avg , r avg , F avg are respectively the average values of x,r,F in the interval [t o t]. The estimate Ψ and approximates the system dynamics one sampling time in the past using present and past data. In this case, the present data involves the error e(t). The past data consist of the initial condition e(t o ) at time t o , the control input v(t o ) and the average values discussed earlier. Rather than use average values, acceptable performance may also be obtainable using the past values evaluated at t o . A better estimate may be obtained by using more than one sampling period in the interval [t o ,t]. In order to obtain an estimate of Ψ using q sampling periods in the time interval [t o ,t] one could rewrite the left and right hand sides of Eqn.(15) as follows This could be approximated by Note that the vector function Ψ i-1, i is evaluated within the intervals [t i-1 ,t i ]. We may now write Eqn.(20) in the interval [t o ,t] as where x i-1,i, r i-1,i ,F i-1,i and v i-1,i for i = 1, 2... q are estimates of the variables x(ε), r(ε), F(ζ) and v (η) in the interval [t i-1, t i ]. With some algebraic manipulations of the above equations, the estimate Ψ and is found to be where L is the sampling period, i.e., t₁-t o . The control method of the present invention is summarized in Fig. 1. Measurement sensors provide the process state variables vector x to the control processor. The state variables are stored using a stack or other commonly used storage method so as to save at least the recent past data. An estimate of the unknown dynamics is determined using functions representative of convolutions involving the state transition matrix and several functions evaluated using the recent past data. The control variable vector v is evaluated using the present data for the desired dynamics and the known dynamics and using the unknown dynamics effects estimated from past data. The control variable vector is added to the product of the feedback gain matrix K and the error vector e to generate the control inputs u(t). The control inputs are then fed into the process so as to effect the desired control. A turbo molecular pump is a device used to create vacuum in special environments such as in integrated circuit manufacturing environments. A schematic diagram of this pump is shown in Figs. 2 and 3. The pump action is produced once the rotor 10, with blades 12 attached to it, is spun by an induction motor. In order to minimize impurities and particle generation, the rotor is suspended magnetically in the x, y and z directions by magnetic bearings. A magnetic bearing is provided with electric coils 16 which produce magnetic fields to suspend the rotor. In the presently preferred pump, the rotor 10 is suspended by one thrust bearing 17 and two radial bearings 19. These bearings receive five control inputs. The thrust bearing 17 receives one input related to control in the z direction. Each of the radial bearings 19 has two control inputs one related to control in the x direction and one related to control in the y direction. The control inputs u(t) determined by processor 22 are used by a current driver 24 to proportionally provide currents into the various coils 16 distributed around each bearing to achieve the desired force in one of the controlled directions. The current driver includes an amplifier for providing a desired level of current. In accordance with the presently preferred turbo molecular pump, the rotor mass is 2.2Kg. The desired air gap between the rotor 10 and the thrust bearing 17 is preferably 400 microns. The desired air gap between the rotor 10 and the radial bearings 19 is 250 microns. The bearings handle a maximum of 10 amperes. The maximum rotational speed of the rotor of the presently preferred embodiment is 45,000 rpm. This system has five degrees of freedom each of which may be described by a differential equation of the form, where x₂ ∈ R ⁵ and x r ∈ R ⁵ represent displacements and velocities respectively. The current input to the electromagnets are represented by the vector u ∈ R ⁵ . Note that since the magnetic force is proportional to the current squared and the gap distance squared the function G r (x, u) is a nonlinear function dependent on the state x and the control action u. The displacements X q are measured by inductive sensors 20 and provided to the processor 22. Three sensors 20 are shown in Fig. 2, however, two more sensors positioned into or out of the plane of the drawing are also included for sensing the displacement orthogonal to the other two radial sensors. While inductive sensors 20 are used in the presently preferred embodiment, any other suitable measuring device such as an optical or capacitive sensor may be used to measure the displacements. This plant is a multi-input, multi-output and unstable open loop. Disturbances and coupling include forces due to gravity, magnetic actions, unbalance and gyroscopic effects. All of these effects will show up in the vector function G. This particular device experiences drastic dynamic changes in G. Therefore, dynamic information describing this behavior would be necessary if a conventional control system is used otherwise the system performance may be acceptable only for some specific operating conditions. By using the control system of the present invention, excellent performance is obtainable over a wide range of disturbances and dynamic effects. Another application for implementing the control system of the present invention can be a robot manipulator such as that illustrated in Fig. 4. Fig. 4 illustrates a simple arm with two degrees of freedom. This manipulator has two motors or actuators (not shown) mounted at the base. The first motor drives a first link 32 of the arm and the second motor drives a second link 34 through a steel belt 36. Each axis is equipped with a position sensor 38 (one shown) and a tachometer 40 (one shown). The position sensor 38 may be a potentiometer, encoder or some other known device. The tachometer 40 is used to measure velocity and may also be replaced by another suitable velocity sensor. The control system processor 22 produces control inputs u(t) in response to the positions and velocities. The control inputs regulate the amount of current provided by current driver 24 to each of the motors. The robot arm system's equations are extremely complex involving Coriolis and centrifugal effects among others. Thus, it is very difficult to determine functions which can predict the behavior of the arm, especially when the relationships would be altered by a disturbance such as when the arm picks up a load of unknown weight. Using the control method of the present invention based on estimating unknown effects using convolutions of past information and a state transition matrix, it is possible to maintain highly acceptable controlled performance without attempting to set forth a function and its parameters. By using the control system of the present invention, control is maintained despite nonlinear and unknown dynamics Rather than estimating parameters for equations meant to simulate the effects on the controlled process, the present invention advantageously uses recent past information to estimate the unknown functions themselves. APPENDIX (1) Bahill, A.T. "A Simple Adaptive Smith Predicitor for Controlling Time Delay Systems", IEEE Control System Magazine, vol 3, pp. 16-22, 1983 (2) Dubowsky, S. and DesForges, D.T., "The Application of Model Referenced Adaptive Control to Robotic Manipulators" ASME Journal of Dynamic Systems, Measurement and Control, 101:193-200, 1979 (3) Karnopp, D. and Rosenberg, R., System Dynamics: A Unified Approach , John Wiley & Sons, New York, 1975. (4) Ljung, L. Editor "Control Theory 1984-1986, A Progress Report from IFAC's Technical Committee on Theory", Presented at IFAC, 1987. (5) Landau, Y.D. Adaptive Control , Marcel Dekker, Inc., New York, NY, 1979. (6) Paynter H.M. Analysis and Design of Engineering Systems , M.I.T. Press, 1961. (7) Sadegh, N., Horowitz, R., "Stability Analysis of an Adaptive Controller for Robotic Manipulators," Proceedings of the IEEE International Conference on Robotics and Automation, pp. 1223-1239, Raleigh, North Carolina, March 1987. (8) Slotine, J.J.E. and Sastry, S.S. "Tracking Control of Nonlinear Systems Using Sliding Surfaces with Applications to Robot Manipulators" International Journal of Control, 38-2, 465-492, 1983. (9) Tomizuka, M., Tsao, T.C., and Chew, K.K., "Discrete-Time Domain Analysis and Synthesis of Repetitive Controllers," 1988 American Control Conference, Atlanta, Georgia, June 1988. (10) Volterra, V. "Lecons sur les equation integrales et les equations integrodifferntielles", Gauthier-Villars, Paris, 1913. Also see "Sur la Theorie mathematique des phenomenes Hereditaires", F. Math. Paris, Vol. 7, fasc. III, pp. 249-298, 1928. (11) Warwick, K. and Clarke, D.W. "Weighted Input Predictive Control," IEE Proceedings D, Control Theory Applications (UK) Vol. 135, No. 1, pp. 16-20, January 1988. (12) Youcef-Toumi, K. and Ito, O. "Controller Design for Systems with Unknown Dynamics" Proceeding of American Control Conference", Minneapolis, MN, June, 1987. (13) Youcef-Toumi, K. and Ito, O. "Model Reference Control Using Time Delay for Nonlinear Plants with Unknown Dynamics", Proceeding of International Federation of Automatic Control World Congress, Munich, Federal Republic of Germany, July, 1987. (14) Youcef-Toumi, K. and Ito, O. "Controller Design for Systems with Unknown Dynamics" Proceeding of Americal Control Conference", ASME Journal of Dynamic Systems Measurement and Control, Vol 112, No. 1, pp. 133-142, March 1990. (15) Youcef-Toumi, K. and Fuhlbrigge, T. "Application of a Decentralized Time Delay Controller to Robot Manipulators", Proceedings of the 1989 IEEE conference on robotics and automation. (16) Youcef-Toumi, K. and Reddy, S., "Stability Analysis of Time Dealey Control with Application of High Speed Magnetic Bearings" MIT-LMP Report, March 1990.

Claims: A time delay controlled apparatus having: at least one control member (17) having at least one control input (u); a controlled member (10, 32, 34) mounted so as to be variably controlled by said control member; means for periodically measuring (20, 38, 40) a characteristic of said controlled member represented by a plurality of state variables (x) to obtain present values of said state variables (x) and to store past values of said state variables (x(ε)); and control means (22), periodically receiving a vector of the state variable values (x) output from said measuring means, for determining new values for the at least one control input (u) to said at least one control member (17), said control means being provided with a feedback gain matrix (K) and a reference model having a set of equations describing a dynamic relationship between a vector of desired state variables (x m ) and a vector of commands (r), said time delay controlled apparatus characterized in that: said control means determines new values for the at least one control input by performing the steps of: determining an error vector (e) corresponding to differences between the present values of state variables (x) and the vector of desired state variables (x m ); substituting the present value of said state variables (x) and a present value of the vector of commands (r) into said set of equations and evaluating said set of equations for said present values; estimating effects of the unknown dynamics on said process by using calculations representative of convolutions of a state transition matrix (Φ), defined by a constant matrix (A m ) from said set of equations, said feedback gain matrix (K) and a selected constant control matrix (B), with past values of said state variables (x(ε)), past values of control variables (v(η)) and past commands (r(ε)); arithmetically combining said estimated effects of unknown dynamics (Ψ and) with said evaluated set of equations; multiplying said arithmetical combination by a pseudo inverse (B⁺) of the selected constant control matrix (B) to obtain a vector of control variables (v); and arithmetically combining said vector of control variables (v) with a product of said error vector (e) and the feedback gain matrix (K) to produce signals for use in adjusting the at least one control input (u) to force the process to follow said set of equations despite the unknown dynamics. The time delay controlled apparatus of claim 1 wherein the past values of said state variables (x(ε)), the past values of control variables (v(η)) and the past commands (r(ε)) are taken from an immediately previous sampling period. The time delay controlled apparatus of claim 1 wherein the past values of said state variables (x(ε)), the past values of control variables (v(η)) and the past commands (r(ε)) are determined from a plurality of previous sampling periods. The time delay controlled apparatus of claim 1 wherein the step of arithmetically combining said estimated effects of unknown dynamics (Ψ and) with said evaluated set of equations performed by said control means further comprises arithmetically combining said estimated effects with equations representative of known dynamics (F) on said process as evaluated using the present values of said state variables (x). The time delay controlled apparatus of claims 1, 2, 3 or 4 wherein said at least one control member comprises a plurality of magnetic bearings (17), said at least one control input (u) comprises at least one current input, said controlled member comprises a rotor (10) suspended magnetically by said plurality of magnetic bearings (17) and the characteristic comprises position of said rotor relative to said magnetic bearings. The time delay controlled apparatus of claims 1, 2, 3 or 4 wherein said at least one control member comprises at least one motor, said controlled member comprises a robot arm (32, 34) driven by said at least one motor and the characteristic comprises position (x) and velocity (x ˙) of said robot arm. A process control method for controlling the operation of a non-linear, time variant process having partly unknown dynamics, a plurality of control inputs (u) and a plurality of state variables (x) dependent on said control inputs, including the steps of: periodically measuring said state variables (x) to obtain present values of said state variables (x) and to store past values of said state variables (x(ε)); providing a reference model with a set of equations describing a dynamic relationship between a vector of desired state variables (x m ) and a vector of commands (r); providing a feedback gain matrix (K); determining an error vector (e) corresponding to differences between the present values of state variables (x) and the vector of desired state variables (x m ); substituting the present value of said state variables (x) and a present value of the vector of commands (r) into said set of equations and evaluating said set of equations for said present values; said process control method characterized by the further steps of: estimating effects of the unknown dynamics on said process by using calculations representative of convolutions of a state transition matrix (Φ), defined by a constant matrix (A m ) from said set of equations, said feedback gain matrix (K) and a selected constant control matrix (B), with past values of said state variables (x(ε)), past values of control variables (v(η)) and past commands (r(ε)); arithmetically combining said estimated effects of unknown dynamics (Ψ and) with said evaluated set of equations; multiplying said arithmetical combination by a pseudo inverse (B⁺)of the selected constant control matrix (B) to obtain a vector of control variables (v); and arithmetically combining said vector of control variables (v) with a product of said error vector (e) and the feedback gain matrix (K) to produce signals for use in adjusting said control inputs (u) to force the process to follow said set of equations despite the unknown dynamics. The method of claim 7 wherein said step of arithmetically combining said estimated effects of unknown dynamics (Ψ and) with said evaluated set of equations further comprises arithmetically combining said estimated effects with equations representative of known dynamics (F) on said process as evaluated using the present values of said state variables (x). The method of claim 7 wherein said process comprises magnetically suspending a rotor (10) with a plurality of bearings (17, 19) and wherein said state variables correspond to position of said rotor relative to said bearings. The method of claim 7 wherein said step of estimating effects of unknown dynamics comprises: (a) evaluating said set of equations for past values of said state variables (x(ε)) and past values of said command values (r(ε)); (b) multiplying the selected constant control matrix (B) by a past value of said vector of control variables (v(η)); (c) multiplying a past value of said error vector (e) by a convolution dummy matrix (Γ⁻¹) and by the state transition matrix (Φ); and (d) multiplying the convolution dummy matrix (Γ⁻¹) by said error vector (e).

Inventors: YOUCEF-TOUMI KAMAL, YOUCEF-TOUMI, KAMAL
Applicants: MASSACHUSETTS INST TECHNOLOGY, MASSACHUSETTS INSTITUTE OF TECHNOLOGY
Application year: 1991
Main classification: G05B13
IPC codes: G05B13, G05D3