Instruments Corporation. National Instruments respects the intellectual property of others, and we ask our users to do the same. NI software is protected by copyright and other intellectual property laws. Where NI software may be used to reproduce software or other materials belonging to others, you may use NI software only to reproduce materials that you may reproduce in accordance with the terms of any applicable license or other legal restriction.
Page 4
Conventions The following conventions are used in this manual: » The » symbol leads you through nested menu items and dialog box options to a final action. The sequence File»Page Setup»Options directs you to pull down the File menu, select the Page Setup item, and select Options from the last dialog box.
Page 6
Contents Graphically Manipulating Poles and Zeros... 2-13 Editing Poles and Zeros ... 2-13 Editing Poles and Zeros Graphically ... 2-14 Complex Poles and Zeros ... 2-14 Isolated Real Poles and Zeros... 2-14 Nonisolated Real Poles and Zeros and Almost Real Pairs ... 2-14 Adding/Deleting Poles and Zeros...
Page 12
Chapter 1 Introduction • • • • • • • • • • Xmath Interactive Control Design Module Chapter 5, Root Locus Synthesis, describes the user interface, terminology, and parameters used for root locus synthesis. Chapter 6, Pole Place Synthesis, discusses the Pole Place synthesis window, which is used to design a SISO controller by assigning the closed-loop poles.
Chapter 1 Introduction MATRIXx Help Interactive Control Design Module function reference information is available in the MATRIXx Help. The MATRIXx Help includes all Interactive Control Design functions. Each topic explains a function’s inputs, outputs, and keywords in detail. Refer to Chapter 2, MATRIXx Publications, Help, and Customer Support, of the MATRIXx Getting Started Guide for complete instructions on using the MATRIXx Help feature.
Page 17
Chapter 2 Introduction to SISO Design The equations describing this system are as follows: where In ICDM, the plant and controller transfer function are required to be rational, that is, the ratio of two polynomials: where n plant denominator, controller numerator, and controller denominator, respectively.
Chapter 2 Introduction to SISO Design These are briefly described in the following sections, and in more detail in later chapters. Several of these windows have different forms for SISO and MIMO design. This chapter restricts the discussion to the SISO forms. Refer to Chapter 11, MIMO forms.
Chapter 2 Introduction to SISO Design The plant and the alternate plant have very different uses in ICDM, and therefore different data flow characteristics. The plant transfer function is read from Xmath into the ICDM Main window, and is then exported to the synthesis windows that need it—Pole Place, LQG, and H .
Page 23
Chapter 2 Introduction to SISO Design • • • • These restrictions are important when you select a new synthesis window or read a controller from Xmath into ICDM. If the controller is not compatible with the synthesis window, the user is warned and given several options about how to proceed.
Page 25
Chapter 2 Introduction to SISO Design Figure 2-3 shows a simplified schematic representation of the interactive robustness analysis loop. Here, the user interacts with the Alternate Plant window, interactively changing the alternate plant transfer function P which is automatically exported to the ICDM Main window for analysis and display.
Chapter 2 Introduction to SISO Design window has an autoscale feature, which can be invoked by selecting Autoscale on the View or Plot menu of the window. When you invoke Autoscale, ICDM tries to assign some reasonable values to the slider and plot scales.
Chapter 2 Introduction to SISO Design contains variable edit boxes for the value of the pole or zero (the real and imaginary part when the pole or zero is complex) and, if appropriate, its multiplicity. After you enter new values, you can select OK, which will make the changes and dismiss the dialog box, or Cancel, which will dismiss the dialog box without making the changes.
Page 31
Chapter 2 Introduction to SISO Design To add a pole-zero pair, click the Add Pair button, select the Add Pair entry on the Edit menu, or press <Ctrl-P> in the window. As with poles and zeros, the pole-zero pair you create will be either real or a complex conjugate pair, depending on how close the cursor is to the real axis when you click the left mouse button.
Chapter 3 ICDM Main Window • • Communicating with Xmath The File menu is used to communicate with Xmath—that is, to read controllers and/or plants from Xmath into ICDM, and to write controllers and/or plants from ICDM back to Xmath. Xmath Interactive Control Design Module A line that identifies the type and source of the current controller.
Chapter 3 ICDM Main Window to a simple transfer function representation, which means that you cannot read them back into the Pole Place, LQG, or synthesis windows because these types depend on the plant. Also, all synthesis windows will be reset to their initial (default) settings.
Chapter 3 ICDM Main Window In the ICDM Main window, the Plot Choices dialog box is used to select any combination of the eight plots. This dialog box is modal so you cannot interact with any other Xmath window until you dismiss it. Ranges of Plots The ranges for the plots can be set in the Ranges window, shown in Figure 3-3.
Page 39
Chapter 3 ICDM Main Window of Plots it will replace the current plot in the plot magnify window. The Plot Magnify window is a separate window that shows one of the ICDM main plots. The Plot Magnify window, shown in Figure 3-4, can be independently resized by the window manager.
Chapter 4 PID Synthesis Table 4-1. PID Controller Terms and Parameters (Continued) Term HF rolloff 1 HF rolloff time 1 HF rolloff 2 HF rolloff time 2 Toggling Controller Terms On and Off For each parameter, the toggle button at the left of the row is used to toggle the terms on and off.
Chapter 4 PID Synthesis Notice that there are at least two other commonly used forms for a PID control law that differ from the one used in ICDM: ICDM enforces a proper controller transfer function, that is, a finite high frequency gain.
Chapter 4 PID Synthesis Derivative Term Normalization The derivative term is low-frequency normalized, which means that at low frequencies (below 1/T overall controller transfer function at low frequencies. In particular, the loop transfer function at s = 0 is not affected by the derivative term at all, so static tracking, static actuator effort, and so on are not affected by the derivative term.
Page 48
Chapter 5 Root Locus Synthesis The Root Locus Synthesis window consists of, from top to bottom: • • • • Xmath Interactive Control Design Module Figure 5-1. Root Locus Synthesis Window A menu bar with entries Special, Edit, View, and Help. A slider and variable edit box for the gain.
Chapter 5 Root Locus Synthesis Plotting Styles Selecting View»Locus Select or pressing <Ctrl-L> in the Root Locus window produces a dialog box in which the user can choose one of many possible plotting styles. In all cases, the (open-loop) controller and plant poles and zeros are shown on the plot.
Chapter 5 Root Locus Synthesis All of the plots support data viewing: click the right mouse button with the cursor positioned near a pole, zero, or one of the plots. This allows you to find the gain associated with a particular point on a phase contour, for example.
Chapter 5 Root Locus Synthesis Interpreting the Nonstandard Contour Plots The Root Locus window can display phase contours other than the standard 180 as well as various magnitude contour plots. The meaning of these curves is simple: if L(s) = a, then s would be a closed-loop pole if the loop transfer function were multiplied by –1/a at the frequency s.
Chapter 6 Pole Place Synthesis Pole Place Modes In Pole Place, the user selects either closed-loop poles (in normal mode) or 2n + 1 closed-loop poles (in integral action mode). These poles uniquely determine the controller transfer function. This process can be described in terms of the coefficients of the plant and controller numerators and denominators.
Chapter 6 Pole Place Synthesis We can write this polynomial equation as follows: These 2n linear equations are solved to find the 2n controller parameters , ..., x Integral Action Mode The degree (number of poles) of the controller is fixed and equal to n + 1, so there are a total of 2n + 1 closed-loop poles.
Chapter 6 Pole Place Synthesis A circle of radius F circle to change F Butterworth Configuration Click the Butterworth button to move the poles to a Butterworth configuration, preserving F set to Butterworth. Editing the Closed-Loop Poles You can change the closed-loop poles two ways: by editing or by grabbing and dragging them.
Page 63
Chapter 7 LQG Synthesis • • Xmath Interactive Control Design Module Figure 7-1. LQG Synthesis Window A control panel used to graphically edit the output weight transfer function. A plotting area that contains the following plots: – The symmetric root locus plots of the control and estimator closed-loop poles.
Chapter 7 LQG Synthesis Setup and Terminology The different modes are described using the following basic terminology: Figure 7-1 shows a block diagram with the basic setup for LQG synthesis, where The noises w spectral densities (PSDs). The parameter to the PSD of w C(s) Standard LQG (All Toggle Buttons Off) In LQG synthesis mode, the controller minimizes a weighted sum of the...
Chapter 7 LQG Synthesis Output Weight Editing When Weight Zero Edit is enabled, the LQG controller is based on y ˜ integral action, the controller minimizes the quantity: and with integral action, the quantity: where The transfer function W is the output weighting transfer function. When W = 1, this reduces to the standard LQG controller described previously.
Chapter 7 LQG Synthesis Ranges To change the ranges of the sliders or plots, select View»Ranges or enter in the LQG window. The slider ranges also will be changed automatically if you type a new value which is outside the current range into the corresponding variable edit box.
Chapter 8 H-Infinity Synthesis C(s) Figure 8-2 shows a block diagram with the basic setup for H synthesis where closed-loop transfer matrix H relates the two exogenous inputs w and w The design is based on H, the closed-loop transfer matrix relating the noises The entries of the closed-loop transfer matrix can be interpreted as the (normalized) transfer functions from the process and sensor noises to the actuator and output, respectively.
Chapter 8 H-Infinity Synthesis Manipulating the Design Parameters The parameters , , and can be changed using the associated slider or variable edit box. If the user types in a value that is outside the current slider range, the slider range will automatically adjust. The user can change the ranges for the sliders using the Ranges window.
Chapter 9 History Window • • Selecting the Active Controller You can type a number in the Variable-Edit box that shows the selected controller, or you can select a controller in the list (which will become highlighted) and then click Select at the bottom of the History window. Notice that you can consider the History window as a type of synthesis window, with one simple design parameter: the integer that gives the selected design.
Chapter 9 History Window Using the History List The history list can be used in several ways. You can save controllers as “benchmarks” whose performance you want to match with a simpler controller. You also can save any promising designs that you find so you can later use them as the initial conditions for designing.
Chapter 10 Alternate Plant Window Alternate Plant Window Anatomy The Alternate Plant window is shown in Figure 10-1. From top to bottom, it consists of: • • • • • • • Xmath Interactive Control Design Module A menu bar with Special, Edit, and View menus. A toggle button for controlling whether the plots in ICDM main will include the response with the alternate plant.
Chapter 10 Alternate Plant Window Normalization The form of the transfer function of the alternate plant depends on the normalization selected. With high-frequency normalization, the alternate plant transfer function is: where K is the gain (shown in the slider and Variable Edit box), are the zeros, and plant is required to be proper, that is, have at least as many poles as zeros For high-frequency normalization there is no restriction on the poles or...
Chapter 10 Alternate Plant Window Ranges of Sliders and Plot To change the ranges of the Gain slider or the pole zero plot, select View»Ranges or press <Ctrl-R> in the Alternate Plant window. The slider range also will be changed automatically if you type a new value which is outside the current range into the variable edit box.
Chapter 11 Introduction to MIMO Design u denotes the plant input or actuator signal, which is a vector of size n r denotes the reference or command input signal, which is a vector of size n e denotes the error signal, which is a vector of size n P denotes the plant transfer function, which is a matrix of size n C denotes the controller transfer function, which is a matrix of size n Figure 11-1 shows standard feedback connections and signals used in...
Chapter 11 Introduction to MIMO Design Notice that in the SISO case, these “complementary pairs” of transfer functions (obtained by swapping P and C) are the same. It is important to remember that in the MIMO case they can be different; they even have different dimensions if n In addition to these transfer functions you encounter two (complementary) open-loop transfer functions:...
Chapter 11 Introduction to MIMO Design options, the user clicks the Show all options button after which the plot options window shown in Figure 11-3 opens. From this window, all transfer functions mentioned in the selected. MIMO Plot Window For a more detailed MIMO transfer function plot, an option labeled MIMO plot is available under the Main window menu bar.
Page 94
Chapter 11 Introduction to MIMO Design plants. Therefore, the (MIMO) Alternate Plant window looks very much like the History window—the user can read various alternate plants into a list, and select one as the alternate plant. The semantics of the Alternate Plant window are identical in SISO and MIMO versions.
Chapter 12 LQG/H-Infinity Synthesis • • These parameters are described in greater detail later in this chapter. LQG/H-Infinity Weights Window The Weights window is for defining control cost and noise level parameters and is shown in Figure 12-2. From top to bottom, the Weights window consists of: •...
Page 98
Chapter 12 LQG/H-Infinity Synthesis • • • The control weight parameter in the main LQG/H window is related to the weights in this window by If the radio buttons in the first row are set to select the noise level display, the contents of the window looks almost exactly the same.
Chapter 12 LQG/H-Infinity Synthesis Frequency Weights Window The Frequency Weights window is shown in Figure bottom, it consists of: • • Xmath Interactive Control Design Module value. If a lower bound on the minimal value of is known, it also is displayed.
Chapter 12 LQG/H-Infinity Synthesis Opening the LQG/H-Infinity Synthesis Window The LQG/H window can only accept LQG H controllers. If the current controller is of type LQG H (perhaps, from the History window) and the LQG/H window is opened, the current controller is read into the LQG/H window;...
Page 104
Chapter 12 LQG/H-Infinity Synthesis In the block diagram, set of plant outputs as measurements. Similarly, plant inputs as control inputs. These subsets are determined by the toggle buttons in the weights window. These allow the user to quickly investigate the effect of including/excluding sensors and actuators without having to redefine the plant model.
Chapter 12 LQG/H-Infinity Synthesis Penalizing the “running integral” of the plant output forces the power spectral density of the plant output to vanish at zero frequency. In classical control terms, this forces a pole at s = 0 in the loop transfer function, that is, integral control.
Chapter 12 LQG/H-Infinity Synthesis By clicking the button at the bottom of the Weights window, arbitrary weight matrices can be loaded from Xmath. The noise variances and weights selected in this way are simply added to the diagonal weight and noise matrices determined by the push buttons and sliders of the Weights window.
Chapter 12 LQG/H-Infinity Synthesis Manipulating the Design Parameters Main Window The design parameters and can be changed using the associated sliders or the variable edit boxes. If the user types in a value that is outside the current slider range, the slider range will automatically adjust. Notice that the slider positions in the Weights window are simultaneously updated when the and sliders are moved.
Page 113
Chapter 13 Multi-Loop Synthesis After the Multi-Loop window is opened, two plots are added at the bottom of the ICDM Main window for display of the loop gain magnitude and phase of the control loops that will be synthesized with the Multi-Loop method (refer to Figure 13-2).
Page 115
Chapter 13 Multi-Loop Synthesis one loop at a time. The loops that are not closed are considered to have a transfer function equal to zero. During the design phase, the user can modify, delete, disable, or enable controller components of loops that were designed earlier.
Page 117
Chapter 13 Multi-Loop Synthesis Figure 13-4 shows an example multiloop configuration for the 3-sensor, 2-actuator plant. There are two loops: one from sensor 1 to actuator 1, and one from sensor 3 to actuator 2. In multiloop design you can alternate between designing each of the (SISO) controller transfer functions, with the other fixed.
Chapter 13 Multi-Loop Synthesis Editing and Deleting Loops When a loop is highlighted, it can be edited, deleted, disabled, or enabled. Here, “editing” means designing a SISO controller for the selected loop. The editing and deleting options are accessible under the Edit pull-down menu.
Page 121
Appendix A Using an Xmath GUI Tool Each demo has a Help menu in its menu bar, near the upper right side of the window. The Help messages explain how to interact with the demo and what it does. It may be helpful to read the rest of this appendix before (or while) you try the demos.
Page 123
Appendix A Using an Xmath GUI Tool • • • Xmath Interactive Control Design Module A list is a vertical list of items (strings) that can be selected (highlighted). Depending on the application, a list can be configured to allow various types of selection: –...
Page 125
Appendix A Using an Xmath GUI Tool • Xmath Interactive Control Design Module A slider might also appear like a bar graph. Its tip represents the value, but it will be read-only, that is, the user cannot change its value by dragging the handle.
Technical Support and Professional Services Visit the following sections of the National Instruments Web site at ni.com • • • If you searched your local office or NI corporate headquarters. Phone numbers for our worldwide offices are listed at the front of this manual. You also can visit...
Page 128
MIMO LQG/H-Infinity synthesis window, 12-1 Plot window, 11-6 transfer function plot, 11-6 model reduction, 2-7 multi-loop synthesis, 13-1 National Instruments support and services, NI support and services, B-1 noise power, 2-5 nomenclature, 1-3 PID synthesis window, 2-4, 2-7 plant degree, 2-2...
Need help?
Do you have a question about the Xmath Interactive Control Design Module ICDM and is the answer not in the manual?
Questions and answers