Abstract:
Method and apparatus for determining open-loop parameters for each of three general feedback configurations from measurements of the closed-loop error signals or other output signals produced in response to provision of predetermined input signals for the configuration. The feedback loop in one embodiment includes a sum or difference module, a controller module, a plant module and a sensor dynamics module, arranged serially, where the actions of the controller module, the plant module and the sensor dynamics module are represented by associated matrices C, P and H, respectively, when operating in the linear region. The feedback loop in a second embodiment includes a first sum or difference module, a controller module, a second sum or difference module and a plant module, arranged serially, where the actions of the controller module and the plant module are represented by associated matrices C and P, respectively, when operating in the linear region. The feedback loop in a third embodiment includes a first sum or difference module, a controller module, a second sum or difference module, a plant module, a third sum or difference module, and a sensor dynamics module, arranged serially, where the controller module, the plant module and the sensor dynamics module are represented by associated matrices C, P and H, respectively, when operating in the linear region. The sum or difference modules in the second and third embodiments are used to introduce arbitrary input test signals into the loop. Each of the three embodiments or configurations is defined by a sequence of matrix equations that determine various linear combinations of intermediate and output signals in terms of the input test signals provided. These matrix equations are rewritten in terms of certain combined action matrices, and these combined action matrix equations are &#34;unwrapped&#34; and used to determine the open-loop parameters associated with the configuration.

