background image

Chapter 6

Pole Place Synthesis

Xmath Interactive Control Design Module

6-2

ni.com

Figure 6-1.  

Pole Place Synthesis Window

Pole Place Modes

In Pole Place, the user selects either closed-loop poles (in normal mode) or 
2

n

+ 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.

The plant transfer function is given by

P

(

s

) =

n

p

(

s

)/

d

p

(

s

)

Summary of Contents for Xmath Interactive Control Design Module ICDM

Page 1: ...NI MATRIXx TM Xmath TM Interactive Control Design Module Xmath Interactive Control Design Module April 2007 370754C 01...

Page 2: ...3400 Lebanon 961 0 1 33 28 28 Malaysia 1800 887710 Mexico 01 800 010 0793 Netherlands 31 0 348 433 466 New Zealand 0800 553 322 Norway 47 0 66 90 76 60 Poland 48 22 3390150 Portugal 351 210 311 210 Ru...

Page 3: ...ation 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...

Page 4: ...an introduction to a key concept Italic text also denotes text that is a placeholder for a word or value that you must supply monospace Text in this font denotes text or characters that you should en...

Page 5: ...1 Overview of ICDM 2 3 ICDM Windows 2 3 ICDM Main Window 2 4 PID Synthesis Window 2 4 Root Locus Synthesis Window 2 4 Pole Place Synthesis Window 2 4 LQG Synthesis Window 2 5 H Infinity Synthesis Wind...

Page 6: ...Another Plant into ICDM 3 3 Reading a Controller from Xmath into ICDM 3 4 Writing the Plant Back to Xmath 3 4 Writing the Alternate Plant back to Xmath 3 4 Writing a Controller on the History List to...

Page 7: ...Plots 5 8 Chapter 6 Pole Place Synthesis Window Anatomy 6 1 Pole Place Modes 6 2 Normal Mode 6 3 Integral Action Mode 6 4 State Space Interpretation 6 5 Opening the Pole Place Window 6 5 Manipulating...

Page 8: ...ent Controller on the History List 9 1 Opening the History Window 9 1 History Window Anatomy 9 1 Selecting the Active Controller 9 2 Editing the Comments 9 2 Deleting History List Entries 9 3 To Conti...

Page 9: ...MO Version 11 7 Chapter 12 LQG H Infinity Synthesis Window Anatomy 12 1 LQG H Infinity Main Window 12 1 LQG H Infinity Weights Window 12 2 Decay Rate Window 12 5 H Infinity Performance Window 12 5 Fre...

Page 10: ...3 Multi Loop Versus Multivariable Design 13 3 Opening the Multi Loop Synthesis Window 13 7 Designing a Multi Loop Controller 13 7 Graphical Editor 13 7 Selecting and Deselecting Loops 13 7 Editing and...

Page 11: ...dd a new pair of complex poles to the controller In contrast this manual is intended for describing the general concepts and operation of the ICDM Document Organization This manual includes the follow...

Page 12: ...the form of the Alternate Plant window used for SISO design Chapter 11 Introduction to MIMO Design provides an introduction to MIMO design building on the earlier discussions of SISO design ICDM autom...

Page 13: ...discrete A single apostrophe following a matrix variable for example x denotes the transpose of that variable An asterisk following a matrix variable for example A indicates the complex conjugate or...

Page 14: ...ICDM 2 0 operates in two basic modes SISO design single input single output and MIMO design The mode is determined automatically by the plant you read into ICDM The two different modes feature somewha...

Page 15: ...ication you should be ready to get started To start up ICDM enter icdm in the Xmath Command window Your window manager may require you to position a window that is created using the left or middle mou...

Page 16: ...o extract data from this object are an intrinsic part of the object class and are also described Finally this chapter discusses the functions check discretize and makecontinuous which use information...

Page 17: ...he plant order or plant degree Similarly the degree of dc is the controller order or controller degree The poles and zeros of these transfer functions are the zeros roots of the denominator and numera...

Page 18: ...t r is a unit step The actuator step response is the step response of the transfer function C 1 PC which is the transfer function from r to u Integral action means that the controller C has a pole at...

Page 19: ...w can be used to synthesize P PD PI PID lead lag and lag lead controllers The design parameters can be typed in manipulated graphically by slider controls or manipulated graphically on a Bode plot of...

Page 20: ...st the ratio of sensor output noise power to process input noise power and the risk sensitivity or H bound parameter The user can vary the state weighting or equivalently the output weight transfer fu...

Page 21: ...nthesis windows that need to know the plant Pole Place LQG H The alternate plant transfer function is used to verify a controller design that was based on the plant transfer function The alternate pla...

