Foreword |
|
xiii | |
Preface |
|
xv | |
About the Authors |
|
xix | |
Chapter 1 Mathematical Modeling |
|
1 | (28) |
|
|
1 | (3) |
|
1.1.1 Importance of Models |
|
|
1 | (3) |
|
1.2 Derivation of A Mathematical Model |
|
|
4 | (6) |
|
|
10 | (9) |
|
1.4 First Look at Discrete-Time Systems |
|
|
19 | (3) |
|
1.4.1 Inherently Discrete-Time Systems |
|
|
19 | (3) |
|
1.5 Case Study: Population Dynamics (Single Species) |
|
|
22 | (7) |
Chapter 2 Continuous-Time Systems |
|
29 | (62) |
|
|
29 | (1) |
|
|
29 | (7) |
|
2.2.1 Step Response of First-Order Systems |
|
|
30 | (6) |
|
|
36 | (9) |
|
2.3.1 Conversion of Two First-Order Equations to a Second-Order Model |
|
|
41 | (4) |
|
|
45 | (9) |
|
2.4.1 Systems of Equations |
|
|
51 | (3) |
|
|
54 | (3) |
|
|
57 | (9) |
|
2.6.1 Conversion from Linear State Variable Form to Single Input-Single Output Form |
|
|
62 | (1) |
|
2.6.2 General Solution of the State Equations |
|
|
63 | (3) |
|
|
66 | (19) |
|
|
68 | (3) |
|
2.7.2 Dead Zone and Saturation |
|
|
71 | (1) |
|
|
72 | (1) |
|
|
72 | (4) |
|
|
76 | (1) |
|
2.7.6 Sustained Oscillations and Limit Cycles |
|
|
77 | (8) |
|
2.8 Case Study: Submarine Depth Control System |
|
|
85 | (6) |
Chapter 3 Elementary Numerical Integration |
|
91 | (64) |
|
|
91 | (1) |
|
3.2 Discrete-Time System Approximation of a Continuous First-Order System |
|
|
92 | (6) |
|
|
98 | (6) |
|
3.3.1 Explicit Euler Integration |
|
|
99 | (1) |
|
3.3.2 Implicit Euler Integration |
|
|
100 | (4) |
|
3.4 Trapezoidal Integration |
|
|
104 | (8) |
|
3.5 Discrete Approximation of Nonlinear First-Order Systems |
|
|
112 | (4) |
|
3.6 Discrete State Equations |
|
|
116 | (11) |
|
3.7 Improvements to Euler Integration |
|
|
127 | (19) |
|
3.7.1 Improved Euler Integration |
|
|
127 | (4) |
|
3.7.2 Modified Euler Integration |
|
|
131 | (1) |
|
3.7.3 Discrete-Time System Matrices |
|
|
132 | (14) |
|
3.8 Case Study: Vertical Ascent of a Diver |
|
|
146 | (9) |
Chapter 4 Linear Systems Analysis |
|
155 | (194) |
|
|
155 | (1) |
|
|
155 | (18) |
|
4.2.1 Properties of the Laplace Transform |
|
|
156 | (7) |
|
4.2.2 Inverse Laplace Transform |
|
|
163 | (1) |
|
4.2.3 Laplace Transform of the System Response |
|
|
164 | (2) |
|
4.2.4 Partial Fraction Expansion |
|
|
166 | (7) |
|
|
173 | (21) |
|
|
173 | (1) |
|
4.3.2 Relationship between Unit Step Function and Unit Impulse Function |
|
|
173 | (2) |
|
|
175 | (4) |
|
4.3.4 Relationship between Impulse Response and Transfer Function |
|
|
179 | (3) |
|
4.3.5 Systems with Multiple Inputs and Outputs |
|
|
182 | (8) |
|
4.3.6 Transformation from State Variable Model to Transfer Function |
|
|
190 | (4) |
|
4.4 Stability of Linear Time Invariant Continuous-Time Systems |
|
|
194 | (12) |
|
4.4.1 Characteristic Polynomial |
|
|
195 | (5) |
|
4.4.2 Feedback Control System |
|
|
200 | (6) |
|
4.5 Frequency Response of LTI Continuous-Time Systems |
|
|
206 | (16) |
|
4.5.1 Stability of Linear Feedback Control Systems Based on Frequency Response |
|
|
216 | (6) |
|
|
222 | (20) |
|
4.6.1 Discrete-Time Impulse Function |
|
|
226 | (6) |
|
4.6.2 Inverse z-Transform |
|
|
232 | (1) |
|
4.6.3 Partial Fraction Expansion |
|
|
233 | (9) |
|
4.7 z-Domain Transfer Function |
|
|
242 | (25) |
|
4.7.1 Nonzero Initial Conditions |
|
|
243 | (2) |
|
4.7.2 Approximating Continuous-Time System Transfer Functions |
|
|
245 | (5) |
|
4.7.3 Simulation Diagrams and State Variables |
|
|
250 | (6) |
|
4.7.4 Solution of Linear Discrete-Time State Equations |
|
|
256 | (5) |
|
4.7.5 Weighting Sequence (Impulse Response Function) |
|
|
261 | (6) |
|
4.8 Stability of LTI Discrete-Time Systems |
|
|
267 | (13) |
|
4.8.1 Complex Poles of H(z) |
|
|
271 | (9) |
|
4.9 Frequency Response of Discrete-Time Systems |
|
|
280 | (20) |
|
4.9.1 Steady-State Sinusoidal Response |
|
|
280 | (2) |
|
4.9.2 Properties of the Discrete-Time Frequency Response Function |
|
|
282 | (5) |
|
|
287 | (6) |
|
|
293 | (7) |
|
4.10 Control System Toolbox |
|
|
300 | (19) |
|
4.10.1 Transfer Function Models |
|
|
301 | (1) |
|
4.10.2 State-Space Models |
|
|
302 | (1) |
|
4.10.3 State-Space/Transfer Function Conversion |
|
|
303 | (2) |
|
4.10.4 System Interconnections |
|
|
305 | (2) |
|
|
307 | (2) |
|
4.10.6 Continuous-/Discrete-Time System Conversion |
|
|
309 | (2) |
|
4.10.7 Frequency Response |
|
|
311 | (2) |
|
|
313 | (6) |
|
4.11 Case Study: Longitudinal Control of an Aircraft |
|
|
319 | (19) |
|
4.11.1 Digital Simulation of Aircraft Longitudinal Dynamics |
|
|
333 | (2) |
|
4.11.2 Simulation of State Variable Model |
|
|
335 | (3) |
|
4.12 Case Study: Notch Filter for Electrocardiograph Waveform |
|
|
338 | (11) |
|
4.12.1 Multinotch Filters |
|
|
339 | (10) |
Chapter 5 Simulink® |
|
349 | (126) |
|
|
349 | (1) |
|
5.2 Building a Simulink Model |
|
|
349 | (8) |
|
5.2.1 The Simulink Library |
|
|
349 | (4) |
|
5.2.2 Running a Simulink Model |
|
|
353 | (4) |
|
5.3 Simulation of Linear Systems |
|
|
357 | (14) |
|
|
357 | (6) |
|
|
363 | (8) |
|
|
371 | (9) |
|
5.4.1 Eliminating Algebraic Loops |
|
|
373 | (2) |
|
5.4.2 Algebraic Equations |
|
|
375 | (5) |
|
|
380 | (14) |
|
|
385 | (1) |
|
|
386 | (1) |
|
5.5.3 Dead Zone and Saturation |
|
|
387 | (2) |
|
|
389 | (1) |
|
|
389 | (2) |
|
|
391 | (3) |
|
|
394 | (8) |
|
|
395 | (1) |
|
5.6.2 Car-Following Subsystem |
|
|
396 | (2) |
|
5.6.3 Subsystem Using Fcn Blocks |
|
|
398 | (4) |
|
5.7 Discrete-Time Systems |
|
|
402 | (20) |
|
5.7.1 Simulation of an Inherently Discrete-Time System |
|
|
403 | (3) |
|
5.7.2 Discrete-Time Integrator |
|
|
406 | (3) |
|
5.7.3 Centralized Integration |
|
|
409 | (3) |
|
|
412 | (2) |
|
5.7.5 Discrete-Time Transfer Function |
|
|
414 | (8) |
|
5.8 MATLAB and Simulink Interface |
|
|
422 | (9) |
|
5.9 Hybrid Systems: Continuous- and Discrete-Time Components |
|
|
431 | (4) |
|
5.10 Monte Carlo Simulation |
|
|
435 | (13) |
|
5.10.1 Monte Carlo Simulation Requiring Solution of a Mathematical Model |
|
|
439 | (9) |
|
5.11 Case Study: Pilot Ejection |
|
|
448 | (5) |
|
5.12 Case Study: Kalman Filtering |
|
|
453 | (16) |
|
5.12.1 Continuous-Time Kalman Filter |
|
|
453 | (1) |
|
5.12.2 Steady-State Kalman Filter |
|
|
454 | (1) |
|
5.12.3 Discrete-Time Kalman Filter |
|
|
454 | (1) |
|
5.12.4 Simulink Simulations |
|
|
455 | (13) |
|
|
468 | (1) |
|
5.13 Case Study: Cascaded Tanks with Flow Logic Control |
|
|
469 | (6) |
Chapter 6 Intermediate Numerical Integration |
|
475 | (106) |
|
|
475 | (1) |
|
6.2 Runge-Kutta (RK) (One-Step Methods) |
|
|
475 | (25) |
|
6.2.1 Taylor Series Method |
|
|
476 | (1) |
|
6.2.2 Second-Order Runge-Kutta Method |
|
|
477 | (2) |
|
|
479 | (5) |
|
6.2.4 High-Order Runge-Kutta Methods |
|
|
484 | (2) |
|
6.2.5 Linear Systems: Approximate Solutions Using RK Integration |
|
|
486 | (2) |
|
6.2.6 Continuous-Time Models with Polynomial Solutions |
|
|
488 | (2) |
|
6.2.7 Higher-Order Systems |
|
|
490 | (10) |
|
|
500 | (12) |
|
6.3.1 Repeated RK with Interval Halving |
|
|
500 | (5) |
|
6.3.2 Constant Step Size (T = 1 min) |
|
|
505 | (1) |
|
6.3.3 Adaptive Step Size (Initial T = 1 min) |
|
|
505 | (1) |
|
|
505 | (7) |
|
|
512 | (11) |
|
|
513 | (2) |
|
|
515 | (3) |
|
6.4.3 Predictor-Corrector Methods |
|
|
518 | (5) |
|
|
523 | (23) |
|
6.5.1 Stiffness Property in First-Order System |
|
|
524 | (2) |
|
6.5.2 Stiff Second-Order System |
|
|
526 | (3) |
|
6.5.3 Approximating Stiff Systems with Lower-Order Nonstiff System Models |
|
|
529 | (17) |
|
6.6 Lumped Parameter Approximation of Distributed Parameter Systems |
|
|
546 | (9) |
|
6.6.1 Nonlinear Distributed Parameter System |
|
|
550 | (5) |
|
6.7 Systems with Discontinuities |
|
|
555 | (18) |
|
6.7.1 Physical Properties and Constant Forces Acting on the Pendulum Bob |
|
|
563 | (10) |
|
6.8 Case Study: Spread of an Epidemic |
|
|
573 | (8) |
Chapter 7 Simulation Tools |
|
581 | (102) |
|
|
581 | (1) |
|
|
582 | (14) |
|
|
584 | (2) |
|
7.2.2 Equilibrium Point for a Nonautonomous System |
|
|
586 | (10) |
|
7.3 Optimization of Simulink Models |
|
|
596 | (34) |
|
|
605 | (2) |
|
7.3.2 Optimizing Multiparameter Objective Functions Requiring Simulink Models |
|
|
607 | (3) |
|
7.3.3 Parameter Identification |
|
|
610 | (1) |
|
7.3.4 Example of a Simple Gradient Search |
|
|
611 | (9) |
|
7.3.5 Optimization of Simulink Discrete Time System Models |
|
|
620 | (10) |
|
|
630 | (29) |
|
7.4.1 Deviation Variables |
|
|
631 | (8) |
|
7.4.2 Linearization of Nonlinear Systems in State Variable Form |
|
|
639 | (4) |
|
|
643 | (5) |
|
7.4.4 Multiple Linearized Models for a Single System |
|
|
648 | (11) |
|
7.5 Adding Blocks to The Simulink Library Browser |
|
|
659 | (6) |
|
|
659 | (6) |
|
|
665 | (1) |
|
7.6 Simulation Acceleration |
|
|
665 | (3) |
|
|
665 | (2) |
|
|
667 | (1) |
|
|
668 | (1) |
|
|
668 | (9) |
|
|
668 | (1) |
|
7.7.2 Modeling Rare Events |
|
|
668 | (1) |
|
7.7.3 Measurement of Portfolio Risk |
|
|
669 | (4) |
|
7.7.4 Exposing Black Swans |
|
|
673 | (3) |
|
7.7.4.1 Percent Point Functions (PPFs) |
|
|
673 | (1) |
|
7.7.4.2 Stochastic Optimization |
|
|
673 | (3) |
|
|
676 | (1) |
|
|
676 | (1) |
|
|
676 | (1) |
|
7.7.8 Appendix-Mathematical Properties of the Log-Stable Distribution |
|
|
676 | (1) |
|
|
677 | (6) |
|
|
677 | (1) |
|
7.8.2 Standard Specification |
|
|
677 | (1) |
|
|
678 | (1) |
|
|
678 | (1) |
|
7.8.5 SIPs/SLURPs and MATLAB |
|
|
679 | (1) |
|
|
680 | (1) |
|
|
681 | (1) |
|
|
682 | (1) |
Chapter 8 Advanced Numerical Integration |
|
683 | (134) |
|
|
683 | (1) |
|
8.2 Dynamic Errors (Characteristic Roots, Transfer Function) |
|
|
683 | (31) |
|
8.2.1 Discrete-Time Systems and the Equivalent Continuous-Time Systems |
|
|
684 | (3) |
|
8.2.2 Characteristic Root Errors |
|
|
687 | (10) |
|
8.2.3 Transfer Function Errors |
|
|
697 | (7) |
|
8.2.4 Asymptotic Formulas for Multistep Integration Methods |
|
|
704 | (4) |
|
8.2.5 Simulation of Linear System with Transfer Function H(s) |
|
|
708 | (6) |
|
8.3 Stability of Numerical Integrators |
|
|
714 | (24) |
|
8.3.1 Adams-Bashforth Numerical Integrators |
|
|
714 | (8) |
|
8.3.2 Implicit Integrators |
|
|
722 | (4) |
|
8.3.3 Runga-Kutta (RK) Integration |
|
|
726 | (12) |
|
8.4 Multirate Integration |
|
|
738 | (28) |
|
8.4.1 Procedure for Updating Slow and Fast States: Master/Slave = RK-4/RK-4 |
|
|
742 | (1) |
|
8.4.2 Selection of Step Size Based on Stability |
|
|
743 | (2) |
|
8.4.3 Selection of Step Size Based on Dynamic Accuracy |
|
|
745 | (3) |
|
8.4.4 Analytical Solution for State Variables |
|
|
748 | (2) |
|
8.4.5 Multirate Integration of Aircraft Pitch Control System |
|
|
750 | (3) |
|
8.4.6 Nonlinear Dual Speed Second-Order System |
|
|
753 | (7) |
|
8.4.7 Multirate Simulation of Two-Tank System |
|
|
760 | (3) |
|
8.4.8 Simulation Trade-Offs with Multirate Integration |
|
|
763 | (3) |
|
|
766 | (24) |
|
8.5.1 Numerical Integration Methods Compatible with Real-Time Operation |
|
|
769 | (1) |
|
8.5.2 RK-1 (Explicit Euler) |
|
|
770 | (1) |
|
8.5.3 RK-2 (Improved Euler) |
|
|
771 | (1) |
|
8.5.4 RK-2 (Modified Euler) |
|
|
771 | (1) |
|
8.5.5 RK-3 (Real-Time Incompatible) |
|
|
771 | (1) |
|
8.5.6 RK-3 (Real-Time Compatible) |
|
|
772 | (1) |
|
8.5.7 RK-4 (Real-Time Incompatible) |
|
|
772 | (1) |
|
8.5.8 Multistep Integration Methods |
|
|
772 | (2) |
|
8.5.9 Stability of Real-Time Predictor-Corrector Method |
|
|
774 | (2) |
|
8.5.10 Extrapolation of Real-Time Inputs |
|
|
776 | (7) |
|
8.5.11 Alternate Approach to Real-Time Compatibility: Input Delay |
|
|
783 | (7) |
|
8.6 Additional Methods of Approximating Continuous-Time System Models |
|
|
790 | (13) |
|
8.6.1 Sampling and Signal Reconstruction |
|
|
790 | (6) |
|
8.6.2 First-Order Hold Signal Reconstruction |
|
|
796 | (1) |
|
8.6.3 Matched Pole-Zero Method |
|
|
796 | (3) |
|
8.6.4 Bilinear Transform with Prewarping |
|
|
799 | (4) |
|
8.7 Case Study: Lego Mindstorms™ NXT |
|
|
803 | (14) |
|
|
803 | (2) |
|
8.7.2 Requirements and Installation |
|
|
805 | (1) |
|
|
806 | (4) |
|
|
810 | (5) |
|
|
815 | (2) |
References |
|
817 | (4) |
Index |
|
821 | |