0% found this document useful (0 votes)
6 views6 pages

PID554703

The document presents the Matlab MIMO Toolbox (MMT), a software tool designed for the analysis and design of multivariable control systems. It enables users to handle large dimensional systems and provides symbolic conversion algorithms to avoid floating point errors, facilitating easier control system design. The toolbox includes functions for analyzing poles, zeros, stability, and coupling of MIMO systems, along with a graphic user interface for user-friendly interaction.

Uploaded by

Rossi Heredia
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views6 pages

PID554703

The document presents the Matlab MIMO Toolbox (MMT), a software tool designed for the analysis and design of multivariable control systems. It enables users to handle large dimensional systems and provides symbolic conversion algorithms to avoid floating point errors, facilitating easier control system design. The toolbox includes functions for analyzing poles, zeros, stability, and coupling of MIMO systems, along with a graphic user interface for user-friendly interaction.

Uploaded by

Rossi Heredia
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/4323086

MIMO toolbox for matlab

Conference Paper · March 2008


DOI: 10.1109/AISPC.2008.4460568 · Source: IEEE Xplore

CITATIONS READS
5 1,446

2 authors:

O. Vivero Jesús Ulises Liceaga


Perceptive Engineering Limited Metropolitan Autonomous University
6 PUBLICATIONS 20 CITATIONS 51 PUBLICATIONS 344 CITATIONS

SEE PROFILE SEE PROFILE

Some of the authors of this publication are also working on these related projects:

Collaboration with UANL + UAM-X View project

PhD research project at University of Glasgow View project

All content following this page was uploaded by O. Vivero on 19 March 2014.

The user has requested enhancement of the downloaded file.


MIMO Toolbox for Matlab
Oskar Vivero Jesús Liceaga-Castro
School of Electric and Electronic Engineering Departamento de Ingenierá Mecánica y Mecatrónica
University of Manchester, Manchester, UK M60 1QD ITESM-Campus Estado de México, México
Email: [email protected] Email: [email protected]

Abstract—A novel software tool for analysis and design of arithmetic operations. With this problem in mind, a symbolic
multivariable control systems is presented in this paper. The conversion of the transfer function class has been developed,
Matlab MIMO Toolbox is a collection of functions and a graphic and most of the functions within the MMT are supported by
user interface capable of handling the multivariable input-output
scheme of a system. The purpose of the toolbox, is to provide a it. In addition to avoiding most of the floating point errors,
set of valuable tools for the analysis and design of multivariable the conversion enables the user to handle the transfer function
control systems. With the exception of the graphic user interface and its operations as an algebraic problem, simplifying the
which is capable of dealing with 2 × 2 systems, the functions computational difficulties that may arise for the users without
within the Matlab MIMO Toolbox are capable of dealing with a computer science background.
large dimensional systems.
III. F UNCTION D ESCRIPTION
I. I NTRODUCTION
A. Symbolic Conversions
The purpose of this paper is to introduce the Matlab MIMO
Toolbox (MMT), and to provide an explanation of how it The symbolic conversion algorithms are the foundation of
can be used through a controller design example. It is clear the MMT. They are capable of converting transfer function and
that computer aided analysis and design has allowed scientists state space classes into symbolic classes, as well as converting
and engineers to progress on several technical areas, in which a symbolic to a transfer function class. tf2sym converts a
control systems is no exception. Matlab is a software that is numeric transfer function into a symbolic transfer function by
vastly used for the analysis and design of controllers although generating a polynomial ratio from the coefficient information
most of its control algorithms seem to be aimed to the single within the numeric transfer function class. sym2tf performs
input-single output problem. Inspired by the Matlab sisotool the inverse operation by generating coefficient vectors out of
graphic user interface and [4],[5],[6], and [7], the MMT was the polynomials within the symbolic transfer function. ss2sym
coded and it is available at the Matlab Central website. performs the conversion from a state space representation to
The MMT provides a valuable set of tools supported by the a symbolic transfer function.
symbolic transfer function concept, for analyzing and design- B. Poles and Zeros of a MIMO System
ing multiple-input multiple-output (MIMO) control systems.
Given a set of specifications, the appropriate use of the MMT It is of common knowledge that the poles and zeros contain
can lead to the successful design of controllers. The analysis a lot of the information of the system dynamics, which are a
functions within the MMT are capable of handling large major concern when designing a controller.
m × m systems, provided that both, the computer hardware The poles and zeros of a multivariable system can be defined
and Matlab are capable of dealing with such systems within in several (not equivalent) ways, but the definitions that yield
their limitations. The design graphic user interface (GUI) is the most significant consequences are given through the Smith-
capable of dealing with 2 × 2 systems under the individual McMillan transformation [1]
channel design (ICD) framework. The paper is organized as 1) The zeros of a transfer function matrix H(s) are the roots
follows: in Section II, the reason to handle transfer functions of the numerator polynomials in the Smith-McMillan
as a symbolic object is discussed. Section III will provide a form of H(s).
brief description of the functions within the toolbox. In Section 2) The poles of a transfer function matrix H(s) are the roots
IV, an example solved by using the toolbox will be carried of the denominator polynomials in the Smith-McMillan
out along with the system simulation. Finally, Section V will form of H(s)
provide the conclusions that end the document. smform computes the poles, zeros and the Smith-McMillan
transformation of a transfer function matrix.
II. T HE S YMBOLIC T RANSFER F UNCTION
Matlab, through the use of the Control Toolbox, defines C. Stability of a MIMO System
an object class that describes a transfer function. This model The stability of a MIMO system can be defined through the
representation is based on the linear time invariant defini- generalized Nyquist stability criterion. Let H(s) be a transfer
tion of a transfer function, and given that its construction function matrix representing a MIMO System. If H(s) has P
is numerical, it is sensitive to floating point errors due to right hand plane poles (RHPP) given by the Smith-McMillan