Page 22: ...iewing Plots section Controller Synthesis Window Compatibilities As much as possible ICDM allows you to switch from one synthesis method to another while keeping the current controller the same As an...

Page 23: ...y saved on the history list then the History window opens with the current controller active These restrictions are important when you select a new synthesis window or read a controller from Xmath int...

Page 24: ...transfer function export one or more controllers to Xmath such as for a nonlinear simulation or downloading to an AC 100 for real time testing The most common tasks are interactively designing a cont...

Page 25: ...e ICDM Main window Figure 2 3 shows a simplified schematic representation of the interactive design loop Figure 2 3 Simple Representation of the Interactive Robustness Analysis Figure 2 4 shows a simp...

Page 26: ...es arbitrary re ranging zooming data viewing and interactive graphical re ranging Ranges of Plots and Sliders Every ICDM window has an associated Ranges window that can be used to set the ranges of th...

Page 27: ...onally made small because zooming is easy Data Viewing Plots Pointing at or near plotted information within the ICDM windows and clicking the right mouse button causes a small window to appear that id...

Page 28: ...ew range will be The new range is given by extrapolation of the cursor position You can move the cursor over other plots and even out of the plotting window while increasing the range of a plot If a p...

Page 29: ...hat you grab is complex then the complex conjugate pole or zero will automatically move as required In this case you can drag the pole or zero in any direction Isolated Real Poles and Zeros If the pol...

Page 30: ...ith the cursor farther from the real axis then you will create a pair of complex conjugate zeros Creating a pole is similar typing p in the window is the accelerator for creating a pole or complex con...

Page 31: ...ted you can drag the pole and zero away from each other which results in a smooth change to the transfer function By convention the cursor first grabs the zero in a pole zero pair To delete a pole and...

Page 32: ...which synthesis method to use and to view or analyze the response with the current controller This chapter is limited to the discussion of SISO design For MIMO design information refer to Chapter 11 I...

Page 33: ...r The source is either the currently active synthesis window or the history list A plotting area for the various plots Figure 3 1 ICDM Main Window Communicating with Xmath The File menu is used to com...

Page 34: ...only meant to be used when you are learning how to use ICDM and need a quick way to enter a plant It saves you the trouble of creating a plant in Xmath and then reading it into ICDM It has no real us...

Page 35: ...w is compatible with the current controller that you have just read in the parameters in the synthesis window will be set appropriately If the synthesis window is not compatible with the controller yo...

Page 36: ...fer function Nichols plot of loop transfer function Refer to the Basic SISO Terminology section of Chapter 2 Introduction to SISO Design for definitions of these terms The default plots are loop trans...

Page 37: ...ow The Ranges window also is used to determine the number of points used in the plots ICDM provides two convenient ways to select ranges for the plots The first is to use the Autoscale feature which c...

Page 38: ...ntroduction to SISO Design the plots in the ICDM Main window support another feature plot magnify windows Selecting Plot Plot Magnify or pressing Ctrl M or in the ICDM Main window will cause the curso...

Page 39: ...magnification Click and drag the left mouse button with the cursor in an ICDM plot While holding the left mouse button down you can drag out a box shown in dashed lines when you release the dashed box...

Page 40: ...en and give the user the option of cancelling the request proceeding or writing the current Root Locus controller to the history list before proceeding If the user proceeds then the Root Locus window...

Page 41: ...It consists of the following from top to bottom A menu bar with entries Special Edit View and Help A text area that displays the transfer function of the current PID controller A control panel with f...

Page 42: ...n the overall controller transfer function In this case the slider and the variable edit box are read only you cannot drag the slider and you cannot type in the variable edit box When the button is tu...

Page 43: ...3 Xmath Interactive Control Design Module Figure 4 1 PID Synthesis Window As an example suppose that the P and I toggle buttons are on and the D and HF rolloff buttons are off The controller transfer...

Page 44: ...og box appears and warns the user and offers several alternatives Manipulating the Controller Parameters Each parameter can be changed using the slider variable edit box or graphically To change the s...

Page 45: ...ll cause ICDM to select sensible values for the slider and plot ranges based on the current controller The ranges for the plots also can be changed interactively Refer to the General Plotting Features...

Page 46: ...ted by the derivative term at all so static tracking static actuator effort and so on are not affected by the derivative term You can start by making the Tdiff term small and then gradually increasing...

Page 47: ...the loop transfer function Allows the user to manipulate the controller transfer function graphically by dragging controller poles and zeros or dragging the closed loop poles along the root locus plo...

Page 48: ...are used to show and also to change the controller gain The gain also can be changed graphically by dragging the closed loop poles along the root locus Bottom left The root locus plot The plot shows s...