Description:
FIELD OF THE INVENTION 
     This invention relates to measurement and analysis of frequency responses of multiple input and/or multiple output dynamic systems, including those under feedback control. 
     BACKGROUND OF THE INVENTION 
     In order to design a compensator for a dynamic system, it is necessary to have an effective model for the system. A common approach to modelling a system is in the frequency domain, using Fourier, Laplace or Z transforms. Non-parametric identification is commonly used to obtain an estimate of the frequency response function of a dynamic system. Mathematical models may then be fit to the frequency response function to obtain an analytic model of the dynamic system that generates approximately the same frequency response. This analytic model is often referred to as a transfer function. Strictly speaking, transfer functions refer to the analytic models in the frequency domain of the control system, and frequency response functions refer to a vector of responses of a given control system for a given vector of individual frequencies. The equations in this disclosure are valid for either case. For convenience here, these will all be referred to as transfer functions. Currently, the technology is quite mature for single-input, single-output (&#34;SISO&#34;) systems, an example of which is illustrated in FIG. 1. Measurements and curve fits can be made of both analog and digital open-loop and closed-loop systems. 
     Control design is usually done on an open-loop measurement or model of the physical system of interest. However, many physical systems cannot be measured unless a feedback loop is wrapped around them. This control loop uses some nominal compensator that need only perform well enough to produce a good measurement. From this measurement, an improved model of the physical system is obtained, which allows a better compensator to be designed. This process can be, and often is, iterated until a final compensator is designed. 
     For single input, single output (&#34;SISO&#34;) systems, instruments currently exist that allow one to make a measurement of a closed-loop system and to &#34;unwrap&#34; the closed-loop frequency response function to produce an open-loop frequency response function. The compensator frequency response function, represented by the module C in FIG. 1, is usually easy to compute or measure open-loop, and this function can then be factored out to produce the physical system frequency response function, represented by the module P in FIG. 1. For multi-input, multi-output (&#34;MIMO&#34;) systems, closed-loop measurements can be made by procedures analogous to the procedures used for SISO systems. However, no approach has been available for extracting the open-loop frequency response function for the physical system. 
     In the time-invariant SISO system shown in FIG. 1, a scalar input signal r(t), or its frequency domain representative signal R(f), is received on an input signal line 13 at a first terminal of a difference-forming module 15. The difference module 15 receives a second input signal Y(f) at a second terminal on a second input signal line 17. A difference signal or error signal E(f)=R(f)-Y(f) issues from the difference module 15 on a first intermediate signal line 19, and this signal E(f) is received by a compensator module or signal processor 21. The compensator module 21 issues an intermediate signal U(f) that is received on an intermediate signal line 23 by a physical system or plant module 25 that is being controlled. The plant 25 issues on output signal Y(f) on an output signal line 27 that is also received at the second input terminal of the difference module 15. 
     Although it is sometimes possible to make measurements of an open-loop system, for example, by use of the signal lines 23 and 27 associated with the physical system or plant module 25 in FIG. 1, it is often difficult to keep the system within its linear operating range without the use of a feedback controller. In a SISO system that has a limited range over which it is linear, it is fairly common to perform measurements of closed-loop systems and then unwrap or open the loop. In FIG. 1, the compensator module 21 and plant module 25 may present either the transfer functions or frequency response functions of these modules. The feedback loop signals may be presented either in continuous-time or in discrete-time. In the continuous-time case, the transfer functions for the modules 21 and 25 are functions of continuous frequency s, and in the discrete-time case, they are functions of discrete frequency z. In either case, the frequency response functions are functions of ω=2πf or jω(j=√-1). In continuous time s=jω; in discrete time, z=exp(jωT), where T is the sample period. For discrete-time systems, the measurement is usually limited to a frequency span 0≦f&lt;(2T) -1 , referred to as a Nyquist band. 
     When making closed-loop measurements are made on a SISO system with an input signal R(f) and output signal Y(f), the ratio between the input signal and the output signal at a given frequency f 0  can be represented by the relation ##EQU1## Incrementing f 0  across the relevant frequency band yields a frequency response function T(f) for the closed-loop system ##EQU2## where the last relationship follows from simple scalar block diagram mathematics. Similar analysis of the error signal E(f)=R(f)-Y(f) produces the relation ##EQU3## If the compensator frequency response function C(O is known, this function can be divided out at each frequency to yield the processor frequency response function P(f). 
     It is also fairly common to make measurements of MIMO systems of the type shown in FIG. 2. Here the frequency response function matrix describes injection of input signals X j  at the various input terminals and read-out of output signals Y i  at the various output terminals. The frequency response function matrix M, which represents the effect of the module 31, satisfies Y=MX, where the input vector X and output vector Y have the respective dimensions n 1  ×1  (rows×columns) and n 2  ×1, viz. ##EQU4## The number of reference input signals (n 1  ) and controlled output signals (n 2 ) for a MIMO system often, but not always, agree (n 1  =n 2 ) so that the number of input signals or output signals is the same. Note that the compensator/plant/sensor module 31 in FIG. 2 may be an open-loop system itself, in which case an input signal X j  would represent U j  ; or may be a closed-loop system, in which case X j  would represent a reference signal R j . In the latter case, the module 3 1 can represent one of several general closed-loop maps and the column vector Y of output signals Y i  would be of the same dimension as the column vector X of input signals X j . 
     Frequency response analysis and transfer function analysis typically involve an implicit assumption that the system is linear or is operating within its linear region. A few important exceptions exist, such as describing function analysis, but these are not of concern here. If the system nonlinearities are significant, it does make a difference whether the measurement is a series of SISO or single-input, multi-output (&#34;SIMO&#34;) measurements or is a single MIMO measurement. However, if the system is operating in its linear region, superposition can be used to synthesize responses to multiple input signals from a series of single input signals. In this linear situation, statistical properties and convenience often determine how the measurement should be carried out. 
     Some prior work has been performed on measuring SISO and MIMO system parameters and on extracting parametric curve fits from open-loop measurements on such systems. Some work has also been performed on unwrapping closed-loop SISO measurements. 
     P. L. Lin and Y. C. Wu, in &#34;Identification of Multi-input Multi-output Linear Systems From Frequency Response Data&#34;, Trans. ASME, vol. 104 (1982) pp. 58-64, disclose a procedure for determining transfer function parameters for a multiple inputmultiple output linear system, using representation of the transfer function as a numerator frequency polynomial with matrix coefficients divided by a denominator frequency polynomial with matrix coefficients. Output versus input measurements are performed on the system at a sequence of selected frequencies, and the numerator and denominator matrix entries are determined by successive approximations of increasing polynomial degree. It is difficult to determine the magnitude of error present when the polynomials are truncated at selected degrees. 
     Hewlett Packard Company Application Note 243--2, &#34;Control System Development Using Dynamic Signal Analyzers&#34;, 1984, pp. 1-64, discusses the open loop and closed loop models for a SISO linear control system and indicates some of the measurement techniques available at that time (1984) for analysis of a general control system. 
     E. S.Atkinson et al, in &#34;Low-frequency Analyzer Combines Measurement Capability with Modeling and Analysis Tools&#34;, Hewlett Packard Jour., January 1987, pp. 4-16, discusses use of a two-channel Fast Fourier Transform analyzer to measure parameters in a linear SISO control system. 
     R. C. Blackham et al, in &#34;Measurement Modes and Digital Demodulation for a Low frequency Analyzer&#34;, Hewlett Packard Jour., January 1987, pp. 17-25, discusses use of low frequency measurements to determine parameters for a linear SISO control system. 
     J. L. Adcock, in &#34;Analyzer Synthesizes Frequency Response of Linear Systems&#34; and in &#34;Curve Fitter for Pole-zero System&#34;, Hewlett Packard Jour., January 1987, pp. 25-32 and 33-36, discusses use of low pole-zero techniques to determine the numerator and denominator parameters for a linear SISO control system. 
     R. L. Dailey and M. S. Lukich, in &#34;MIMO Transfer Function Curve Fitting Using Chebyshev&#39;s Polynomials&#34;, published by TRW Space &amp; Technology Group, 1987 and presented at the 35th Annual Meeting of the Society of Industrial and Applied Mathematics, Denver, Colo., October 1987, disclose an extension of Chebyshev analysis of a SISO system to analysis of an MIMO system. The conventional matrix equation G(s)=N(s)/D(s) for the transfer function is reformulated as an equation G(s)D(s)-N(s)=0 that is linear in all the unknown entries of the matrices D(s) and N(s), where s=jω. This last equation is solved as a set of simultaneous equations, using singular value decomposition techniques applied to Chebyshev polynomial expansions in the frequency ω for the matrix functions D(s) and N(s). 
     Hewlett Packard Company Product Note HP 3562A/3563A-1, &#34;Measuring the Open-loop Frequency Response of the Phase-locked Loop&#34;, discusses measurement of PLL parameters for a linear MIMO control system and in other environments. 
     What is needed is an approach that provides an instrument that extracts MIMO open-loop frequency response functions for a physical system from MIMO closed-loop measurements. Preferably, this approach should provide a non-parametric method of obtaining open-loop responses from closed-loop measurements on a single-input or multiple-input, single-output or multiple-output control system. The method should allow unwrapping of measurements of closed-loop MIMO system to recover the open-loop frequency response function matrix of that MIMO system. The method should be flexible enough to provide measurements of various system parameters, depending upon which system signals are measured, and should extend the capabilities of instruments for unwrapping measurements of SISO systems and those instruments capable of measuring, but not unwrapping, a MIMO loop. 
     SUMMARY OF THE INVENTION 
     These needs are met by the invention, which in one embodiment focuses on a control system arranged in a First Configuration, as defined below. This system includes a difference module, a controller module and a plant module, arranged serially in a forward direction, and a sensor module, positioned in the return portion of a feedback loop. The control system is assumed to be operating within its linear operating range. In a first mode, the difference module receives an input signal vector R as a vector array of n 1  component input signals at a first input terminal and receives an estimate signal vector Z (unspecified as yet) as an array of n 1  signals at a second input terminal. The difference module issues a difference module output signal vector E=R-Z, and E is received as an input signal vector at an input terminal of the controller module. The controller module issues an intermediate output signal vector U=CE, where C is a determinable matrix having n 3  rows and n 1  columns, as a vector array of n 3  signals, and this output signal is received as an input signal vector at an input terminal of the plant module. The plant module issues a control system output signal vector Y=PU=PCE, where P is a matrix having n 2  rows and n 3  columns, and this output signal is also received as an input signal vector at an input terminal of the sensor module. The sensor module issues an output estimate signal vector Z=HY=HPU=HPCE, where H is a matrix having n 1  rows and n 2  columns, and the estimate signal Z is received at the second input terminal of the difference module. Here, n 1 , n 2  and n 3  are arbitrary positive integers. The parameters of the controller module, represented by the matrix C, are assumed to be determinable or known. The entries of an n 1  ×n 1  combination matrix T=HPC(I+HPC) -1  and the matrices HPC and HP are then determined from the relations Z=TR, HPC=T(I-T).sup. =(I-T).sup. T and HP=T(I-T).sup. C.sup. =(I-T).sup. TC.sup. . Here C.sup.  is the inverse matrix or a pseudo inverse matrix of the matrix C, called a &#34;quasi-inverse&#34; here and satisfying C.sup. C=I or CC.sup. =I (or both); and similarly for the quasi-inverse (I-T).sup. . 
     In a second mode of the first embodiment, the input signal vector R is again received and the resulting signal vector E=(I+HPC).sup. R=SR is measured. A sensitivity matrix S is then determined, and the matrix HP is determined from HP=(S.sup. -I)C.sup. . In third and fourth modes of the first embodiment, defining relations are U=(I+CHP).sup. CR=C(I+HPC).sup. R and Y=(I+PCH).sup. PC=PC(I+HPC).sup. R, respectively. 
     In a first mode of a second embodiment of the invention, a feedback loop includes a difference module, a controller module, a sum module and a plant module, arranged in that order in a Second Configuration. The difference module receives a first reference signal R 1  and a comparison signal Y 2  and forms and issues a difference or error signal E 1  =R 1  -Y 2 . The controller module receives the error signal E 1  and forms and issues a controller output signal Y 1  =CE 1 . The sum module receives a second reference signal R 2  and the controller output signal Y 1  and forms and issues a sum signal E 2  =R 2  +Y 1 . The plant module receives the sum signal E 2  and forms and issues an output signal Y 2  =PE 2 , which is received at one input terminal of the difference module as a comparison signal. Four combination matrices T 1  =C(I+PC).sup. , T 2  =-CP(I+CP).sup. , T 3  =PC(I+PC).sup.  and T.sub. 4 =P(I+CP).sup. , having the respective dimensions n 2  ×n 1 , n 2  ×n 2 , n 1  ×n 1  and n 1  ×n 2 , are introduced, and their entries are determined from the relations Y 1  =(T 1 )(R 1 )+(T 2 )(R 2 ) and Y 2  =(T 3 )(R 1 )+(T 4 )(R 2 ), where the matrices R 1  and R 2  are known The matrices Y 1  and Y 2  are found by measurement, and T 1 , T 2 , T 3  or T 4  and PC or CP are determined from the measurements of Y 1  and Y 2 . 
     In a second mode of the second embodiment using the Second Configuration, four combination matrices S 1  =(I+PC).sup. , S 2  =-P(I+CP).sup. , S 3  =C(I+PC).sup.  and S 4  =(I+CP).sup. , having the respective dimensions n 1  ×n 1 , n 1  ×n 2 , n 2  ×n 1  and n 2  ×n 2 , are introduced, and their entries are determined from the relations E 1  =(S 1 )(R 1 )+(S 2 )(R 2 ) and E 2  =(S 3 )(R 1 )+(S 4 )(R 2 ), where the matrices R 1  and R 2  are again known. The matrices R 1  and R 2  are found by measurement, and S 1 , S 2 , S 3  and/or S 4  and PC and/or CP are determined from the measurements of E 1  and E 2 . 
     In a Third Configuration, a feedback loop includes a difference module (E 1  =R 1  -Y 3 ), a compensator module (Y 1  =CR 1 ), a sum module (E 2  =R 2  +Y 1 ) and a plant module (Y 2  =PE 2 ), arranged serially in the forward direction, and a sum module (E 3  =R 3  +Y 2 ) and a sensor module (Y 3  =HE 3 ), arranged serially in the return portion of the feedback loop. The Third Configuration includes the features of the First and Second Configurations, receives three input signal vectors, R 1 , R 2  and R 3 , and produces three measurable intermediate output signals E 1 , E 2  and E 3  or three other measurable intermediate output signals Y 1 , Y 2  and Y 3 . In a first mode of a third embodiment of the invention, the defining equations become E i  =S i1  R 1  +S i2  R 2  +S i3  R 3  (i=1, 2, 3). These equations define nine matrices S ij  =(I+ HPC).sup. A ij  or S ij  =(I+CHP).sup. A ij  or S ij  =(I+PCH).sup. A ij , where the matrices A ij  are of the form I, C, P, H, PC, HP, CH, HPC, CHP or PCH. The forms of the matrices S ij  are determined, and these defining equations are then unwrapped to determine the form of the matrix P or HP. In a second mode of the third embodiment, the defining equations become Y i  =T i1  R 1  +T i2  R 2  +T i3  R 3  (i=1, 2, 3), where the nine matrices T ij  are determinable and have forms similar to the matrices S ij  of the first mode of the third embodiment. The defining equations are unwrapped to determine the form of the matrix P or HP. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     FIG. 1 is a schematic view of a single input, single output, closed-loop control signal processing. system analyzed by an application of the invention. 
     FIG. 2 is a schematic view of a general multiple-input, multiple-output signal processing system that may be either an open-loop or closed-loop system internally. 
     FIGS. 3, 4 and 5 are schematic views of general multiple-input, multiple-output, closed-loop systems in a First Configuration, a Second Configuration and a Third Configuration, respectively, to which the invention applies. 
     FIGS. 6 and 7 illustrate a physical layout of a system that uses the invention. 
    
    
     DESCRIPTION OF THE PREFERRED EMBODIMENTS 
     A control system illustrating a First Configuration embodiment 41, shown in FIG. 3, includes: (1) a difference module 43 that forms a difference signal E=R-Z between a system input signal R and an estimate signal Z; (2) a controller module 45 that receives the difference signal E as an input signal and, in response to receipt of E, issues an intermediate signal U=CE as an output signal; (3) a physical system or plant module 47 that receives the intermediate signal U and, in response to receipt of U, issues a system output signal Y=PU; and (4) a sensor module 49, positioned in a feedback path to the difference module 43, that receives the system output Y as an input signal and, in response to receipt of Y, issues the estimate signal Z=HY as an output signal. Here C, P and H are matrices having dimensions n 3  ×n 1 , n 2  ×n 3  and n 1  ×n 2 , respectively, where n 1 , n 2  and n 3  are selected positive integers. This paragraph and the accompanying FIG. 3 define what will be referred to as a First Configuration control system. 
     Here, C, P, and H denote matrices of transfer functions or frequency response functions. H represents the sensor dynamics, which is often considered part of the plant module 47 in the SISO case and may be included therein. At any given frequency the matrix P associated with the plant module 47 has n 2  rows and n 3  columns. The controller module 45 has a matrix C associated with this module. The matrices H and C have the appropriate dimensions for the matrix multiplication to make sense. R, Z, and E are all input signal or intermediate signal column vectors with dimensions n 1  ×1, and Y is an output signal column vector with dimensions n 2  ×1. 
     The closed-loop transfer function matrices can be found in many texts and make use of matrix transfer function mathematics. However, matrix multiplication does not commute. One cannot simply divide an output signal vector by an input signal vector to obtain a frequency response of the system. This simple fact has been a point of difficulty in extending the previously mentioned SISO identification algorithms to MIMO systems. However, the same techniques used to arrive at the closed-loop transfer functions from open-loop quantities can be modified to produce open-loop transfer functions from closed-loop measurements in a linear operating region of the system. 
     The closed-loop transfer function matrices are determined from the relations 
     
         Y=PCE                                                      (5) 
    
     
         Z=HY=HPCE,                                                 (6) 
    
     
         E=R-Z,                                                     (7) 
    
     
         U=CE=C(R-Z),                                               (8) 
    
     
         Y=PC(R-HY),                                                (9) 
    
     
         (I+PCH)Y=(PC)R,                                            (10) 
    
     
         Y=(I+PCH).sup.-1 PCR=PC(I+HPC).sup.-1 R,                   (11) 
    
     
         Z=HPC(I+HPC).sup.-1 R=(I+HPC).sup.-1 HPC R.                (12) 
    
     Because (I+HPC) and (I+PCH) are square matrices of size n 1  ×n 1  and n 2  ×n 2 , respectively, one or the other of these matrices will be invertible if it has full rank. If I+ HPC has full rank, for example, Eq. (12), relating the measurable vector Z and the specifiable vector R, can be used to determine the entries of the matrix PC. If neither of the matrices I+PCH and I+HPC has full rank, the pseudo-inverse of the matrix I+PCH or I+HPC is assumed to be used here. One usually knows or can independently measure the elements of the compensator matrix C so that only P and/or H must be identified. It is often possible to measure H independently. However, sometimes it is only possible to measure H combined with P. Thus, the combined term L=HP is identified, using Eq. (12), by injecting signal at R and reading responses at Z. In fact, it is natural to measure HP because this combination is what the compensator sees when performing its control functions. 
     In a first version or mode of analysis of the First Configuration, if T denotes the closed-loop frequency response or transfer function matrix from R to Z, 
     
         T=(I+HPC).sup.-1 HPC=HPC(I+HPC).sup.-1,                    (13) 
    
     and T is a n 1  ×n 1  matrix. Because the control system in question is either linear or assumed to be operating in the linear regime, each entry T ij  of the matrix T can be measured by injecting a reference input signal R j  and reading the resulting response Z i . Unwrapping this transfer function proceeds analogously to the SISO case, and one verifies that 
     
         HPC=T(I-T).sup.-1 =(I-T).sup.-1 T.                         (14) 
    
     If the inverse of C, C -1 , exists, then 
     
         L=HP=T(I-T).sup.-1 C.sup.-1 =(I-T).sup.-1 TC.sup.-1.       (15) 
    
     The matrix C must be square (n 1  =n 3 ) and must have full rank if the formal inverse C -1  is to exist. Each matrix of the form (I+X) is already a square matrix, and if (I+X) has full rank the inverse of this matrix will exist. If C is not square, HP can still be approximated by least-squares approximation by post-multiplying HPC by the pseudo-inverse of C, denoted C.sup. . For ease of reference herein, the formal inverse of a matrix such as C, or the pseudo-inverse of that matrix if the formal inverse does not exist, will be collectively referred to as a &#34;quasi-inverse&#34; C.sup.  of that matrix; if the formal inverse of a matrix exists, the quasi-inverse is identical with the formal inverse of that matrix. For control purposes, the combination L=HP can be simply considered the physical system or plant module representative to be controlled, and the entries of HP are to be determined. 
     It is assumed here that C is known or determinable, although the inverse C -1  need not exist, and that the entries of the matrix L=HP (dimensions n 1  ×n 3 ) are unknown. The problem associated with the First Configuration embodiment illustrated in FIG. 3 may be stated as follows: (1) Each of n 1  linearly independent reference input signals R i  (i= 1, ..., n 1 ) is provided at the input terminal of the control system shown in FIG. 3; (2) Application of the input signal R i  produces an intermediate vector signal U and a sensor module output vector signal Z is read; and (3) Eq. (14) and the relations Z i  =Σ j  T ij  R j  (i =1, . . . n 1  ), with R j  known and Z i  measurable, are to be solved to determine the entries of the unknown matrix HPC; (4) the entries of the unknown matrix L=HP are to be determined using Eq. (15) with C -1  replaced by the quasi-inverse C.sup. . The steps (3) and (4) &#34;unwrap&#34; the unknown matrix HP in two steps. 
     In a second mode of analysis of the First Configuration, the input signal vector R is again injected and the resulting signal vector E is determined. Here, the defining equations become, by analogy with Eqs. (5)-(12), 
     
         Y=PCE,                                                     (16) 
    
     
         Z=HPCE,                                                    (17) 
    
     
         E=R-HPCE=(I+HPC).sup. R=SR,                                (18) 
    
     which defines an n 1  ×n 1  matrix S whose enuies are determined from Eq. (18). Equation (18) is similarly unwrapped to produce 
     
         HP=(S.sup. -I)C.sup. .                                     (19) 
    
     In a third mode of analysis of the First Configuration, the input signal R is injected and the resulting signal vector U is determined. The defining equation replacing (18) becomes 
     
         (I+CHP)U=CR,                                               (20) 
    
     
         U=VR=(I+CHP).sup. CR=C(I+HPC).sup. R,                      (21) 
    
     which may be unwrapped to produce 
     
         HP=C.sup. [(VC.sup. ).sup. -I]=[(C.sup. V).sup. -I]C.sup. . (22) 
    
     In a fourth mode of analysis of the First Configuration, the input signal R is injected and the resulting vector signal Y is determined. The defining equation replacing Eq. (18) produces 
     
         (I+PCH)Y=PCR,                                              (23) 
    
     
         Y=WR=(I+PCH).sup. PCR=PC(I+HPC).sup. R.                    (24) 
    
     
         HP=HW(I-HW).sup. C.sup. =(I-HW).sup. HWC.sup. .            (25) 
    
     For extraction of HP, Eq. (25) requires knowledge of H, which may not be available. 
     A Second Configuration 51 of a feedback loop, illustrated in FIG. 4, includes a difference module 53, a controller module 55, a sum module 57 and a plant module 59, arranged in that order in a feedback loop. This assumes, without loss of generality, that the sensor dynamics of a sensor module (matrix H) have been included in the dynamics of the plant module 59 (matrix P). The above loop-unwrapping algorithm can be extended to any general input/output configuration, such as the Second Configuration shown in FIG. 4. In comparing this configuration with FIG. 3, note that R 1  =R, E 1  =E, E 2  =U, and Y 2  =Z. 
     It is straightforward to verify the relations ##EQU5## The entries of any of the four matrices T 1 , T 2 , T 3  or T 4 , or of any of the four matrices S 1 , S 2 , S 3  or S 4 , can be determined from Eqs. (26) or from Eqs. (27) and used to determine the matrix PC or CP. A quasi-inverse matrix C.sup. can then be constructed and used to determine the entries of the unknown matrix P=(PC)C.sup. or P=C.sup. (CP). The entries of the matrices T i  or S j  (i=1, 2, 3, 4; j=1, 2, 3, 4) are determined and used to find the entries of PC or CP. 
     
         PC=(T.sub.1).sup. C-I,                                     (28) 
    
     
         CP=-T.sub.2 (I+T.sub.2).sup. =-(I+T.sub.2).sup. T.sub.2,   (29) 
    
     
         PC=T.sub.3 (I-T.sub.3).sup. =(I-T.sub.3).sup. T.sub.3,     (30) 
    
     
         CP=CT.sub.4 (I-CT.sub.4).sup. =(I-CT.sub.4).sup. CT.sub.4, (31) 
    
     
         PC=S.sub.1.sup. -I,                                        (32) 
    
     
         CP=-CS.sub.2 (I+CS.sub.2).sup. =-(I+CS.sub.2).sup. CS.sub.2, (33) 
    
     
         PC=S.sub.3.sup. C-I,                                       (34) 
    
     
         CP=S.sub.4.sup. -I.                                        (35) 
    
     Although FIGS. 3 and 4 illustrate the First Configuration and the Second Configuration by use of a difference module 43, or use of a difference module 53 and a sum module 57, these modules may each be independently chosen to be a sum module or a difference module, with straightforward changes being made in the defining equations. Each of the two choices of the linear combination module 43 (sum or difference) for the First Configuration produces a set of equations analogous to Eqs. (5)-(15). Each of the four choices of pairs of linear combination modules 53 and 57 (sum/sum, sum/difference, difference/sum or difference/difference) for the Second Configuration produces a set of equations analogous to Eqs. (28)-(35). It is possible to unwrap any of the MIMO loops associated with Eqs. (26) or (27) to obtain P. Which loop one measures depends only upon the relative convenience and accuracy of different input/output signal pairs. Certain input signals or output signals may not be accessible. Also, some of these loops are mathematically equivalent, using certain &#34;push-through&#34; matrix identities and multiplication by C -1 . If C -1  does not exist, the pseudo-inverse C.sup.  should be used. Essentially, the problem reduces to unwrapping one of four MIMO loops: 
     
         (I+CP).sup. , 
    
     
         (I+PC).sup. , 
    
     
         (I+PC).sup. PC=PC(I+PC).sup. , 
    
     
         CP(I+CP).sup. =(I+CP).sup. CP, 
    
     and these fall within two forms: 
     
         A=(I+G.sub.1).sup.                                         (36) 
    
     
         B=(I+G.sub.2).sup. G.sub.2 =G.sub.2 (I+G.sub.2).sup. ,     (37) 
    
     where A, B, G 1  and G 2  are matrices. These are unwrapped using the relations 
     
         G.sub.1 =A.sup. -I,                                        (38) 
    
     
         G.sub.2 =B(I-B).sup. =(I-B).sup. B.                        (39) 
    
     Depending upon whether the matrix G 1  or G 2  is CP or PC, P can be recovered by pre- or post-multiplying by the formal inverse C -1  or by the pseudo-inverse C.sup. . 
     FIG. 5 illustrates a Third Configuration of a feedback loop 71 to which the invention applies. A first difference module or sum module 73, hereafter collectively referred to as a &#34;linear combination module&#34;, receives a first external signal R 1  and a comparison signal Y 3 , each a vector array of n 1  signals, at two input terminals of the module and forms and issues the linear combination R 1  +Y 3  or R 1  -Y 3 , according to choice, at the output terminal of the first linear combination module 73. For purposes of illustration here, the difference E 1  =R 1  -Y 3  will be used for the first linear combination issued at the output terminal of the first linear combination module 73. The vector array E 1  is received at an input terminal of a compensator module 75, represented by an n 2  ×n 1  compensator matrix C, and the module 75 forms and issues at an output terminal of the module 75 a first intermediate signal Y 1  =CE 1 . The first intermediate signal Y 1  and a second external signal R 2  are received at first and second input terminals of a second linear combination module 77, which forms and issues an second linear combination output signal E 2  =R 2  +Y 1  or E 2  =R 2  -Y 1  at its output terminal. For purposes of illustration, the output signal E 2  =R 2  +Y 1  will be used here. The second linear combination module output signal E 2  is received at an input terminal of a plant module 79, represented by an n 3  x n 2  plant module matrix P, and the module 79 forms and issues at an output terminal of the module 79 a second intermediate output signal Y 2  =PE 2 . The second intermediate output signal Y 2  and a third external signal R 3  are received at first and second input terminals of a third linear combination module 81, which forms and issues a third linear combination output signal E 3  =R 3  +Y 2  or E 3  =R 3  -Y 2  at its output terminal. For purposes of illustration, the output signal E 3  =R 3  +Y 2  will be used here. The third linear combination output signal E 3  is received at an input terminal of a sensor module 83, represented by an n 1  ×n 3  sensor matrix H, and the module 83 forms and issues at an output terminal of the module 83 a third intermediate output signal Y 3  =HE 3 . The third intermediate output signal Y 3  is received at the second input terminal of the first linear combination module 73. 
     By analogy with the relations developed for the First Configuration and for the Second Configuration above, the relations for the Third Configuration shown in FIG. 5 are as follows. 
     
         E.sub.1 =R.sub.1 -Y.sub.3,                                 (40) 
    
     
         Y.sub.1 =CE.sub.1,                                         (41) 
    
     
         E.sub.2 =R.sub.2 +Y.sub.1,                                 (42) 
    
     
         Y.sub.2 =PE.sub.2,                                         (43) 
    
     
         E.sub.3 =R.sub.3 +Y.sub.2,                                 (44) 
    
     
         Y.sub.3 =HE.sub.3.                                         (45) 
    
     Equations (40)-(45) may be rearranged to produce the following matrix equations relating the first, second and third linear combination module output signals to the first, second and third external signals. ##EQU6## The matrices Q 1 , Q 2  and Q 3  are square matrices of sizes n 1  ×n 1 , n 2  ×n 2  and n 3  ×n 3 , respectively. Equations (46) provide the entries of the matrices S ij  (i,j=1,2,3) and provide the following formal solutions for the matrix HP. 
     
         HP=(S.sub.11.sup. -I)C.sup. ,                              (50) 
    
     
         HP=-S.sub.12 (I+CS.sub.12).sup. ,                          (51) 
    
     
         P=-(H.sup. +S.sub.13.sup. )C.sup. ,                        (52) 
    
     
         HP=S.sub.21.sup. -C.sup. ,                                 (53) 
    
     
         HP=C.sup. (S.sub.22.sup. -I),                              (54) 
    
     
         P=-S.sub.23.sup. -(CH).sup. ,                              (55) 
    
     
         P=S.sub.31 (I-HS.sub.31).sup. C.sup. =(I-S.sub.31 H).sup. S.sub.31 C.sup. ,(56) 
    
     
         P=(I-S.sub.32 CH).sup. S.sub.32,                           (57) 
    
     
         P=(S.sub.33.sup. -I)(CH).sup. ,                            (58) 
    
     where it is assumed that the matrices C.sup. , (CH).sup.  and the other quasi-inverses exist. 
     The corresponding matrix equations relating the first, second and third intermediate output signals Y 1 , Y 2  and Y 3  to the first, second and third external signals are as follows. ##EQU7## Equations (59) provide the entries of the matrices T ij  (ij=1,2,3) and provide the following formal solutions for the matrix HP. Some loops require a knowledge of H in order to unwrap such loops. 
     
         HP=T.sub.11.sup. -C.sup. =HP,                              (60) 
    
     
         HP=-C.sup. [(I+T.sub.12).sup. T.sub.12,                    (61) 
    
     
         P=-T.sub.13.sup. -(CH).sup.                                (62) 
    
     
         P=(I-T.sub.21 H).sup. T.sub.21 C.sup. ,                    (63) 
    
     
         P=(I-T.sub.22 CH).sup. T.sub.22,                           (64) 
    
     
         P=-(I+T.sub.23).sup. T.sub.23 (CH).sup. ,                  (65) 
    
     
         HP=(I-T.sub.31).sup. T.sub.31 C.sup. ,                     (66) 
    
     
         HP=T.sub.32 (I-CT.sub.32).sup. ,                           (67) 
    
     
         P=(T.sub.33.sup. -H.sup. )C.sup. ,                         (68) 
    
     where it is assumed that the matrices C.sup. , (CH).sup.  and the other quasi-inverses exist. 
     The invention disclosed here is applicable to general classes of closed-loop feedback systems, for purposes of determining the parameters that define the matrices that describe operation of the feedback system in a linear operating regime. One example of such an application is as interface apparatus between a control systems analyzer (&#34;CSA&#34;), such as the Hewlett Packard HP 3563A, a digital signal processing (&#34;DSP&#34;) board, such as the Banshee DSP board offered by Atlanta Signal Processing, Inc. (&#34;ASPI&#34;), and the Matlab mathematics program offered by The Mathworks, as illustrated in FIGS. 6 and 7. The interface apparatus allows direct digital measurements to be made of feedback control loop parameters implemented with the DSP board. Analog measurements made with the CSA can be passed to Matlab through the same interface. The menu-driven interface apparatus between the DSP board and Matlab, provided by the invention disclosed here, ties these two devices together and expands CSA capability to MIMO systems. 
     FIG. 6 illustrates a physical layout of a system 91 that has been constructed and used for measurements of MIMO systems. The system 91, referred to as a Multivariable Work Station (&#34;MWS&#34;), includes a MIMO controller module 93 (matrix C) that controls a MIMO physical system or plant module 95 (matrix P). The combination of these two modules, plus a first linear combination module 97 and a second linear combination module 99, forms a Second Configuration feedback loop 101 as shown. The controller module 93 is implemented on an ASPI Banshee Board 103 based on a Texas Instruments TMS 320C30 digital signal processing chip. This board fits into the backplane of an AT-compatible computer 105, such as a Hewlett Packard Vectra RS/16 80386-based computer. A SISO measurement tool 107, such as the Hewlett Packard HP 3563A, is connected to the feedback loop 101 for measuring frequency response functions. The SISO measurement tool 107 is connected to the computer 105 through a HP-IB IEEE 488 bus and card 109. This bus connection allows commands and data to flow in both directions between the computer 105 and the SISO measuring tool 107. The SISO measurement tool 107 is optionally connected to a Banshee card 111 that allows for direct digital measurement of frequency response functions of the MIMO feedback loop 101. A CAD program or mathematics module 113, such as Matlab from The Mathworks, or Control-C from Systems Control Technology of Palo Alto, Califomia, or Matrix X from Integrated Systems, Inc. of Santa Clara, Calif., is installed on the computer 105 and is used for analysis and design. A menu-driven interface program, contained in the MWS 91, acts as the &#34;glue&#34; to allow the other software and hardware items to work together. The interface program controls and shares data with both the SISO measurement tool 107 and the MWS 91. These data can be passed to and received from the CAD program. The Second Configuration feedback loop 101 shown in FIG. 6 can be replaced by a First Configuration feedback loop or by a Third Configuration feedback loop, with suitable changes being made in the connections for the SISO measurement tool 107 and suitable changes being made in the equations analyzed by the CAD or math module 113. 
     In FIG. 6, the HP 3563A that serves as the SISO measurement tool 107 can be replaced by several other instruments, such as the Bruel &amp; Kj r. 3550 The ASPI Banshee board may be replaced by another DSP board, such as the Cheetah from ASPI of Atlanta, Georgia, a board from Ariel of Highland Park, New Jersey or a board from Spectrum Signal Processing of Blaine, Washington. The Matlab mathematics module can be replaced by the Matrix X program offered by Integrated Systems, Inc. of Santa Clara, Calif., or by the Control-C program offered by Systems Control Technology of Palo Alto, Calif. 
     FIG. 7 illustrates conceptually how these modules work together in a preferred embodiment. Acting by itself, the SISO measurement tool 107 is capable of making both analog and digital measurements of a SISO control system. However, when the SISO tool 107 is pan of the MWS 91 in FIG. 6, the SISO tool 107 can also perform a sequence of SISO measurements on a SIMO, MISO or MIMO control system. The individual SISO closed-loop frequency response functions are measured and passed to the math module 113 through the interface program so that the appropriate frequency response function or matrix entries of the matrix T or S or V or W or T i  or S i  or T ij  or S ij  can be assembled.. In a similar manner, the individual SISO open-loop frequency response functions of the compensator module 93 shown in FIG. 6 can be measured and passed to the math module 113 through the interface program so that the compensator frequency response matrix entries can be assembled. Determination of the MIMO loop unwrapping equations is performed in the math module 113. The final result is the frequency response function matrix entries describing the open-loop physical system or plant module 95. The frequency response functions that are entries in the plant module matrix P can either be fit to a single MIMO transfer function in the math module 113, or these frequency response functions can be passed to the SISO measurement tool 107 for curve fitting of the individual transfer functions. The transfer functions are then passed back to the math. module 113 and assembled into a single MIMO transfer function for state space implementation. 
     The math module 113 in FIG. 6 is used to perform the matrix waveform mathematical manipulation because the SISO measurement tool 107 is limited to performing scalar waveform mathematics. The interface program between the SISO tool 107 and the computer 105 allows direct digital measurements to be made on the control system. The interface program controls performance of these measurements by determining (1) which SISO parameters are to be used by the SISO tool 107 and (2) which signals should be transferred between the SISO tool 107 and the computer 105.