978-1-4244-2156-5/08/$25.00 ©2008 IEEE


transformation, then the closed loop with negative feedback is with
stable if and only if the characteristic graphs of K(s)H(s) encir-
cle the point (−1, 0) P times in counter-clockwise direction, den1 = s2 + 3s + 2 , den2 = s + 1 , den3 = s2 + 5s + 6
assuming that there is no unstable pole-zero cancellation.[2] The control specifications for the MIMO system’s outputs
nyqmimo is a function that computes the Nyquist Diagram for are the following:
single-input, single-output (SISO) systems or the Generalized
• Gain margins over 12dB
Nyquist Diagram for MIMO systems depending on the type of
• Phase margins over 45 degrees
input it receives. It is also capable of distinguishing between
strictly improper and proper transfer functions. In order to obtain a suitable controller that is in line with the
Moreover, since nyqmimo was developed by taking into design specifications, one must start by analyzing the dynamics
consideration the Nyquist contour, it is capable of identifying and structure of the system. Through the Smith-McMillan
singularities along it, providing the user with the correct map- transformation it is possible to find the poles and zeros of the
ping. This is certainly an advantage over the Matlab nyquist system. Thus, by using the function smform(G) in the toolbox,
function when dealing with improper systems, integrators or we obtain:
poles on the imaginary axis, since the Nyquist plot will include M (s) = diag(m11 , m22 , m33 )
the large magnitude windings of the mapping.
with
D. Coupling of a MIMO System 1 0.5
m11 = m22 =
The MMT provides a set of algorithms with the purpose 2(s + 1)2 (s2 + 5s + 6) (s + 1)(s2 + 3s + 2)
of analyzing the coupling degree of a multivariable system, 32s4 + 245s3 + 600s2 + 785s + 462
which is a rather important property to take into consideration m33 =
64(s + 1)(s + 2)
when designing a controller. rga is a Matlab function that
computes the relative gain array (RGA) of H(s), gershband and
will compute the Gershgorin bands and the Nyquist array of poles = [−3, −3, −2, −2, −2, −1, −1, −1, −1]
H(s) and msfmimo will compute the multivariable structure
functions (MSF) of H(s). [2],[3],[4] zeros = [−4.583, −1.346, −0.8636 ± 1.2628j]