Page 49: ...ransfer function Thus you can use the Root Locus window to change the zeros poles and gain of a controller originally designed using the LQG window but you then cannot read the controller back into th...

Page 50: ...ontroller poles and zeros are black Plant poles and zeros are red This serves as a mnemonic you can manipulate black but not red poles or zeros On monochrome displays the plant poles and zeros are lig...

Page 51: ...sed loop pole locations as the gain is swept from 0 to and there is an additional phase shift of 20 10 in the loop transfer function None No phase contours are plotted Magnitude Contours 0 dB The plot...

Page 52: ...res Selecting View Auto scale or pressing Ctrl A in the Root Locus window will cause new ranges to be assigned to the slider and plot based on the current controller Manipulating the Parameters The Gr...

Page 53: ...requencies larger than the pole Similarly by dragging the zero away from the origin you will create some lag action that is decrease the loop phase between the zero and pole and increase the gain belo...

Page 54: ...an appropriate pole zero pair On the other hand if the complex number is a poor place for a closed loop pole for example very lightly damped or unstable then the current compensator is not robust sinc...

Page 55: ...Chapter 5 Root Locus Synthesis National Instruments Corporation 5 9 Xmath Interactive Control Design Module Figure 5 3 Root Locus Synthesis Window with the 0 dB Magnitude Contour...

Page 56: ...forced Integral action mode The Pole Place Synthesis window cannot be used to design MIMO controllers Window Anatomy The Pole Place window is shown in Figure 6 1 From top to bottom it consists of A me...

Page 57: ...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 des...

Page 58: ...of the controller is fixed and equal to n the order of the plant so there are a total of 2n closed loop poles In this case the 2n degrees of freedom in the closed loop poles exactly determine the cont...

Page 59: ...n the closed loop poles along with the constraint that the controller must have at least one pole at s 0 exactly determine the controller transfer function In fact the closed loop poles give a complet...

Page 60: ...loop poles in a design that was originally LQG or H In this case you cannot read the resulting controller back into the LQG or window since the controller no longer has this special form Manipulating...

Page 61: ...the General Plotting Features section of Chapter 2 Introduction to SISO Design Slider and Plot Ranges To change the ranges of the Frequency Scaling slider or the plot of closed loop poles select View...

Page 62: ...H Infinity Synthesis LQG Synthesis Window Anatomy The LQG Synthesis window is shown in Figure 7 1 From top to bottom it contains A menu bar with entries Special Edit View and Help A message area that...

Page 63: ...ontrol 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 pole...

Page 64: ...l action The Decay Rate toggle button controls exponential time weighting The Weight Zero Edit toggle button enables and disables output weight editing Opening the LQG Synthesis Window The LQG window...

Page 65: ...utput weight transfer function The noises wproc and wsens are white that is they have constant power spectral densities PSDs The parameter is the ratio of the PSD of wsens to the PSD of wproc Figure 7...

Page 66: ...arameter Tint gives the time scale over which the effects of the integral action will take place Exponential Time Weighting When this feature is enabled the plant is first changed to P s a where a is...

Page 67: ...unction Its numerator can be manipulated by the user The lower left plot shows the poles and zeros of the weight transfer function W When Weight Zero Edit is enabled the user can grab and drag the zer...

Page 68: ...ng the sliders or variable edit boxes provided the associated toggle button is on If the toggle button is off then the slider and variable edit box are insensitive you cannot drag the slider handle an...

Page 69: ...if you type a new value which is outside the current range into the corresponding variable edit box The plot also can be re ranged interactively by grabbing and dragging the plot axes refer to the In...

Page 70: ...l for changing the three design parameters H performance level Control cost parameter Sensor noise parameter These parameters are described in greater detail later in this chapter A control panel used...

Page 71: ...Chapter 8 H Infinity Synthesis Xmath Interactive Control Design Module 8 2 ni com Figure 8 1 H Infinity Synthesis Window...

Page 72: ...e current controller with the controller The H window remembers its parameter settings When it is opened the parameters will be exactly as they were when the window was last closed or they will be set...

Page 73: ...he noises w1 and w2 to the signals z1 and z2 H is given by the following equation The entries of the closed loop transfer matrix can be interpreted as the normalized transfer functions from the proces...

Page 74: ...py of H is very nearly the same as the LQG cost with the same parameters and so the H controller will be nearly the same as the LQG controller with the same values of and Output Weight Editing When We...

Page 75: ...f the weight transfer function W on the plot labeled Weight Poles Zeros Refer to the Graphically Manipulating Poles and Zeros section of Chapter 2 Introduction to SISO Design for a general discussion...

Page 76: ...nged automatically if you type a new value which is outside the current range in the corresponding variable edit box The plot also can be re ranged interactively by grabbing and dragging the plot axes...

Page 77: ...will be prompted for a comment that is saved along with the design Opening the History Window To make the History window appear select Synthesis History Window in the ICDM Main window This will close...

Page 78: ...r 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...

Page 79: ...lect a design on the history list and then click the Synthesis button at the bottom of the History window This does two things first it makes that entry active that is the current controller and secon...

Page 80: ...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 desig...

Page 81: ...ifically by turning on the Alternate Plant display refer to the Displaying the Alternate Plant Responses section the plots in the ICDM Main Window will show the alternate plant connected with the curr...

Page 82: ...toggle button that is used to display the plant poles and zeros in the plot refer to Figure 10 1 Two toggle buttons that select DC or high frequency normalization refer to Figure 10 1 A slider and var...

Page 83: ...he Alternate Plant Window When the Alternate Plant window is first opened the alternate plant is initialized to the plant transfer function This is convenient because in most cases the alternate plant...

Page 84: ...alternate plant to have either poles or zeros at s 0 you must use high frequency normalization Notice that with DC normalization the gain is exactly the DC gain of the alternate plant that is K Palt 0...

Page 85: ...affects at high frequencies but does not change the DC gain This is appropriate when the plant variations and modeling errors are more pronounced at high frequencies Adding Unmodeled Dynamics Starting...

Page 86: ...will be changed automatically if you type a new value which is outside the current range into the variable edit box The plot can also be re ranged interactively by grabbing and dragging the plot axes...

Page 87: ...terminology and notation used to refer to MIMO systems in ICDM for analysis and plotting The LQG H Synthesis window uses additional terminology described in Chapter 12 LQG H Infinity Synthesis Feedba...

Page 88: ...and signals used in ICDM for MIMO design All of the signals are vectors Figure 11 1 Standard Feedback Connections and Signals for MIMO Design Transfer Functions In ICDM the plant and controller trans...

Page 89: ...function from r to u and so is related to the actuator effort required For example its step response matrix shows the closed loop step responses from each reference input signal to each actuator signa...

Page 90: ...he constant matrix is nonsingular for example R0 I Then you have T 0 I so that you have perfect asymptotic decoupling and tracking of constant reference inputs You also have perfect asymptotic rejecti...

Page 91: ...t window Some of windows used for SISO design are not available in MIMO design mode for example PID Root Locus and Pole Place Synthesis Some others are very similar or even the same for example the Ma...

Page 92: ...u bar This plot will display MIMO responses in a matrix format where each element of the transfer function is displayed individually in one element of the plot matrix Figure 11 4 Figure 11 4 shows the...

Page 93: ...SISO and MIMO modes Alternate Plant Window MIMO Version The MIMO version of the alternate plant window differs from the SISO version For a MIMO plant there are many parameters that the user might want...

Page 94: ...lternate 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 a...

Page 95: ...thesis window consists of a main window and four auxiliary windows for editing constant weights frequency dependent weight functions decay rate and performance level LQG H Infinity Main Window The LQG...

Page 96: ...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 Fr...

Page 97: ...ng in each row A toggle button to include the input in the set of control inputs A toggle button to include the input in the set of costed inputs labeled with the signal name A slider defining the con...

Page 98: ...f type matrix of the form containing the weights on states and inputs including cross terms The control weight parameter in the main LQG H window is related to the weights in this window by u y If the...

Page 99: ...consists of A menu bar with entries Special Edit View and Help A plotting area that contains two plots A plot of controller poles and a vertical line indicating the decay rate A plot of estimator pol...

Page 100: ...Frequency Weights Window The Frequency Weights window is shown in Figure 12 5 From top to bottom it consists of A menu bar with entries Special Edit View and Help A plot area with two plots A plot tha...

Page 101: ...ion Exponential time weighting guaranteed decay rate This feature is only enabled in the case of LQG design Input and output weight editing In the Main window the synthesis mode is reported in the tex...

Page 102: ...ill be exactly as they were when the LQG H window was last closed or set to default values if the LQG H window has not been opened in this ICDM session Setup and Terminology The input and output signa...

Page 103: ...uts yI The disturbance input vector w consists of the following General LQG state disturbances wx General LQG output disturbances wy Input referred disturbances or process noise wp Measurement or sens...

Page 104: ...of the set of plant outputs as measurements Similarly act selects a subset of the plant inputs as control inputs These subsets are determined by the toggle buttons in the weights window These allow t...