E. Design of a MIMO Controller: Graphic User Interface It is possible to observe from the Smith-McMillan poles and
zeros that in general the system is minimum phase and that it is
The design of MIMO controllers is achieved through a GUI,
stable. The generalized Nyquist Diagram (fig. 1) confirms the
which is capable of dealing with 2 × 2 systems through the
statement for a system with negative feedback. This diagram
individual channel design scheme. ICD is a framework in
is easily obtained through the toolbox function nyqmimo(G).
which classical techniques such as Bode and Nyquist can be
applied to a system not only when the coupling degree is weak,
but in all circumstances including when the cross-coupling in
the system is strong.
IV. T HE T OOLBOX : AN EXAMPLE
The MMT provides valuable algorithms for analyzing and
designing multivariable control systems. Although the use of
the MMT is straightforward, it is incapable of solving the
control problem by itself, but with the correct analysis, it will
yield satisfactory results in most cases. The objective of this
example is to illustrate the use of the toolbox, and it should be
noted that all the results in this section are obtained through
its use.
The example presented in this paper is a variation of an
interesting and challenging design case taken from [3]. Let
Y (s) = G(s)u(s) be a 3 × 3 multivariable system:
 
g11 (s) g12 (s) g13 (s)
G(s) = g21 (s) g22 (s) g23 (s) (1) Fig. 1. General Nyquist Diagram of G(s)
g31 (s) g32 (s) g33 (s)
where Once the general structure of the system has been defined,
2 −2 1.5
the cross coupling degree of the system must be found. It
g11 (s) = den1 g12 (s) = den2 g13 (s) = den3 is important to understand the structure of a matrix transfer
−1 6 2
g21 (s) = den22
g22 (s) = den3 g23 (s) = den3 function in order to understand the coupling concept employed
1 1.5 2
g31 (s) = den1 g32 (s) = den3 g33 (s) = den1 under the Individual Channel Design (ICD) framework.
Let a system H(s) with a dimension of m×m, be partitioned
to an m1 ×m1 input-output multiple channel M1 and m2 ×m2
input-output multiple channel M2 .
 
..
 H 11 (s) . H12 (s) 
H(s) =   ··· ···  
..
H (s) . H (s)
21 22

Fig. 2. General Channel Model of G(s)K(s) Construct


∗ −1 −1
Fig. 2 shows a block diagram of a matrix transfer function H11 = (I − H12 H22 H21 H11 )H11 (4)
that has been divided into channels. In broad terms, the output
Yi of channel Ci is not only affected by the input ri but Then, two multiple channels couple weakly and the Multiple-
also by the behavior of the channels Cj=i within the system’s Channel M1 can be designed alone, provided:

matrix. Thus, it is important to understand how much of this 1) The diagonal elements of H11 do not differ significantly
interaction will be present while designing a controller. First, from those of H11
we establish the controller structure; in this case a diagonal 2) The multivariable structure functions Γj (s) of the m1 ×

controller K under an ICD design framework has been chosen. m1 system in H11 (s) do not differ significantly from
The multivariable nature of the system can be understood those of H11

by using the multivariable structure functions Γi , i = 1, 2, 3. 3) The structure (that is, the RHPP’s and RHPZ’s) of H11
[4][5] does not differ significantly from that of H11
 i ])−1
Γi = −(det[Ḡi ])(gii det[G (2) Using the above result [4][5], we can analyze the 3 × 3
where system for possible decoupling. If we partition G(s)
 
Ḡi : matrix obtained by setting gii (s) = 0 in G(s) ..  
G i : matrix obtained by eliminating progressively the (i−1)th g
 11 (s) g 12 . g 13  ..
 ..  G11 (s) . G12 (s)
 
row and column of G(s) G(s) = g21 (s) g22 . g23  =  ··· ··· 
Thus we obtain  ··· · · · · · ·   
  .
.. G (s)
g12 g21 g33 − g13 g21 g32 − g12 g23 g31 + g13 g22 g31 . G 21 (s) 22
Γ1 (s) =
g11 (g22 g33 − g23 g32 ) g31 g32 .. g33
g23 g32 then
Γ2 (s) = Γ3 (s) = 0  
g22 g33 5s+21 3 2

(3) 4(s+1)(s+2)(s+3) − 16s(s+1)(s+2)(s+3)


+137s +354s+297
2
 
G∗11 (s) =  
2s2 +7s+7 1.5(3s+11)
− (s+1) 2 (s+2)(s+3) (s+2)(s+3)2

By looking at the bode diagrams of G∗11 (s) and G11 (s) and
the Nyquist diagram of their respective MSF (shown on Fig
4 and 5 respectively). it can be observed that all of the three

Fig. 3. Nyquist Diagram of Γ1 and Γ2

The MMT provides the function msfmimo(G) which takes (2)


and provides the outputs on (3). Combined with nyqmimo, the
Nyquist diagrams of Γ1 and Γ2 are obtained, as shown in
figure 3.
From the Nyquist diagrams of Γ1 and Γ2 in Fig. 3 we can
observe that the magnitude of Γ1 is high; meanwhile that of
Γ2 is low. This is an indication of a possible decoupling of
the channels in the system. When confirmed, this result will
simplify the problem. Fig. 4. Bode Diagram of G ∗11 (s) and G11 (s)
conditions stated above are satisfied, which means that the
channel M1 is weakly coupled to the channel M2 . Although
the inverse is not implied in this result, it can be easily verified
with either the Gershgorin bands (Fig 6) or the RGA that the
channel M2 is weakly coupled to channel M1 as well.
Thus, the system has been divided into 2 simpler control
problems: a SISO system (channel M2 ) and a 2 × 2 MIMO
system (channel M1 ). By considering the design specifications
and the dynamics in g33 , a suitable controller k3 for the
channel M2 can be easily obtained through Bode and Nyquist
techniques.
k3 (s) = 0.447s−1
Given that M1 is a multiple channel defined by a 2 × 2 Fig. 6. Gershgorin bands due to channel M2 interaction
system, G11 , we need to verify its internal structure and
coupling through the MSF ΓG11 (s) which is defined by (2). degree of h2 (s) is greater than the relative degree of ΓG11 (s),
Let the internal channels of M1 be defined by [6][7] then the Nyquist Diagram of ΓG11 (s)h2 (s) will encircle the
point (1,0) once in a counter-clockwise direction and thus
Ci (s) = ki (s)gii (s)(1 − ΓG11 (s)hj (s)) (5) C1 will be minimum phase. Since the Nyquist Diagram of
ΓG11 encircles the point (1,0) twice in a clockwiswe direction,
where i = j, i, j = 1, 2,
and since ΓG11 (s)h1 (s) cointains no RHPP, channel C2 will
kj (s)gjj (s) be non-minimum phase. It is important to mention that the
hj (s) = and K(s) = diag[ki (s)]
1 + kj (s)gjj (s) stabilization of the diagonal elements of G(s) is not required,
in fact, one of the diagonal elements must be unstable in
The MMT will facilitate the analysis and controller design for
order to stabilize the whole system [8]. The user can keep
G11 (s) through the GUI, icdtool, which is based on (2) and
this particular analysis in check through the status window
(5). When prompted, icdtool (shown in Fig 7), will compute
within icdtool.
(2) for a 2 × 2 system, and through the handy options the user
In order to ensure the robustness of the channels C1 and
can easily obtain its Nyquist diagram. The Nyquist diagram
C2 , the following conditions must be fulfilled:
of ΓG11 (s) in Fig 5. shows that C1 and C2 are strongly
• The design of k1 and k2 based on g11 and g22 must ensure
coupled. It can also be observed that ΓG11 (s) surrounds the
point (1,0) twice, and since it possesses no RHPP, then G11 (s) the appropriate robustness margins.
• ΓG11 h1 and ΓG11 h2 must have appropriate robustness
is non-minimum phase. Further analysis of Fig 5., provides
the following criteria that will set the Ci channel stabilizing margins according to the design specifications.
• C1 and C2 must contain the appropriate robustness mar-
requirements.
From Fig 5. it is possible to observe that ΓG11 (0) = 2, gins acording to the design specifications.
from (5), since g22 (0) > 0 and if ΓG11 (0)h1 (0) > 1 then a By taking into consideration the stabilizing and robustness
stabilizing controller for C2 (s) will be such that k2 (0) < 0 conditions for the channels along with icdtool which simplifies
and as a consequence, h2 will be unstable with one RHPP. If the iterative process, suitable controllers k1 (s) and k2 (s) were
|k2 (0)g22 (0)| > 1 then h2 (0) > 0 and if ΓG11 (0)h2 (0) < 1 obtained.
then k1 (0) > 0 in order to obtain a stable channel C1 . 450(s + 1.6)2 −12(s + 1.16)2
k1 (s) = 2
, k2 (s) =
Given that ΓG11 (s)h2 (s) contains one RHPP, if the relative s(s + 25) s(s2 + 36s + 320)

Fig. 5. Nyquist Diagram of of ΓG∗ (s) and ΓG11 (s) Fig. 7. icdtool window
11
Fig. 10. Step Responses of C1 , C2 and M2

between C1 and C2 along with the non-minimum phase nature


of C2 is present in Fig. 10. It is also clear that M1 and M2
are weakly coupled.
Fig. 8. Bode Diagram of ki gii (s) for i = 1, 2, 3
V. C ONCLUSION
In this paper, the Matlab MIMO Toolbox has been pre-
sented. The software is a user friendly set of algorithms
with the purpose of providing valuable aid for analyzing and
designing controllers for multivariable systems. The analysis
of a challenging case (3 × 3 with two highly cross-coupled
channels) along with a proposed controller design has been
developed. The MMT provides a set of tools which enables the
user to focus on the control design process instead of perform-
ing calculations. In addition, the associated GUI simplifies the
tedious iterative design process. Once the structural robustness
and stability conditions are assessed and the system has been
stabilized, the controller performance can be fine tuned with
the help of the toolbox.
R EFERENCES
[1] T. Kailath, Linear Systems, Prentice-Hall, USA, 1980.
[2] J.M. Maciejowski, Multivariable Feedback Design, Addison-Wesly, Great
Britain, 1989.
Fig. 9. Bode Diagram of C1 and C2 [3] G. Goodwin, S.F. Graebe, and M.E. Salgado, Control System Design,
Prentice-Hall, USA, 2001.
TABLE I [4] M.A. Akbar, W.E. Leithead, J. O’Reilly, and S.S. Robertson, ”Design of
S TRUCTURAL ROBUSTNESS OF THE S YSTEM robust controllers for a 3-input 3-output supersonic aircraft powerplant
using ICD”, Proc. 3rd IEEE Conference on Control Applications, pp95-
99, 1994.
Measure BW[rad/sec] GM [dB] PM [deg]
[5] J. Liceaga-Castro, C. Verde, J. O’Reilly, and W.E. Leithead, ”Helicopter
C1 1.53 28.3 70.9 flight control using individual channel design”, IEE Proc. Control Theory
and Applications, vol. 142, pp58-72, 1995
k1 g11 1.53 30.7 76.2
[6] J. Liceaga, E.Liceaga, and L. Amézquita, ”Multivariable gyroscope
ΓG11 h1 1.31 ∞ 119 control by individual channel design”, Control Systems Society CCA,
C2 0.0963 18.5 78.4 pp 110-115, 2005
[7] E.Liceaga-Castro, J. Liceaga-Castro, ”Submarine depth control by in-
k2 g22 0.0963 ∞ -88.3
dividual channel design”, Proceedings of the 37th IEEE CDC, 3, pp
ΓG11 h2 0.168 ∞ -124 3183-3188, 1998
k3 g33 0.406 16.5 56.4 [8] E.Liceaga-Castro, J.Liceaga-Castro, C. Ugalde-Loo, ”Beyond the Exis-
tence of Diagonal Controllers: from the Relative Gain Array to the
Multivariable Structure Function”, Proc. 44th IEEE CDC-ECC, pp7150-
Table I summarizes the design results which are shown in 7156, 2005
[9] C.Ugalde-Loo, E.Liceaga-Castro, J.Liceaga-Castro, ”2x2 Individual
figure 8 and 9, from which it can be seen that the diagonal con- Channel Design MATLAB Toolbox”, Proc. 44th IEEE CDC-ECC,
troller K will ensure that all three channels in our system are pp7603-7608, 2005
stable, robust and in accordance to the design specifications.
Fig. 10 shows the step response of the controllers in which
it is clear that the type of interaction between the outputs is
in line with the previous analysis. The strong cross-coupling

View publication stats

You might also like