Page 105: ...and output variance where E denotes expectation Integral Action When Integral action is enabled the controller minimizes a variation on the LQG cost where Plant P Output filter Fy Input filter Fu Int...

Page 106: ...troller for this destabilized plant is computed Finally the poles and zeros of this controller are shifted left by the Decay Rate parameter a One effect of this shifting is that the closed loop poles...

Page 107: ...ces w actuators uact sensors y and weighted outputs z Sensors and actuators are disabled enabled using the leftmost column of toggle buttons in the Weights window This is useful for situations where y...

Page 108: ...r problem If a smaller number of actuators have been selected than there are sensors setpoint tracking cannot be expected in case the integrator toggle button has been enabled H Infinity Solution The...

Page 109: ...ave zeros on the imaginary axis If that is the case an error message is reported in a window When the H performance level is large the H controller is approximately the same as the LQG controller By r...

Page 110: ...insensitive you cannot drag the slider handle and you cannot type into the variable edit box When the toggle buttons are turned On again the parameters are restored to their previous or default value...

Page 111: ...anged automatically if the user types a new value which is outside the current range into the corresponding variable edit box The plot also can be re ranged interactively by grabbing and dragging the...

Page 112: ...complex multivariable plants Multi Loop Window Anatomy The Multi Loop Synthesis window is shown in Figure 13 1 From top to bottom it consists of A menu bar with entries Special Edit and Help A plot a...

Page 113: ...com Figure 13 1 Multi Loop Main Window 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...

Page 114: ...his section describes the setup and synthesis method for multi loop synthesis Multi Loop Versus Multivariable Design In most multivariable control design methods such as synthesis no specific assumpti...

Page 115: ...case of a plant with two actuators and three sensors in Figure 13 3 This figure shows standard feedback connection with scalar signals shown for a plant with three sensors outputs and two actuators i...

Page 116: ...ulti Loop Synthesis National Instruments Corporation 13 5 Xmath Interactive Control Design Module Figure 13 4 Multi Loop Configuration with 3 Sensor and 2 Actuator Plant y1 C 1 P u1 r1 r2 r3 u2 y2 y3...

Page 117: ...2 In multiloop design you can alternate between designing each of the SISO controller transfer functions with the other fixed Figure 13 5 shows an example multiloop configuration for the 3 sensor 2 ac...

Page 118: ...section describes the multi loop controller including the graphical editor how to manage loops and loop gain magnitude and phase Graphical Editor The graphical editor consists of two columns of square...

Page 119: ...is impossible to do any kind of manipulation in the Multi Loop window Only after the SISO window is closed the Multi Loop window will become active again It is therefore not possible for instance to...

Page 120: ...erent from using a toolbox that has a traditional command line user interface To see a menu of Programmable GUI examples enter guidemo from the Xmath command area This displays the menu of GUI demos s...

Page 121: ...what it does It may be helpful to read the rest of this appendix before or while you try the demos You can exit a demo by selecting the Special Exit option Interacting with a GUI Application This sect...

Page 122: ...on to be performed Radio buttons diamond shaped are a group of buttons that have radio behavior which means that at most one can be on at any time Like the station selection buttons on a radio selecti...

Page 123: ...mouse button augments rather than replaces the existing selections This allows discontiguous ranges of items to be selected This type of list is used in the history sorting and history column dialogs...

Page 124: ...button for example the 12 button Figure A 3 PGUI Example Dialog after Pressing the 12 Button GUI windows might contain sliders which resemble linear potentiometers and whose values are changed by a l...

Page 125: ...tton anywhere in the plot creates a box containing a magnification of a small area of the plot centered at the cursor The middle mouse button can be held down and dragged which creates an effect simil...

Page 126: ...ake sure every question receives an answer For information about other technical support options in your area visit ni com services or contact your local office at ni com contact Training and Certific...

Page 127: ...11 2 complementary loop transfer function 11 4 Control cost parameter 7 4 8 1 12 1 control eigenvalues 6 5 controller current 3 2 degree 2 2 denominator 2 2 numerator 2 2 order 2 2 transfer function...

Page 128: ...KnowledgeBase B 1 L LEQG controllers 2 5 linear exponential quadratic Gaussian LEQG controllers 8 1 loop gain 2 2 transfer function 2 2 11 4 LQG synthesis window 2 5 window 2 8 LTR design 2 5 M MATRI...

Page 129: ...ivity transfer function 2 2 11 3 sensor noise 12 9 noise parameter 7 1 7 5 8 1 12 1 signal 2 2 11 1 signal 2 2 error 2 2 Simple ICDM Session 2 11 SISO 1 4 software NI resources B 1 step response 2 3 p...

Reviews: