Describing Functions for Information Channels Subject to Packet Loss and Quantization MASSACHUSES 1-rN fTE OF TECHNOLOGY by OCT 16 2014 Eric Gilbertson LIBRARIES S.B., Massachusetts Institute of Technology (2008) S.M., Massachusetts Institute of Technology (2010) Submitted to the Department of Mechanical Engineering in partial fulfillment of the requirements for the degree of Doctor of Philosophy at the MASSACHUSETTS INSTITUTE OF TECHNOLOGY September 2014 @ Massachusetts Institute of Technology 2014. All rights reserved. Signature redacted A uthor .............................. ............................... Department of Mechanical Engineering August 1, 2014 Signature redacted ........... Franz S. Hover Finmeccanica Career Development Professor of Engineering Thesis Supervisor Certified by ................. Signature redacted Accepted by..........................David . t David E. Hardt Chairman, Department Committee on Graduate Students 2 Describing Functions for Information Channels Subject to Packet Loss and Quantization by Eric Gilbertson Submitted to the Department of Mechanical Engineering on August 1, 2014, in partial fulfillment of the requirements for the degree of Doctor of Philosophy Abstract Wirelessly connected robotic systems have become widespread in the terrestrial, aerial and underwater environments. Examples include autonomous underwater vehicle (AUV) coordination and navigation, Wide Area Measurement System (WAMS) control of power grids, and automobile networked subsystems control. As one would expect, demand on throughput grows to fill the available channel capacity; in a clean short-range RF setting, entire images may be transferred in each cycle, as part of a vision-based control system, whereas in the ocean, acoustic channels with perhaps twenty bits per second allow only the most basic sensor and command information to be shared regularly. Packet-based wireless communication systems like these that operate near their limits are necessarily quantized, and often prone to loss. These properties directly impact the overall system performance, and thus methodologies for understanding and designing feedback systems with quantization and packet loss are valuable. This thesis makes several contributions to feedback control of systems subject to quantization and stochastic packet loss in the sensor feedback channel. First, we derive and verify describing functions (DFs) for information channels subject to quantization and packet loss. The DFs represent the loss and quantization effects by frequency- and amplitude-dependent gains and phases, similar to transfer functions. These DFs are unique because, unlike most other DFs that describe hardware and physical elements, these describe stochastic information channels. DFs are presented for a general codec algorithm, and for four commonly-used sensor-feedback codecs: Zero-Output, HoldOutput, Linear Filter, and Modified Information Filter. These are each given as closed-form mathematical expressions of the provably optimal gains and phases for each case, with each decoder a specific case of the general codec algorithm. Gains and phases predicted by the models are verified by simulation for open-loop stable, open-loop unstable, minimum phase and nonminimum phase example systems. Second, we show how the DFs can be used as analysis tools to predict limit cycles in dynamic feedback control systems. Computation times using the DFs are shown to be orders of magnitude faster than those from simulation for these calculations. Third, we propose a synthesis method to use the DFs to design a codec for the sensor feedback channel that decreases limit cycle amplitudes induced by quantization and packet 3 loss for a large class of systems. Up to three-fold reductions in limit cycle amplitudes are shown, with the tradeoff being slightly higher system sensitivity to disturbances and slightly higher steady state errors to step inputs. The designed codec is of the special and simple form of a constant times the sent signal if the signal is received and a different constant times the previous decoded signal if the sent signal is lost. This is the equivalent structure and computation complexity to both Zero-Output and Hold-Output decoders. A DF for this decoder allows the constants to be solved for as functions of target limit cycle amplitudes. The constants reduce to solutions of cubic equations, which are guaranteed to have a real root, and thus the codec is physically realizable. The codec allows for multiple limit cycle frequency solutions for the same amplitude solution. The analysis and synthesis tools are verified both by numerical examples, and by a physical experiment controlling heading of a small robotic raft where the designed decoder results in smaller limit cycles than does a linear-filter-based decoder. Thesis Supervisor: Franz S. Hover Title: Finmeccanica Career Development Professor of Engineering 4 Acknowledgments I would first like to thank my advisor Professor Franz Hover and my committee members Professor Hardt and Professor Leonard for all their guidance on the project. Thank you to my labmates Brooks, Chris, Josh, Mei, and Pedro for helping with the kayak experiments in the river, with the raft experiments in the pool, and helping me with questions during lab lunch presentations. Thanks also to my brother Matthew for helping me debug problems, often in talks as we ran around the Charles River or hiked up a mountain. I'm also grateful to the MIT Outing Club for getting me up in the mountains for breaks from schoolwork. This work is supported by the Office of Naval Research, Grant N00014-09-1-0700, the National Science Foundation, Contract CNS-1212597, Chevron Energy Technology Company, and Finmeccanica. 5 6 This doctoral thesis has been examined by a Committee of the Department of Mechanical Engineering as follows: Professor Franz Hover............................................... Chairman, Thesis Committee Associate Professor Professor D ave Hardt................................................ Member, Thesis Committee Professor of Mechanical Engineering .... .............................o . Professor John Leonard ........... Member, Thesis Committee Professor of Mechanical Engineering 8 Contents 1 Introduction 1.1 2 3 23 Motivation and Problem Statement . . . . . . . . . . . . . . . . . . . . . . 23 1.1.1 Underwater Applications . . . . . . . . . . . . . . . . . . . . . . . 24 1.1.2 Terrestrial Applications . . . . . . . . . . . . . . . . . . . . . . . . 26 1.2 Overview and Contributions of the Thesis . . . . . . . . . . . . . . . . . . 27 1.3 Assumptions 1.4 Example Systems Studied. . . . . . . . . . . . . . . . . . . . . . . . . . . 1.5 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 Background 30 33 2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 2.2 Control with Quantization 2.3 Control with Packet Loss . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 2.4 Control with Quantization and Packet Loss 2.5 Limit Cycles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 2.6 Control of Underwater Thrusters . . . . . . . . . . . . . . . . . . . . . . . 39 . . . . . . . . . . . . . . . . . . . . . . . . . . 33 . . . . . . . . . . . . . . . . . 37 2.6.1 Thruster Modeling . . . . . . . . . . . . . . . . . . . . . . . . . . 39 2.6.2 Thruster Control . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 2.7 Synopsis of Literature Review . . . . . . . . . . . . . . . . . . . . . . . . 41 2.8 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. Experiments with Packet-Loss Robust Control 3.1 42 45 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 9 Hardware and Operating Environment . . . . . . . . . . . . 45 3.3 System Model . . . . . . . . . . . . . . . . . . . ... . . 47 3.4 MIF Experimental Setup . . . . . . . . . . . . . . . . . . 48 3.5 Physical Connectivity . . . . . . . . . . . . . . . . . . . . . 48 3.6 Experimental Results . . . . . . . . . . . . . . . . . . . . .. 50 3.7 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . 51 . . 3.2 53 4 Describing Function Derivations Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2 Describing Function for General Multiple Input Multiple Output Informa- . 4.1 . tion Channels Subject to Packet Loss . . . . . . . . . . . 4.3.1 Loss with Zero-Output Estimator (LZ) . . . . . . . . . . . . . . 63 4.3.2 Loss with Hold-Outpu t Estimator (LH) . . . . . . . . . . . . . 65 4.3.3 Loss with LQG-Type Linear Filter Estimator (LF) . . . . . . . 67 4.3.4 Loss with Modified In formation Filter (LM) . . . . . . . . . . . 68 . . . . . 72 . Model Verification Convergence . . . 72 4.4.2 LH Verification . . 73 4.4.3 LF Verification . . 74 4.4.4 LM Verification . . 87 4.4.5 Coupled Losses . . . . . 4.4.1 . . . . . . . . . . . . . . . . . . . . . . . . . 90 . . . .. .. . .. .. . . .. . . . .. . . 92 Quantizer Describing Functio . p . . . . . . . . . . . . . . .. . . . . . Uniform Quantizer . 4.5.1 .... p................. Logarithmic Quantize 93 Combined Quantizer and Enc 95 4.5.2 95 4.6.1 Quantizer and Zero O 4.6.2 Quantizer and Hold 0 4.6.3 Quantizer and Linear Filter . . . . . . . . 97 4.6.4 Quantizer and MIF . . . . . . . . . . . . . 98 . . utput . . . . . . . . . . . . . . . . . . . . . . 4.6 88 .................. .. 4.5 . . . . 62 . 4.4 . . . . . . . . 53 Describing Functions for Spec ific State Estimation Algorithms . . . . . . 4.3 53 10 96 Sum mary . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . 4.7 5 Describing Functions as Analysis Tools . 99 Introduction . . . . . . . . . . . . . . . . . . 101 5.2 Computation Times for Analysis vs Simulation 101 5.3 Bode Plots . . . . . . . . . . . . . . . . . . . 106 5.4 Sensitivity Functions . . . . . . 107 5.5 Limit Cycle Numerical Example 110 5.6 Summary . . . . . . . . . . . 113 6 Describing Functions as Design Tools 117 . . 5.1 . 101 6.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117 6.2 SISO Design Equations . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 6.3 6.4 6.5 6.2.1 System Assumptions . . . . . . . . . . . . . . . . . . . . . . . . . 118 6.2.2 Limit Cycle Criteria . . . . . . . . . . . . . . . . . . . . . . . . . 120 6.2.3 Solving the Nyquist Equations . . . . . . . . . . . . . . . . . . . . 120 6.2.4 Solving for Codec Parameters . . . . . . . . . . . . . . . . . . . . 130 6.2.5 Codec Implementation . . . . . . . . . . . . . . . . . . . . . . . . 131 SISO Design Numerical Example . . . . . . . . . . . . . . . . . . . . . . 132 6.3.1 System with No Loss . . . . . .... . . . . . . . . . . . . . . . . . 133 6.3.2 System with Packet Loss and Quantization . . . . . . . . . . . . . 134 6.3.3 Codec Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 6.3.4 Design Point Side Effects 6.3.5 Final Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145 . . . . . . . . . . . . . . . . . . . . . . 142 MIMO Design Equations . . . . . . . . . . . . . . . . . . . . . . . . . . . 147 6.4.1 Limit Cycle Criteria . . . . . . . . . . . . . . . . . . . . . . . . . 150 6.4.2 Solving The Nyquist Equation . . . . . . . . . . . . . . . . . . . . 151 6.4.3 Codec Implementation . . . . . . . . . . . . . . . . . . . . . . . . 151 MIMO System Design Numerical Example . . . . . . . . . . . . . . . . . 153 6.5.1 MIMO System with No Loss . . . . . . . . . . . . . . . . . . . . . 153 6.5.2 System with Packet Loss and Quantization 11 . . . . . . . . . . . . . 158 . 162 6.5.4 Design Performance . . . . . . . . . . . 168 6.5.5 Checking for Near Optimality . . . . . . 172 Summary . . . . . . . . . . . . . . . . . . . . . 177 . . . Codec Design . . . . . . . . . . . . . . . 6.6 6.5.3 179 7 Experiments 7.2 Experimental Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179 7.3 System Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182 7.3.1 Thrusters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182 7.3.2 Raft Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182 . . . . Introduction Determining Model Parameter Values . . . . . . . . . . . . . . . . . . . . 185 7.5 Controller Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185 7.6 Limit Cycle Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188 7.7 Limit Cycle Experimental Tests . . . . . . . . . . . . . . . . . . . . . . 190 7.8 Codec/Controller Design . . . . . . . . .... . . . . . . . . . . . . . . . .192 7.8.1 Design Requirements . . . . . ... . . . . . . . . . . . . . . . . .192 7.8.2 Design Equations . . . . . . . . . . . . . . . . . . . .I. . . . . . 194 7.8.3 Effect of Designed Codec on S ystem with Packet Loss . . . . . . . 195 7.8.4 Effect of Designed Codec on System with No Packet Loss . . . . . 195 7.8.5 Limit Cycle Experiments with Designed Codec . . . . . . . . . . 198 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199 . . . . . 7.4 Sum mary . . 7.9 8 . . . . . . . 7.1 . 179 201 Conclusion . . . . . . . . . . . . . . . . . . . . .201 . . . ... 8.1 Review of Contributions 8.2 Areas for Future Work .. . . ..... 12 ....... . . . . . .. . . . . .203 List of Figures 1-1 Schematic of Long baseline system with AUV . . . . . . . . . . . . . . . . 24 1-2 Schematic of ultra short baseline system with ROV and AUV . . . . . . . . 25 1-3 Schematic of Wide Area Measurement System (WAMS). . . . . . . . . . . 26 3-1 Autonomous surface vehicle operating in the Charles River, Boston, MA. . 46 3-2 Experimental Micro-Modem performance data in the Charles River Basin, which is not a power-limited environment but rather one limited by multipath 47 3-3 Example noise histograms from kayak GPS and compass sensors, with the vehicle stationary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 3-4 Kayak closed-loop heading model fit on experimental data in waves. . . . . 49 3-5 MIF-LQG control tests with acoustic communications on a day with light wind, 27 November 2012 . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 3-6 MIF-LQG control tests with varying packet loss on a day with nearly no wind, 24 October 2012 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 3-7 MIF-LQG control tests with varying packet loss on a day with strong wind, 16 October 2012. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 4-1 Block diagram for a MIMO feedback control system with an encoder, binary erasure channel, decoder, controller, and plant . . . . . . . . . . . . . 55 4-2 Block diagrams of SISO versions of the four codec algorithms . . . . . . . 63 4-3 Comparison of LZ (top left), LH (top right), LF (bottom left), and LM (bottom right) blocks showing input and decoded signals. . . . . . . . . . . 64 4-4 Block diagrams of SISO versions of the four codec algorithms with quantizers added. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 13 4-5 Convergence of the LH describing function phase formula with g, for different values of a, and or = 0.1. 4-6 Convergence of the LM describing function phase formula with g, for different values of a, and (or = 0.1. 4-7 . . . . . . . . . . . . . . . . . . . . . . 73 . . . . . . . . . . . . . . . . . . . . . . 74 Gain (top plot) and phase co of the LH model . . . . . . . . . . . . . . . . 75 4-8 Example 1-mass, 1-input 1-output system . . . . . . . . . . . . . . . . . . 76 4-9 LF describing function gain (top plot) and phase (bottom plot) from analysis and Monte Carlo simulation, for the contact task example. . . . . . . . .. 77 4-10 Example 1-mass, 1-input 1-output inverted pendulum system . . . . . . . . 78 4-11 LF describing function gain (top plot) and phase (bottom plot) from analysis and Monte Carlo simulation, for the inverted pendulum example. ..... 4-12 Example 1-input, 1-output all-pass symmetric lattice circuit system. 79 . . . . 80 4-13 LF describing function gain (top plot) and phase (bottom plot) from analysis and Monte Carlo simulation, for the nonminimum phase circuit example. 81 4-14 MIMO LF describing function gain (top plot) and phase (bottom plot) from analysis and Monte Carlo simulation, for the 2-sensor contact task example. 82 4-15 Example 2-mass, 1-input 2-output MIMO system . . . . . . . . . . . . . . 83 4-16 MIMO LF describing function gain (top plot) and phase (bottom plot) from analysis and Monte Carlo simulation, for the 1-input 2-output double mass exam ple. . . . . . . . . . . .... . . . . . . . . . . . . . . . . . . . . . . . 84 4-17 Example 3-mass, 2-input 3-output, 6-state MIMO system . . . . . . . . . . 85 4-18 MIMO LF describing function gain (top plot) and phase (bottom plot) from analysis and Monte Carlo simulation, for the 2-input 3-output three-mass example. Legend is same for both plots. . . . . . . . . . . . . . . . . . . . 86 4-19 LM gain (top plot) and phase co (bottom plot) from analysis and Monte Carlo simulation, for the contact task example. . . . . . . . . . . . . . . . 87 4-20 LM gain (top plot) and phase co (bottom plot) from analysis and Monte Carlo simulation, for the MIMO contact task example. 14 . . . . . . . . . . . 88 4-21 LM gain (top plot) and phase a (bottom plot) from analysis and Monte Carlo simulation, for the 3-mass MIMO example. Legend is same for both plots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 4-22 Gain difference between coupled loss model and independent loss model for two-channel LZ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90 4-23 Gain and phase differences between coupled loss model and independent loss model for two-channel LH. . . . . . . . . . . . . . . . . . . . . . . . 91 4-24 Describing function gain N(a/h) for the uniform quantizer [32] with bin width h and input signal amplitude a . . . . . . . . . . . . . . . . . . . . . 92 4-25 Describing function gain for log quantizer as a function of input magnitude a and quantizer parameter p for fine quantization (deadband p 1000 , top plot) and coarse quantization (deadband p 2 , bottom plot). . . . . . . . . . . . . . 94 4-26 Block diagram for a MIMO feedback control system with a quantizer, encoder, binary erasure channel, decoder, controller, and plant . . . . . . . . . 95 5-1 Computation time for simulation and describing function for the SISO LZ decoder, for 5-2 and a = 50% . . . . . . . . . . . . . . . . . . . . . 102 Computation time for simulation and describing function for the SISO LH decoder, for 5-3 ='r - r = -l and a = 50% . . . . . . . . . . . . . . . . . . . . . 103 Computation time for simulation and describing function for the SISO LF decoder, for ar = -l and a = 50% . . . . . . . . . . . . . . . . . . . . . 103 5-4 Computation time for simulation and describing function for the SISO LM decoder, for cor = -I and a = 50% . . . . . . . . . . . . . . . . . . . . . 104 5-5 Computation time for simulation and describing function for the SISO LM decoder computing normalized bode plot gains, for 100 frequencies and a = 50% 5-6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 Gain (top) and phase (bottom) of the QLF for the contact task model; a = 10% , h = 46, T= 0.1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106 5-7 Gain (top) and phase (bottom) of the QLF for the contact task model; a = 60% ,h = 10, T = 0.1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107 15 5-8 Gain (top) and phase (bottom) of QLH; as with LH, these properties are independent of the plant or controller. a = 10%, h = 46, r = 0.1. . . . . . . 108 5-9 Gain (top) and phase (bottom) of QLH. a = 60%, h = 10, -r = 0.1. . . . . . 108 5-10 Block diagram of feedback control loop with additive disturbance on plant output. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 5-11 Gain of the sensitivity function for the contact task model with the QLF codec . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 5-12 Closed-loop step response of double-integrator example system, with LQG design and a one-step delay. . . . . . . . . . . . . . . . . . . . . . . . . . 111 5-13 Input amplitudes a and quantization levels h that result in a limit cycle for the double-integrator example system . . . . . . . . . . . . . . . . . . . . 112 5-14 Time series for the QLZ system with quantization level h = 70. . . . . . . . 113 5-15 Time series for the QLH system with quantization level h = 35 . . . . . . . 114 5-16 Frequency o of limit cycles from the analysis and from simulation . . . . . 114 6-1 Block diagram of SISO control system with binary erasure channel in sensor feedback, and describing function for the quantizer-encoder-channeldecoder. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 6-2 Example 1-mass, 1-input 1-output system . . . . . . . . . . . . . . . . . . 132 6-3 Step responses of original system (top plot) and system with 1.1-second delay in sensor feedback (bottom plot). Nondimensional time is used, defined as gO. T*tim e. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135 6-4 Nyquist plots for original system (top plot) and system with 1.1-second delay in sensor feedback channel (bottom plot). Nondimensional time is used, defined as gO r* time. . . . . . . . . . . . . . . . . . . . . . . . . . 136 6-5 Time series plots for QLZ (top) and QLH (bottom). Nondimensional time is used, defined as gor* time. . . . . . . . . . . . . . . . . . . . . . . . . 137 6-6 Plot of limit cycle amplitudes for QLZ, QLH, and designed codecs. Blue dots represent design points. . . . . . . . . . . . . . . . . . . ... . . . . . . 138 6-7 Nyquist plots for system with decoder and delay but no loss or quantization 139 16 6-8 Limit cycle magnitudes as a function of M and N . . . . . . . . . . . . . . 141 6-9 Sensitivity magnitude plots for original system and designed systems DI, D 2 , and D 3 , with and without delay . . . . . . . . . . . . . . . . . . . . . . 144 6-10 Describing-function-derived gain and phase loci of system with delay, loss, quantization, and designed codec . . . . . . . . . . . . . . . . . . . . . . . 146 6-11 Time series of system with designed decoder. Nondimensional time is used, defined as gOw * time. . . . . . . . . . . . . . . . . . . . . . . . . . 147 6-12 Step responses of original system (top plot) and system with 1.1-second delay in sensor feedback (bottom plot) . . . . . . . . . . . . . . . . . . . . 148 6-13 Example system with two inputs and four outputs . . . . . . . . . . . . . . 152 6-14 Time response of original system to initial position displacements of 1 for each mass, and initial velocities zero. Nondimensional time is used, defined 2 as gcO T*tim e. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156 6-15 Loop transfer functions magnitudes for MIMO example, at low frequencies. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 6-16 MIMO Nyquist plots for original system (top plot) and system with 1.5second delay in sensor feedback channels (bottom plot) . . . . . . . . . . . 158 6-17 Time series responses of original system with 1.5-second time delay in sensor feedback of all channels, for initial displacements of one for each mass and zero initial velocities. Nondimensional time is used, defined as g 2 T *tim e. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .159 6-18 MIMO design time series plots using QLZ codec . . . . . . . . . . . . . . 160 6-19 MIMO design time series plots using QLH codec . . . . . . . . . . . . . . 161 6-20 Plot of limit cycle amplitudes for states X1 and X2 for QLZ, QLH, and designed codecs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163 6-21 Nyquist plots of designs DI (top), D 2 (middle) and D 3 (bottom) for systems with no nonlinearities (i.e.systems with delay and decoder but no loss or quantization) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164 6-22 Nyquist plots of designs D4 (top) and DFinal (bottom) for systems with no nonlinearities (i.e.systems with delay and decoder but no loss or quantization) 165 17 6-23 Describing-function-derived gain-phase loci of designed system with delay, quantization, and packet loss . . . . . . . . . . . . . . . . . . . . . . . 167 6-24 MIMO design time series plots using designed codec . . . . . . . . . . . . 169 6-25 Time series responses of original system with no delay, loss, or quantization with decoder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170 6-26 Time series responses of original system with delay but no loss or quantization with decoder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171 6-27 Transfer functions magnitudes for MIMO example with designed decoder, at low frequencies. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172 6-28 Quantizer gain plots. Top plot shows gain at a/h=0.6 corresponds to gain at larger value of a/h=0.9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173 6-29 Plot of limit cycle amplitudes for states Xi and X2 for QLZ, QLH, and designed codecs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174 6-30 Sensitivity plots of mean square limit cycle amplitude for small changes in M decoder parameters. Red dot marks design point. . . . . . . . . . . . . . 175 6-31 Sensitivity plot of X1 and X2 limit cycle amplitudes for changes in M4 decoder parameter. Red dots mark design point. . . . . . . . . . . . . . . . . 176 6-32 Sensitivity plots of mean square limit cycle amplitude for small changes in N decoder parameters. Red dot marks design point. . . . . . . . . . . . . . 177 6-33 Sensitivity plot of mean square limit cycle amplitude for large changes in N4 decoder parameter. Red dot marks design point. . . . . . . . . . . . . . 178 7-1 Experimental test setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180 7-2 Experimental test platform side view . . . . . . . . . . . . . . . . . . . . . 181 7-3 Experimental test platform top view, as seen from overhead camera. . . . . 181 7-4 Block diagram of experimental system. 7-5 . . . . . . . . . . . . . . . . . . . 182 Actuator describing function capturing deadband (u <0.1), unity gain(0. 1 < u < 1), and saturation (u > 1) regimes. . . . . . . . . . . . . . . . . . . . . 183 7-6 Top view of autonomous raft used in experiments, showing thrusters and coordinate frame. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184 18 7-7 Raft model vs data for thruster propeller speed step inputs of 30, 50, 70 and 90 percent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185 7-8 Nyquist plot of loop transfer function with one time step delay. Crossover is at -0.59. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187 7-9 Example time series response of system to initial error of approximately-35 degrees, for one time step delay in sensor measurement. . . . . . . . . . . . 187 7-10 Nyquist plot of loop transfer function with three time step delay. . . . . . . 188 7-11 Example time series response of system to initial error of -35 degrees, for three time step delay in sensor measurement. . . . . . . . . . . . . . . . . 189 7-12 Analytically predicted and experimentally observed limit cycle amplitudes. 191 7-13 Regions of different dominating factors influencing limit cycles. . . . . . . 191 7-14 Experimentally observed limit cycle of magnitude approximately 1.9 for pure quantizer, no packet loss. . . . . . . . . . . . . . . . . . . . . . . . . 192 7-15 Experimentally observed limit cycle of magnitude approximately 1 for pure quantizer, no packet loss. . . . . . . . . . . . . . . . . . . . . . . . . . . . 193 7-16 Experimentally observed limit cycle of magnitude approximately 0.8 for QLZ with 15% packet loss. . . . . . . . . . . . . . . . . . . . . . . . . . . 193 7-17 Experimentally observed limit cycles of magnitude approximately 1.8 for QLH with 55% packet loss. . . . . . . . . . . . . . . . . . . . . . . . . . . 194 7-18 Bode-like plots for the describing function of the designed codec. . . . . . 196 7-19 Describing-function-derived gain-phase loci for system with designed controller with 25% packet loss and quantization ratio a/h = 0.9 . . . . . . . . 197 7-20 Nyquist plot for system with designed controller with no packet loss or quantization. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198 7-21 Experimental time response for system with designed controller and delay, with no quantization or packet loss. . . . . . . . . . . . . . . . . . . . . . 199 7-22 Limit cycle in experiment with designed controller/codec for 25% packet loss. Magnitude is approximately 0.9. . . . . . . . . . . . . . . . . . . . . 200 19 20 List of Tables 3.1 Comparison of RMS errors from experiments with light wind and with strong w ind. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 4.1 Summary of mathematical symbols used in this chapter. . . . . . . . . . . . 54 6.1 Summary of mathematical symbols used in this chapter. . . . . . . . . . . . 118 6.2 Time series responses for system with no delay, delay, and delay+loss+quantization, for LZ, LH, and designed decoders . . . . . . . . . . . . . . . . . . . . . . 133 6.3 Nyquist plot for system with and without delay, for LZ, LH, and designed decoders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134 6.4 Codec coefficients and limit cycle amplitudes . . . . . . . . . . . . . . . . 138 6.5 Gain and phase margins of system with delay and different decoders, with no loss or quantization. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142 6.6 Time series responses for system with no delay, delay, and delay+loss+quantization, for LZ, LH, and designed decoders. Nondimensional time is used, defined 2 as gOJ T*time. 6.7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154 Nyquist plot for system with and without delay, for LZ, LH, and designed decoders .... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155 21 22 Chapter 1 Introduction In this chapter we introduce the real-world problem that has motivated this thesis: controlling robotic systems where sensor signals are subject to packet loss and quantization errors. A statement of the problem is given in Section 1.1 with several applications, and a statement of the contributions of this thesis given in Section 1.2. A review of relevant prior work is given in Chapter 2. 1.1 Motivation and Problem Statement Wirelessly connected robotic systems have become widespread in the terrestrial, aerial and underwater environments. Examples include autonomous underwater vehicle (AUV) coordination and navigation([1 1], [3], [33]), network-based process control engineering ([117]) , automobile networked subsystems control ([50], [21]), and power grid control ([106],[7 1], [105]). As one would expect, demand on throughput grows to fill the available channel capacity; in a clean short-range RF setting, entire images may be transferred in each cycle, as part of a vision-based control system, whereas in the ocean, acoustic channels with perhaps twenty bits per second allow only the most basic sensor and command information to be shared regularly. Packet-based wireless communication systems like these that operate near their limits are necessarily quantized, and often prone to loss. These properties directly impact the overall system performance, and thus methodologies for understanding and designing feedback systems with quantization and packet loss are valuable. 23 1.1.1 Underwater Applications Many example applications exist in underwater environments, where autonomous underwater vehicles (AUVs) are beginning to perform tasks previously done by human divers or remotely operated vehicles. AUVs have the advantage of requiring no tether, and not endangering the lives of divers, but communication underwater between the AUV and remote sensors or other AUVs may be subject to packet loss and quantization. One application is AUV navigation through challenging environments using remotesensor positioning measurements. Some of the most commonly-used remote-sensor systems for this application are Long Baseline (LBL) and Ultra-Short Baseline (USBL)[68]. Figure 1-1: Schematic of Long baseline system with AUV. Image credit: Kongsberg Maritime, http://www.km.kongsberg.com/ks/web/nokbg0240 In the LBL setup, shown schematically in Figure 1-1, fixed nodes on the sea floor take acoustic range measurements to the AUV, triangulate the position, and acoustically transmit the position back to the AUV. LBL systems are currently used in AUV positioning for survey and inspection of deep water oil and gas facilities [102]. They have also been used to precisely position nuclear submarines navigating through underwater canyons or 24 preparing to launch missiles [34]. Figure 1-2: Schematic of ultra short baseline system with ROV and AUV. Image credit: Teledyne Benthos, http: //www. benthos . com/index. php /product/ positioning-systems/benthos-dat In the USBL setup, shown schematically in Figure 1-2, a surface vessel uses a hullmounted underwater transceiver with multiple acoustic transducers to detect the range and angle to an underwater vehicle. The underwater vehicle emits a time-stamped acoustic signal, and the transceiver on the ship calculates range from the signal travel time. The multiple transducers receive different phase shifts of the same signal, and these phase differences are used to calculate the angle to the target. The ship can calculate the position from the range and angle measurements, and transmit this measurement acoustically back to the underwater vehicle. USBL positioning is currently used for AUV surveying and inspection of underwater oil and gas facilities [102], and has the advantage that no additional underwater nodes need to be installed prior to operations. Another underwater application is AUV collaborative positioning, where multiple AUVs must communicate with each other acoustically to perform a task. One example task could be teams of AUVs decommissioning offshore oil rigs. Offshore oil rigs are generally abandoned at the end of their operational life, and in the United States oil companies are required to remove the rig within a year of abandonment. Current practice is to use a combination of human divers and Remotely Operated Vehicles (ROVs) to decommission and remove an old rig, but this is very dangerous for the divers, and ROV tether management can be problematic. An alternative method under research is to replace the divers and ROVs with AUVs, thus removing the danger to humans and the problems associated with tethers. This 25 may require AUVs to communicate acoustically to coordinate cutting and lifting tasks, and the communications could thus be subject to packet loss and quantization errors. In these underwater applications both packet loss and quantization could be significant at the same time. For instance, if an acoustic modem used for communication has only a few different transmission modes (as is realistic), then the operation is limited to one of those modes and it may not be possible to configure the system such that only packet loss is significant or only quantization is significant. Thus the case of both significant quantization and packet loss is realistic for these applications. 1.1.2 Terrestrial Applications Many terrestrial applications exist where networks of sensors are wirelessly connected and subject to packet loss [104]. Such a system can be advantageous if sensors are located far away from the plant, or if space is limited such that extensive wiring is undesirable. However, the network introduces the possibility of packet loss and quantization errors in signals. These systems are used, for example, in some modem automobiles using using ControlArea-Network (CAN)-based data communication [117]. In this case space is very limited, and sensors for anti-lock braking systems, acceleration slip regulation, etc. are connected wirelessly to controllers over a network. Satellite Controller Power Grid Figure 1-3: Schematic of Wide Area Measurement System (WAMS). These systems have also been used in power systems applications ([106],[71]) to maintain power grid stability and prevent blackouts. In these cases, phasor measurement units (PMUs) are installed strategically in power grids to measure AC phases and waveforms, 26 and measurements are transmitted over a network using satellites to a controller, as shown in Figure 1-3. This is referred to as a Wide Area Measurement System (WAMS). As pointed out in [105], power systems are often operated close to their limits of stability due to economic and environmental pressures and deregulation, thus the effect of packet loss and quantization from WAMS could be significant if it pushed the system into a limit cycle or to instability. In process control, such as in wastewater treatment plants, senors measuring water levels, pH factors, temperature, and chemical oxygen demand transmit signals through a network to a system controller [117]. In all of these applications, signals in the feedback control loop are subject to packet loss and quantization induced by the network. Loss of a sensor measurement can also be caused at the sensor itself, and have the same effect as if it were lost in the feedback channel. For instance, automated welding for manufacturing is often controlled via visual servoing, though this is subject to sensor error from optical disturbances [119]. Arc glares, welding spatters, and smoke can all cause the sensor measurement to be effectively lost, even though it is not sent through a lossy communication channel. 1.2 Overview and Contributions of the Thesis The goal of this thesis is to study the performance of feedback control systems limited by significant finite static quantization and stochastic packet loss. Unlike previous studies, the performance metric of this work is limit cycles - i.e., self-induced oscillations in nonlinear systems. Limit cycles are central in the performance of robotic and other systems because they dictate the precision which can be achieved. As will be shown, systems that are close to instability can be pushed into undesirable limit cycling by the combination of packet loss and significant finite quantization. In Chapter 2 we review existing methods from the literature for designing and analyzing feedback control systems subject to quantization and packet loss. We also review describing functions - quasi-linear approximations to non-linear system components - and some relevant applications in recent research. We then outline how describing functions can be 27 used to approximate the non-linear effects of quantization and packet loss, and in turn be used to analyze limit cycles. In Chapter 3 we show experimental results from tests of a packet-loss robust algorithm - the modified information filter - from the literature. Heading control tests are conducted on a robotic kayak in open water, with the sensor measurements transmitted to the kayak using a shore-based acoustic modem and subject to realistic packet loss. These tests are similar to true USBL-based control of an AUV, and serve as motivation for more detailed experiments in a controlled lab setting. These experimental results are also documented in [33]. In Chapter 4 we derive describing functions for information channels subject to packet loss and quantization. These are each given as closed-form mathematical expressions of the provably-optimal gains and phases for each case, with each decoder a specific case of the general codec algorithm. First, a DF is derived for a general codec of a channel subject to just packet loss. The general DF is then applied to four commonly-used codecs from the literature: Zero-Output, Hold-Output, Linear Filter, and Modified Information Filter. These DFs are verified by simulation for open-loop stable, open-loop unstable, minimum phase, and nonminimum phase SISO system examples, as well as for multi-sensor channels of several different MIMO system examples. The DFs are then combined with a standard quantizer DF to give DFs for channels subject to both quantization and packet loss. These DFs build on the DF methods of the literature for studying nonlinear physical elements in control loops, and the new DFs are unique because they describe information sent through channels, and the information itself is stochastic. These two properties of the DF - describing non-physical and stochastic elements - distinguish the analysis from previous work and open the possibility for DF analysis to be applied to a much broader range of systems than has been standard practice in the past. In Chapter 5 we show how the DFs require orders of magnitude less computation time than do simulations for computing gains and phases for quantized and lossy information channels. The DFs are shown to be useful analysis tools to create loop sensitivity-like functions to study the effect of disturbances, and to create channel Bode-like gain and phase plots. The.Bode-like plots can in turn be used to predict limit cycles of the system, 28 and a numerical example is given outlining this procedure. The example shows a case where the new DFs predict limit cycles in a quantized lossy system that are not predicted by a quantizer DF alone. The limit cycles are then shown by simulation to indeed exist. In Chapter 6 we show how the DFs can be used as synthesis tools to design a channel codec. In this design procedure we assume two operating conditions for the system: a nominal operating case and a second operating case that is close to instability. This could apply, for instance, to an underwater vehicle navigating via LBL where a nominal operating case is in open water, while a second case is operating in a cluttered environment where acoustic signal performance is negatively affected, and quantization and packet loss push the system to limit cycle. For this synthesis tool, a controller is first designed for the nominal operating case, and an acceptable limit cycle amplitude specified for the second operating case. The design method gives a decoder that meets the limit cycle requirement with small effect to the nominal operating performance. The design method can be iteratively applied for smaller limit cycle amplitude specifications, until a balance is met that achieves small enough limit cycle amplitudes with acceptable effect on nominal operating performance. The designed codec is of the special and simple form of a constant times the sent signal if the signal is received and a different constant times the previous decoded signal if the sent signal is lost. This form has the equivalent structure and computational complexity as the Zero-Output and Hold-Output decoders. A DF for this codec allows the constants to be solved for as functions of target limit cycle amplitudes. The constants reduce to solutions of cubic equations, which are guaranteed to have a real root, and thus the codec is physically realizable. The codec allows for multiple limit cycle frequency solutions for the same amplitude solution. SISO and MIMO numerical examples are given illustrating the design procedure. In Chapter 7 we show experimental results on a small robotic raft. We control raft heading in an indoor pool environment and artificially add packet loss and quantization to the heading sensor measurements. The example codecs are implemented on the raft, and limit cycles predicted by the DFs are verified for a range of packet loss scenarios. A new design point is then selected where the system limit cycles at a smaller amplitude than any of the example codecs for a given packet loss probability. The design method is used to 29 achieve this design point, and verified experimentally. The results demonstrate how the designed decoder can be used to decrease limit cycle amplitudes even when compared to a linear-filter-based decoder. We conclude in Chapter 8 by reviewing the contributions of the thesis and discussing areas of potential future work. Assumptions 1.3 For clarity, we summarize the major assumptions used in the analysis and examples of the thesis: * Discrete time control. " Loss and quantization in sensor feedback channel. " Uniform quantizer used. " Bernoulli packet loss. " No acknowledgments. 1.4 Example Systems Studied In order to verify and illustrate the describing functions, we study an example set of linear open-loop stable, open-loop unstable, minimum phase, and nonminimum phase SISO systems, and linear, minimum-phase, mass-spring-damper MIMO systems, and we list these example systems here for clarity: " 1-mass with one force input (Section 5.5). " 1-mass with spring and damper, with one force input (Section 4.4.3, 4.4.4). " Open-loop unstable inverted pendulum (Section 4.4.3). " Nonminimum phase symmetric lattice all-pass circuit (Section 4.4.3). 30 * 2 masses connected with springs and dampers, with one force input (Section 4.4.3, 4.4.4). * 2 masses connected with springs and dampers, with two force inputs (Section 4.4.3, 4.4.4). * 3 masses connected with springs and dampers, with two force inputs (Section 4.4.3, 4.4.4). 1.5 Summary This chapter described the importance of feedback control systems that are subject to packet loss and quantization. Example systems described include underwater vehicle navigation and coordination using acoustic communication, and power grid control. The contributions of this thesis to the control of these types of systems were then given, and the chapters of the thesis outlined. 31 32 Chapter 2 Background 2.1 Introduction This chapter gives a survey of prior work in control systems subject to quantization and packet loss, as well as work related to describing functions. We begin with an overview of work related to control with quantization, followed by work related to control with packet loss and then work on a combination of the two. We then review recent applications of describing functions, and give background on control of underwater vehicle thrusters. We close with a synopsis of the background work and explain how describing function analysis fits into the existing research on packet loss and quantization. 2.2 Control with Quantization The use of quantization in control systems has been studied at least since the 1950s, when Kalman [51] observed that quantized signals cause a stabilizing controller to exhibit limit cycles and chaotic behavior. Since then, work on quantizers has fallen into two basic categories: work studying static (also called memoryless) quantizers, and work studying dynamic quantizers (also called quantizers with memory). A static quantizer maintains the same parameters (such as bin sizes and location) over time, while for a dynamic quantizer these properties are allowed to vary over time. Curry [17], Miller [67], and Delchamps [19] gave early results on the effect of static uniform quantizers on control systems, and 33 Wong [112] determined bounds on the number on uniform quantization intervals needed to practically stabilize a linear system. However, a finite uniform quantizer can do no better than practical stability. To achieve quadratic stability with a static quantizer Elia [23] proved that, at least in the case of a SISO system, the quantizer must be logarithmic with infinite precision. This type of quantizer is, of course, not practically realizable. Fagnani [24] looked at methods to reach practical stability for SISO systems with more practical static finite logarithmic quantizers. Brockett [12] developed one of the first results using dynamic quantizers, showing that dynamic finite quantizers can in fact achieve asymptotic stability, unlike static finite quantizers. Several works later studied bounds on the number of dynamic quantization levels needed for closed loop quadratic (Ling [60] and Nair [74]) and exponential ([75]) stability. Fu ([29] and [30]) developed a unique dynamic logarithmic quantizer that scales a gain on the quantizer parameters. Currently one of the most common means of dealing with quantization in feedback control is to use the sector bound method developed by Fu ([28], [27]). In this method, quantization error is treated as uncertainty and bounded using a sector bound. By doing this, the quantization error can be considered to be additive noise, and standard control analysis tools can be applied to study and minimize the quantization effect. Fu used the sector bound method to determine stabilizability and H. performance criteria for SISO and MIMO systems. Coutinho [16] used the sector bound approach to quadratically stabilize a system using infinite logarithmic quantizers in sensor and controller channels. Bai [4] developed a set of bilinear matrix equations for system stability, for MIMO systems with different quantization in different channels, and Rasool [85] extended these results to include H. performance criteria. Wei [109] modified the sector bound method to account for multiplicative noise instead of additive. The sector bound method developed by Fu is, however, conservative in stability conditions. Less conservative approaches using quantization-dependent Lyapunov functions (Gao [31]) have also been developed. A final method to deal with quantization is to look at it from an information theoretic view. Tatikonda [100] used this method, and determined the minimum bit rate required to 34 achieve stability and control objectives. 2.3 Control with Packet Loss Much work has been done in the past 50 years studying the important problem of control systems subject to packet loss. Most work focuses on how to design the encoder, decoder, and/or controller to attain some stability or performance result. Some of the first work, by Nahi [73] and Hadidi [41] studied SISO systems with packet loss in the sensor feedback channel and acknowledgments. They derived an optimal codec scheme where a linear combination of current and past measurements are sent if a measurement is lost, with Bernoulli or Markov loss probability. Robinson [87] extended these results to include system performance criteria. Other methods of dealing with packet loss include treating lost packets as long delays (Zhang [118]), and looking at the system's output power spectral density as a function of packet loss (Ling [59]). One of the most common ways to deal with packet loss in the sensor channel is to use a Kalman Filter decoder, where a state estimate is propagated through a system model if the measurement is lost, and a Kalman gain is multiplied by the difference between measurement and propagated model if the measurement is received. Sinopoli [92] and Fortmann [25] found critical packet loss probabilities for error covariance matrix convergence in this case. Many variations exist on the standard Kalman-Filter setup. Several authors (Smith [97], Nilsson [77], [76], and Costa [15]) extended the Kalman Filter results to look at jump linear estimator decoders [65] that select a gain from a fixed set depending on whether the measurement packet was received. This type of decoder was shown to be less computationally expensive than the standard Kalman filter. Wang [108] and Schenato [89] designed general constant-gain linear filter decoders that bound the estimation error covariance by a prescribed amount. Another useful variant of the Kalman Filter that has been studied for these problems is the information filter. Gupta [40],[39] developed a modified information filter codec for sensor channel loss that involves sending a specialized information vector, which depends 35 on current and past measurements and state estimates. This was shown to be the optimal LQG-type control for losses in the sensor channel. Jin [49] and Jiang [48] considered the case where the sensor packet can be split up and sent through multiple independent channels, before being recombined and decoded with a Kalman Filter-type decoder, and Li [58] studied the Unscented Kalman Filter under packet loss. Fewer works have considered the scenario where only the controller-actuator channel is subject to packet loss. One of the simplest codec methods (Mahmoud [63]) is to send the single control command and decode with a zero-output or hold-output decoder. Quevedo [83] developed packetized predictive control (PPC), where a set of current and future control commands is sent to the actuator at each step. If the signal is lost, the actuator uses the next control command stored in its buffer. Miklovicova [66] studied the specific PPC case where the controller is PID, and switches between gains based on whether the control command was successfully received (requiring acknowledgments). Song [98] and Yang [114] extended PPC to the MIMO case with mixed packet losses, called network predictive control. Several works have considered the case where packet loss can occur in both the sensorcontroller and controller-actuator channels. Most studies assume a Kalman Filter decoder for the sensor channel, and a zero-output decoder for the controller channel. Azimi-Sadjadi [1] developed one of the first results for this system, establishing LMI stability criteria, and Sinopoli [93] developed critical packet loss probability for convergence of the error covariance matrix. Schenato [90] showed that, if acknowledgments are used there is a critical packet loss probability for stability and that the separation principle holds, but the separation principle does not hold in the case of no acknowledgments. Lu [62] and Yang [113] designed stable controllers that meet H. performance specifications for this system. Moayedi studied two variations on this control scheme, where control commands are encoded in a PPC manner [69], and when they are sent normally but with a hold-output decoder [70]. 36 2.4 Control with Quantization and Packet Loss Only in the past decade have studies considered the important real-world situation where quantization and packet loss exist simultaneously in a feedback control system. Branicky et al. [10] was one of the earliest to include both quantization and packet loss in a control system analysis, developing a scheduling co-design method for Networked Control Systems (NCSs). Hadjicostis [42] treated quantization as additive noise on a signal and derived stability criteria for a simple SISO system with sensor channel packet loss. Tsumura et al. [103] developed one of the first fundamental analyses for this problem, expressing the minimum quantization level required for feedback stability for a given packet loss and open-loop unstable eigenvalues. The study assumed a log quantizer with a realistic deadband at the origin, and required acknowledgments for the lossy sensor channel. Niu et al. [78] later derived a set of linear matrix inequalities that guarantee feedback stability for packet loss and infinite-precision logarithmic quantization in the sensor channel; this result was extended by Dai et al. [18] to include quantization and packet loss also in the controller channel. Liu [61] added random delays to the model, and Yang [115] considered different delays on different channels of a multi-channel system. In terms of closed-loop performance, Rasool and Nguang [84] recently introduced a variation where disturbance-to-penalty norm can be minimized, and Jiang [47] developed a set of LMI constraints that guarantee system stability and H. performance criteria. Guo [38] studied the case where the channel decoder is a general linear filter that propagates a model if the sensor measurement is lost. Some studies assume quantization errors are small and treat them as sector-bounded additive noise. Huaicheng [45] used this treatment of quantization and developed LMI stability criteria for systems with mixed delays and mixed loss probabilities in the sensor feedback channel. Seiler [91] derived LMIs for synthesis of H. controllers for Markovian packet loss, and Chiuso [14] and Dey [20] designed LQR gain matrices. Mahmoud [63] developed stability conditions for the case of quantization and loss in both control and sensor channels, with non-stationary Bernoulli packet loss probabilities. Several works have looked at quantized and lossy controller-actuator channels. Na37 gahara [72] extended the work of Quevedo [83] to send a sparse representation of the quantized signal, and Ishido [46] extended it to include a finite uniform quantization of the signal. 2.5 Limit Cycles No previous works have looked at control systems subject to packet loss and quantization from the perspective of the effect on limit cycling. However, limit cycling is very important for many robotic systems because it is a measure of achievable precision. Limit cycles will not necessarily happen in all systems. For example, a system that is open-loop stable with a very mild controller may not exhibit any limit cycles. Systems that are operated closer to instability, though, may be prone to limit cycling in the presence of packet loss and quantization, as will be described later in more detail. There are three main methods from the literature used to find limit cycles: Bendixson's Theorem, contraction theory, and describing functions. Bendixson's Theorem states that if a region of state space has no trajectories leaving it, then trajectories must go to limiting sets, which are either equilibrium points or limit cycles [36]. The theorem has been used to prove stability of some systems such as biological cellular concentrations [64] and formation-keeping for mobile agents [5]. However, it does not give insights into the limit cycle characteristics. Contraction theory is similar to Bendixson's Theorem in many ways, and states that a system moves to a unique trajectory when initial conditions or disturbances are forgotten exponentially fast. Contraction has been used to study limit-cycling of coupled nonlinear oscillators, e.g., [107]. A describing function (DF) is a quasi-linear approximation to a nonlinear element, and depends explicitly on the form of its input; for sinusoidal signals in a limit cycle, the DF depends on the input frequency or amplitude, or both [32]. DFs are very practical tools for real-world control applications, and have been described as "an indispensable component in the bag of tools of practicing control engineers" [95]. It is for this practical reason that we choose to use DFs for limit cycle analysis of systems subject to packet loss and quantization. 38 DFs have been used successfully in many applications. To name a few, in electrical engineering Sanders [88] studied limit cycles in periodically-switched circuits, and Peterchev et al. [81] found quantization conditions that eliminate limit cycles in digitally-controlled PWM converters. In medicine, Kinnane [56] used DFs to predict blood pressure oscillations in human patients for diagnosing cardiovascular health. In control, E. Kim et a]. [52] developed a DF for a fuzzy logic controller, and Kim et al. [54] used DFs for identifying frictional elements in support of feedforward control action. In ocean engineering, Yoerger et al. [116] used DFs to explain and reduce limit cycles in underwater robots caused by nonlinear thruster dynamics. More details about control of underwater thrusters is given in Section 2.6. More recently, DFs have been widely applied to stability analysis of airfoils (e.g., Tang et al. [99]) and flame formation in combustion, e.g., Noiray et al.[79]. Gelb and Vander Velde [32] provide a good resource, with many other DFs for a wide range of applications, and Taylor [101] gives examples of calculating DFs for multiple-input-multiple-output systems. It is noteworthy that these prior works all address DFs for hardware and physical elements, but not for information sent across channels, our current focus. Our work is also unique in that the dynamic element whose describing function is to be developed is itself stochastic. 2.6 Control of Underwater Thrusters Because the contributions of this thesis have many applications in the control of underwater vehicles, it is important to review previous work on ROV and AUV control. As pointed out in Section 2.5, a key difficulty in controlling underwater vehicles is compensating for nonlinear thruster behavior, which affects vehicle positioning. A variety of methods exist in the literature to model and control underwater thrusters. 2.6.1 Thruster Modeling In general in steady state the thrust from the thruster is proportional to the square of the propeller rotational velocity. However, in the transient state this simplified model does not 39 hold as well. One approach to model the transient state thrust is to derive an equation of motion by using an energy balance to equate axial power at the propeller disk to power expended at the propeller shaft [116]. This leads to a nonlinear differential equation relating propeller velocity to thrust. Another modeling method is to include the motor in the model, with a voltage or current input [43]. A momentum balance can then be used to relate thrust to propeller velocity. The input command can also be assumed to be propeller velocity [110], which avoids taking into account motor voltages and currents. A more detailed modeling approach is also possible, which takes into account variables such as propeller blade angles, blade lift and drag forces, and fluid dynamics [43]. These modeling methods assume a model is derived in advance, but other methods allow for the possibility of model parameters changing over time. Several studies ([2], [26]) developed techniques for adaptively identifying model parameter values in real time. These methods, however, generally require measuring axial fluid velocity, which is difficult to do in practice. One method approximates axial flow by a function of ambient flow velocity and propeller shaft velocity, which are easily measurable, thus allowing parameters to be identified in real time [53]. 2.6.2 Thruster Control The simplest, and a very common, framework to control underwater thrusters is open-loop control with no feedback. This understandably may not meet performance requirements, for instance in the case of strong disturbances, and perhaps the next step up in complexity is feedback velocity control [111]. In this method the thrust is approximated to be linearly proportional to the propeller velocity, which can be measured. Another approach is modelbased velocity control, where one of the many nonlinear relationships between thrust and propeller velocity is assumed, and a measurement of axial flow velocity is also used. One more approach is to use an extended Kalman filter to estimate motor torque, then estimate thrust from this torque estimate and a hydrodynamic model [37]. Many different types of controllers can be applied to these general control frameworks. For instance LQR [35], neural-network [55], proportional-integral [44], and proportional40 derivative [96] controllers have all been tested either in simulation or experiment on ROVs or AUVs. More recently, fuzzy sliding mode controllers have been studied for underwater thruster control ([8],[9],[7]). In these controllers the compensator gain is variable and determined by a fuzzy inference system. Such a design can be more robust to parametric uncertainties and can deal with realistic motor deadband, but is prone to chatter and may reduce system precision. 2.7 Synopsis of Literature Review Most of the previous studies that consider both packet loss and quantization rely on infinitelength logarithmic quantizers with no lower bound on precision, and this makes their application to severely limited channels tenuous. Also, in these works all signals in a channel are assumed lost or passed together, with no consideration of a mixed-loss scenario. The channel decoders are generally assumed to be one of three specific algorithms: zero-output, hold-output, or linear filter. It is unclear if stability or performance results hold if a different decoder is used than the specific one assumed in each study. Works that assume finite quantization levels generally assume quantization error is small enough to be treated as additive noise. However, if quantization error is large, it is not clear that the treatment as additive noise holds. Additive noise will not effect the Nyquist plot of a system, but, as will be shown later, coarse quantization does effect the Nyquist plot of a system, and thus is not well-approximated by the additive noise assumption. Studies that assume coarse finite quantization generally use dynamic quantizers, but dynamic quantizers don't necessarily work with packet loss. A dynamic quantizer inherently relies on information being exchanged between the quantizer and receiver any time the quantizer changes. If the channel being used is subject to random packet loss, implementing a dynamic quantizer becomes more difficult. If the sending side changes the quantizer parameters, but the message specifying the new parameters gets dropped en route to the receiving side, the receiving side will not correctly decode future messages. One way to ensure the message successfully reaches the receiving side is to use acknowledgments, i.e. to send a signal from the receiving side confirming that it has received 41 the new quantizer parameters. This strategy relies on the acknowledgment signal not being dropped in the channel. Acknowledgments are commonly used in transmissions over the internet using Transmission Control Protocol (TCP) [82]. This strategy works in transmissions over the internet because, in general, the acknowledgment message is much smaller than a standard message and much less likely to be dropped by the channel. However, in underwater acoustic communication this assumption that the acknowledgment will not be dropped does not always hold. In general, smaller packets have a smaller probability of being dropped, but in the underwater environment the possibility of an acknowledgment signal being dropped cannot be ignored. Thus dynamic quantization is not always possible in channels subject to packet loss. With respect to underwater systems, many studies have focused on controlling underwater vehicles in the face of nonlinear thruster dynamics, and somehave looked at the effect of limit cycles induced by these thruster nonlinearities. However, no works have considered the effect of packet loss and quantization on limit cycling of underwater vehicles, though these nonlinearities are potentially significant in many underwater feedback control applications such as those pointed out in Section 1.1.1. While thruster dynamics, packet loss, and quantization could all potentially contribute to limit cycling at the same time, this thesis is concerned with the case where packet loss is high enough and/or quantization coarse enough that the packet loss and quantization effects dominate the limit cycling. This thesis thus advances previous work by considering systems with both significant finite quantization and packet loss from the perspective of limit cycling, with applications to underwater vehicle control. 2.8 Summary In this section we reviewed prior work on control systems subject to quantization and packet loss, as well as work related to limit cycles and underwater vehicle control. Most previous works treat quantization errors as small, or assume infinite-precision logarithmic quantizers. Work that considers both packet loss and quantization often assumes acknowledgments can be used. All of these assumptions may not hold in the case of severely 42 limited channels. Also, no previous work has studied control systems subject to packet loss and quantization from the perspective of limit cycling. This review motivates the work of this thesis, which considers feedback control subject to significant finite quantization and packet loss from the perspective of limit cycling, with applications to underwater vehicle control. 43 44 Chapter 3 Experiments with Packet-Loss Robust Control 3.1 Introduction As motivation for future work on control systems with packet loss and quantization, we first investigated the practical performance of a packet-loss robust algorithm, the MEF strategy proposed in Gupta et a]. [40] for a lossy link between the sensor and controller. We are interested in this algorithm because it is the theoretical optimum LQG-type controller for systems with packet loss in the sensor feedback channel. We implemented this algorithm in the control of an autonomous kayak in the Charles River, Boston, MA, using artificial packet loss in some tests, and real packet loss from acoustic modem communication in other tests. This work in a difficult operating environment subject to wind and waves motivated future experiments in a more controlled lab setting for systems subject to both packet loss and quantization. 3.2 Hardware and Operating Environment In these experiments, instead of sending the most recent measurements or the innovation to the controller at each time step, we sent a specialized information vector, in accordance with the MIF algorithm. We note that our implementation is a subset of Gupta's algorithm: 45 the entire message is either successfully transmitted or lost. The full MIF algorithm is given in detail in Section 4.3.4. Figure 3-1: Autonomous surface vehicle operating in the Charles River, Boston, MA. We performed control experiments on a Wavesport Fuse 35 whitewater kayak, shown in Figure 3-1, with a 220N thrust Minn Kota Riptide thruster under the bow of the boat. The kayak is 1.8m long with a mass of 40kg including all onboard electronics and batteries. During operation a WHOI Micro-Modem hung underneath at a depth of two meters. The vehicle runs MOOS-IvP autonomy software [61 integrated with custom control algorithms. Forward speed during experiments was 2.1 m/s, and the cycle time was six seconds. We conducted experiments on the Charles River in Boston, MA, an environment characterized by sporadic acomms behavior, as shown in Figure 3-2. Packet losses can range from 5% to over 70% depending on conditions and user settings. The kayak was equipped with a GPS receiver to measure position and tilt-compensated compass to measure heading angle. In designing Kalman filters, we used a sensor noise covariance of 10m 2 for the crosstrack position based on GPS; raw compass measurements were passed through a first-order low-pass filter having time constant 1.95s, and we modeled the noise on this signal with a variance of 10deg2 . Data supporting these settings are given in Figure 3-3. 46 Figure 3-2: Experimental Micro-Modem performance data in the Charles River Basin, which is not a power-limited environment but rather one limited by multipath. There is a stone wall about 10m behind the source, a trench under the low-SNR circles in the lower right, and a shoreline just out of the field of view on the lower right. The source is fixed on a dock, the paths are made by a kayak towing a modem, and the blue cluster is from a second kayak station-keeping. This SNR value indicates sound pressure level relative to ambient noise. 3.3 System Model We used the kayak's local PID heading controller for all our experiments, and modeled the closed-loop behavior as a (stable) third-order, all-pole transfer function CO O(s) 4dd(s) with 0 the heading and Od 2 s 3 +c2 s +cs+ c0 (3.1) the command. The angles are defined as deviations from a fixed trackline heading. We arrived at the fit co = 1.7, cl = 2.5, and c2 = 7.5 in Equation 3.1, through ten-, twenty-, and thirty-degree step responses, as shown in Figure 3-4. These traces indicate a rise time of about four seconds, and 30% overshoot. This model holds only for small inputs; the image also illustrates the effect of one-Hertz chop that is typical in our light-air operations. We used the simplest kinematic model for crosstrack error, assuming that the vehicle was translating only in the direction it was pointing: e = V sin(O) ~ V4. The state vector 47 1000 500C -8 -4 -6 0 E 6 4 2 0 -2 GPS Deviation [m] 8 :3200100- 0 A d -5 LL 0 Compass Deviation [deg] 5 Figure 3-3: Example noise histograms from kayak GPS and compass sensors, with the vehicle stationary. The GPS is the uBlox NEO-6 sampled at five Hertz; the variance is 13.3m2 . The compass is the OceanServer OS5000 sampled at ten Hertz, and then filtered by MOOS at a 1.95Hz cutoff; the variance is 9.6deg2 for the system model is taken as x = [0, 4, e]T, and we convert the system to discrete time with a zero-order hold to obtain the state-space matrices [A, B, C, 0]. The loop time At is set based on the delay of one acoustic link to transmit the information vector for MIF. We assume constant time step and delay, valid for acoustic ranges less than one kilometer where message coding and decoding times dominate. 3.4 MIF Experimental Setup For the MIF-LQG experiments we set the LQR state penalty matrix to be diagonal with 2 Ql/ 2 = 31 and all other diagonal entries Ql/ = 10, so that error in crosstrack position is most highly penalized. We set the control penalty as R1/2 = 316. We found through tuning that these parameter values led to good performance of the baseline system in the absence of packet loss. 3.5 Physical Connectivity We conducted two different sets of experiments: one set relied completely on Wi-Fi communication with artificially-imposed packet size and losses, and the other on communica48 . .......... .......... 45 Heading Data Model Fit % 40 --30 . 20- 1050 0 2 4 Time [s] 6 8 10 Figure 3-4: Kayak closed-loop heading model fit on experimental data in waves. Winds and waves were very light for these trials, with wind less than 5 knots. 2 MIF-LQG &Acomms RMS 1.2 -60 0 10 20 30 40 Time Steps 50 60 Figure 3-5: MIF-LQG control tests with acoustic communications on a day with light wind, 27 November 2012. Green vertical bars indicate packet successes. Each time step represents six seconds. tion through acoustic modems. At every time step the kayak transmitted GPS and compass measurements to shore over Wi-Fi, with essentially no delay. The shore randomly decided whether the packet would be lost, based on a pre-set probability. The shore then simulated a delay, and transmitted the control packet over Wi-Fi to the kayak. In the acoustic modem set of experiments, sensor signals were transmitted from kayak to shore using an acoustic modem, and control command packets sent from shore to kayak over Wi-Fi. 49 Constant RMS 2.13 Set Heading-'- 2 1-iorT---0 ----- - -- -- ------------------ No Loss 0.41 E _--__l 30% _Loss _- _-- 0 -- -- 70% Loss 10 _0A41_ 0.38 20 40 30 Time Steps 50 60 Figure 3-6: MIF-LQG control tests with varying packet loss on a day with nearly no wind, 24 October 2012. Several apparent flyers were removed from this plot (gaps). 3.6 Experimental Results Crosstrack errors over time are shown in Figure 3-5 for trials with acoustic-modems on 27 November 2012. Errors are shown in Figure 3-6 for Wi-Fi-only MIF-LQG trials on 24 October 2012 for calm wind conditions, and in Figure 3-7 on 16 October 2012 for strong wind conditions. Table 3.1 summarizes the results. Results from 27 November act mainly as a demonstration that we can control the kayak with sensor signals via the actual acoustic modem. In this trial packet loss rate was about 5% and wind conditions were zero to five knots. 24 October had close to zero wind, resulting in very low crosstrack errors; RMS levels were essentially the same for trials with no loss, 30% packet loss, and 70% packet loss. These errors were also significantly lower than that of a run with no crosstrack feedback (labeled Constant Set Heading), as expected. 16 October had significant chop with sustained winds of fifteen knots, gusting to thirty. We see a bias due to the disturbances, and a reduction in control fidelity with increased packet loss. Most dramatically, in the 70%-oss case the vehicle cannot maintain the track- line at all. Underlying this failure is the fact that the boat is operating well outside of the linear model; heading commands from the LQR exceed sixty degrees late in the run. At this signal level, progress toward the trackline is sub statianty 50 e-eimated, so that cor- 30 No Packet Loss __-_-_-_-_-_-_ MS .6 01 -30% Loss 10.8 50% Loss 141 70% Loss 2. I- liii I 10 20 30 40 Time Steps 50 60 Figure 3-7: MIF-LQG control tests with varying packet loss on a day with strong wind, 16 October 2012. Packet Loss Probability RMS Error (light wind) RMS Error (strong wind) 0% 30% 0.43 0.41 7.6 10.8 50% 70% -_14.1 0.38 28.3 Table 3.1: Comparison of RMS errors from experiments with light wind and with strong wind. rective actions are too small. Meanwhile, the error signal to the controller is erroneously well-behaved in the absence of packets containing crosstrack error information. These results highlight the effect of packet loss on feedback control systems, and motivate more detailed studies in a controlled lab environment on systems with both packet loss and quantization. 3.7 Summary This chapter detailed the results from an experimental test of an example packet-loss robust algorithm, the modified information filter. Heading control tests were conducted on a robotic kayak in open water, with the sensor measurements transmitted to the kayak using a shore-based acoustic modem and subject to realistic packet loss. These tests were 51 similar to true USBL-based control of an AUV, and serve as motivation for more detailed experiments in a controlled lab setting. 52 Chapter 4 Describing Function Derivations 4.1 Introduction In this chapter we derive and verify by simulation describing functions for information channels subject to packet loss and quantization. We start by deriving a DF for a general codec with multiple sensor inputs, and then apply the DF to four specific codec cases: Zero Output, Hold Output, Linear Filter, and Modified Information Filter. The first three are the most commonly-used codecs in the literature, and the last one is the theoretically optimum codec for an LQG-type system subject to packet loss. Monte Carlo simulations verify gains and phases computed by the DFs for all four codecs, for a variety of example systems. DFs for several types of quantizers are shown, and we prove that these DFs can be combined with the packet-loss DFs to describe cases with both packet loss and quantization. For clarity, Table 4.1 lists the mathematical symbols used in this chapter and their definitions. 4.2 Describing Function for General Multiple Input Multiple Output Information Channels Subject to Packet Loss We first derive a describing function for a multi-sensor binary-erasure information channel for a Multiple Input Multiple Output (MIMO) system, as shown in Figure 4-1. We examine 53 Symbol Sk P(k) Q(k) C n 9 0 k A coT I Kf y h G Y g A 'Tk a <D Oi a, Dk J K1 ...K5 z Zk Hk Fk Mk Definition at time step k output Decoded Decoder function Decoder function Controller Number of states of system Scalar binary packet loss variable Matrix of binary packet loss variables Time step variable Frequency Time step size Decoder DF gain Decoder DF phase Identity matrix Linear filter gain matrix Measurement at time step k Quantization bin size System model matrix System model matrix Time horizon for DF MIF encoded message at time step k MIF control signal variable Packet loss probability Expected value of 0 Input phase lag of channel i Input amplitude of channel i DF intermediate variable DF derivation intermediate variable Intermediate variables DF solution intermediate variable Zero output decoded output at time k Hold output decoded output at time k Linear Filter output decoded output at time k MIF output decoded output at time k Table 4.1: Summary of mathematical symbols used in this chapter. 54 the case where this channel is in the feedback path of a control system, though the same describing function will, in theory, apply to a lossy controller channel as well. In this system multiple sensor signals are encoded and sent through a mixed-loss binary-erasure channel, where different signals may be lost with different loss probabilities. The decoder updates a state estimate based on received signals and past state estimates, and sends this new state estimate to the controller. A quantizer block will be added to the system in a later section. Controller Plant C~z) Decoder P1(z) Encoder Binary Erasure Channel Describing Function Figure 4-1: Block diagram for a MIMO feedback control system with an encoder, binary erasure channel, decoder, controller, and plant. The describing function represents the encoder-channel-decoder blocks. We consider two general cases of the encoder-channel-decoder sequence. In the first, most general case, Sk, the decoded signal at time step k, can depend on all previous measurements, all previous decoded signals, and packet success histories. In the second, less general case, the state estimate takes a form given by Sk = P(k) + Q(k)Skl (4.1) where P(k) and Q(k) define how the signals are encoded, lost in the channel, and decoded. In this case, P(k) and Q(k) can depend on the current measurement, a system model, and binary variables describing whether sensor signals were successfully transmitted through the channel or were lost. The only direct dependence on previous state estimates or measurements is through the Q(k)Sk-l term. To derive the DFs for these two cases, we assume the system has n sensors and n states. If there are fewer sensors than states, the decoder 55 can treat the missing sensor signals as being lost in the binary-erasure channel. Thus, the assumption of n sensors and n states will still hold. To understand the meaning of these representations it is helpful to look at how Sk, P(k) and Q(k) are defined for several standard state estimation algorithms for systems subject to packet loss. We will consider the Zero Output (LZ), Hold Output (LH) and Linear Filter (LF) as example estimators with the structure defined in Equation (4.1), and the Modified Information Filter (LM) as an example estimator with the more general structure. We consider these algorithms because LZ, LH, and LF are the most commonly-used algorithms in the literature for packet-based control with loss, and LM is the theoretical optimal LQGtype control for packet-based systems with lossy sensor feedback. We will briefly describe these algorithms here, and analyze them in more detail in later sections. In LZ a received signal is passed directly and a lost signal is decoded as zero. In LH a received signal is also passed directly, but a lost signal is decoded as the previous estimate of that signal. The LF algorithm propagates the previous state estimate through a system model if a signal is lost, and computes a weighted sum of the measurement and the propagated model if the signal is received. The LM algorithm encodes the current and past sensor measurements into a specialized information vector. The decoder uses this vector if the signal is received, and propagates the previous state estimate through a system model if the signal is lost. The LZ decoder is typically used in regulation applications where states are regulated to zero and where computation power is limited. It is also common in applications with packet loss in the controller-actuator channel. The LH decoder could be used in the same applications as LZ, though because it is slightly more sophisticated it can also be used in non-regulation applications such as following reference signals. LF and LM are appropriate for applications where more computation power is available, with packet loss in the sensor feedback channel. The main difference in application is the LM requires the sensor side to be able to encode the measurement, while LF just requires a decoder. Table (4.2) defines the first three state estimation algorithms in terms of P(k) and Q(k) from Equation (4.1). 56 Decoder P(k) Q(k) LZ Ekyk 0 LH Ek& (I - 9 k) LF EkKfyk (-KfekC+I)G The LM estimator, with state estimate Mk at timestep k is defined as Mk = Ok [Y-(gk+ Wk)] + (I-k)GMk_1. The vectors A (4.2) and Wk depend on past measurements and state estimates and are defined in a Section 4.3.4. The variable yk is the nx1 vector of sensor measurements at time step k and G is defined as G = A + BK for system model given by matrices A, B, and C, and controller gain matrix K. For LF and LM we assume constant error covariance matrices, which results in a constant linear filter gain matrix Kf and constant inverse error covariance matrix Y. I is the nxn identity matrix. The binary erasure channel is modeled with the diagonal matrix Ok defined as Ok= [91,k 0 0 -. 0 0 0 J (4.3) On,k where the Bernoulli variable ei,k indicates whether the packet from sensor i was successfully received at time step k, defined as: i,k = 1, 0, - a( if transmission success, probability 1 if transmission failure, probability a; In this packet loss model sensor signal losses can be either coupled or independent. For independent losses, each Bernoulli variable 0 i,k is unique. For coupled losses, Bernoulli variables are shared between the coupled channels. For instance, if channels 1 and 2 are always lost or passed together, then 0 1,k = 6 2,k, such that 57 0 0 0 0 1,k 0 0 0 0 0 63,k 0 0 0 0 0*'. 0 0 0 elk o Ok= 6 (4.5) 0 0 6 n,k For use in future equations we will define the expected value of the binary erasure channel matrix as E[Ok] = (D, where 4) is the constant matrix I-ai 1-a] 0 0 [= 0 (4.6) 0 0 0 1-an Computing 4D depends on the type of packet loss in the model. For this work we assume Bernoulli loss, but if another loss type were assumed, such as Markov, the effect would be accounted for in computing 4). Note that in the case of channels with coupled loss, the expected matrix 4D is the same as if the channels had independent losses with the same probability of loss. For example, 4) is the same if 01,k and 8 2,k are independent both with loss probability a,, or if both are coupled with loss probability a1 . Because the describing functions depend on 4) and not on 0 k, this means independent or coupled losses both result in the same describing function. This outcome is verified by simulation in section 4.4.5, where it is shown that describing function gains and phases for LZ and LH are the same for the case of coupled or independent loss for a 2-sensor example case. In general, because of random packet losses, the mapping from sensor measurement to state estimate is highly nonlinear. However, we can approximate the mapping by a quasilinear describing function. This DF, as will be shown in later sections, can then be used as an analysis tool to study system limit cycling, and as a synthesis tool to design the system decoder. To derive the DF for state estimate Sk, we assume sensor input signals of the form [al sin(w(kr + 0 1)...a, sin(o(kr + n))]', for n input signals of amplitude ai (i = 1..n), all 58 of the same input frequency o, sampling timestep 'r, time index k, and potentially different phase shifts 4i. We use the prime notation [-]' to denote the transpose operation. The DF that best approximates the decoded output signals is the one with the smallest squared-error between expected output and DF output. This is written as the optimization objective min J , where J A,,Ts E (Dk(As, s) - Sk)'(Dk (AI T) - Sk) (4.7) -k=1 Here g is the number of time steps the minimization is taken over, and the DF is defined as the nxl vector Dk(As, Ts) = [As,I sin((o(kr - Ts,1))...As,, sin(co(kr - Ts,,))]' (4.8) with DF amplitudes given by As = [As, ... As,n] and phase shifts Ts = [Ts, ... Ts,]. Clearly g has to cover many cycles for good accuracy in D&, but we will show that practical results are still easy to obtain. The objective expands as gn As,i sin2 (o(kT - Ts,i)) E - J= k=1 i=1 + 2 1E[SkD(AsTs)1 k=1 M2 E [SSk] . (4.9) k=1 M3 Term m3 is not a function of either Ts or As, so it has no bearing on the DF solution and we drop it. Term ml can be simplified via trigonometric identities to 59 i=1 cos(2koarr) A g sin(2(oTs,i) \ i=1 / k=1 / - - cos(2o)Ts,i) Ai = sin(2kt)J. k=1 (4.10) / 2mi ( n If we multiply and divide each inner summation by 2 sin(cor) and use trigonometric multiplication identities, then 2ml 2E n 2i (g- cos(2wTsi)(sin(w(2g +1)r) - sin(or)) g 2sin (or) As n 2 EA i (4.11) icr sin(2oTsi) (cos(or) - cos(w(2g + 1),r)) . Expanding Dk(As, Ts) results in the new expression for m2: m2 = (E[Sk])'sin(okr) [As,, cos(o.Ts,1) ...As,n cos(wTs,,)]' - L (E[Sk])'cos(k'r) [As,, sin(coTs,1) ... As,n sin(CTs,n)]'k=1 In the case where the estimate can be represented by Equation (4.1) we observe that, if we initialize So = 0, the term Sk can be written compactly as (PQ k-1 /k P(k) + Q()) P(l) (4.12) and thus the expected value of Sk is simply E[Sk]= E[P(k)]+ ( E[Q(j)] E[P(l)]). (4.13) The expansion of ml depends on cos(2oTi) and sin(2Ti), and thus to simplify the objective function J for future computations we have similarly rewritten m2 in terms of cos(coTi) and sin(coTi) using trigonometric angle summation identities. We also write the objective function in terms of sine and cosine of the coTi and 2coTi terms, which allows later 60 simplifications. The objective works out to be = A2 [Ki +K 2 cos(2)T,i )+K 3 sin(2oT,i)] - J 2 As,i [K4,i cos((oTs,i) + K5 ,i sin(COT,i)] (4.14) where K1 , ...,K 5 ,i are given by K1 = g/2 (4.15) K2 = sin(o.(2g + 1)r) - sin(cor) 4sin(or) (4.16) cos(Coz) - cos(w(2g + 1),) 4 sin(oT) (4.17) K3 - K4sJ = K5sJ = E[Sk] sin(kaor) (i) - (4.18) E [Ski] cos(kowr) (i). (4.19) In the notation for K4s,i and K5s,i, [-] (i) indicates the ith element of the vector [-]. The s in the subscript denotes the S estimator used. In later DF derivations we will use the subscript z for the LZ estimator, h for LH, f for LF, and m for LM. To identify solutions for the optimization problem, we set derivatives dJ/dA,,i and dJ/dTs,i to zero. This results, respectively, in the two surprisingly clean sets of constraints ) s~ = K4s,icos(o)T,i) +K5s,isin(coTs7,) K1 + K2 cos(2o3T,i) + K3 sin(2coT,1 Asi = K5sicos(oTs,i) - K4s,i sin(wTs,) K3 cos(2(oTs,i) -K 2 sin(2wTs,i) (4.21) We can equate the expressions and then use trigonometric double angle identities to rewrite and cancel terms for Ts,i: 61 1 (4.22) Ts= - (arctan(zs,i) + 0i) = (K4s,iK3 - K2K5sj - K1K5sj) (K3 K5 si + K2 K4s,i - KIK4 s,i) (K5s,i - K4s,izs,i) 1+ -K 3z,.- 2K2zs,i+K3 , where zji ' (4.23) Because this is the unique solution to an unconstrained problem, we conclude that global optimality is achieved. 4.3 Describing Functions for Specific State Estimation Algorithms To illustrate the application of the describing function method, we next use Equations (4.22) and (4.23) to derive the DFs for the LZ, LH, LF, and LM state estimators. For simplicity we will assume all signals have zero phase shift, i.e. 4j = 0. To visualize these DFs we show examples of single input single output (SISO) cases of each algorithm. Block diagrams of the algorithms are shown in Figure 4-2, and describing functions in Figure 4-3. These examples are analyzed in more detail in Section 4.4. Note from Figure 4-2 that the output of LZ and LH are the measurement estimate, while that of LH and LM is the control signal. This is done to reduce the describing functions to SISO cases. MIMO versions would have the outputs of LF and LM as the state estimates, as will be seen later. Also note that only LM has an encoder, while all algorithms contain decoders. For reference, Figure 4-4 shows where the quantizers will fit into the block diagram for the SISO versions QLF, QLM, QLH, and QLZ. In the cases of QLF, QLH, and QLZ the measurement is quantized, and for QLM the encoded measurement in quantized. 62 Control Command Control Command Plant Cntrle .. L nMeasurementn o oOuertut j Binary Erasure Channel t--------------------- a menMeasurement SL H D escribing :Function ou ut D escribing F unction Binary Erasure Channel J r ------ Control Controller Plant - Cntrole i Control Command Controller Plant Measurement I EstimateI Plant Measurement ae Estimate - -- - - --- Measurement I iter r Binary Erasure Channel Deco der escribing F unction I Binary Erasure Channel Mo LMV Describing Function 4- - - - w-w ----w- w 1 Figure 4-2: Block diagrams of SISO versions of the four codec algorithms. Signals are labeled in red. Note that the output of LZ and LH are the estimate of the measurement, while that of LH and LM is the control signal. Also, only LM contains an encoder. 4.3.1 Loss with Zero-Output Estimator (LZ) The zero-output estimator (LZ) passes the input signal if the packet transmission was successful, and generates zero if the packet was unsuccessful. For this algorithm, P(k) = Ok[al...a,] sin(okr) and Q(k) = 0, as defined in Table 4.2. Thus, the state estimator is written as Zk = a,] sin(cokT) Ok [al ... (4.24) with the LZ state estimate at time step k given by Zk and E [Zk] = E [Ok ] [a . . a] sin(wkZ). Substituting this into Equations (4.18) and (4.19) yields 63 (4.25) 1 1 0.8- - 0.6- - Sent Signal Decoded Signal DF Approximation 0.6- 0.4~0 0.2 0- 0 -0.2- -0.2- - -0.4- k -0.4- -0.6- -0.6 -0.8- -0.8 -1 0 50 100 Time Steps 0 Signal Decoded Signal ---_DF Approximation 100 Time Steps - 0.4 0.4 0.2 0.2 2 0t ---Sent Signal --- - 0.6 150 ~--Decoded Signal - 0.8 - 0.6 DF Approximation 0 0 2-0.2 -0.2 -0.4- -0.4 -0.6- -0.6 -0.8- -0.8 -1 50 -ent -- 0.8 2 -1 200t 150 1 E Received Signal DF Approximation 0.4- 0.2 a Sent Signal - 0.8- 0 50 100 Time Steps 200 150 50 0 100 Time Steps 150 200 Figure 4-3: Comparison of LZ (top left), LH (top right), LF (bottom left), and LM (bottom right) blocks showing input and decoded signals. For the LZ DF, the system has 50% packet loss. The optimal describing function parameters for LZ are Az = 0.5 and T = 0. For LH, the system has 90% packet loss, and the fit has gain Ah = 0.9 and delay Th = 8 time steps. For LM and LF, the systems have 70% packet loss. The optimal describing function parameters for LF are gain Af = 0.154 and T = 25.85 time steps. For LM, the fit has gain Am = 0.148 and Tm = 27.82 time steps. [<D[ai...an](KI+K2) ] (i) K4zi = K5z'i = [CD[al... an]K31](i). (4.26) (4.27) These values lead to cancellations in Equation (4.2), which results in Zz,j = 0. Substituting Zz,j, K4z,i and Kszj into Equations (4.23) and (4.22) yields the describing function parameters Az,i = 4D[ai...an] and 64 T (4.28) Control Control Command Command Cntrle Controller Plant Estimated Estimated Measurement MMeasurement Plant Measurement Measurementt uQuantized Measurement Quantized Measurement Zero L C utput I Binary Erasure Channel Quantizer Hold rQLZi uni~]IDescribing Function CQuantizer output C LH D escribing F unction I Binary Erasure Channel I-------------------------- Control Control Command Controller ComPman Plant Pln IController Measurement Measurement State . -- Estimate %_ . - - - -Quantized Measurement w.- - -Li uaQLF n'ea 7 Quantizer nterr z Binary Erasure Channel 1Describing State - Quantized Encoded Measurement Estimate Decoder I Function Binary Erasure Channel MIF Encoder I I I Encoded Measurement Quantizer I I Describing i Function Figure 4-4: Block diagrams of SISO versions of the four codec algorithms with quantizers added. Signals are labeled in red. Note that the output of QLZ and QLH are the estimate of the measurement, while that of QLH and QLM is the control signal. Also, only QLM contains an encoder. The DF gain is thus ' = ai 1- ai. (4.29) These gain and phase shift parameters intuitively make sense, because the estimator Zk for the LZ algorithm is already in the form of a gain multiplying a phase-shifted sinusoid. 4.3.2 Loss with Hold-Output Estimator (LH) We next consider the hold-output estimation algorithm, LH, again assuming an input signal of the form [aI...an]sin(cok-r). As before, we model the binary erasure channel with a Bernoulli variable matrix Ek indicating whether each signal was successfully received at time step k, and the hold-output decoder with variable Hk. Hk is given recursively by 65 Hk = O[al ... a,] sin(okT) + (I - Ek)Hk_. (4.30) (3 In the context of Equation (4.1), P(k) = Ok[al...a,] sin(okr) and Q(k) = (I - Ok). Taking expectations, we see E[P(k)] = 4[ai...aj]sin(okr) (4.31) E[Q(k)] = (4.32) (I -<D). If we substitute these expected values into Equation (4.13), we find the expected value of Hk is k E[Hk] = (I_ 4)k ([al... a,] sin(wlr). (4.33) This expected value of Hk can now be used to solve for K4h,j and K5h,j. Using Equations (4.18) and (4.19) we find g K4hJ k ]=1 (I - D)klD[a ...a,} sin(olr) sin(o(k),r) (i) = (4.34) k= g K5hi k 1: E - (Dk-I(D[al... an]sin(co1,)cos((D(k),r) (i). (4.35) -k=1 -=1 Now the DF parameters are given by where Zh,i = 1 = - (4.36) arctan(zh,1 ) Th,, (K4hiK3 - K2K5hi - K1K5hi) (K3K5h,i + K2K4h,i - K1K4h,i) (K5h,i - K4h,izh,i) Ah +h -K3zh,i - 2K2zh,i + K3 66 (4.37) 4.3.3 Loss with LQG-Type Linear Filter Estimator (LF) We will next derive a DF for a LQG-type linear filter estimator. We refer to this case as LF. For this we follow the usual LQG-type construction. The prior estimate propagates with Xkjkl1 = Aik-1k_1 +BUk-1, where A and B are constant system matrices, and Ukl1 is the in- put. If the signal is received, we update the posterior as skik = xkIk_1 + Kf (yk - CIk_1) = (I - KfC)^Ik-_1 + Kfyk where Kf is the filter gain matrix, Y is the measurement, and C is a constant output gain matrix. If the signal is not received, we perform no update: Xkjk = Xklk_1. Finally, the control command is Uk = KU Xkjk, where Ku is a constant gain matrix. Although Kf can be optimally updated at each time step, depending on whether or not the packet is received, many previous works have pointed out that real-time applications generally use constant gains, e.g., [94] and [76]. Some reasons to use constant gains include less computation time required and simplicity of implementation in networks where complexity issues are important. Thus we have fixed Kf in our analysis here. Clearly a constant Kf could be designed if some properties of the packet loss were known, as outlined in [89], but this too is outside our present scope. Define Fk -k Xkj and G=A + BKu. Then we can easily derive Fk = Ok [(I - KfC)GFk_1 + Kfyk] + (I - Ok)GFk_1. (4.38) This equation can be rewritten as Fk = OkKfYk + (-KfC+I)GFk-1= OkKfyk and Q(k) = (-KfekC I)G. Thus, assuming a sinusoidal input as before and taking expectations we find E[P(k)] = cIKf[al...a,] sin(kcor) E[Q(k)] = (-Kf4IC+I)G. 67 + In accordance with Equation (4.1), this gives P(k) (4.39) We next use these expected values to find E[Fk] from Equation (4.13). This yields kkI ((-Kf4C+I)G)- E [F] = (4.40) Kf [al...an] sin(cofl). l= I This expected value of Fk can now be used to solve for K4f,; and K 5f,j. Using Equations (4.18) and (4.19) we find K K4f,i g k Kf [a .. .an] sin(olr)sin(.)(k)T ) (i) ((-KgIC + I)G)k ~ = -k=l1=1 K5f, = ((-KfDC+1)G)k-lDKf[a...an]sin(clr)cos(o(k)) (i). - -k=l1 =1 Now the DF parameters are given by Tf,i = - (4.41) arctan(zf,;) (K4fiK3 - K2K5fj - K1K5fj) where zfi = (K3 K ' K35f,i +K2K4fi - K, K4f, i) (K5f,i - K4fizfj) 1+Zfj -K3zf, -2K2zf,i+K3 4.3.4 (4.42) Loss with Modified Information Filter (LM) The MIF-LQG strategy was proposed in Gupta et a]. [40] for a lossy link between the sensor and controller. In this strategy, instead of sending the most recent measurements or the innovation to the controller at each time step, a specialized information vector is sent. We note that the implementation considered here is a subset of Gupta's algorithm: the entire sensor measurement is either successfully transmitted or lost. Let the sensor noise covariance be R, and the process noise covariance be Qp. The measurement at time k is yk, and the control Uk. The control gain matrix is K, designed in this case as an LQR. At each time step we implement the following: 68 Sensor Side: Initializing suitably, make the following calculations: C Ykjk = Ykjk-1+CTRS ykc = Yklk-1AYlk- k = CT Rsl Yk gk = Ak + Yklk-1, and send it Yk+1Ik = QP1- Q _ A(ATQ-A +Ykjk)-1ATQP. Controller Side: 1. Update Y and compute k as in the first two steps on the sensor side. From a zero initial value, update ' by Tk= Yk IlBUkl + 'k~k-1. 2. If the message is successfully received, update the state estimate as k 1 Xk (k+--k). Else, update it as Xk =AUk-1 +BUk_1. 3. Compute the new control Uk = -Ku k. 4. Evolve Y as in the last step on the sensor side. If we assume the error covariance matrix is constant, then this implies Ykjk, Ykjk-1, and y are constant, with YkIk = Y1, Ykk-1 = Y2 , and y= Y2AY 1. This also yields the simplification Tk = Y2BUk_1 -+ yTk_1. Then, defining Mk as the state estimate at time k, the control algorithm can be written as Mk = Ok [Y1' (gk + Wk)] + (I 69 Ok)GMk-1 (4.43) with the Bernoulli variable matrix Ok defined as before. In order to find the expected value of Mk for use in Equation (4.13) we must first derive closed-form representations of the vectors g and Wk. For sinusoidal inputs, the specialized information vector g is defined as g = CT R- [ai ...an] sin(wmkr) + Ygk-1 (4.44) and can be rewritten as sin(olt) CTR-1 yk gk= [a...any (4.45) 7 =0 To simplify this expression, we observe that the sinusoidal term can be rewritten as the imaginary part of a complex exponential function. This gives k sin(oft) _ 7 [k (eimi' 1 i. Imi[ =0o (4.46) . 1=0 1 Now, we use finite geometric series relations to expand the summation as k sin(rIT) [I - (1 e )k+1 Im['(4.47) 1=0 (4.47) We next rewrite the exponential terms in trigonometric form, yielding k sin(ot) = _ IM [I y- yk 1 (cos((k+l)w1r) + isin((k+ )co)) I - y-(cos(wor)+ isin(or)) (4.48) We now multiply numerator and denominator by the complex conjugate of the denominator, and take the imaginary part of the result. Substituting this result back into Equation (4.45) gives I k= k cos((k+ )c Yk+1I ) sin((r) cosk+ _ Cos(ST) Ik+) sin((ii s 70 C( R) ' R~[ai...an,]. (4.49) The variable 'k is defined as Tk = Y2BUk- 1 + (4.50) 7'k- and can be rewritten as k-i T Y= yk-1 E 1=0 y-'Y 2BKuM. (4.51) Using this expression for Tk and Equation (4.43), we next write out the first ten terms each one is a function of MO and g for k = 0...9, with no dependencies on M1 ,M 2 ,. - MO, ... ,M9 . We reapply Equations (4.43) and (4.51) repeatedly to each of these terms until With this set of terms it is possible to identify patterns in the coefficients of Mo and g. The pattern identification in this step is the intellectual crux of deriving the MIF describing function, and is non-trivial. We find the closed form expression for Mk is given by k (4.52) Mk = MOVk + I (Vk-lOkYC'gl) 1=0 where k-2 Vk = m=1 [ (OkYC'Y 2BK + (I- Ok)G) mNk,mj + (EkY 1 Y 2BKu + (I - Ok)G)k (4.53) with VO = 1, VI = (Okyj-1-Y2BKu + (I - Ok))O), and Nk,m = E (OkYY2BKu)'yi i+j=k-m,j;>i j i ( l . (4.54) * r-i We can simplify the expression for Mk by initializing MO = 0. We next take expectations, and see that the expected value of Mk is given by 71 k k-l-2 + (I -<D)G)m E[Mk] = EY~Y2B 1=0 m=0 1 (4.55) x -i) +(cYC Y2BKu+ (I- c)G)k 4Y (Y)-(Y2BK)- 1 1 gl. 1 This expected value of Mk can now be used to solve for K4m,i and K5m,i. Using Equations (4.18) and (4.19) we find K4m,i E[Mk] sin(o(k)v) (i) = -k=l K5m,i =- E[Mk] cos (co(k),r) (i). -k=1 Now the DF parameters are given by 1 (4.56) Tm,i = - arctan(zm,j) K4miK3 - K2K5m,i - K1K5m,i K3K5m,i + K2K4m,i - KiK4m,i (K5mi - K4m,izm,i) Am, i 4.4 4.4.1 .- K3zm,i - 2K2zm,i 1+ zm +K3 .2 (4.57) Model Verification Convergence The DFs will be most accurate if at least one period of the input sine is sampled, and if at least four samples are taken each period. This leads to a target range for nondimensional frequency < WIC < -. - 2 g 72 (4.58) Figure 4-5 shows the derived values of Th for a SISO case for g between 10 and 1000, at frequency coz = 0.1 and for a range of packet loss probabilities. Similar convergence is seen in plots of Ah, for different input frequencies, and for the LF model. Because of this, we assume g=1000for all LH and LF DF computations in the rest of the paper Computation cost scales strongly with g, and there is no reason to choose a value higher than necessary. 0.7 0.60.50.4- ---0.6 -0.8 E 0.3- =0.4 0.2 0.1 -0.1- -0.2 1 1.5 2 Log1 0 g) 2.5 3 Figure 4-5: Convergence of the LH describing function phase formula with g, for different values of a, and on = 0.1. Figure 4-6 shows the derived values of Tm for the SISO contact force example problem described later, for g between 6 and 80, at frequency oro = 0.1 and for a range of packet loss probabilities. Similar convergence is seen for Am. Because of this, we assume g = 80 for all LM computations for the rest of the paper. Computation cost for LM scales even more strongly with g than in the LH and LF cases, because the LM DF contains several additional nested summations. 4.4.2 LH Verification We will now verify by simulation the LH, LF, and LM describing functions over the valid frequency range, using the values of g previously determined for convergence. We need not verify LZ by simulation, because of its simplicity. The model and simulation results for LH are given in Figure 4-7 for a representative range of packet losses (40%, 60%, and 80%), and we see good agreement for gains and phases. 73 -0.8 -0.9 -0.6 -0.8 -1.2 - -1.4 9-1.6 0.9 1 1.1 1.3 1.2 Log (g) 1.4 1.5 1.6 Figure 4-6: Convergence of the LM describing function phase formula with g, for different values of a, and ar = 0.1. Note that LH is a universal descriptor, and does not depend on a system model. Also, the LH model can apply independently to each channel of a multi-sensor system, and thus model verification for one channel, as shown here, is sufficient verification for the multichannel case as well. 4.4.3 LF Verification To verify the LF and LM describing functions, we study several different SISO and MIMO examples that are open-loop stable, open-loop unstable, minimum phase, or nonminimum phase, with different numbers of inputs and outputs. Unlike LH and LZ, LF and LM depend on a plant model and are not universal descriptors. This is why it is necessary to verify them for specific example cases. For the first example, we study a system with single input to and single output from the describing functions. Consider a two-state mass-spring-damper system with an actuator force F acting on the mass, and only position feedback, as shown in Figure 4-8. This is a simple model of a robotic contact task on a compliant surface. The description is mX + bi + kx = F, where b is the surface damping coefficient and k is its spring constant. We use the values m = 4, b = 2, and k = 1. For LF, we fix the state and control penalties and solve for the LQR controller gain K = [-0.38 - 0.86]; for fixed process and sensor noise, the constant linear filter gain is Kf = [0.49 0.1 1]r. We discretized the system model using r = 0.1 and a zero-order hold. 74 .... ....... ........ ...... ... 1 0.8F Ca 0.6h Sim a=0.4 -Model a=0.4 --- 0.6 -0.6 --- 0.8 -0.8 --- C 0.4 0.2F -2 -1.5 -1 Log10 of Input m -0.5 0 (1 -10 -20 (D W~ - -- Sim (x=0.4 -Model x=0.4 --- 0.6 -0.6 - - -0.8 -0.8 -30-40- -50- ' *I -2 -1.5 -1 Log10 of Input o -0.5 0 Figure 4-7: Gain (top plot) and phase o of the LH model. These curves are universal: they do not depend on the plant model or the controller. 75 X Figure 4-8: Example 1-mass, 1-input 1-output system. Mass is connected by a spring and damper to a wall, and acted on by a force. The closed-loop system has damping ratio 0.56 and a natural frequency of 0.60 rad/sec. The bottom left plot in Figure 4-3 refers to this model, with 70% packet loss, 0) = 1, and a = 1. We give the DF gain and phase in Figure 4-9, taking the position measurement signal to the control command. The image covers a range of frequencies and packet loss rates; simulations confirm the analytical model. Note that the Monte Carlo simulations are much more expensive for the LF than for the LH, and thus we plot less simulation data in Figure 4-9 than in Figure 4-7. For a second SISO example we study an inverted pendulum system which is open-loop unstable. The system is shown in Figure 4-10. In this system an actuator torque T acts on the pendulum arm. The massless arm is of length L and the end has mass m acted on by gravity. The position of the arm with respect to vertical is given by 6. For this example we assume 0 is small, such that we can use the approximation sin(6) = 6. The equation of motion for this system is T = mL 2 6 - mgLO. We use the values m = 2 and L = 1. For LF, we fix the state and control penalties and solve for the LQR controller gain K = [- 1.36 - 0.43]; for fixed process and sensor noise, the constant linear filter gain is Kj = [0.64 1. 9 9 ]T. We discretized the system model using r = 0.1 and a zero-order hold. We give the DF gain and phase in Figure 4-11, taking the position measurement signal to the control command. The image covers a range of frequencies and packet loss rates; simulations confirm the analytical model. For a third SISO example we study an all-pass symmetric lattice circuit system which 76 ... .......... ......... . .... 0.18 0.16 - 0.14 - o 012 o Sim 0 Model a=0.4 0.6 0.6 a=0.4 0 0.8 1--0.8 S-0.1 0.08 S 0.06- 0.04- 0.02o0 -2 -1.5 -1 -0.5 Log,, of Input at 0 -140. -160 - -180 -200 Sim --- -220 a=0.4 Model 0 0.6 a=0.4 0.6 0 0.8 -- -240 - -0.8- -20 -2 -1.5 -1 Log of Input cn -0.5 0 Figure 4-9: LF describing function gain (top plot) and phase (bottom plot) from analysis and Monte Carlo simulation, for the contact task example. 77 g T Figure 4-10: Example 1-mass, 1-input 1-output inverted pendulum system. is nonminimum phase, meaning it contains zeros in the right half plane. The system is shown in Figure 4-12, and is used in electrical engineering applications to change a system phase while maintaining unity gain [22]. In this system the voltage vi is input to control the output voltage v0 , with the circuit consisting of resistors, capacitors, and inductors. The equation for this system is given by CLVO + CRO + 1 = CLVi - CRi + 1 (4.59) and has two left-half-plane poles and two right-half-plane zeros. We assume for this exampleR = L= C = 1. For LF, we fix the state and control penalties and solve for the LQR controller gain K = [-0.65 - 0.37]; for fixed process and sensor noise, the constant linear filter gain is Kf = [0.0024 -0. 0022 ]T. We discretized the system model using v = 0.1 and a zero-order hold. We give the DF gain and phase in Figure 4-13, taking the output voltage measurement signal to the input voltage command. The image covers a range of frequencies and packet loss rates; simulations confirm the analytical model. We next verify the LF model for a multi-sensor system. We consider the same plant as in the SISO mass-spring-damper system, but assume sensor measurements (xi and x2) 78 .. .... .... . ....... ..... l."', - '. .. . ... .......... . .. .......... ... ..... .. .... .... .. ...... 0 Sirn a=0.4 2.5 0.6 0.6 0.8 0.8 0 S -- 2 a=0.4 Model -- 0 -- - - 0.5 -2 -1.5 -1 -0.5 Log, 0 of input aT 0 -170 -180 -190 -200 -210 S E -220 -230 - 0 Sim a=0.4 0 0.6 -- Model a=0.4 -0.6 o -240 0.8 -0.8 -250 -2 -1.5 -1 -0.5 Log1 0 of Input wT 0 Figure 4-11: LF describing function gain (top plot) and phase (bottom plot) from analysis and Monte Carlo simulation, for the inverted pendulum example. 79 R Vo Vi L L -AAA R Figure 4-12: Example 1-input, 1-output all-pass symmetric lattice circuit system. are taken of each state (i.e. position and velocity of the mass). Both sensor measurements are sent through the channel and the 2-element state estimate is output. The signals have significantly different loss probabilities, with 30% loss probability for x, and 70% for x2. We fix the state and control penalties and solve for the LQR controller gain Ku = [-7.73 - 9.95]. (4.60) For fixed process and sensor noise, the constant linear filter gain is Kf= 0.055 0.019 [0.014 0.034 J (4.61) We discretize the system model using 'r = 0.1 and a zero-order hold, and again see good agreement between simulation and DF predicted gains and phases. We additionally verify the LF model on a multi-sensor MIMO system with 1 input and 2 outputs. We consider a system with two independent masses on a frictionless surface, with a spring connecting them to each other, a damper connecting one mass to a wall, and a force acting on the other mass. This setup is shown schematically in Figure 4-15, with the input force on m2, and output measurements x1 and x2. This system is described mathematically by the equations m1p1 +bx1 +kx1 - kx2 = 0 (4.62) = F (4.63) -kx 1 + m2x2 + 80 kX2 (1.11/ 0.06 0.05 o o Sim a=0.4 Moddel a=0.4 0.6 - L-M 3t0.04 1 0.6 0 0.8 -0.8 0.03 0.02 0.01 -2 -1.5 -1 -0.5 Log10 of Input m 0. 5 o Sim x=0.4 -Model a=0.4 -50 [ 0 - -100 0 0.6 -0.6 0 0.8 I -- 0.8 a.-150 -200[ -2 -2 -1.5 -1 -0.5 Log, 0 of Input on 0 0.5 Figure 4-13: LF describing function gain (top plot) and phase (bottom plot) from analysis and Monte Carlo simulation, for the nonminimum phase circuit example. 81 0 0 0 0 Sim x1,A=0.3 Model 0 Sim x2,a=0.7 - Model 0.6- - 0.5W0.4 0 0.3 - 0.2 0.1 0 -1.5 -2 -0.5 -1 Log, 0 of Input ot 0 150- o Sim x1 ,a=0.3 Model o Sim x2,a=0.7 -Model -- 100 50 0 -50- -10 -2 -1.5 -1 -0.5 Log10 of Input on 0 Figure 4-14: MIMO LF describing function gain (top plot) and phase (bottom plot) from analysis and Monte Carlo simulation, for the 2-sensor contact task example. 82 ... ....... .. ........ . ..... .... .. .. .... .. .... . ..... . ........................ ........... .......... Figure 4-15: Example 2-mass, 1-input 2-output MIMO system. Masses are connected by a spring to each other, a damper to a wall, and acted on by a force. and can be represented in state space with state vector [s] For this example we choose parameter values k = S2 s 3 S4] = [xi x 1 1, b = 2, ml = 0.5, and m2 = x2 2]. 4. We fix the state and control penalties and solve for the LQR controller gain K= -[0.72 0.17 0.65 2.50]. For fixed process and sensor noise, the constant linear filter gain is Kf = 0.014 0.0030 0.019 0.0014 0.0026 0.0029 0.0088 0.0037 0.019 0.0090 0.037 0.010 0.00094 0.0033 0.0090 0.093 .(4.64) To verify the DF gains and phases we consider an example scenario where sensors for states S2 and S4 do not exist (i.e. measurements lost with probability 100%), and measurements from sensors si and S3 have loss probabilities 30% and 10% respectively. For this scenario we assume arbitrary input amplitudes for si and s3 and arbitrary phase differences to allow for effects of process and sensor noise. We assume states S2 and S4 are shifted by r/2 radians in phase from states sI and S3, respectively, because of their position-velocity relationship. For the same reason we also assume the magnitudes of S2 and S4 are equal to the magnitudes of si and S3 multiplied by the input frequency. Figure 4-16 shows good agreement between DF and Monte Carlo gains and phases for this scenario. To further verify LF, we consider a final additional example case, where three masses are connected by springs to each other, by a damper to a wall, and acted on by two forces, as shown in Figure 4-17. This system has two inputs, six outputs, and six sensor channels. 83 ... .. ................ 2.5- o Sims, a=0.3 -Model Sims a=1 Model o Sim s3 a=0.1 0 o 2 - ', 1.5 Model 0 Sim a= s4 - Model 0.5 0 -0.5 -1 of Input at -1.5 -2 Log Sim g 150L - 100- 0 s a=0.3 Model 1 Sim s a 1 a y aa 50- -- Model -- Model - S4 O'IM s4a=1 Model 0~ Simss a=0-. 1 0 -ml -50 -100- 150 -2 -1.5 -1 Log, 0 of Input -0.5 w 0 Figure 4-16: MIMO LF describing function gain (top plot) and phase (bottom plot) from analysis and Monte Carlo simulation, for the 1 -input 2-output double mass example. 84 ..... . . .. .... .... .. X2 , -4-+ b X3 k2 mF F2 Figure 4-17: Example 3-mass, 2-input 3-output, 6-state MIMO system. Masses are connected by springs to each other, a damper to a wall, and acted on by a force on m 1 and a force on m2. This system is described mathematically by the equations m1jY+ bk1 + k1 x1 -k -klx 1 + + m2x2 k1 x 2 - k2 x 3 1 x2 = F1 (4.65) + k 3x 2 = F2 (4.66) - 0 (4.67) -k 2x 2 + k2x 3 + m 3X3 and can be represented in state space with state vector [SI s2 S3 S4 S5 s6]' = [XI )I X2 e2 X3 )3]'. (4.68) For this example we choose parameter values k1 = 1, b = 2, m, = 0.5, m2 = 4, k2 = 1, and m3 = 2. We fix the state and control penalties and solve for the LQR controller gain Ku=- 0.63 0.32 0.18 0.61 1.14 3.09 0.11 0.86 0.07 0.35 0.25 0.99 For fixed process and sensor noise, the constant linear filter gain is 85 (4.69) o 3 - 2. 5- - Model 0 Sim s, =0.1 Model o Sim s a=1 o 2li0 1. - 51 o 0. 5 o Sim s, a=0.3 Model Sim s, a=1 Model 0 Sims Model 0 Sim s a=0.5 a=1 7-Model .am 0 -2 -1.5 -1 -0.5 Log,,) of Input corT 0 100 50 0 -50 Q_ -100 -150 -200 -2 -1.5 -1 Log,, of Input o -0.5 0 Figure 4-18: MIMO LF describing function gain (top plot) and phase (bottom plot) from analysis and Monte Carlo simulation, for the 2-input 3-output three-mass example. Legend is same for both plots. Kf = 0.009 0.002 0.013 0.0004 0.011 0.005 0.002 0.002 0.006 0.002 0.002 0.002 0.012 0.007 0.026 0.007 0.015 0.008 0.00002 0.002 0.005 0.008 0.002 -0.0009 0.012 0.002 0.015 0.002 0.028 0.007 0.005 0.002 0.009 -0.0006 0.005 0.011 (4.70) To verify the DF gains and phases we consider an example scenario where sensors for states S2, S4, and s 6 do not exist (i.e. measurements lost with probability 100%), and measurements from sensors si, S3, and s5 have loss probabilities 30%, 10%, and 50% respectively. We plot DF gains and phases in Figure 4-18 and again see good agreement between model and Monte Carlo simulation. 86 - __........ ... ........... .... .... .... .. .... ............ ...... ........ .. ....... ..... ...... . . .... .. ..... ......... ........... 1 0.9 0.8- 0 Sim no=0.4 0.7 - -- Model a=0.4 -Modela=0.4 0 0.6 0.6- -0.6 ;0.5 - -0.8 0 0 0.8 - 0.4 - 0.3 0.2- 0.1 Log1o of Input ot 5 -140 - -130 -150-1600) -170 0 Sim a=0.4 S-180 -200 Model a=0.4 - (D-190 0 0.6 - -0.6 0 -210 0.8 -0.8 -220 -230-240-2 -2 -1.5 ipt -1 d -0.5 Log1 0 of Input codt L 0 Figure 4-19: LM gain (top plot) and phase o (bottom plot) from analysis and Monte Carlo simulation, for the contact task example. 4.4.4 LM Verification To verify LM we consider some of the same examples used for LF. We first consider the one-mass SISO example case used for LF, with the same plant model and controller gains. The model and simulation results for LM are given in Figure 4-7 for the SISO version of the example, and again we see good agreement. The bottom right plot in Figure 4-3 refers to this model, with 70% packet loss, co = 1, and a = 1. As with LF, the Monte Carlo simulations are much more expensive for the LM than for the LH, and thus we plot less simulation data in Figure 4-19 than in Figure 4-7. We also plot the two-sensor case with the same plant and controller in Figure 4-20. In this case the two inputs to the DF are the states, position and velocity, and the two outputs are the estimates of the states. As in the MIMO LF simulation, we assume significantly different loss probabilities in each channel (30% for one and 70% for the other), and see 87 0.9 0.8 0.7 0.6- 0 0.5- - 0.4 - Sim xgoc=0.3 05odel - M 0 Sim x2 a=0.7 Model Logl 0 of Input o . 0.3 0 -5-10 -- -15 - -20 -2 (25 - -30 - Si ,a=0.3 Model 0 Sim x 2 (=0.7 Model -35- .-40- -2 -1 5 Log~c of Input mr Figure 4-20: LM gain (top plot) and phase w (bottom plot) from analysis and Monte Carlo simulation, for the MIMO contact task example. good agreement between simulated and analytically-determined gains and phase losses. Finally, we verify LM for the 3-mass, 2-input, 3-output system described previously. The same packet loss scenario is assumed, and good agreement between model and DF prediction is again seen in Figure 4-21. 4.4.5 Coupled Losses To verify the mathematical assertion that coupled losses lead to the same describing functions as independent losses, we compare the gains and phases found by simulation for the LH and LZ models for coupled and independent channels. For these simulations we assume two measurements are passed through a lossy channel and decoded either by LZ or LH. In the coupled case the measurements are lost or passed together, and in the independent case they are lost independently with equal probability. For LZ we plot the root mean square 88 ..... - ......... .. ......... ..... . .... ...... .. .. - ------- .......... .. ...... 7 - 6 0 Sim sI Model a=0.3 0 Sims 2 , =1 Model a Sims3, a=0.1 Model o Sims4, c=1 Model 0 Sim s5, a=0.5 Model 0 Sims6, a=1 5 0 - 4 3 2 0 * -2 -1.5 Model - 0 1 - - - - - a e - -1 -0.5 Log10 of Input on On 30 1 501 0 0050-- 0. 0 50- - -11 00 -2 -1.5 -1 Log, 0 of Input -0.5 0 0o3 Figure 4-21: LM gain (top plot) and phase co (bottom plot) from analysis and Monte Carlo simulation, for the 3-mass MIMO example. Legend is same for both plots. 89 difference Glz between the gains for the coupled and independent channels, defined as GIZ = (Gj; - Gic) 2 + (G 2 ; - G2c)2 (4.71) where G1 ; is the gain for channel I with independent loss, G1, is the gain for channel 1 with coupled loss, G2i is the gain for channel 2 with independent loss, and G2c is the gain for channel 2 with coupled loss. We expect Glz to be zero over the range of valid frequencies, and indeed this is seen in Figure 4-22. For this simulation we have assumed a time step of 0.1 seconds and test packets loss probabilities of a = 0.4,0.6 and 0.8. a=0.8 o 0) 0 C 0) .2 0 0 0 GO 0 0 0 0 o0 0 0 0 0 0 0 0 (x=0.6 0 C 0 .1-------------------------------------o6=0.4 -2 -1.5 -1 Log 0 of Input on -0.5 0 Figure 4-22: Gain difference between coupled loss model and independent loss model for two-channel LZ. We perform similar simulations for the case of the LH decoder, and also see zero mean square differences in gain and phase as expected, as shown in Figure 4-23. 4.5 Quantizer Describing Functions We next review the describing functions of several common types of quantizers. These DFs will eventually be combined with the lossy channel DFs to describe channels with both packet loss and quantization. 90 .. .......... ............. II a=0.8 0 %- C U) 11) 0 0 p 0 p 0 G0 a=0.6 0 0.1 0. 0 0 -2 -1.5 0 0 0 0 0 0 0 -1 Log, 0 of Input on -0.5 0 a=0.8 0 0 0 0 0) -o a, 0 C 0) 0) a--0.6 0 0) (U 0~ 00 2--------------------------------------ac=0.4 0 0 -2 0 -1.5 p 0 -1 Log, 0 of Input p C on -0.5 0 0 0 Figure 4-23: Gain and phase differences between coupled loss model and independent loss model for two-channel LH. 91 4.5.1 Uniform Quantizer Quantizers have well-known describing functions [32], and we will treat here the uniform round-down quantizer with bin size h and input amplitude a. The results in this paper can easily be extended to a logarithmic quantizer [115], for which we show the DF in Section 4.5.2. The uniform quantizer for a SISO channel has describing function N(a/h), which carries no frequency dependence or phase: 4h N () (2i - I)h nq ra . 2 2a 1 (4.72) 2q + 1 2 ha h - 2nq 2 where nq is an integer defining which quantization bin a/h is in. Figure 4-24 shows the uniform quantizer DF gain as a function of a/h. As the ratio a/h increases, the quantization becomes finer and the gain approaches unity. . . 1 5 5 -- 0 2 4 6 8 10 a/h Figure 4-24: Describing function gain N(a/h) for the uniform quantizer [32] with bin width h and input signal amplitude a. The MIMO version of the quantizer DF for input [al,..., anI' and sensor quantization bin sizes hl,..., hn is simply a diagonal matrix given by 92 N(ai/1hj) 0 ... an]/hh) 0 0 0 0 N. aN([a 0 (4.73) N(anlhn) For simplicity in future derivations we will assume a constant quantization bin size h for all sensor channels. 4.5.2 Logarithmic Quantizer The logarithmic quantizer qiog with quantization density p is defined as qjOg (v) = p , <V < (4.74) with the SISO describing function [32] 4 nq N(og (a) = -- E (p2-pa- ) 2a (l+P)Pi_) (4.75) 2 . (+p)pnq (I +p)pnq-1 a < 2 -< 2 -a 2 We plot the DF of the finite log quantizer in Figure 4-25 as a function of input amplitude a, quantizer parameter p, and deadband region. The top plot is for a scenario with fine quantization (minimum quantization bin size p 1 000), and the bottom plot for coarse quantization (minimum bin size p 2 ). We see that, for fine quantization, the DF gain starts out near one for low a and is different than one at high a, which matches intuition that the log quantizer is most accurate near the origin. For coarse quantization the DF gain is different than one over a larger range of a, which is consistent with it distorting the input signal more. The MIMO version of this DF is constructed in a similar manner to that of the MIMO uniform round-down quantizer DF. Because we can formulate the log quantizer in a similar way as the uniform quantizer, the analytical describing function results could be applied to either. For the remainder of the paper we assume for simplicity that uniform quantizers are used, though results could be applied to log quantizers as well. 93 1 0.8 Z 0.6 0.4- - p = 0.25 -0.5 - 0.2[ 0 2 4 6 a 0.75 8 10 1 0.8 Z 0.6 C 0.4 -p = 0.25 -0.5 0.75 0.2 0 2 4 a 6 8 10 Figure 4-25: Describing function gain for log quantizer as a function of input magnitude a and quantizer parameter p for fine quantization (deadband p 100 0 , top plot) and coarse quantization (deadband p 2 , bottom plot). 94 4.6 Combined Quantizer and Encoder-Channel-Decoder Describing Functions We now consider the scenario where sensor signals are quantized before being sent through the lossy feedback channel, as illustrated in the block diagram in Figure 4-26 for the general MIMO case. We aim to derive a DF for the entire quantizer-encoder-channel-decoder sequence, based on the DF for the quantizer and the DF for the encoder-channel-decoder. Controller Plant C(z) Ir m -pw w ~ "W : - Decoder MI P(z) WuWWm " g o " W Wm~ Quantizer Binary Erasure Channel ip i 1 sj Encoder a - W Wi -WWpg I Mopo W N W Describing Function Figure 4-26: Block diagram for a MIMO feedback control system with a quantizer, encoder, binary erasure channel, decoder, controller, and plant. The describing function represents the quantizer-encoder-channel-decoder blocks. The quantizer DF is independent of input frequency and the encoder-channel-decoder DF is independent of input amplitude. These facts, however, do not imply directly that the aggregate DF is simply the cascade of the encoder-channel-decoder DF and the quantizer DF. We will show, however, that it is possible to simply cascade the DFs in the cases of LZ, LH, LF, and LM. We refer to the DFs for the quantizer cascaded with the encoder-channeldecoder DFs as QLZ, QLH, QLF, and QLM, respectively. 4.6.1 Quantizer and Zero Output To prove the quantizer and LZ DFs can be cascaded, quantize the input sine signals with bin size h. The decoded signal becomes Zk = kh [al...a sin(kr) hn where [.] represents the round-down (or floor) function. 95 J(4.76) Using the same derivation as described in Section 4.2, the gain and phase for the QLZ are given by 1 Tz,= - where Zqz,i (4.77) arctan(zqz,i) K4qz,iK3 - K2K5qz,i - K1K5qz,i K3 K5qz,i + K2K4qz,i - KiK4qz,i = 1 +qzi (K5qz,i - K4qz,izqz,i) ' -K3z 2i - 2 and K2Zqz,i + K3 Here K1 , K2 , and K3 are as above, and there are two new scalars: K4z,i = [4D gh [[al...anIin(Wkr) sin(cokr)] (i) (4.79) _[al cos(okr)](i). (4.80) k=t -[c K5qz,i = h .. a,] in(k) k=1- If we now apply the quantizer DF gain, we see that K4qz,i = N(ai/h)K4z,i and K5qz,i = N(ai/h)Kz,i. This leads to cancellations in Equation (4.78) that give zz,i = zz,j. Substitut- ing K4qz,i,K5qz,i, and zqz,i into Equations (4.77) and (4.78) yields Aqz,i = N(ai//h)A and ai ITqz,i ,. (4.81) Thus the quantizer and LZ DFs can be cascaded and the quantizer DF does not affect the phase. 4.6.2 Quantizer and Hold Output By similar reasoning as used in to derive the QLZ DF, to show the quantizer DF and LH DF can be cascaded we must show that K4qh,i = N(ai/h)K4h,i and K5qh,i = N(ai/h)Kh,i- If we quantize the input sine signals with bin size h, the decoded signal from LH becomes 96 I (4.82) + (I- Ok)Hk _1 . [ai...han] sin(wkr) Hk = Okh Using Equations (4.18) and (4.19) we find = [(DE(, - K4qh,i 4 [ )k-1h k=1 1=1 K5qh,i LE-(I - = [al...han] sin(oft) I sin (okr) ](i) (D)k-lh [a1...an] sin(wlr) cos((wkTr)] (i). (4.83) (4.84) IU k=1 1=1 If we now apply the quantizer DF gain, we see that K4qh,i = N(ai/h)K4 h,i and K5qh,i = N(ai/h)K5hj. Thus the quantizer and LH DFs can be cascaded and the quantizer DF does not affect the phase. The QLH DF parameters are thus Aqh,i ai 4.6.3 = N(ai/h)Ah-2 ai and ITqh,i =i (4.85) Quantizer and Linear Filter As with QLZ and QLH, to show the quantizer DF and LF DF can be cascaded we must show that K4qf,i = N(ai/h)K4f,i and K5qf,i = N(ai/h)K5f,j. If we quantize the input sine signals with bin size h, the decoded signal from LF becomes Fk = Ok [(I-KfC)GFk-I + Kfh [al...an] sin(ok r)] +(I- Ek)GFk-1. (4.86) Using Equations (4.18) and (4.19) we find K4qf,i = g K5qf,i I [a1...an]sin(wlr)I ((Kf C + I,)G)k-l Kfh [f k k I Y Y, ((Kf (DC + I,) G) - (DKf h h I sin(wo(k)] (i) [al ... an] sin(coft) h cos(co(k)'r) (i). I -k=l 1=1 97 If we now apply the quantizer DF gain, we see that K4qf,i = N(ai/h)K4f,i and K5qf,i = N(ai/h)Kf,j. Thus the quantizer and LF DFs can be cascaded and the quantizer DF does not affect the phase. The QLF DF parameters are thus Aqf, = N(a /h)Af, 4.6.4 and Tqf,i ai ai = T5, 1 . (4.87) Quantizer and MIF As with QLZ, QLH and QLF, to show the quantizer DF and LM DF can be cascaded we must show that K4qm,i = N(ai/h)K4m,i and K5qm,i = N(ai/h)K5m,i. If we quantize the input sine signals with bin size h, the effect of the quantization is seen in the variable gk. For gk we have yh gq,k = Yk I [[ai.an]sin(Dl) (4.88) CTR-1. After applying the quantizer DF gain we find (4.89) gq,k = N([a1...an]/h)gk. For E[Mk] we can see from Equation (4.55) that there is a term gj multiplying through the summations. Thus, because the quantizer becomes a multiplicative gain for gj, it also become a multiplicative gain for E[Mk]. Thus, using Equations (4.18) and (4.19) we find g K4mJi N([a1...an]/h)E[Mk]sin(ct(k),r) (i) = -k=1 g K5m,i = - [ N(a...an]/h)E[Mk]cos(c(k)r) (i). -k=l We see that K4qm,i = N(ai/h)K4m,i and K5qm,i = N(ai/h)Km,i. Thus the quantizer and LM DFs can be cascaded and the quantizer DF does not affect the phase. The QLM DF parameters are thus 98 ai = N(aih) m,i aiI and Tqm,i = Tm,i. (4.90) By a very similar derivation, we can also show that cascading the quantizer describing function with LM also holds if the message is quantized after it is encoded. 4.7 Summary In this chapter we derived a general describing function for a multi-sensor information channel of a MIMO feedback control system subject to packet loss. The DF approximates the encoder-channel-decoder system as a gain and phase lag dependent on input frequency, much like a transfer function. The DF was applied to four control/estimation algorithms commonly used in systems subject to packet loss: Zero Output, Hold Output, LQG-type Linear Filter, and Modified Information Filter. The DF models for these four systems were validated by simulation. DFs for several types of common quantizers were presented, and we proved that these quantizer DFs can be cascaded with the DFs for the packet loss control/estimation algorithms. 99 100 Chapter 5 Describing Functions as Analysis Tools 5.1 Introduction The DFs are useful analysis tools because they predict the frequency-domain behavior of the quantized and lossy channel. In this chapter we illustrate two uses of the DFs - as tools to predict system sensitivity to disturbances, and as tools to predict system limit cycles. In theory these performance results could be predicted by simulation, but we show that computing channel gains and phases - necessary to predict limit cycles and find sensitivity functions - is orders of magnitude faster using DF models than by using simulation. Example Bode-like plots and sensitivity-like function magnitudes computed using the DFs are shown, and a numerical example is given where theoretically-predicted limit cycle amplitudes and frequencies are verified by simulation. 5.2 Computation Times for Analysis vs Simulation We consider SISO versions of the four example controller/codecs LZ, LH, LF, and LM for a set of computation time tests comparing simulation and DF models. Tests are run on a Lenovo T500 ThinkPad laptop computer with Intel Centrino 2 processor. For each case we first compute the gain and phase using the DF model with increasing values of the parameter g until we see convergence. We plot the calculated gain and phase vs computation time required for the final value of g. We then compute the gain and phase via Monte Carlo 101 0.90.80.7- 0.6 -- C0.0 0.4 -0.3 -- 0 LZ Model 0.2- - Simulation 0.1-01' 0 0.5 1 1.5 2 Computation Time (sec) 2.5 3 Figure 5-1: Computation time for simulation and describing function for the SISO LZ decoder, for or = -1 and a = 50%. The LZ model converges in less than 10-4 seconds, while simulation takes close to 3 seconds. simulation. The gain and phase are calculated by simulating a sinusoid sent through a lossy channel with the given codec, and using the simplex method to fit a new sinusoid to the decoded signal. We calculate gain and phase for increasing number of sinusoid periods the decoded sinusoid is fit to. I and a = 0.5 as a representative case. Plots For all systems we plot results for (odt = for LZ and LH are universal plots and do not depend on a system model. Plots for LF and LM are made for the contact task system described previously. We give results for gain only; phase results are similar. Figure 5-1 shows results for LZ, where model computation time is less than 10-4 seconds, and simulation mean converges after approximately 3 seconds. Figure 5-2 shows the results of LH, where simulation takes at least 1000 times as long to converge as the DF model (1.6 seconds vs 5x10-4 seconds). In Figure 5-3, for the contact task example the LF again converges 40 times faster than simulation, and Figure 5-4 shows that the LM converges approximately twice as fast as simulation. The models for LZ, LH and LF clearly provide a significant speed advantage over simulation for calculating a gain at a single input frequency. The LM model is also faster than simulation, but the advantage is not as pronounced. However, the advantage of using the LM model becomes much more apparent when we consider calculating gains at multiple 102 1.11.081.061.041.02C as 1 0.980.96LH Model 0.94- 0.94 -Simulation 0.92- 0.9 0 0.2 0.4 1.2 0.8 1 0.6 Computation Time (sec) 1.4 1.6 Figure 5-2: Computation time for simulation and describing function for the SISO LH decoder, for or = -1 and a = 50%. The LH model converges in 5x10- 4 seconds, while simulation takes close to 1.6 seconds. 0I 0.1- 0.05 o LF Model -Simulation 0 2 6 8 4 Computation Time (sec) 10 12 Figure 5-3: Computation time for simulation and describing function for the SISO LF decoder, for ar = -1 and a = 50%. The LF model converges in 0.32 seconds, while simulation takes close to 13 seconds. 103 0.56 0.54 0.52 0.5 :0.48- 0.46 0.44 0 LM Model 0.42 - Simulation 0.4 0.30 S 5 10 15 20 Computation Time (sec) 25 30 Figure 5-4: Computation time for simulation and describing function for the SISO LM decoder, for orr = -1 and a = 50%. The LM model converges in 15 seconds, while the simulation takes close to 30 seconds. 1.02 0.980.96N 0.94- E 0.920 z 0.9- o 0.88- - LM Model Simulation 0 - 0.86500 1000 1500 2000 2500 3000 Computation Time (sec) 3500 4000 Figure 5-5: Computation time for simulation and describing function for the SISO LM decoder computing normalized bode plot gains, for 100 frequencies and a = 50%. The LM model converges in 16 seconds, while the simulation takes close to 3000 seconds. 104 frequencies, such as when creating a Bode plot. This scenario is the most realistic use of the describing function models, because the gains and phases at multiple frequencies would be needed to create system Nyquist plots to predict limit cycles. To calculate gains at multiple frequencies, computation times for all simulations scale linearly with the number of frequencies evaluated. Computation times for LZ, LH, and LF also scale linearly with the number of frequencies, and thus LZ, LH and LF models again have a significant speed advantage over simulation. Computation time for LM is a fixed time proportional'to g 2 , plus a time linearly proportional to the number of frequencies. The fixed time proportional to g 2 is three orders of magnitude greater than the time proportional to the number of frequencies. For example, in Figure 5-4, the fixed time is 15.48 seconds, and the time proportional to the number of frequencies is 0.02 seconds. Thus, while the total computation time to evaluate the gain at one frequency is 15.50 seconds, the time required for 100 frequencies is only 16.98 seconds. If done by simulation this would take approximately 3000 seconds (100x30), as shown in Figure 5-5. The LF model similarly has a fixed computation time proportional to g 2 , but this time is an order of magnitude smaller than the computation time proportional to the number of frequencies sampled, in the SISO case. In the example in Figure 5-3 the fixed time is 0.01 seconds, compared to the total computation time of 0.32 seconds. For MIMO cases with a single input frequency and n states, simulation computation time scales proportional to the time required for the simplex algorithm to converge for 2n dimensions. The LZ and LH model computation times scale linearly with n, because the channels are independent. For LF and LM, the fixed computation times are proportional to the time required to compute an nxn matrix raised to the power g, for n system states. Thus, this fixed time is proportional to ng. The computation time analysis results show that the describing functions are in general at least several orders of magnitude faster than simulations to compute gains and phases for systems subject to packet loss, and thus the DFs are practical analysis tools. 105 Gain A/a 160 140 120 100 -1 80 -0.5 0 0.5 600. 40 -1 -0.5 0 Log of Input w 0 0.5 1 Figure 5-6: Gain (top) and phase (bottom) of the QLF for the contact task model; a = 1O%, h = 46, -r 0.1. 5.3 Bode Plots The main utility of the DFs as analysis tools is predicting limit cycles, and to do this one intermediate step is creating system Bode plots. Because the DFs for the quantized lossy channels are not exactly transfer functions, and in fact depend on both input frequency and input amplitude, we refer to the gain and phase plots in this section as Bode-like plots. They still present frequency responses of the channels though, and are still useful to create Nyquist plots and predict limit cycles. As examples, Figure 5-6 shows a Bode-like plot of gain versus input magnitude and input frequency (top plot), and phase versus input frequency (bottom plot) for the specific case of a = 0.1, h = 46 with QLF and the SISO contact task model considered in Chapter 4. Figure 5-7 shows the same plots for a higher packet-loss case, with a = 0.6, h = 10. The overall shape is generated by the combined LQG-like structure, the lossy channel, and the quantizer; the first two of these have inherent frequency dependence. Figures 5-8 and 5-9 show example Bode-like plots for QLH, a universal DF that does not depend on a system model, for the same two a,h pairs. The plots show that QLH acts 106 Gain A/a 700.6 60 0.5 $50 0.4 40 0.3 0.2 20 0.1 10 -1 0 -0.5 Log, 0 of Input c 0.5 1 40 20 0 --20- 0- -40 -1 -0.5 Log 0 0 of Input to 0.5 1 Figure 5-7: Gain (top) and phase (bottom) of the QLF for the contact task model; a 60%, h = 10),c = 0. 1. like a pure quantizer at low input frequencies, while at high frequencies the packet loss creates phase loss. The information from these Bode-like plots can be combined with true Bode plots of other elements in the feedback control loop to create loop Nyquist plots. Limit cycles, in turn, can then be predicted from the Nyquist plots. A numerical example is given in Section 5.5 illustrating how the DFs and Nyquist plots can be used to predict limit cycles in a simple SISO system. 5.4 Sensitivity Functions The describing functions can also be used to analyze the effect of process noise on a feedback control system subject to packet loss and quantization. If we assume an additive disturbance acting on the feedback channel, as shown in the block diagram in Figure 5-10, then the effect of this disturbance on the output is characterized by the system sensitivity function, defined as 107 Gain A/a 1.2 0.8 -) 10 10' 0.6 8 0.4 . CL 0.2 -1 0.5 0 Log, 0 of Input w -0.5 1 -2-4- -1 0 -0.5 0.5 1 Log,0 of Input (o Figure 5-8: Gain (top) and phase (bottom) of QLH; as with H, these properties are independent of the plant or controller. a = 10%,h = 46,'r = 0.1. Gain A/a 1.2 1 E 4C 0K30 .S 0.4 0.2 -0.5 -1 0 Log, of Input o 0.5 1 n -10 -20 -30 -1 -0.5 0 Log10 of Input to 0.5 1 Figure 5-9: Gain (top) and phase (bottom) of QLH. a = 60%, h = 10, 108 -- --------------- ----- = 0.1. Disturbance Input Plant Controller P, C~ Figure 5-10: Block diagram of feedback control loop with additive disturbance on plant output. S= I(5.1) 1 1 +CPiGa5 for controller C, plant P, and describing function Gdf. The function in this case is not exactly the same as a sensitivity function, since the describing function Gdf may depend on input amplitude and is not a true transfer function, but the sensitivity-like function can still be used as a similar analysis tool to the true sensitivity function in the frequency domain. As an examnple application, we show the sensitivity function magnitude plots for the one-mass contact task example with QLF and the two packet loss/quantization scenarios considered previously. In the first case, shown on the left of Figure 5-11, the feedback channel has loss a = 60%, h = 10, and r = 0.1. In the second case, shown on the right of Figure 5-11, the feedback channel has loss a = 10%, h = 46, and r = 0.1. In both cases the sensitivity function has lowest magnitude for higher input frequency, which is consistent with the plant acting as a low-pass filter. In each case the system is most sensitive to disturbances at frequencies around 10- 5rad/sec, with the 10% loss case having slightly higher peak sensitivity magnitude of 1.35, compared to 1.25 of the 60% loss case. The higher packet loss case is sensitive to a larger range of input magnitudes to the quantizer, which would be expected for a less-perfect sensor-feedback system. 109 Gain A/a Gain A/a 70 70 60 1.3 60 1.4 1.35 1.25 50 (0 1.25 0)4 1.2 201.15 20 1.15 :C3 30 3.1 _ 1.1 1.5 10 20 20 10 0.95 -1 -0.5 0 Log10 of Input o 0.5 10 -1 1 -0.5 0 Log,, of Input c 0.5 1 Figure 5-11: Gain of the sensitivity function for the contact task model with the QLF codec. For left plot a = 60%, h = 10,'r = 0.1, and right plot a = 10%, h = 46, = .1. 5.5 Limit Cycle Numerical Example The DFs derived previously are useful as analysis tools to identify limit cycles in dynamic systems. In practice, the addition of a quantized lossy channel will not necessarily cause a system to limit cycle, and thus there is no guarantee that analysis via describing functions will predict a limit cycle for an arbitrary system. The system Nyquist plot must be sufficiently close to the critical point in order for the addition of a quantized lossy channel to cause it to limit cycle. In this case the DF analysis method will correctly predict the limit cycle. As a numerical example, we consider a simple double integrator with the position signal quantized and sent through a lossy channel before being decoded and sent to a controller. This scenario is not unlike a robot attempting to maintain a constant range to a leader, where the remote range measurement is quantized and lossy. We consider four different setups: QLF, QLH, QLZ, and a pure quantizer (Q) block. To fairly compare these, we first design LQR and constant Kalman gains in continuous time for the LQG that is used in the QLF system. We then implement the resulting transfer function of the LQG as the compensator for the QLZ and QLH systems. Thus, in the absence of packet loss and quantization, the closed-loop systems are all equivalent. After mapping over to discrete time with -r = 0.1 and ZOH, we erode the stability margin of the 110 ............... .... 111 111.111, 11 -- - .. .... ... ....... ... .... . . ........ .. .... ..- - - . .......... ..... 2- 1.5 0 0 1- 0.5- 0' 0 1 2 3 4 5 Time (sec) 6 7 8 Figure 5-12: Closed-loop step response of double-integrator example system, with LQG design and a one-step delay. system by injecting a one-step time delay; delay causes phase loss. For this example, we reduce the independent variables by fixing an exponential relationship between quantization level h and packet loss rate a, given by a = e-ph. This formula ties very fine quantization to higher packet loss rates, and vice versa. The tradeoff is documented in the RF literature, e.g. [86], and also is consistent with what we have observed in shallow-water acoustic communication tests. For this example, we set p = 1/20, for which value some typical (h, a) pairs are (1, 95%) and (90, 1.1%). In general, p is a parameter to be tuned to match the environmental conditions and the system. The equivalent LQG transfer function from sensor output to control signal is T (s) = 2 2720s +7071 22s701(5.2) s +33.75s +519.6 The closed-loop step response of T(s) cascaded with the double integrator plant and the delay is given in Figure 5-12. For a given (h, a) pair, limit cycling occurs when the Nyquist plot of the loop system passes through the critical point; this will happen for certain frequencies and amplitudes. Stability of a limit cycle is assessed by behavior near the intersection points of the plant and the negative inverse of the describing function [95]. 111 1009080 70 5040 - - .'Q QLZ Model -QLH Model Model 0 QLZ Sim QLH Sim 30 20 - ro , '-QLF 10 ,,0 10 0 QLF Sim _ 20 30 40 50 60 70 Quantization Bin Size h 80 90 100 Figure 5-13: Input amplitudes a and quantization levels h that result in a limit cycle for the double-integrator example system. Plots are made for Q, QLZ, QLH, and QLF blocks based on the describing function formulas and on and simulation. Thick lines represent stable limit cycles and thin lines unstable ones. No stable limit cycle solutions exist for the QLZ case when h < 45 (a > 11%), for QLF when h < 50 (a > 8%), or for QLH at low h. Figure 5-13 shows model and corroborating simulation results for limit cycle magnitude; the range of h here corresponds to a between 5% and 60%. For high h, packet loss is low, and all of the stable limit cycles tend toward that of the pure quantizer, as one would expect. With lower h and consequently higher a, QLZ has a gain reduction from the lossy channel, but also a gain effect from the quantizer. The effect of these is to diminish the limit cycle, at least down to h = 44. For QLH and QLF the situation is much more complex, as phase effects of the lossy channel and the decoder also come into play with decreasing h. Even so, it is surprising that QLH creates an entire family of large, stable branches (of which only the first two are shown in the figure) while the QLF model yields one smaller limit cycle similar to that for QLZ, down to h = 50. The simulations are helpful to explain the attributes of physical response along the various branches. We consider a limit cycle to exist if at least ten consecutive oscillations at a nearly constant frequency and amplitude are observed. A time series with clear limit cycling is shown in Figure 5-14 for the QLZ setup and h = 70, yielding slight bias and limit cycle amplitude of approximately 70. This signal is typical for QLZ and QLF above their cusps in h, and for QLH at the higher h. In contrast, a more confusing time series is 112 .. .. .... .. .. .. .. .... .. ... ..... ............ ...... ... .. ........ ...... .. .. .. ............ .. 100 80 11 'l " 1 1I 1 i 20 0 E < -20 -40 -60 ' -80 -100 0.2 0.4 0.6 1 1.2 0.8 Time Steps 1.4 1.6 1.8 2 X 104 Figure 5-14: Time series for the QLZ system with quantization level h = 70. illustrated in Figure 5-15, for the QLH setup and h = 35. This trace has highly variable amplitudes and frequencies - so no limit cycles can be easily identified - and is typical for the QLZ and QLF systems below their cusps, and for QLH at the lower h. Eventually all of the systems become unstable for very low h, because a approaches unity, and the open-loop dynamic behavior fails to provide stability. Figure 5-16 summarizes the nondimensional frequency for the limit cycles. The single frequency pertaining to the multiple solution branches of QLH appears to reduce as h is decreased. At higher values of h the limit cycle frequency for QLZ and QLH is close to that for Q, consistent with the quantizer dominating the system. Most surprisingly, the frequency is much higher for the QLF case, despite the fact that in terms of magnitude, QLZ and QLF behavior is similar at high h. These observations serve to highlight the complexities of controlling even simple systems through limited feedback channels. 5.6 Summary We have shown that DFs are useful analysis tools for systems subject to packet loss and quantization. The DF gains and phase lags for the four example control/estimation algorithms were shown to be orders of magnitude faster to compute using the models than by using simulation. Bode-like plots were derived for the example control/estimation DFs with 113 1000- 500- 0 E -500- -10000.2 0.4 0.6 0.8 1 1.2 Time Steps 1.4 1.6 1.8 2 x 104 Figure 5-15: Time series for the QLH system with quantization level h = 35. Red lines are drawn for reference at amplitude ratios +/- 38.5, and +/- 70 as predicted with the QLH describing function. -- Q QLZ Model - 7- -QLH - 6 Model QLF Model 0 QLZ Sim 0 QLH Sim o QLF Sim C) 5- 0 0 0 40 50 60 70 Quantization Bin Size h 80 90 U- 4 3- 20 30 100 Figure 5-16: Frequency o of limit cycles from the analysis and from simulation. The QLZ model curve is nearly on top of the Q line. 114 quantization, and these bode plots are useful to predict limit cycling. Sensitivity-like plots were also presented, showing how the DFs can be used to analyze system response to disturbances. Finally, a numerical example was given where the different control/estimation strategies with quantization were used to control a plant and compared. The DFs predicted limit cycles in each case, which were verified by simulation. 115 116 Chapter 6 Describing Functions as Design Tools 6.1 Introduction The channel describing function can be used not only as an analysis tool, but also as a design tool to ensure a system limit cycles at a predetermined amplitude. In some applications, such as an underwater vehicle navigating through a cluttered environment, it may be important that the vehicle stays within a certain distance of its target trajectory. A quantized and lossy sensor feedback channel may, however, cause the vehicle to limit cycle at an amplitude larger than this safe distance. Using traditional LTI control design methods, a controller would be designed and, only afterwards, simulated or analyzed with describing functions to see if undesirable limit cycles existed. The describing functions derived earlier are useful analysis tools that could identify these limit cycles much more quickly than simulation. However, this iterative method may still not result in limit cycles of small enough magnitude for the application. In this case, it would be important for the control engineer to specify a maximum acceptable limit cycle amplitude, and design a codec to meet this specification. This is the motivation behind the controller-codec design method described. For clarity, Table 6.1 lists the mathematical symbols used in this chapter and their definitions. 117 Symbol As coTs GQ at Oat h Definition Decoded output at time step k Decoder function Decoder function Controller Plant Designed decoder gain if packet received Designed decoder gain if packet lost Time step variable Frequency Time step size Decoder DF gain Decoder DF phase Quantizer DF gain Design target limit cycle amplitude Design limit cycle frequency Quantization bin size K1 ... K14 Co...C5 Intermediate variables Intermediate variables g Time horizon for DF Sk P(k) Q(k) C P M N k Co Table 6.1: Summary of mathematical symbols used in this chapter. 6.2 SISO Design Equations 6.2.1 System Assumptions To illustrate how a decoder can be designed using describing functions, we first consider a SISO system with the sensor feedback channel subject to quantization and Bernoulli packet loss, as shown in Figure 6-1. Design for a MIMO system will be described later. Input 1Controller ==4 Quantizer Decoder I P ant Binary Erasure Channel Encoder I I Describing Function Figure 6-1: Block diagram of SISO control system with binary erasure channel in sensor feedback, and describing function for the quantizer-encoder-channel-decoder. 118 In this design method we assume two operating conditions exist for the system: a nominal case with no packet loss or quantization, and a second case subject to packet loss and quantization. The goal is to design a decoder that achieves desirable performance in the nominal case, and meets a maximum limit cycle amplitude requirement in the loss and quantization case. The design procedure can be summarized as follows: 1. Design controller to achieve desirable performance in no loss, no quantization case. 2. Pick baseline decoder for loss and quantization case (i.e. QLZ, QLH, etc.) and determine limit cycle amplitudes using DFs. 3. If LC amplitude too large, pick smaller target limit cycle amplitude. 4. Find corresponding decoder using design equations. 5. If no solution, pick larger LC amplitude midway between current target amplitude and previous amplitude and return to step 4. 6. Check effect of decoder on Nyquist plot of no-loss, no-quantization case. 7. If unstable, or if stable but other performance metric unacceptable, pick larger target LC amplitude midway between current target and previous and return to step 4. 8. If stable, end, or pick smaller LC amplitude and return to step 4. At the end of this design procedure, a decoder will be found that strikes a balance between good performance in the no-loss, no-quantization case, and acceptable limit cycle amplitudes in the case with loss and quantization. Steps 1 and 2 are dependent on the specific application, and left to the control engineer. Once a controller and target limit cycle are chosen, the decoder that results in the target limit cycle amplitude must be designed. To design the decoder, assume the encoder-channeldecoder can be written in the form Sk = P(k) + Q(k)Sk-l for state estimate Sk, where P(k) and Q(k) are of the form defined. This is an important assumption that allows the general describing function equations to be used, and assumes no encoder. Then, for the given controller C(z) and plant P1 (z), the describing function for the feedback channel can be used 119 to design P(k) and Q(k) to result in the target limit cycle amplitude. Many potential P(k) and Q(k) values may exist for a given limit cycle specification. We examine a particular design where it is assumed for simplicity that E[P(k)] = Msin(kor) and E[Q(k)] = N, for some constants M and N to be designed. The describing function for Sk is assumed to have amplitude As and time shift Ts, which we write in complex form as A - 6.2.2 Tswti. (6.1) Limit Cycle Criteria For this system, a limit cycle will occur at frequency wt and target amplitude at if the Nyquist plot of the system passes through the critical point. This happens if the following two conditions are met GQ(at/h)IC(jotr)IjP(jOw) I- at = 1 ZC(jw1 ) + ZPI(jw 1) + Tco = C (6.2) (6.3) where GQ(at /h) is the quantizer gain for limit cycle magnitude at and quantization bin size h. 6.2.3 Solving the Nyquist Equations , If As and Ts are expanded using equations 4.23 and 4.22, and solved for terms K4 and K5 then the two conditions can be rewritten as at(K 3q+K2 +K1) GQ(at/h) IC(il) I JP(jwt) 1|l +q 2 K5 = at (K3- qK2 + qK) GQ(a 1 h) IC(jt|) IIP(jcot)| where 120 1+ q 2 (6.5) (6.5 q = tan(lr - ZC(Ujw) - ZP(jco)). (6.6) From the definitions of K4 and K5 , and the assumptions for E[Q(k)] and E[P(k)], it can be shown that g K4 k ( = (6.7) Nk-iMsin(jotr) sin(kotv) k=1 j=1 g (6.8) E -kMsin(jcotr) cos(kwt -r). K5 = k - N k=1lj=1 By using standard trigonometric summation identities, rewriting some trigonometric terms in exponential form, and using geometric series relations, equations 6.7 and 6.8 can be combined with equations 6.4 and 6.5 to solve for N and M, which will define the system decoder. From Equation 6.7 we first define 9 k K13=E ( rr)) sin(kcot r) Nk-M sin(It (6.9) k=1I 1=1 which can be simplified as k sin(Iwt r)'\snk'i g (N iNN K 13 = M k=1 \ sin(kotr) (6.10) \=1 and K13 = ME (fs(k,N)Nk sin(kotZ)) (6.11) k=1 where we define k sin(lotr) fs (k, N). N From Equation 6.8 we also define 121 (6.12) g (6.13) = -M L (f,(k,N)Nkcos(kct T)). k=1 K14 The term K13 can be expanded by noting that ( - ~cos(o:'r)) N22 + C(WT) 2 + (sin (ctT)) 2 cos(Wr)) Nk+ I N (sin (wtV)) 2 sin(( tr) g N N I k=1 Nk sin(katT)] (6.14) cos((k+ 1)ot r) sin(kot T) N -1s(OtT) 1 (sin((k+ 1)cot'r)sin(kcotr))] - N - Nk+ 1 (1 1r) cos((k+1)wcr) sin(wir) _ sin((k+ ) L(@( = ' E fs(k,N)Nk sin(kcot) (6.15) For further simplification of K 13 we note that L (Nk sin(kowtr)) k=1 = fS (g, (6.16) N and I (cos((k+ 1)ct T)sin(korT)) k=1 g (cos(kcotr) cos(cor) - sin(kcotr) sin(kcotr)) sin(kcotT) k=1 Cos (cot r) 9 g 2 cod)sin(2kwcr) - sin(wor) I sin2 (kor, r) 2 k=I k=1 I-I ) j-2-2COS (2ko.) 122 (6.17) Cos(WOrt) 2 sin(wtr) [ -si(COT) 1 12 J sin(ct(2g+ 1),r) sin(wtr) ] 2sin(cotr) - 2 cos (cotr) - cos(co (2g + 1)r) (6.18) We also note that k r) ([sin(kcotr) coscot r + sin(cot) cos(kcotrT)] sin(kcot = cos(cotr) E sin2 (kotr) + sin(orC) I sin 2 (2kot'r) k=1 sin(c (2g+1)r)-sin(ogr)[ 2 sin (wt r) ) _ sin(wtr ) cos(cotr) - cos(ot (2g + 1)T) + 2 2 sin(ort) 1 1 2 ) COS(cotr) = (6.19) k=1 Combining all of these terms, K13 can be rewritten as 1 _ M (I1 cos(otr) 2+ (sin (wr)) 2 [A sin( ct r) -B N 1-cos(otr)) 11 N NJ ) K13 (6.20) where 1 ) A =fsg - 1 [cos(oIT) cos(Ct) - cos(,(2g + 1)) N 2 2 sin(ort) - sin - 1 t) 2 sin(wt(2g + 1)r) - sin(cotr) 2sin(0tr) /1] ) s2 J and 123 (6.21) B = cos((O.t) [2 - 2 (sin(wt(2g+ 1)r) - sin(cotr) 2\sin (ot) )I s+~mr 2 cos (cot ) - cos(cot (2g + 1),r) .(6.22) 2sin(otr) We further rewrite K13 for future computations as 1 K 13 M 2 COS(Wt) + sin(wt) 2 sin(w1 1) N (f NjKs(wt) 1(1) 1 - COs(o)rt) I K9(ot) N N Following similar derivations, M can be written as -J _ ( COS(Cot) 2 1 sin(wor) + ( si(O r N 2 1 i ( - cos((k+1)cor)) cos(koT) k=1 (N s cos(otr) 1 N Lsin((k 1)ct)cos(tr)J N ) K 14 K14 (6.23) (6.24) and as K14 _ M -1 ( _ cos(wcr) sin(wo t) 2 (sfltr)) 2 N 1 (f 'N) 1-cos(aotr) N In this case we define -1 Ki I (O)t)) N fc for convenience I K12(Ot) N (6.25) the same as f, except with cosine instead of sine. The term fc can be simplified by 124 e L =Re (ix (6.26) ) e2+x ie + ) fc(g,N) = Re g) (1 cos((k+1 )) Nk+ I + sin((kN)cootv) _ Cos(cot r) + N ) (1 NOWr) - sif(OtT) N Nk+ I 2 + sin(tr) Wjr 2 - 1. (6.27) 2 From Equation 6.23, M is solved to be (I (fs (g, M = K13 sin - " k) sn(not-r)' - 2 - (6.28) -K8(C0t)) K(w) Now that M is solved for, we must next solve for N. This is possible because we started with two equations and two variables (M and N). To solve for N, we next take the ratio of [f /1 \ K8 1 cos(otr) K9) N N I K11 ) K14 sin(ot N K13 \ ) Equation (6.23) and (6.25), giving (sin(otr) N _ \f N N cos (otr) N K12 N) (6.29) and K 14 K 13 sin(ot r) (fs (g, -) - -K(0)) ( COS(Wt) - I-COS(O) 2 + ( )2 (f - sin(wr) K 9 () (6.30) (g,A) - -Kii (Cot)) (1which can be rewritten as 125 COS(LOr) 2 - + 1 -cos(wr) (sin(w,r)) IK12(Ot) 2 sin((or) N K13 \ C- COS(Wot)) K 14 ) 9 N ED cos((otr)) K1) (6.31) - N N ) NI K1] 1-- N where C sin((g+l)cotr)(I -Nos(cor)) (1-N9+1 cos((g+ )o)r))Nsin(or )-N9+I (1- Ncos(wor))2 + (Nsin(cotr)) 2 (6.32) and D (1 2 sin((g+ 1)CO tr)sin(otr) 1 Ng+' cos((g+ 1)co,1 ))(1 -Nos(cotr))+N9+ 2 + (Nsin(cotr)) 2 (1 - Nos(Wtr)) (6.33) 1-2Ncos(rtT)+N 2 K 14 E sin(cotr) - Multiplying by the denominators and expanding gives (N- cos(otr ))K9 [(1 - Ncos(otr ))2 + (Nsin(otr))2] K13 =[- 1-2Ncos(cotr)+N 2 2 2 (N- cos(tr))K2 [(1 -Ncos(orT)) + (Nsin(wcr)) N[(.1 -NAeos~ort&)) +(Nivsinkt)) ' F sin (ctr) (6.34) N 2 [(1 - Ncos(Cotr)) 2 + (Nsin(wotr)) 2] where 126 wt) (I - NCOS (cotr)) ))N2 sin (cor) - N9+2 sin ((g + 1)m E =1N9+ 1 COS ((g + 1) or 2 2 ) N ((1 -Nos((otr)) + (Nsin(otr))2 2-2Ncos(otr)+N 2 ' K 8 ((1 -Nos(Ct-r)) 2 + (Nsin(wotr)) 2 ) N 2 ((1 -Nos(,otr)) 2 + (Nsin(cotr)) 2 and N(1-Ncos(ot r)-N9+l cos((g+ 1) o r)+N_+ F = 2 cos((g+ 1)wrt) COS(w, T)) cos((g + 1)cot r))(1 -Nos((otr)) I -(1N9+1 N 2(1-Ncos(ot ))2 + (Nsin(corr))2 N+N9+3 sin((g + 1)cotr) sin(ortr) N2(1 - Nos(or r)) 2 + (Nsin(trr)) 2 2 (N+K1) ((1 - Ns(w'r)) 2 + (Nsin(otr))2 N2 (I - NCOS (ot r))2 + (N sin (cot)) 2 ' 1-2Ncos(wto)+N Rearranging terms and multiplying again by denominators gives a polynomial expression for N as 127 Ng+3K5 sin(cr) -cos((g+ 1) colr)sin(cotr)+sin((g+ 1) cotr)cos(cot-r) +Ng+2 (- sin((g + 1) cor)) K5 (sin(cotr)(sin(otr) - K8 )+cos(cotr)K9 +2K 9 cos(cotr) + N3 K5(-K9) ) +N sin(WoVr) +NK (sin((tr)2K8 Cos(o tT) - K9 - 2K9 cOs2(wot) + Ng+3 (-sin(otr)(cos((g+ 1)o 1r)cos(cor)sin((g+ 1)cor)sin(wt'r)) +Ng+ +N sin(t-r))(- oscotr) -Kio+2cos( +N 3 (sin(otr) +K 12 ) +N (-Ks sin(cor) +K 9 cos(cot T) 1tr)) - sin (Cotr)(- Cos((g +1) ort)) -K 1 2 cos(ojr) - 2Ki2 cos(flr)) -2KIO sin(cot) cos(cwt') +K 12 +2K1 2cos2(otr)) +K 12 (Kio sin(otr)) - cos(cor)). This polynomial can be further rewritten in standard form. Thus, we have the following relations for N and M: ( cos(cor) + 1 )K6 1 M = 9(k-C ( K7 WsiWt) (6.35) -N( - N CsNg+3 +C4Ng+2 + C3N 3 + C2N 2 + C 1N + Co = 0 where K6.. -K10 are defined as 128 (6.36) at (K3q+ K 2 + KI) GQ(at/h)|C(jot) IIP(jot )| K6 = 1 + q2 (6.37) K7 = K7a +K7b (6.38) K8 = - cos(cotr)K3 - sin(wtr)(KI+K2) (6.39) K9 = -sin(cotr)K (6.40) at ((1 -q 2 +q2 )K3 - qK2 +qK) K10 = K11 3 +cos( 1 ,r)(KI+K 2 ) GQ(at/h)IC(jt)IIP(jot) IV 1 +q = cos(wotr)(Ki- K2 )+ sin(wr)K3 (6.41) 2 (6.42) K 12 = - cos(ot T)K3 + sin(cor r)(Ki - K2 ) (6.43) with K7a K7b (1 -N+ = 1 cos((g+1)wotr))Nsin(or 1 - 2Ncos(wt'r) +N 2 ) (6.44) Ng+' sin ((g + 1) otr )(I - N 2Cos (o T)). 1 -2Ncos(cor)+N (6.45) The coefficients Co.. .C5 , which are independent of N and M, are defined as = (-K )cos(cotr) 8 K- -K1)sin(otr)+ (K12+K 9 K6 K6 C1 = 2(K8 K6 +K, )sin(cotr)cos(cotr) C2 = +2(-K- K- K12)cos 2(Cor) - K9 - -K 12 K6 K6 K10 K1 sin(orT)(sin(cotr)-K)+3cos(o-r)(K 9 +K K6 K6 +sin(cor)(cos(a 1 r) -K1) C3 = -K9 C4 = -K- C5 K6 12 ) Co -K 12 -sin(otr) sin(cotr) sin((g +1 )ot r) K) - sin(cotr)cos((g+ 1)otr) K10 sin(cotT) sin(gcotr) + sin(wtr) cos(cotr). 129 6.2.4 Solving for Codec Parameters Equation 6.36 is in terms of only N, not M and thus can be solved directly. For convergence of the describing function g is assumed to be large, and thus there are two possible solutions for N from this equation. Case 1: INI > 1. In this case, because g is large, terms C3 N 3, C2 N 2 , CIN, and Co are small by comparison and can be neglected. Equation 6.36 thus simplifies to the linear equation C5Ng+ 3 + C4Ng+ 2 =0 (6.46) with the simple solution N = --.C5 However, if INI > 1, this implies K7 >> 1, which leads to M << 1. A controller with a value of M very close to zero would not work, because received signals would essentially be converted to zero. Thus, N is designed such that INI < 1. Case 2: INI < 1. The solution INI = I could be a solution in particular cases, but not necessarily in general and thus we constrain our focus to the case of INI < 1. In this case, because g is large, terms C5Ng+ 3 and C4Ng+ 2 are small and can be neglected. Equation 6.36 thus simplifies to the cubic equation C3N 3 +C 2N 2 +CIN +Co = 0, (6.47) which has a closed-form solution for N, with at least one real solution. The three solutions for N are given by N=- (6.48) C2+UJI+ 3C 3 Uk2+ where 130 3 A 2 -4Ag Ai+ 2 - 1 U1 = U2 = 2 U3 = 2 Ao = C2-3C 3 C A1 = 2c3 - 9C3C2 C1 + 27C Co. Because N and the controller are being designed, we are free to choose any frequency Ot that results in the smallest real solution for N being less than one in magnitude. If no such frequency exists, then the system will not limit cycle at the desired amplitude and a different limit cycle amplitude must be chosen. If a frequency does exist that results in |NI < 1, then the corresponding solution for M is given by ) (I - 2cos (OD, ) + 1 )K6 (fsin(o)tr) K7 - (K 9 (1-cs(Wlr) 6.2.5 Codec Implementation To implement this encoder/estimator, P(k) and Q(k) are defined as follows: 6 P(k) = Q(k) = k M -yk (6.50) N (6.51) 1- aat where yk is the sensor measurement. This way, when the system is limit cycling, E[P(k)]= Msin(kotr) and E[Q(k)] = N as desired, for a channel with packet loss probability a and packet transmission Bernoulli variable 6 k as defined previously. For this choice of P(k) and Q(k), the system will limit cycle at frequency cot and amplitude at. 131 6.3 SISO Design Numerical Example F Figure 6-2: Example 1-mass, 1-input 1-output system. Mass is connected by a spring and damper to a wall, and acted on by a force. To illustrate the SISO design method, we consider a simple numerical example of a mass-spring-damper system where position is controlled by a force input, and our goal is to regulate position to zero. The system is the same as that considered in Section 4.4 with parameters m = 4, k = 1, b = 2, and is shown again in Figure 6-2 for convenience. In this example the nominal operating condition has a time step of 0.01 seconds with no delay, but a second operating condition is subject to a delay of 1. 1 seconds in the sensor feedback channel, and is subject to quantization with bin size h =1 and packet loss probability of 1.4%. This example could represent, for example, an AUV navigating via LBL nodes through open water (first scenario) and through a cluttered environment (second scenario). For ease of navigating through the design example, all time series plots are collected in Table 6.2 and Nyquist plots in Table 6.3. The plots are for the three cases of channel considered (original system with no delay, system with delay, and system with delay, loss, Time series plots are given in terms of nondimensional time, defined here as gor * and quantization), and the three decoders considered (LZ, LH, and designed decoder). time, where cod is the dominant frequency of the plant. For SISO systems cod is the natural frequency of the plant, for instance k/rn for a mass-spring-damper case. For MIMO systems it can be any of the natural frequencies of the plant. This is a useful choice for nondimensionalization because it includes the key dimensional parameters of the system - the time step and plant dynamics - and the user-chosen convergence parameter g, and 132 LZ 1.2 .2 - I2 Design LH 1.2- 1 1 .80.8 Original 08 26 0.A 0.4 0.4 0.2 0.2 0.2 1.6 i.6 1.6 1.4 1A4 1 4 1D2 1.2 1.2 a nn60m 100 SioTm 0Nn IOn nd 0Tm en 120 110 2.12a n100 40 a"4a 20 I4 Tie10 D N 1 Delay A%- 1 0. E5 0.6 0.41 Z6. 0.6 500 00 12d2 O 22 i- 1od- T 2 222 dm2 s" 2 Soo 0.6 0.4 T- F.2222222 22220 20022122 212 224M2 n2 T nd- 25 Delay+ Loss+Quant -1 -.. - -'. Z5 5 2222 2 1 2M9030DO 2,2 4 22222222222-2222222 0 0 0 am 7 2.0 100 _n20 300 0400 000 T00 500 Soo Table 6.2: Time series responses for system with no delay, delay, and delay+loss+quantization, for LZ, LH, and designed decoders. Top two rows are step responses, with bottom row an initial condition response for regulation control. Nondimensional time is used, defined as go * time. will allow more direct comparison of systems with different time steps, plant dynamics, and convergence parameter values. For this example, as will be described later, we use g = 1000, cod=0.5, and T= 0.01. 6.3.1 System with No Loss We assume for this example that position is sensed, and the system is controlled with a proportional-integral (PI) controller with proportional gain Kp = 1 and integral gain Ki = 0.39. Figure 6-3 (top plot) shows the step response of this system. The gains are chosen to 133 LH 0 Delay *__ * Original Design - LZ Table 6.3: Nyquist plot for system with and without delay, for LZ, LH, and designed decoders. Nyquist plots are in general not defined for systems with loss and quantization, and thus are not shown for those cases. give the system a 40-degree phase margin, with resulting step response characteristics of 15% overshoot, 25-sec settling time, and no steady state error. If the system is subject to a 1.1-second delay, the step response is more oscillatory but still stable, as shown in Figure 6-3 (bottom plot). Figure 6-4 shows the Nyquist plot of the system with no delay (top plot), and with delay (bottom plot). The original system is stable, consistent with the time responses. However, the delayed system has a crossover point of -0.95, and is close enough to instability that the addition of packet loss and quantization will cause it to limit cycle. 6.3.2 System with Packet Loss and Quantization We next examine the effect of packet loss and quantization on the second operating condition (with the 1.1-second delay). The simplest way to deal with lost packets is to use either a zero-output or hold-output decoder. However, in this example case these decoders result in large limit cycles. Using the QLZ and QLH describing functions, the predicted 134 1.2 1 0.8 < 0.6 0.4 0.2 0 20 40 60 80 100 120 140 Nondimensional Time 1.8 a 1.6 1 . <0. 0.411' 0.2 01 0 500 1500 1000 Nondimensional Time 2000 Figure 6-3: Step responses of original system (top plot) and system with 1.1-second delay in sensor feedback (bottom plot). Nondimensional time is used, defined as gCOr *time. 135 2.5 2 1.5 Ce 0.5s 0 - - - - - - - - - - -X E -1 -1.5-2 -2.5 -2 -1 0 Real 1 2 2.5 2 1.5 Ce 0.5- ---- 0 --------- 7:M - -------- --------- -- 0. -1 -1.5-2-2.5 -2 -1 0 Real 1 2 Figure 6-4: Nyquist plots for original system (top plot) and system with 1.1-second delay in sensor feedback channel (bottom plot). Nondimensional time is used, defined as gco T* time. 136 ...... .......... ..... -............. . .... .... . .... . ......... .. 2h_ 1.5 0.5 0 E x -0.5 -1 -1.5 F - II -I 11 1 VII 11I-11111 -I -I100 200 300 400 500 Nondimensional Time 600 700 100 200 300 400 500 Nondimensional Time 600 700 2.5 2 1.5 1 I 0.5 0 x -0.5 -1 -1.5 -2.56 Figure 6-5: Time series plots for QLZ (top) and QLH (bottom). Nondimensional time is used, defined as gO 2 T * time. maximum limit cycle amplitudes are 1.79 for QLZ and 1.91 for QLH. Figure 6-5 confirms these predictions with simulation time series plots of QLZ (top plot) and QLH (bottom plot). Dashed black lines indicate predicted maximum limit cycle amplitudes and vertical red lines indicate packet losses. The plots show generally good agreement with predicted and observed limit cycles. 6.3.3 Codec Design We desire the limit cycle amplitude to be as small as possible, and the SISO design procedure will allow a decoder to be designed that significantly reduces the limit cycle amplitude. Following the design procedure, we start with the QLZ limit cycle amplitude of 1.79 and test smaller design points, as shown schematically in Figure 6-6 and Table 6.4. In Table 6.4, A(D) represents predicted limit cycle amplitude (for LZ and LH), and designed limit cycle amplitude (for DI, D 2 , D 3). Note that all design points (D 1 , D 2 , D 3 ) include the effect of the 137 Decoder LH LZ D1 D2 D3 M 1 1 0.969 0.883 N 1 0 0.107 0.107 A(D) 1.91 1.79 1.0 0.85 0.840 0.107 0.7 ) Table 6.4: Codec coefficients and limit cycle amplitudes. A(D) represents predicted limit cycle amplitude (for LZ and LH), and designed limit cycle amplitude (for D 1 , D2 , D 3 quantizer. Notationally we refer to the decoder in the form Sk = MOkYk + N(1 - Ok)Sk- 1, for measurement yk and decoded signal Sk at time step k. This way we can refer to the constant coefficients M and N for the design. D3 0 D2 QLZQLH Di @4--------------.- ------------ 1 0.5 1.5 2 Limit Cycle Amplitude Figure 6-6: Plot of limit cycle amplitudes for QLZ, QLH, and designed codecs. Blue dots represent design points. We first chose the design point DI 1 as a significant decrease in amplitude. The quantizer gain for a/h = 1 is high enough that no larger values of a/h result in the same - gain, and thus no larger undesigned-for limit cycles will result. This results in X = 0.958 0.00009i and codec M = 0.969 and N = 0.107. This design mathematically results in a limit cycle of the desired amplitude, but it is important to consider the effect of the decoder on the system with no loss or quantization. Figure 6-7 (top plot) shows the Nyquist plot of this system, and it is seen to be stable, with a gain margin of 1.09, phase margin of 5.4 degrees, and no encirclements of the critical point. Continuing the design procedure, we tested a smaller design point D 2 = 0.85. This point was chosen as a smaller point that will still result in no larger limit cycle amplitudes, as determined by the quantizer describing function plot. The Nyquist plot of the system with the resulting decoder but no loss or quantization is also seen to be stable (Figure 67 (middle plot)). We next picked a smaller design point, D 3 = 0.7. The corresponding Nyquist plot of this system is stable (Figure 6-7 (bottom plot)). 138 .......... .... 0.5F 0 E -0.5F -1 -1 -0.5 0 0.5 1 1.5 Real 1 .5r- 0.5h 0 E -0.5 1.- -1 -0.5 0 Real 0.5 1 1.5 -1 -0.5 0 Real 0.5 1 1.5 1.5 r- 0.5a 0 E -0.5- 1 Figure 6-7: Nyquist plots for system with decoder and delay but no loss or quantization. Plots are for designs DI (top) to D 3 (bottom). 139 We settled with this as the design point with the smallest limit cycle solution because, based on the quantizer describing function plot, smaller design points would result in undesigned-for larger limit cycle amplitudes with the same quantizer gain. The resulting solution for D 3 is A = 0.830 - 0.00008i and codec M = 0.840 and N = 0.107 with a predicted frequency ( = 0.59rad/s. The designed points are summarized in Figure 6-8 (top plot) in terms of the entire design space, with limit cycle amplitudes plotted as a function of M and N parameters for the case of delay, loss, and quantization. Decoders QLZ and QLH are also shown. The plot shows three regions: LC solutions, No solution, and Unstable. In the unstable region the value of M is high enough that the delayed system goes unstable in the absence of loss and quantization and thus these values of M and N are unacceptable. In the No Solution region no limit cycle solution exists, and thus the analysis says nothing about performance. The region of interest is the LC Solutions region, where the analysis holds. The plot shows a stronger dependence on M than N, and this is probably the case because the low packet loss probability makes the value of M more important than N. However, N still has an effect. For example, the LZ and LH decoders have the same M but different N values, and LZ has a limit cycle at an amplitude of 1.79 while LH limit cycles at 1.91. The bottom plot of Figure 6-8 is given at a different scale to illustrate that the contour lines are not horizontal, and that there is a dependence on N. The region of smallest limit cycle amplitude of the plots is in a region along the line connecting points (N,M) = (0,0.84) and (N, M) = (1,0.82). The design point D 3 is in this region, corroborating it as a decoder that leads to approximately the smallest limit cycle magnitude in the design space. While all design points along this line lead to the same limit cycle amplitude, they result in different negative side effects. As will be shown later, solutions with smaller values of parameter M, corresponding to the bottom right part of Figure 6-8, result in higher steady state error to step inputs and higher sensitivity function magnitudes at low frequencies. Thus, the solution with the smallest limit cycle amplitude, smallest steady state error, and smallest sensitivity function magnitude will be in the upper left end of this solution line, where design D 3 is located. While this plot alone could potentially be used to design the system decoder, it is much 140 Limit Cycle Amplitude 1.15 3 1.1 1.05 2.5 2 0.95 2 0.9 0.85 - 1.5 0.8 No Solution 1 0.750.70 0.2 0.4 1 0.8 0.6 N 1.2 Limit Cycle Amplitude 1 3 2.5 2 1.5 0 1 0 0.5 1 N Figure 6-8: Limit cycle magnitudes as a function of M and N. Design points, QLZ, and QLH are also shown. Bottom plot with different scale illustrates contour lines are not horizontal. 141 Decoder QLH QLZ DI D2 D3 LC Amplitude 1.91 1.79 1.0 0.85 Gain Margin 1.05 1.05 1.09 1.20 Phase Margin [deg] 3.3 3.3 5.4 11.7 Steady State Error 0% 0% 3% 13% 0.70 1.26 15.5 18% Table 6.5: Gain and phase margins of system with delay and different decoders, with no loss or quantization. more computationally expensive to generate, and would still need to be used in addition to Nyquist plots to determine the effect of the decoder on the nominal system. Moreover, the plot does not carry over to MIMO systems, whereas the general design procedure does, as will be explained in a later section. 6.3.4 Design Point Side Effects While each design point represents a smaller resulting limit cycle amplitude, the decreases in amplitude come at the price of potentially undesirable side effects to the no-loss scenario. The main side effects in this example are effects on the gain and phase margin, system sensitivity, and steady state error to step responses. The gain and phase margins resulting from the designed decoders are shown in Table 6.5 for the system with delay but no loss or quantization. While these gain and phase margins don't directly apply to the system with loss and quantization, they represent a sort of metric of how the delayed system is affected by the decoders. It is interesting to note that the design points actually increase the gain and phase margin of the no-loss noquantization system, making it more stable. All phase margins are very small, with the largest corresponding to design D 3 . Design D3 also has the largest gain margin. Another side effect of decreasing the limit cycle amplitudes is that sensitivity is increased at low frequencies. Figure 6-9 shows the output sensitivity functions of the system with unity feedback and the design points D1 , D 2 , and D 3 , with and without delay. We use the sensitivity function defined as 142 I S= I +CPGd (6.52) for controller C, plant P, and decoder gain Gd. For low frequencies, as would be expected from disturbances, the designed codecs slightly increase the system sensitivity as compared to unity feedback. This is because, in the case of no loss and no quantization, the codec acts as a gain that is less than one, and the sensitivity function is inversely proportional to this gain. The clear spike in the sensitivity plot of the delayed system at frequency 0.5 rad/sec is coincident with the resonance frequency co of the system given by - or = Vm (6.53) This frequency is 0.5 because k = 1 and m = 4 for this system. The codec apparently reduces the sensitivity of the delayed system at this frequency, however it has little effect at higher frequencies. At higher frequencies the sensitivity function magnitude approaches unity for delayed and non-delayed systems, consistent with the plant acting as a low pass filter. The final side effect we consider is the effect on steady state error to a step response in the no-loss scenario. While the ultimate application for this example is a regulation task where position will be controlled about a zero reference point, and -steady state error will not be seen, it is still important to have a control system without too large steady state error to a step input. Because the original system has integral control, no steady state error results. But the design points add a gain to the feedback channel and this non-unity feedback induces a non-zero steady-state error to a step response. The steady state error for this system is defined as Ess = I - __CP 1 +CPGd (6.54) where C, P, and Gd are the transfer function magnitudes at low frequencies for the con- troller, plant, and decoder respectively. For low frequencies the term CPl large because of the integrator, leading the steady state error to simplify to 143 becomes very Original -- 1.5 - D1 1 - 0.5 C: 0) C 0, _j 2 D3 - - - Original+Delay - .Di +Delay 0 -... D2+Delay --.. D+Delay -0.5 -1 000 -1.5 -2 0 -1.5 -1 -0.5 Log, 0(Frequency) 0 0.5 -Original -0.2 D2 3~ -D - -0.4 --- Original+Delay -0.6 S-. . D +Delay 2 . D . .D+Delay Ca -0.8 . . .D+Delay 0, -1 -1.2 -1.4 - -1.6 -0 -'0 -2 -1.5 -1 Logl(Frequency) -0.5 , Figure 6-9: Sensitivity magnitude plots for original system and designed systems DI, D 2 and D 3 , with and without delay. Bottom plot is zoomed-in version of low-frequency portion of top plot. 144 Ess = 1 -. 1 Gd (6.55) With unity feedback gain Gd = 1 meaning Ess = 0, so there is no steady state error. However, the non-unity gain for Gd from the designed codecs leads to nonzero steady state errors. These errors are summarized in Table 6.5. Design DI results in only a 3% steady state error, while D 3 results in 18% error. One potential method to deal with these steady state errors to step inputs could be to scale the step input commands. For instance, using design D 3 , for which the steady state error is 18%, the desired reference input could simply be scaled by the factor 1/ 1.18 = 0.85 to result in a step response with zero steady state error. This scaling would not affect the limit cycle performance because it would be done outside the feedback loop. 6.3.5 Final Design Choosing the final decoder design requires striking a balance between low limit cycle amplitude for the lossy case and low side effects for the no-loss case. Table 6.5 allows comparisons to be made among the design parameters to help choose the final design. Ultimately the final choice would depend on the specific application, but in this case we assume it is most important to have the smallest limit cycle amplitude possible without a large steady state error to step responses. None of the designs have a major effect on system sensitivity, thus we don't consider sensitivity to be an influential design parameter. Design D 3 results in the largest gain and phase margins and thus the most stable system. However, these are still fairly small margins and again not as influential design parameters as steady state error in this case. Thus we choose design D 2 as a compromise design, with a-two-fold reduction in limit cycle amplitude at the price of 13% steady state error to a step response. We verify that the designed codec D 2 indeed results in a limit cycle as designed by first plotting the describing-function-derived gain-phase loci of the resulting system in Figure 6-10. The top plot represents the system with the equivalent complex representation of the decoder gain and phase given by A = 0.872 - 0.00008i. As designed, the plot passes through the critical point, at a frequency of co = 0.59. Note that, because this plot was 145 0.5- -1-1.5 R l-0.5 0.5 0 ---- -- - -- -0.5 -1. -0.5 Real Figure 6-10: Describing-function-derived gain and phase loci of system with delay, loss, quantization, and designed codec. Top plot is for positive X, and bottom plot for negative X, where X is the complex representation of decoder gain and phase at the limit cycle frequency. derived using describing functions, it is only valid at the critical point itself. Because the values of M and N for the decoder are functions of the tangent of the angle of X, we must also look at the gain-phase loci using -X as well to see if this plot intersects the critical point. This is because the tangent of an angle is the same as the tangent of the supplement of that angle, and multiplying a complex number by -I results in an angle that is the supplement of the original angle. The resulting plot is shown in the bottom plot of Figure 6- 10. This plot does not intersect the critical point, and thus we conclude there are no additional frequency solutions for the limit cycle. We plot the time series response of the system with quantization, loss, delay, and the designed decoder in Figure 6-11 and see close agreement between designed maximum limit cycle amplitude of 0.85 (shown with black horizontal dashed lines) and actual amplitude. The designed limit cycle amplitude represents a significant two-fold reduction in limit cycle 146 2.5 21.5- -H0.57 - CL -1 --0.5- -50 100 200 300 400 500 Nondimensional Time 600 700 Figure 6-11: Time series of system with designed decoder. Nondimensional time is used, defined as g(Od * time. amplitude compared to the zero-output or hold-output decoders. Finally, we plot the step responses of the nominal system with no loss and no quantization with and without delay to verify the steady state error predictions. Figure 6-12 shows step responses for the system with no delay (top plot) and with delay (bottom plot), and indeed the steady state error is approximately 13%. In general we can conclude that the designed decoder significantly reduces limit cycle amplitudes in the second operating scenario, with minimal effect on the performance in the nominal scenario. The main negative effect of the decoder is that it adds a small amount of steady state error to the system step response. But if limit cycle amplitude is a more important performance metric, and the application is a regulation problem around a zero set point, then this designed decoder may be appropriate. 6.4 MIMO Design Equations A similar design method can also be implemented for a MIMO case. As with the SISO case, two operating conditions are assumed, a nominal case with no quantization and no packet loss, and a second case subject to quantization and packet loss. The MIMO design method is, at a high level, the same as the procedure outlined in Section 6.2.1: a decoder 147 1.2 0.8 E < 0.6 0.40.2 00 20 40 60 80 100 Nondimensional Time 120 140 100 200 500 300 400 Nondimensional Time 600 700 1.8 1.61.4 1.2*0 < E 0.8 x 0.6-0.4 0.2 0 Figure 6-12: Step responses of original system (top plot) and system with 1.1-second delay in sensor feedback (bottom plot). Systems have decoder but no packet loss or quantization. Nondimensional time is used, defined as go)hT * time. 148 is derived that achieves an acceptable and stable response in the no-loss, no-quantization case, and meets acceptable limit cycle amplitudes in the loss and quantization case. The design procedure is given as the following: 1. Design controller to achieve desirable performance in no loss, no quantization case. 2. Pick baseline decoder for loss and quantization case (i.e. QLZ, QLH, etc.) and determine limit cycle amplitudes using DFs. 3. If LC amplitudes too large, pick smaller target limit cycle amplitude for one channel, holding others constant at baseline levels. 4. Find corresponding decoder using design equations. 5. If no solution, pick larger LC amplitude midway between current target and previous and return to step 4. 6. Check effect of decoder on Nyquist plot of no-loss, no-quantization case. 7. If unstable, pick larger target LC amplitude midway between current target and previous and return to step 4. 8. If stable, return to step 3 for next channel, or pick smaller LC amplitude for current channel and return to step 4, or end if last channel. The decoder derivation is slightly different in the MIMO case than the SISO case. For a system with n states, assume a decoder Sk = P(k) + Q(k)Sk_1, similar to that of the SISO case, with E[P(k)] = Msin(kor)In and E[Q(k)] = NIn, where I,, is the nxn identity matrix. It is assumed that each state limit cycles at the same frequency co, but at different target amplitudes al, ... , an,t. Independent packet loss probabilities Xj are assumed for channel i, with expected success probability matrix [ = -ai ... 0 1-a 0 0 149 2 ... .. 0 I- (6.56) a~n 6.4.1 Limit Cycle Criteria For this system a limit cycle will occur if the following conditions, analogous to SISO Equations (6.2) and (6.3), are met: j-1+det(1n+P(jot)C(jot)FD) = 1 (6.57) Z(-1+det(In+P(jo 1 )C(jw1 )FD))) = 7r (6.58) where F is the nxn diagonal quantizer describing function matrix defined as GQ(a,t/h) 0 0 0 .. 0 0 0 GQ(an,tlh)jI F= .(6.59) Here it is assumed for simplicity that each signal is quantized with the same quantization bin sizes. Both Equations (6.57) and (6.58) will be satisfied if the following condition is met: det(In +Pi(j3t )C(jcot)FD) = 0. (6.60) In general there is no closed-form simplification for the determinant of the sum of two arbitrary matrices [57]. However, if we design the decoder to be a diagonal matrix, then each channel will be independent and scalar decoders can be independently designed for each channel. This simplifies the problem so that equation 6.60 can easily be solved by optimization methods. The describing function matrix D is thus written as D(wt) = AS's,10)' 0 0 0 ... 0 L 0 0 As,,neTS'O . (6.61) When evaluated at a specific frequency, the matrix D is composed of complex numbers on the diagonal. For use in future equations, we thus rewrite D as 150 D(o) = A1 0 0 0 ... 0 0 0 Xn . (6.62) The only unknown variables in equation (6.60) are now A1 , ... , A. and w,. 6.4.2 Solving The Nyquist Equation Equation (6.60) can be set up as an optimization problem to solve for the value of ot and A, ... , In that result in the codec P(k) matrix as close to the identity matrix times the measurement as possible. This will ensure the codec has the least possible effect on the no-loss system. The Simplex method is used to search through different values of co and A. Once a solution is found, each complex A value is converted to a gain and phase, and equations (6.48) and (6.49) are used to solve for the corresponding values of M and N for a decoder. Each Xi will have a unique decoder pair defined by Mi and Ni. For feasibility we require 6.4.3 INI < 1 as in the SISO case. Codec Implementation Because we use an independent decoder for each channel, the decoder matrices P(k) and Q(k) are defined as P(k) = EkV-AMyk Q(k) = (In - Ok)(In -'1) (6.63) 1N (6.64) where 0 A = ... 0 ... ... o 0 ... 0 151 1 (6.65) H>X 1 i- F1 X2 F2 Figure 6-13: Example system with two inputs and four outputs. Two masses are connected by a spring to each other, and dashpot to a wall, and acted on by two input forces. and M = MI 0 .. 0 0 .. .. 0 0 ... 0 NI N = 0 (6.66) Mn ... 0 0 ...... 0 0 ... 0 .(6.67) Nn Thus the full decoder is written as Sk= MI 0 .. 0 0 ... ... 0 0 ...0 ] kYk+ NI 0 ... 0 0 ... ... Mn j0 ...0 0 (In--®k)Sk-I. (6.68) Nn The designed system will thus limit cycle at the desired amplitudes in the packet-loss case, and the effect of the codec on the no-loss case will be small if P(k) is close to the identity matrix times the measurement, as designed. 152 6.5 MIMO System Design Numerical Example As a numerical example, we consider the two-mass MIMO system described in Section 4.4.3 to illustrate the MIMO design method. We consider the case where there are two force inputs, one for each mass, as illustrated in Figure 6-13, and we are trying to regulate positions x1 and x2 to zero error with respect to their reference values. In this example the nominal operating condition has no delay and no packet loss with a time step of 0.1 seconds, but a second operating condition that must be accounted for has a sensor feedback delay of 1.5 seconds in all sensor channels and is subject to quantization and independent packet losses of 1% in each channel. This example could represent, for example, two AUVs maintaining a formation while following a leader, with ranges communicated acoustically to a centralized controller. The first operating scenario could be in open water, and the second scenario is operation in a cluttered environment that negatively affects acoustic signals. We first design an LQR controller for the nominal operating condition, and then design a codec for the lossy scenario. We choose an LQR controller because this is a regulation task, which is well suited for LQR control. For ease of navigating through the design example, all time series plots are collected in Table 6.6 and Nyquist plots in Table 6.7. The plots are for the three cases of channel considered (original system with no delay, system with delay, and system with delay, loss, and quantization), and the three decoders considered (LZ, LH, and designed decoder). As with the SISO example, nondimensional time is used, defined as gco. r * time. For this example we use values g = 1000, cod = 1, and r = 0.1. 6.5.1 MIMO System with No Loss For this example we assume sensors exist for all four states, and that the system has two inputs, a force input on each mass. We design the LQR controller with the Q matrix equal to a four by four identity matrix and the R matrix a two-by-two identity matrix. This way state error and control action are penalized equally. This yields the gain matrix 153 LZ LH w. Design w.6 0. 0 I" Iw- -0~ o w00 "W ~~We Original -0.4 06 0 4 0 i 02 0 oao SW - 5w toga - logo 2ow goo T_ 300D 3W 00 0.4 042 Delay 0 ism 1- 2 0 - 05 1.5 T- . 11 N,,,d- .,W T- I8 1 -1 -02 *4: -02 1.4i 1.5 Q 5 0,.. Delay+ Loss+Quant 111 II l a i NDr4kw-rW TI,,la IIS-2,6 lii -a. Z 15 2 I V iRlill lilt 11411111 It I I i I I f ...... ... ... .... . ............ go A I I l 1111;1 I 2 2 -2 .1l t . .... ..I -.. ..... li 10 0 0 I 111111 II 2523.5 - 1 I1 05 1 222222 Time series responses t11 ll 11 I Table 6.6: 2 for system with no delay, delay, 5 2 5 r.0 and de- lay+loss+quantization, for LZ, LH, and designed decoders. Nondimensional time is used, defined as g Vf *time. 154 . . I 1. I LH LZ Design Original Delay -1 -5500. a0 52-.! 0.5 R0a Table 6.7: Nyquist plot for system with and without delay, for LZ, LH, and designed decoders. Nyquist plots are in general not defined for systems with loss and quantization, and thus are not shown for those cases. Kiqr- 0.61 0.32 0.26 0.80 0.52 0.10 0.52 2.14 (6.69) For this controller we see the following time responses for mass positions Xi and X2 subject to initial position errors of positive one, and zero initial velocities, given in Figure 6-14. The transient errors in each case settle to zero after approximately 150 time steps. Because this is a proportional controller, however, there will be steady state errors to step responses. These errors aren't extremely important in this case since this is a regulation problem where positions are being controlled to zero, but it is still insightful to check that these steady state errors to step inputs are not too large. For a MIMO system there are many different combinations of step inputs possible that could yield different steady state errors, but a good general method to gauge the size of steady state errors is to look at the magnitudes of the loop transfer functions for different channels. In this case there are four outputs being controlled and four reference inputs, so this means 16 channels between 155 0.8x 0.6:cx 0.41 0.2 0 -0.2-0.41 o500 E 1000 1500 1000 1500 Nondimensional Time 0.8 0.6! 0.40.20-0.2 -0.4-- 0 500 Nondimensional Time Figure 6-14: Time response of original system to initial position displacements of 1 for each mass, and initial velocities zero. Nondimensional time is used, defined as gob T* time. 156 ........... ... .... From V From X1 0 5 5 0 0 0 H- -4 0 Cz -2 0 -5 -4 0 -2 --4 0 0 -2 -2 -4 -4 -5 -4 -2 0 -4 From V2 5 -2 0 -4 -fl 0 -2 0 -4 -2 0 -2 0 -2 0 -2 0 0 0 5 F- 0 From X2 5 -2 1 -2 -4 0 -4 5 5 5 5 0 0 0 0 -j 0 I- -4 -2 0 -51 -4 0.5 C!71 0 0 0 -2-4 -4 -2 0 -2 0 -1.5 -4 -51 -4 0 -1 -1 -2 -51 -0.5 0 0 -0.5 -4 -2 -0.5 -2 0 -1 -4 Logl(Frequency) Figure 6-15: Loop transfer functions magnitudes for MIMO example, at low frequencies. reference inputs and outputs. The steady state error for any channel is roughly inversely proportional to the magnitude of the loop transfer function for that channel at low frequency, so a large transfer function magnitude would result in a small steady state error. We plot the 16 transfer function magnitudes in Figure 6-15 for a range of low frequencies from 10-4 rad/sec to I rad/sec. In this plot V and V2 are the states for the velocity of X, and velocity of X2 , respectively. The outputs of greatest importance are Xi and X2 , since these are the two positions we are regulating. Figure 6-15 shows that the transfer functions from any input to X, or X2 have large and increasing magnitudes for lower frequencies, which would yield small steady state errors as desired. The transfer function magnitudes at low frequencies are not as large from any of the inputs to VI and V2 , so these would have some steady state error to step inputs. We conclude, because of the large transfer function magnitudes to outputs X 1 and X2 , that this is a reasonable controller for the regulation case with acceptable steady state error to step inputs. 157 0.5 -0 -----. ---.- - E -0.5 -2 -1.5 -1 Real -0.5 0 0.5 0.5- 0-------------0 ---------- ------- E -0.5 -2 -1.5 -1 -0.5 0 0.5 Real Figure 6-16: MIMO Nyquist plots for original system (top plot) and system with 1.5second delay in sensor feedback channels (bottom plot). Next we consider the second operating condition, when the system is subject to a 1.5second sensor feedback delay in all channels. Figure 6-16 shows the Nyquist plot of the system with no delay (top plot), and with delay (bottom plot). The original system is stable, consistent with the time responses. However, the delayed system has a crossover point of -0.88, and is close enough to instability that the addition of packet loss and quantization will cause it to limit cycle. Time responses shown in Figure 6-17 for the same initial conditions as in Figure 6-14 confirm that the system with 1.5-second delays in all channels is indeed stable, but takes much longer to settle than the original no-delay system. 6.5.2 System with Packet Loss and Quantization We next examine the effect of packet loss and quantization on the second operating condition (1.5-second delay). The simplest way to deal with lost packets is to use a zero-output or 158 1 0.8 0.6 - 0.4 X- 0,2qL -0.4 0.5 1.5 2 Nondimensional Time 2.5 1 1.5 2 Nondimensional Time 2.5 3 X 104 1 0.8 0.6 0.4 E 0.2 0 -0.4 0 3 . 0 x Figure 6-17: Time series responses of original system with 1.5-second time delay in sensor feedback of all channels, for initial displacements of one for each mass and zero initial velocities. Nondimensional time is used, defined as g co T * time. 159 0.5 -10 ' -0.5 Nondimensional Time X 10 4 0 Nondimensional Time X 10 Figure 6-18: MIMO design time series plots using QLZ codec. Top plot is for X, response and bottom plot for X2 response. Red lines indicate a packet loss in one of the four channels, and dashed horizontal black lines indicate predicted limit cycle amplitudes. Nondimensional time is used, defined as gwo T * time. hold-output decoder. However, these decoders result in large limit cycles. Using the QLZ and QLH describing functions, the predicted maximum limit cycle amplitudes for these decoders are al = 0.88, a2 = 3.81 for QLZ, and al = 0.72, a2 = 5.49 for QLH, where a, and a2 represent the limit cycle amplitudes for states X1 and X 2 , respectively. Figures 6-18 and 6-19 confirm these predictions from the simulated time series responses of the system for QLZ and QLH, respectively. For these figures, packet losses are marked for a loss in any channel. It is interesting to point out that even though the individual channel packet loss probabilities are low, the whole system will be affected by a loss in any individual channel and thus the low loss probabilities are still significant. 160 >- -0. 2 -1 50n'a . ' m2 2.5 x1 Nondimensional Time x 10 6 -2 -6 0 I III liii 1TIH 011 111 111 III 'j~ j II 10 -ax 0.5 1 1.5 2 Nondimensional Time 2.5 3 x 0 Figure 6-19: MIMO design time series plots using QLH codec. Top plot is for X1 response and bottom plot for X2 response. Red lines indicate a packet loss in one of the four channels. Nondimensional time is used, defined as gffl T * time. 161 6.5.3 Codec Design Ideally the limit cycle amplitudes in this scenario would be as small as possible, and the MIMO design procedure will allow a decoder to be designed that significantly reduces the limit cycle amplitudes. Following the design procedure, we start with the QLZ point of (al,a2) = (0.88,3.8) and first attempt to reduce a2 . We first chose the design point Di = (0.88,1.04) as a significant decrease in amplitude a2. The value 1.04, specifically, is chosen such that no amplitudes greater than 1.04 have the same quantizer gain, and thus there would be no larger limit cycle amplitudes inadvertently designed for. For D1 we find A, values 2 A (6.70) -2.55 +0.16i = = -6.18+0.08i (6.71) = 0.44-0.0004i (6.72) (6.73) 1.29-0.004i = (6.74) with the corresponding decoder P(k) = Ok Q(k) = (I- E) 1.82 0 0 0 0 6.35 0 0 0 0 0.42 0 0 0 0 1.23 y 0.38 0 0 0 0 0.12 0 0 0 0 0.01 0 0 0 0 0.03 (6.75) (6.76) Figure 6-20 shows this design point in relation to the QLZ, QLH, and other design points. 162 D 0.9 - DD 2 x 0.8 3 D1 - DFinal 0.7- XD QLH 1 4 X 5.5 0.3 - 0 Viable Design X Unviable - 0.2 ' 0 0 Figure signed design design - - ' '3.9 - 0.4 - 1 .3 L) 1 3 4 2 X2 Limit Cycle Amplitude Design '- ' 0.5- - E 0.6 - 5 6 6-20: Plot of limit cycle amplitudes for states X1 and X2 for QLZ, QLH, and decodecs. Blue dots represent viable design points, while red exes represent unviable points. Euclidean norms of limit cycle amplitudes are marked for QLZ, QLH, and points, showing significant reduction for design point. The design point D 1 will mathematically result in the desired limit cycle amplitudes for the lossy system, but practically it is important that the designed decoder has minimal effect on the system in the case of no loss or quantization. One way of examining this effect is to plot the Nyquist plot of the system with the decoder but no loss and no quantization, and check for stability. Figure 6-21 (top plot) shows this Nyquist plot. The system is stable, with a crossover point of -0.95 and no encirclements of the critical point, and could potentially be pushed closer to the critical point. In the next iteration of the design process, we chose a new point with smaller a2 value, D2 = (0.88,0.7). This time the Nyquist plot corresponding to this design encircles the critical point, as shown in Figure 6-21 (middle plot), and the system is unstable. We continued the design process choosing a new point midway between the previous two points until we reached a design point with a Nyquist plot that does not encircle the critical point, given by D3 = (0.88,1.02). The corresponding Nyquist plot is shown in Figure 6-21 (bottom plot) and this time is stable, with a crossover point of -0.97. Because the crossover point is now very close to the critical point, we do not try to decrease a2 any more, and next focus on decreasing a,. We chose design point D4 163 = -1.5 -2 -1.5 -1 -0.5 Real 0 0.5 1 E 1.5 1 0- --------- x - -- -- - 0.5- - -0.5 -1-1.5-2 -1,5 -1 -0.5 Real 0 0.5 1 E 1.51- 0.50 - ----- ----- -- -- ---- ------ -----0.5-1- -2 -1.5 -1 -0.5 Real 0 0.5 1 Figure 6-21: Nyquist plots of designs D, (top), D 2 (middle) and D 3 (bottom) for systems with no nonlinearities (i.e.systems with delay and decoder but no loss or quantization). Design D 2 is unstable because Nyquist plot encircles critical point, but Di and D 3 do not encircle the critical point and are stable. 164 .. ............ ... ... 0.5 -0.5 -2 -1.5 -1 -0.5 0 0.5 1 0.5-1.5 ------ ---- - --Real - 0 - - --------0.5- -1.5-2 -1.5 -1 -0.5 0 0.5 1 Figure 6-22: Nyquist plots of designs D 4 (top) and DFinal (bottom) for systems with no nonlinearities (i.e.systems with delay and decoder but no loss or quantization). Design D 4 is unstable because Nyquist plot encircles critical point, but DFinal does not encircle the critical point and is stable. (0.7, 1.02), and see the corresponding Nyquist plot (shown in Figure 6-22 (top plot)) encircles the critical point and is unstable. We next chose an intermediate design point between D 3 and D 4 , given by DFinal = (0.79,1.02). The corresponding Nyquist plot (shown in Figure 6-22 (bottom plot)) is stable, with a crossover point of -0.98. We settled on this point as the final design, which gives a significant reduction in limit cycle amplitudes as compared to QLZ or QLH. As shown in Figure 6-20, if we use the Euclidean norm of the limit cycle amplitudes as a metric, the design point has norm 1.3, compared to 3.9 for QLZ and 5.5 for QLH. By using the Euclidean norm we assume both limit cycle amplitudes are equally important to decrease, which is the case in this example. The values of X for this design are given by 165 A 1 = -1.60+0.18i (6.77) = -5.66+0.07i (6.78) = 0.11+000li (6.79) X3 A4 = (6.80) 1.35 -0.003i (6.81) and the decoder matrices P(k) = Ok Q(k) = (- Ok) 0.97 0 0 0 0 6.35 0 0 0 0 0.12 0 0 0 0 1.33 (6.82) y 0.54 0, 0 0 0 0.11 0 0 0 0 -0.11 0 0 0 0 0.02 (6.83) The decoder algorithm is thus Sk =Ok 0.97 0 0 0 0 6.35 0 0 0 0 0.12 0 0 0 0 1.33 yk + (I-k) 0.54 0 0 0 0 0.11 0 0 0 0 -0.11 0 0 0 0 0.02 Sk-1. (6.84) It is noteworthy that the decoder matrices have non-obvious values, with numbers ranging from -0.11 to 6.35. These values do, indeed, cause the describing-function-derived gain-phase loci of the quantized lossy system to pass through the critical point, as shown in Figure 6-23 (top plot). Because this plot is derived using describing functions, it is only 166 0.80.6 0.40.20 - - - - - -- - -------- -0.2-0.4-0.6-0.8-1.2 -1 -0.8 -0.6 Real -0.4 -0.2 0 -1.2 -1 -0.8 -0.6 Real -0.4 -0.2 0 0.80.60.40.2- -- 0.2-0.4-0.6-0.8- Figure 6-23: Describing-function-derived gain-phase loci of designed system with delay, quantization, and packet loss. Top plot is for all positive )s, and bottom plot for (Xi, -A 2 , X3, -X 4 ). Top plot passes through critical point, marked by red x, as designed, and bottom plot passes close to critical point. valid at the critical point. It is interesting to note the resemblance of part of these curves to the arches seen in the quantizer describing function. This is because, while the limit cycle amplitudes are specified for positions X, and X2 , we assume the velocity limit cycle amplitudes are the product of the system frequency and position amplitude. Thus, as different frequencies are swept through to generate the plot, the quantizer gain for the velocity states will change, resulting in the arches seen in the plot. We must also check that no additional frequencies are solutions to the gain-phase locus plot passing through the critical point. As in the SISO case, because the designed codec depends on the tangent of the desired codec phase, and the tangent of the phase is the same as the tangent of the supplement of the phase, there may be multiple phase solutions for a given codec. Shifting the phase by 180 degrees is equivalent to multiplying the equivalent 167 complex number representation of the gain and phase by -1. Thus, because the system has four independent codec channels, there are 24 = 16 possible combinations of positive and negative values of the designed A values. The top plot of Figure 6-23 shows the case where all values are positive, with a predicted limit cycle frequency of 1.01 rad/sec. The bottom plot of Figure 6-23 shows the case where A 2 and A4 are multiplied by -1. In this case the resulting gain-phase loci approximately crosses the critical point at a frequency of 2.1 rad/sec. Of the 16 possible plots, five cross the critical point at a frequency of 1.01 rad/sec, two cross at 2.1 rad/sec, and the remaining nine do not intersect the critical point. The two plots in Figure 6-23 are representative of these cases. We conclude that the limit cycles at the designed amplitudes have two solutions for possible frequencies: 1.01 rad/sec or 2.1 rad/sec. 6.5.4 Design Performance We plot time series responses of the system with quantization, loss, delay, and the designed codec in Figure 6-24 and see reasonably close agreement between designed limit cycle amplitudes (shown as dashed black lines) and actual amplitudes. In these plots the red dashes indicate a lost packet in any of the four channels. The plot for X1 shows limit cycling at a frequency of approximately 2 rad/sec, while X2 oscillates at a frequency of approximately 1 rad/sec. These frequencies are consistent with the two frequency solutions for the designed codec. While both frequencies may exist at the same time in the solutions, . the dominant frequencies are 1 rad/sec for X2 and 2 rad/sec for X 1 It is also important to check that the decoder does not have an undesirable effect on the original no-loss scenario. Time series responses are given in Figures 6-25 and 6-26 for the original system with the designed decoder, with the same initial conditions as before, and the main effect is seen to be a longer settling time (300 time steps as opposed to 150 time steps). The system is still stable, though, and this side effect of the decoder is deemed an acceptable price to pay for significantly reducing the limit cycle amplitudes in the second operating scenario. 168 -0.5 x11 -D 'a 0 x . Nondimersonal Time 2.. Figure 6-24: MIMO design time series plots using designed codec. Top plot is for Xi response and bottom plot for X2 response. Red lines indicate a packet loss in one of the four channels, and black dashed lines indicate designed limit cycle amplitudes. Nondimensional time is used, defined as gT* time. 169 0.80.6E 0.40.20 -0.2 0 - .4r 0 500 1000 0 500 1000 1500 2000 2500 Nondimensional Time 3000 3500 4000 0.810.6CL O.4 E 0.2 0:! -0.2-0545 1500 2000 2500 3000 Nondimensional Time 3500 4000 Figure 6-25: Time series responses of original system with no delay, loss, or quantization with decoder. System is still stable, with longer settling time than in case without decoder. Nondimensional time is used, defined as gwob * time. 170 .......... ..... .. I........... ........... 12 0.8 0.6 0.4 0.2 0 -0.2 -0.4 0 0.5 1 1.5 2 Nondimensional Time 2.5 1.5 2 1 Nondimensional Time 2.5 3 x 10, 1- 0.8- 0.6 0.4 E 0,2 -0.2-0.4 0 0.5 3 x 10 Figure 6-26: Time series responses of original system with delay but no loss or quantization with decoder. System is still stable. Nondimensional time is used, defined as gO)T *time. 171 From X 0 5 5 5 0 0 0 -4 5 CD Cz 0 -2 0 0 -4 5 -2 0 -2 0 5 -4 -2 0 -4 From V2 -2 0 0 I- -5 -4 5 -2 -54 -4 5 0 0 0) 0 0 -10 -4 5 -45 0 >P 0 -2 0 0 -0.5 -4 -4 0.5 -2 0 0 -2 0 -0.5 -4 -2 -4 -4 -2 -4 20 5 0 0 2 0 0 0 I- -4 0.5 -4 - -o From X2 From V -2 0 -4 0.5 -2 0 ~-4 -3-4 -2 0 -1 -2 0 -0. -4 -2 0 -2 0 Log (Frequency) Figure 6-27: Transfer functions magnitudes for MIMO example with designed decoder, at low frequencies. We finally check the effect of the designed decoder on no-loss system steady state errors to step inputs, as done for the original controller. The transfer function magnitudes are given in Figure 6-27, and we see similar magnitudes as for that of the original system. Magnitudes are large and increasing for decreasing frequencies for transfer functions to outputs X1 and X2 as before, and thus we conclude the steady state errors to step inputs are acceptable as before. 6.5.5 Checking for Near Optimality We finally check that the designed limit cycles are nearly locally optimal for this example. This can be done by examining the quantizer describing function plot near the design point. On this plot (Figure 6-28 for reference), any amplitudes between 0.53 < a/h < 0.7 have a DF gain that also corresponds to a higher amplitude a/h. For instance, the quantizer gain at a/h = 0.6 is the same as the gain at a/h = 0.9 (shown in the top plot of Figure 6-28). 172 1.1 7 ------ --- --- --- - -- - --- -- - ---- - -- - -- z C 0 o 0.6 1.2 7 -------- 0.9 a/h --------- 1.0 7 -- -- - -- -- -- - --- - - - - - ---------- - - --- - --- z 0 0.7 1.04 a/b Figure 6-28: Quantizer gain plots. Top plot shows gain at a/h=0.6 corresponds to gain at larger value of a/h=0.9. Bottom plot shows region 0.7 < a/h < 1.0 has gain that does not correspond to larger amplitude solutions. However, amplitudes in the range 0.7 < a/h < 1.04 have a quantizer gain that does not correspond to a higher amplitude (shown in the bottom plot of Figure 6-28) . Thus, an amplitude in the former range would not be a valid solution because it would not represent the largest limit cycle amplitude. We conclude that, in the local region around the final design point DFin the limit cycle amplitudes are lower bounded by 0.7. This space is shown in Figure 6-29. This plot shows that, indeed, the designed point is close to the local lower bounds for limit cycle amplitudes. Furthermore, we can examine the local sensitivity of the mean square limit cycle amplitude as a function of independent variations in the decoder parameters to see how close the design is to local optimality. Figure 6-30 shows the sensitivity plots for variations in MI...M 4 and Figure 6-32 for variations in N1 ... N4 . For each of these plots only one decoder parameter is varied by plus or minus 50 percent of the designed value while the other seven 173 0.95 D 0.9 * D D2 QLZ 0.85 E < 0 Q 0.8- ODF g . Final ---.-.--.-.-.-.-.-.-.-.- .- - --- -- -- .E X< QLH LC Solutions 0.75 0.7_1 0.65 - - ' - 4 0 Viable Design Unviable Design -X 0.6- No LC Solutions 0.550 1 4 2 3 X2 Limit Cycle Amplitude 5 6 Figure 6-29: Plot of limit cycle amplitudes for states Xi and X2 for QLZ, QLH, and designed codecs. Blue dots represent viable design points, while red exes represent unviable design points. Regions with and without limit cycle solutions are shown. are held constant. The red dot in the plots indicates the design point corresponding to DFinThe plots show fairly low sensitivity to changes in Mi, M2 , and M3 , but higher sensitivity to changes in M4 . The value of M4 is very close to locally optimal, with the only possible improvement seen if M4 were slightly decreased. This would result in at best a 6% improvement in mean square limit cycle amplitude (from 1.30 to 1.22), so the current design is indeed fairly close to the local optimum. The design point corresponding to the local minimum seen in the M4 plot corresponds to the limit cycle amplitudes (a,, a2) = (0.93,0.78) at M4 = 1.15, as shown in Figure 6-31. This point actually has a larger limit cycle amplitude al than does the QLZ starting point for the design method at (ai, a2) = (0.88,3.8), and this is why the design method missed this point. The method is to alternately attempt to decrease al and a2, starting from the initial point and moving in the direction of the local lower bound of (0.7,0.7). It may be possible to find this locally optimal point using a more sophisticated optimization search method with a cost function that somehow takes into account both the limit cycle mean square amplitude and how close the design point is to being viable - i.e. how close the MIMO Nyquist plot of the no-loss system with the designed decoder is to encircling the critical point. Such a cost function would necessarily depend on the deter174 1.2975 1.297 1.297 - 1.2965 E . 1.296 1.2965 .0 E 1.2955 1.296 1.295 C2 Cr U] C: c 1.2945 1.2955 1.294 4 1.5 5 6 8 7 9 M2 M, 3.5, __ _ 1 1.2971 1.2971 3 . a 1.297 41 2.5 1.2969 2 E 1.2969 62 1.2969 -j 1) 1.2968 (IO 1.5 1.2967 1.2960 6 0.08 0.1 0.12 M 0.14 0.16 0.8 0.18 1 1.4 1.2 1.6 1.8 2 M4 3 Figure 6-30: Sensitivity plots of mean square limit cycle amplitude for small changes in M decoder parameters. Red dot marks design point. 175 1.5 a C E E E E 0.8 1 1.2 1.4 1.6 1.8 2 M4 Figure 6-3 1: Sensitivity plot of X1 and X2 limit cycle amplitudes for changes in M4 decoder parameter. Red dots mark design point. minant of the sum of the identity matrix and the loop transfer matrix of the system, as determined by the MIMO Nyquist stability criterion, and on the quantizer and lossy channel describing functions. It would also depend on some measure of closeness to instability for the MIMO Nyquist plot, similar to a gain or phase margin. Gain and phase margin are not well-defined for MIMO systems, though, and the closeness measure may be difficult to establish. Moreover, this function would in general be nonconvex because of the dependence on the nonconvex quantizer describing function, which would affect the decoder and hence affect the determinant. Thus there would be no guarantee that such a method would necessarily find the global optimum. The proposed design method, though, has the advantage of simple implementation while still taking into account both the limit cycle mean square amplitude and the viability of design points. Figure 6-32 shows fairly low sensitivity to changes in the N decoder parameters for the range tested (plus or minus 50 percent of the designed value). However, this is partly due to the design values being close to zero and thus only minor changes were tested. The limit cycle mean square magnitude is still somewhat sensitive to more significant changes in N values. For example, if we look at changes in N4 , the most sensitive parameter, in the range -3 to +3, as shown in Figure 6-33, we see the mean square limit cycle magnitude decreasing 176 1.2071.297 1.297 1.297 1.297 - - 1.297- 1.291.2969 CLC .2 1.299S1.2969-1.2969 E 1.2969- 1< 1.2971.299 1.2968 1.29 1.2968 1.29790.3 0.4 0.5 N, 0.6 12968 1.2969 1.2905 1.297 0.7 1.297- C1.297- ~1.299 a, E1.2969- ' 6 1.299 C 0 1.2969- byau 0.15 11.29 1.2977 1.2969-126 ar 0.1 N2 - T 1.2968 1.2969S1.297 - < E 1.2969- a, 81.2969- 1.2969- 1.2969- 1.2968 - 1.2968 1.2968 1.2968- 1.2968[ 1%.2.897 N 1.2968-0.14 -0.12 -0.1 N3 -0.08 -0.06 0.1 3 oeer hsdcesei 0.015 tl mlleog 0.02 0.025 htw 0.03 N4 Figure 6-32: Sensitivity plots of mean square limit cycle amplitude for small changes in N decoder parameters. Red dot marks design point. by about 1% to 1.285 for N4 = -3. However, this decrease is still small enough that we conclude the designed values for N are fairly close to the local optimum. 6.6 Summary We have proposed a method to use the DFs as synthesis tools to design a system decoder. In the case of packet loss and quantization in the feedback channel, the design method ensures the system limit cycles at a user-determined amplitude. Meeting a specified limit cycle amplitude is important because limit cycle behavior may be unpredictable via classical design methods and only seen after a design is checked via simulation or via DFs used as analysis tools. However, if a given limit cycle is deemed acceptable, this method allows that limit cycle to be designed for. Furthermore, an iterative method was given to decrease the limit cycle amplitude. Numerical examples were given illustrating the design method on SISO and MIMO systems, showing up to three times reduction in limit cycle amplitudes. It 177 1.31- C, 1 .305- E 1.3_j 1.295[ C, C tv 1.29[ 1.285[ 1.28' -3 -2 -1 0 N 1 2 3 4 Figure 6-33: Sensitivity plot of mean square limit cycle amplitude for large changes in N 4 decoder parameter. Red dot marks design point. is noteworthy that the designed decoder is very simple, having the equivalent structure and computational complexity as the Zero-Output and Hold-Output decoders, but is still able to achieve strong results. The numerical examples show the designed decoders have nonobvious parameter values which lead to significant reductions in limit cycle amplitudes. 178 .. ... ...... ... .......... Chapter 7 Experiments 7.1 Introduction In this chapter we test the theoretical channel describing function results on the control of a small autonomous floating raft subject to quantization and packet loss, in a controlled lab setting. We consider the SISO case where we control the raft heading, with heading measurements subject to packet loss and quantization. For given quantization and packet loss parameters we use channel describing function analysis to predict limit cycle amplitudes for QLZ, QLH, QLF, and QLM systems, and then design a new controller/codec that results in a smaller limit cycle than those from the other codecs/controllers. The purpose of this experiment is to show that a physical control system that operates close to instability in the absence of quantization and packet loss can be inadvertently pushed into a limit cycle by the addition of quantization and packet loss. Moreover, the experiment shows that it is possible to predict the limit cycle amplitudes using DFs, and to design a codec to reduce the effect of the limit cycle. 7.2 Experimental Setup In these experiments an autonomous raft floats in a 1-m deep water tank, with an overhead camera taking raft heading measurements. Figure 7-1 shows the experimental setup. The camera sends the measurements to a shore computer, which artificially adds quantization 179 Overhead Camera Quantization and/or packet loss artificially added to measurement % Camera senses %raft heading Controller Control command Water tank Figure 7- 1: Experimental test setup. We control heading of a small autonomous raft in a lab pool environment using an overhead camera sensor and shoreside controller. and/or packet loss to the measurement, computes a control command, and sends the control command to the raft over XBee. The raft, shown in Figures 7-2 and 7-3, is controlled by eight separate motors located equidistant from the center and point fore, aft, left, and right. A large additional motor on the sterm of the raft can provide additional thrust for contact force experiments, but is not used in the heading control experiments. The raft is 0.5m long, 0.3m wide, and weighs 15 kg with all onboard electronics and batteries. An April tag [80] is mounted on the top, allowing the camera to sense raft heading. Figure 7-4 shows a block diagram of the feedback control system. The camera senses the heading and sends it to the shore computer. The measurement is then encoded, quantized, and passed through an artificial binary erasure channel. The output is then decoded, the state estimated, the estimate passed to the controller, and the control command sent to the raft. 180 Figure 7-2: Experimental test platform side view. Raft is equipped with April tag on top so overhead camera can sense heading. Figure 7-3: Experimental test platform top view, as seen from overhead camera. 181 Controller Contrller Delay Saturation/ Deadband= Pat Pnt. Decoer/Quantizer El~ lstimator Sno Ssr . Encoder Qatz Lossy Channel Figure 7-4: Block diagram of experimental system. Thrusters are represented by the delay block and saturation/deadband block. Communication channel is given by the encoder, quantizer, lossy channel, and decoder blocks. 7.3 System Models 7.3.1 Thrusters The raft thrusters are modeled with a delay block and saturation/deadband block. The delay is characteristic of underwater thrusters - the thruster may spin but there is a delay before thrust is felt by the raft. The saturation/deadband is characteristic of most motors - below a certain small positive command level the motor doesn't rotate, and above a certain level the motor saturates, reaching its maximum speed. Figure 7-5 shows the describing function gain for the thruster in this experiment. In this plot the control input is normalized so the maximum motor propeller speed is attained at an input of one. For inputs greater than one, the motor propeller speed is still equal to one, and thus the describing function gain is equal to 1/u for input u. We found the deadband for the motor is at 0.1, meaning control commands u < 0.1 result in no motor movement, i.e. gain of zero. 7.3.2 Raft Model We derive a model of the raft plant from control command to heading, based on the raft thruster configuration shown in Figure 7-6. In this setup the raft has eight identical thrusters mounted radially, such that four are engaged for positive rotation and the other four engaged for negative rotation. For this model we assume the raft moves as a mass with damping provided by the water, acted on by a net thrust, as described by the equation 182 1 Unity Gain 0.8- Saturation 0.60 0.4- 0.2Deadband 00 0.5 2.5 2 1 5 1 Normalized Input Control Command 3 Figure 7-5: Actuator describing function capturing deadband (u < 0.1), unity gain(0. 1 < u 1), and saturation (u > 1) regimes. JA = -b6 +4rFt (7.1) for raft inertia J, water damping coefficient b, radius r from raft center to thruster, and individual thruster force Ft. The control command sent to the raft is a voltage that commands propeller speed. In steady state, thrust force is proportional to the square of propeller speed [116], given by the equation Ft = CtK2I9 (7.2) for propeller speed n and model constant Ct dependent on thruster and propeller geometry. We linearize this model, as similarly done in [116], by assuming thruster force is approximately linearly dependent on propeller speed, for an appropriately-chosen proportionality constant Ct, different than Ct. We also assume a lag between input propeller speed and steady-state thrust, as is characteristic of underwater thrusters. For simplicity we model this lag as a pure delay. The final model is thus represented by the continuous-time transfer function from control command u to raft heading 9 - Ke-s' 183 (7.3) ~0~ I I I I I I p. Figure 7-6: Top view of autonomous raft used in experiments, showing thrusters and coordinate frame. 184 .... ... .... I... ................ ..... .. .. ............ ... 15i - - - Heading Data 10- -Model 5 0.- 0 0.2 0.4 0.6 0.8 1 Time [s] Figure 7-7: Raft model vs data for thruster propeller speed step inputs of 30, 50, 70 and 90 percent. for some constants K, c and Td. 7.4 Determining Model Parameter Values To find the constants of this model we performed heading step responses for control commands within the unity-gain regime of the actuator (i.e. not in the deadband or saturation zones). In each test we started the raft at rest and sent a constant control command of 0.3, 0.4, 0.7, or 0.9. Figure 7-7 shows the unfiltered step responses of heading vs time and a model fit. We fit the model to the first second of the step response, as a relevant time frame for future control experiments conducted at a timestep of 0. 12 seconds. For the model we see acceptable agreement for a 0.36-second delay, K = 99.7 and c = 2. 1. We note that, while we assume a constant dt of 0. 12 for analysis, in reality the dt varied between 0. 115 and 0. 125, and we have assumed the average value of 0. 12. 7.5 Controller Design We designed an LQG controller in discrete time to control raft heading, for use in and QLF QLM, and derived the equivalent compensator for use in QLZ and QLH. This way, in 185 the absence of packet loss and quantization all systems will behave identically, but with packet loss and quantization they will behave differently. We first formulated the system in state space, with two heading states (heading and heading rate), and three control command states (command and two delayed command states). For the LQG controller/estimator we assume sensor and process noise covariances of one, and choose LQR gains R = 1, and Q= 10 0 0 0 0 0 10 0 0 0 0 0 1 0 0 0 0 0 1 0 L0 0 0 0 1J (7.4) to penalize state error much more than control command. We used the constant time step of dt = 0.12, as determined by the camera sensor update rate. This yields the constant steady state Kalman gain matrix Kf = [1.28 3.48 0 0 0]' and control matrix Ku= -[0.086 0.057 0.73 0.80 0.89]. (7.5) In this set of experiments we assume the system is designed to operate in nominal conditions of a one time-step delay in sensor feedback, as may be typical in underwater communication, with possible delays of up to three time steps in the sensor channel. If the system has a one time-step delay in sensor feedback, then Figure 7-8 shows the Nyquist plot of the loop transfer function of this system, without accounting for quantization, packet loss, or saturation. This system is stable, with a crossover of -0.59. An example time response of this system for an initial error or -35 degrees is shown in Figure 7-9. If the delay in the sensor feedback channel is three time steps, then the system is pushed closer to instability, though still stable. Figure 7-10 shows the Nyquist plot of this system, with a crossover of -0.93 at a frequency of wl = 1.06 rad/s. The system is stable because it has no encirclements of the critical point. Figure 7-11 shows an experimental time response of the system with a three time step delay, illustrating how it is still stable in this situation. However, this system is now close enough to instability that the addition of quantization 186 0.8 .1 0.6 0.4 0.2 Mn 01 C) CD E -0.4 + .. ........ . ....... -0.6 -0.8 -1 -1 -0.5 0.5 0 Real Axis 1 Figure 7-8: Nyquist plot of loop transfer function with one time step delay. Crossover is at -0.59. 5 0 -5 '.5; S-10 ) -15 -20 -25 -30 0 10 5 15 Time [s] Figure 7-9: Example time series response of system to initial error of approximately-35 degrees, for one time step delay in sensor measurement. System stabilizes after 15 seconds. 187 1 ~~ ~ ~ ~ ~ ---- ----_ -- 0.8 - 0.6 0.40.2- 0-+ -0.2-0.4-0.6-0.8 -~ -1 . .......... -1-0.5 --- 0 Real Axis .. 0.5 1 Figure 7-10: Nyquist plot of loop transfer function with three time step delay. Crossover is at -0.93. and packet loss in the sensor feedback channel will push the system into a limit cycle. 7.6 Limit Cycle Analysis To analyze limit cycles in this system, we first examined the case where sensor signals are quantized, but there is no packet loss. In this case all controllers are equal, and the quantizer and saturation DFs will potentially cause the system to limit cycle. Both the quantizer and saturation DFs only depend on the input amplitude, and are independent of input frequency. Thus, in order for the system to limit cycle the product of the gains from these DFs must equal the inverse of the Nyquist crossover point. In this case, for quantizer gain Q(a1 /h), saturation gain G(ui), and limit cycle magnitudes al and ul we have Q(ai/h)G(ul) = 1.07. (7.6) Because the plant transfer function is between the control command and sensor output, the control and heading limit cycle amplitudes are related to each other by the magnitude of the plant transfer function evaluated at the limit cycle frequency. This can be expressed as 188 A' 20 10 0) CD -10 -20 -300 5 15 20 Time [s] 10 25 30 Figure 7-11: Example time series response of system to initial error of -35 degrees, for three time step delay in sensor measurement. System stabilizes after 30 seconds. K K al = uiG(u1 ) (01 (7.7) o2+c2 To determine the limit cycle amplitudes we must consider two cases, whether the control signal is causing the thruster to saturate or not. We will neglect the case when the control signal is in the deadband range, because that would not result in a limit cycle, because the raft would not move. Case 1: ul < 1. In this case G(ul) = 1. Thus, from Equation 7.6 we have Q(a;/h) = 1.07. From the quantizer describing function plot we see this occurs at values al/h = 0.57, 1.06, 1.67, and 1.87. Case 2: ul > 1. In this case ujG(uj) = 1. Thus, using parameter values for K, c, and w0, Equation 7.7 simplifies to give a, = 40.1. In this case, the limit cycle ratio is given simply by 40.1/h. In the case of packet loss and quantization we use the describing functions QLZ, QLH, QLF, and QLM to analytically predict the limit cycles for a range of packet losses. For these predictions we assume a value h = 6 that experimentally results in minimal or no motor saturation for moderate to low packet loss, such that observed limit cycles can be attributed to the effects of the communication channel. 189 Figure 7-12 shows predicted limit cycle amplitude ratios for Q, QLZ, QLH, QLF, and QLM controller/decoders for a range of packet losses, as computed using the DFs and the system model. Solid lines represent stable limit cycles and dashed lines unstable limit cycles. 7.7 Limit Cycle Experimental Tests We tested the limit cycle predictions by independently implementing each controller/decoder scheme for a given packet loss rate and determining resulting limit cycles based on the time responses. For each test we set the raft stationary in the middle of the pool at zero heading, then turned on the control system for heading control. We then recorded raft heading measurements with the overhead camera as the raft oscillated. We tested packet loss probabilities up to 55%, and observed that above this level motor saturation began to significantly affect the response. Figure 7-13 shows the approximate regions of dominating factors influencing raft behavior. For low packet loss rates the quantization dominates, while for medium rates packet loss becomes more important. At higher packet loss rates, it is more likely that a longer string of packets will be successively lost, resulting in larger errors, and subsequent motor saturation as the controller compensates for the larger errors. The circles in Figure 7-12 represent observed limit cycle amplitudes for the given controller/codec and packet loss rate. Example time responses for some of these limit cycles are given in Figure 7-14 for a pure quantizer, Figure 7-16 for QLZ with 15% packet loss, and Figure 7-17 for QLH with 55% loss. In these plots red vertical lines indicate a lost packet. We see all systems have the same limit cycle amplitudes of 1.0 and 1.9 in the absence of packet loss, because in this case the systems were designed to be equivalent. With increasing packet loss, predicted limit cycles generally decrease in magnitude. To the right of the cusps of the graph the limit cycle method does not tell us the behavior of the system, though experimentally we find this means the systems generally behave erratically, eventually becoming unstable. Interestingly we found experimentally that QLM, while stable with pure packet loss, 190 -Q 2.5-- Model QLZ -QLH -QLF -2 0 -QLM ------------- ---- ---- 0 Q Exp L QLM - QLH E01.5 -0 # Design Pt E - -- - - - - - - - - -- 9- - - - 0 0.2 0.4 0.6 Packet Loss Probability a 0.8 1 Figure 7-12: Analytically predicted and experimentally observed limit cycle amplitudes. Circles represent experimental results. Target point for controller design also shown. Dominant Limit Cycle Factor C 0 4-# C ru Packet Loss Motor Saturation 0( 0.5 Packet Loss Probability a i Figure 7-13: Regions of different dominating factors influencing limit cycles. Quantization dominates at low packet loss rates, while motor saturation dominates at high packet loss rates. 191 2 1.5 C: T 0.5 0 I0N-0.5- -3' -2 -2.5 0 10 20 30 40 50 Time [s] 60 70 80 90 Figure 7-14: Experimentally observed limit cycle of magnitude approximately 1.9 for pure quantizer, no packet loss. goes unstable in the presence of quantization. In QLM an information vector is quantized and not just the measurement, and the effect of quantization is apparently much more pronounced on the decoded signal because so much more information is put in the packet. The developers of the MIF algorithm [40] proved this was the optimal LQG-type codec for pure packet loss, but made no claims about the effects of quantization. Ignoring QLM, we see that QLZ has cusps for the lowest packet loss rate, consistent with it being the least sophisticated and worst-performing algorithm. The QLH and QLF cusps occur for higher packet loss rates, as expected for the more sophisticated controllers. QLF is apparently superior in the sense that no limit cycles around magnitude 1.9 are predicted, as are for QLH. This makes sense because QLF uses knowledge of a system model while QLH does not. 7.8 Codec/Controller Design 7.8.1 Design Requirements Now let us assume in this example that the system will be operated in the presence of 25% packet loss, and that it is desirable to have a lower limit cycle amplitude than is predicted 192 1.5r 1 C3 C 0.5 I 0 N E 0 z -0.5 -1 -1.50 5 15 10 25 20 Time [s] Figure 7-15: Experimentally observed limit cycle of magnitude approximately 1 for pure quantizer, no packet loss. 1.5[ 1 Ca 0.5 a) 0 0 z -0.5F -1 0 2 4 6 8 10 Time [s] 12 14 16 18 Figure 7-16: Experimentally observed limit cycle of magnitude approximately 0.8 for QLZ with 15% packet loss. Red vertical lines indicate lost packets. 193 2.5 21.5 Z 0.5 N -1 -1.5 0 5 10 15 Time [s] 20 25 Figure 7-17: Experimentally observed limit cycles of magnitude approximately 1.8 for QLH with 55% packet loss. Red vertical lines indicate lost packets. by the controllers/codecs considered. The smallest limit cycle amplitude predicted for this packet loss rate is 1.0, but assume we want to design a system with limit cycle amplitude 0.9. This design point is labeled with the x in Figure 7-12. The controller/codec design method described in Chapter 4 allows us to achieve this goal. 7.8.2 Design Equations In this case we use the existing compensator used from the QLZ and QLH experiments, Czh, as a starting point for the controller/codec design. We use equations (6.49) and (6.48) and set up an optimization problem to choose qr that results in a value for P as close as possible to one times the measurement. This will ensure the codec has a small effect on the system in the event of no packet loss. We set constraints that at/h = 0.9 and bound the limit cycle frequency by reasonable experimental values 0.1 < q < 2. Using the Nelder-Mead Simplex optimization method we find a feasible solution for N = 0.23 and M = 1.187 at q, = 1.06. The magnitude of N is less than one, as is required for feasibility of the design method. To actually implement this codec, we see using equations (6.50) and (6.51) with the given packet loss rate and desired limit cycle amplitude that the codec is defined by 194 Sk = eko. 5 8 yk + (1 - ek)0. 92 Sk (78 (7.8) for state estimate Sk, measurement Zk, and packet loss variable ek at time step k. Practically, this means that if the measurement is received, we decode by multiplying the measurement by 0.58, and if the packet is lost we decode by multiplying the previous state estimate by 0.92. This can be thought of as a hybrid between QLZ and QLH. In QLZ we multiply the measurement by one and the previous state estimate by zero, while in QLH we multiply the measurement by one and the previous state estimate by one. In this case we've allowed those coefficients to be different numbers than zero or one. Because of the design constraints used in the optimization problem setup, we can use this QLZ and QLH compensator Czh, along with the new codec. 7.8.3 Effect of Designed Codec on System with Packet Loss To understand this new codec, we show its Bode plot in Figure 7-18, created by using the describing function of the codec. These plots have similar general shapes to the LH Bode plots, but much higher gain at lower frequency. Because this codec was designed for a specific limit cycle frequency, we are really only concerned with its gain and phase at that frequency, marked by the vertical dashed line intersection point in the plot. We see that the codec has a gain of 3.9 and phase of -50 degrees at the target frequency. We plot the corresponding gain-phase loci of the system in Figure 7-19 for the case of 25% packet loss and quantization ratio a/h = 0.9 for the system with the new codec. As designed for, the plot passes through the critical point (-1,0) for the positive X corresponding to the designed codec (top plot). We also check the gain-phase loci for the case of negative X to check for multiple frequency solutions (bottom plot). This plot does not pass through the critical point, and thus we conclude only one frequency solution exists. 7.8.4 Effect of Designed Codec on System with No Packet Loss The new codec also affects the system performance in the no-loss no-quantization case. In this case it is simply a gain of 0.58 on the feedback channel, because this is what the 195 C9 3 2 1 -2 -1.5 -1 Log,, of Input wT -0.5 0 U -10 -20 0 -30 -2 -.- -2 -1.5 1 -. -1 -0.5 -40 -50 -60 '7n Logl 0 of Input o 0 Figure 7-18: Bode plots for the describing function of the designed codec. 196 1 0.80.60.4 0.2 --- --------------- ------------ - 0 -0.4 - -0.2 -0.6 -0.8 -1 -1 -0.8 -0.6 -0.4 Real Axis -0.2 0 -0.8 -0.6 -0.4 -0.2 0 1 0.8 0.6 0.4 X- 0.2 0 -0.2 -0.4-0.6-0.8-1 -1 Real Axis Figure 7-19: Describing-function-derived gain-phase loci for system with designed controller with 25% packet loss and quantization ratio a/h = 0.9, for positive X (top plot) and negative X (bottom plot). Red x marks critical point. 197 0.80.6 0.4- 0 E + 0.2- -0.2 -0.4 -0.6- __ -1 -0.5 J_ _- 0 Real Axis 0.5 1 Figure 7-20: Nyquist plot for system with designed controller with no packet loss or quantization. measurement is multiplied by in the general lossy case. We plot the Nyquist plot of this no-loss case in Figure 7-20, and see the system is stable (no encirclements of the critical point) with a crossover at -0.54. An example experimental time series response of this system with no loss and no quantization is shown in Figure 7-21. We started this system with an initial error of around 35 degrees and it stabilizes after about 37 seconds. This system takes slightly longer to stabilize than the original controller for the same input error, but is still stable and, as we will show, meets the limit cycle amplitude designed for in the presence of quantization and packet loss. 7.8.5 Limit Cycle Experiments with Designed Codec We next implemented this controller/codec on the raft in the presence of quantization and 25% packet loss and saw a limit cycle with a magnitude of approximately 0.9, as desired, shown in Figure 7-22. The design represents a significant improvement when compared to QLZ, QLH, and QLM. At the packet loss rate designed for, QLZ behaves erratically and has no LC solution, QLH has a largest limit cycle amplitude twice as large as the designed decoder, and QLM 198 20 10- 0-1D -20 -30- -0 5 10 1,5 20 Time [s] 2'5 30 35 Figure 7-21: Experimental time response for system with designed controller and delay, with no quantization or packet loss. also behaves erratically with no LC solution. This design represents a 10% reduction in limit cycle amplitude from the best alternative, QLF. This may appear to be only a modest improvement, but the designed codec does not require implementing a Kalman filter, only implementing one of two different gains and a compensator. This could be important in applications where simpler computations are attractive, such as if a small robot has limited onboard computing capability, or in applications where faster computation is attractive. In this example the best alternative codec (QLF) for the design condition a = 0.25 had only one stable limit cycle branch. However, if the best codec had two stable limit cycle branches, such as the QLH in this example, then the design point could potentially be chosen to avoid the larger branch and lead to a much more significant reduction in limit cycle amplitude. 7.9 Summary We performed experiments with an autonomous robotic raft in an indoor lab pool setting to test analytical limit cycle predictions and to test the controller/codec design method. We performed SISO experiments controlling raft heading subject to artificially-injected 199 1.5 CD -0.5 N 0 z -0.5- 0 5 10 Time [s] 15 20 Figure 7-22: Limit cycle in experiment with designed controller/codec for 25% packet loss. Magnitude is approximately 0.9. Red lines indicates lost packets. quantization and packet loss with the different control/estimation algorithms and verified analytically-predicted limit cycles. We then demonstrated the controller/codec design method on this system to make it limit cycle at a smaller amplitude for a given packet loss rate. 200 ....... ... ... Chapter 8 Conclusion In this final chapter we summarize the contributions of the thesis, and discuss possible areas of future work. 8.1 Review of Contributions In this thesis a new class of describing functions was derived for stochastic information channels, and applied to the analysis and design of feedback control systems. The analysis and design methods advance the state of the art in control system engineering for systems subject to quantization and stochastic packet loss. The describing functions derived in this thesis build on the DF methods of the literature for studying nonlinear physical elements in control loops, and the new DFs are unique because they describe information sent through channels, and the information itself is stochas- tic. These two properties of the DF - describing non-physical and stochastic elements distinguish the analysis from previous work and open the possibility for DF analysis to be applied to a much broader range of systems than has been standard practice in the past. The new DFs were verified by simulation for open-loop stable, open-loop unstable, minimum phase, and nonminimum phase SISO system examples, as well as for multisensor channels of several different MIMO system examples. The DFs were shown to be useful analysis tools in several respects. In the event that a system is subject to external disturbances, the DFs are useful to compute sensitivity-like functions to measure the system 201 sensitivity to disturbances. If a system is close to instability, the DFs can be used to predict limit cycles that may result from a quantized and lossy sensor feedback channel. The analysis for both of these cases relies on the provably-optimal effective gains and phases predicted by the DF for the quantized and lossy information channel, and we showed that computing these gains using the DFs is orders of magnitude faster than computing them via simulation. A numerical example was given showing agreement between limit cycles predicted by DF analysis and by simulation, for a feedback control system with packet loss and quantization in the sensor feedback channel. The DFs were also shown to be useful synthesis tools. Unlike standard DFs for physical elements, the DFs for information channels can easily be tuned, so to speak, to have different frequency responses by changing the decoder parameters of the channel. This is the basis behind the DF synthesis method. In this method we assume two different operating regimes: a nominal condition, and a condition that is close to instability. This could represent, for instance, an AUV navigating via LBL in open water (the nominal condition), and in a cluttered environment (the second condition), where acoustic communication performance may be negatively affected. The synthesis method allows the control engineer to specify a maximum acceptable limit cycle amplitude for the second condition, and design a decoder that meets this requirement with small effect on the nominal condition performance. The decoder has the same simple equivalent structure and computational complexity as the Zero-Output and Hold-Output decoders. Furthermore, the method allows this limit cycle amplitude to be decreased for a large class of systems. Numerical examples of the design method were shown for SISO and MIMO systems leading to up to three times reduction in limit cycle amplitudes. Finally, the DFs, analysis tools, and synthesis tools were applied experimentally on a small robotic raft in a lab environment. The raft heading was controlled while quantization and packet loss were artificially inserted in the sensor feedback channel. The DFs were used to predict limit cycle amplitudes using several different codecs, and the limit cycles verified experimentally. A new desired design point was then selected at a smaller limit cycle amplitude than those of the tested codecs, and a new decoder designed and tested to meet this requirement. The results demonstrated how the designed decoder can be used to 202 decrease limit cycle amplitudes even when compared to a linear-filter-based decoder. 8.2 Areas for Future Work The describing function analysis and synthesis tools developed in this thesis are directly applicable today to some practical systems. Wide Area Measurement Systems on power grids offer perhaps the best short-term application. These systems have the traits that they are commonly operated close to instability and are subject to quantization and packet loss in the sensor feedback channel. This leads to the real possibility that these systems could undergo unforeseen and undesired limit cycling. Currently many WAMS systems are used primarily for monitoring and observation, despite the potential for feedback control to be employed [13]. The design and synthesis tools developed in this thesis could potentially help these WAMS systems to be transitioned to feedback control setups, and realize their full control potential. While final designs for systems may ultimately be based on detailed simulations, the describing function tools derived in this research would provide good starting points for decoder system designs. Further into the future, underwater multi-robot systems stand to benefit from this research. Though currently there are no multi-robot underwater systems decommissioning oil rigs or tracking oil plumes, that may change in the coming years. A better understanding of the effects of quantization and packet loss on these systems, as given in this research, may enable operators to be more confident in allowing teams of vehicles to operate without direct human control in challenging communication environments. Expanding on the theoretical aspects of this work, other encoding/decoding control algorithms exist that would be amenable to the describing function analysis presented here. In the sensor feedback channel, for instance, Gupta [39] has developed other variants of the MIF algorithm where sensor measurement are encoded, sent through a lossy channel, and decoded by a modified Kalman Filter. The method used to derive the describing function for the MIF would in theory work for any other codec where the decoded output Sk is defined by a linear recurrence sequence, as is true in the MIF case. The most difficult step in deriving the describing function for the MIF was finding the patterns in the sequence, 203 and this pattern-finding step would also be required for other codecs defined by linear recurrence sequences. The result for E [Sk] would likely be of a similar form to that of E[Sk] for the MIF, and thus the derivations in this thesis could guide derivations of other similar codecs. The describing function analysis could also be applied to controller-actuator codec algorithms. The Hold-Output and Zero-Output algorithms are commonly-used decoding techniques for systems with packet loss in the controller-actuator channel, and the results of this thesis could thus be applied to these systems. Other more sophisticated algorithms exist as well, such as PPC [83] and S-PPC [72]. These involve both encoders and decoders, and in theory describing functions could be derived for these algorithms. Looking beyond feedback control systems, describing functions for stochastic systems potentially have much broader applications. Any system with stochastic variables could potentially be modeled using stochastic describing functions. To name a few examples, ocean wave behavior, stock market options pricing, Brownian particle motion, and turbulent transport are all processes that are functions of stochastic variables, and stochastic describing functions may help to better understand such systems. 204 Bibliography [1] Babak Azimi-Sadjadi. Stability of networked control systems in the presence of packet losses. In Proceedingsof 2003 IEEE Conference on Decision and Control, pages 676-681. Citeseer, 2003. [2] Ralf Bachmayer and Louis L Whitcomb. Adaptive parameter identification of an accurate nonlinear dynamical model for marine thrusters. Transactions-American Society of Mechanical Engineers Journal of Dynamic Systems Measurement and Control, 125(3):491-493, 2003. [3] Alexander Bahr, John J Leonard, and Maurice F Fallon. Cooperative localization for autonomous underwater vehicles. The InternationalJournalof Robotics Research, 28(6):714-728, 2009. [4] Haoliang Bai, Dajun Du, Minrui Fei, and Zhihua Song. Stochastic stability analysis of mimo networked control systems with multi-quantizers. In AsiaSim 2012, pages 71-81. Springer, 2012. [5] Meysam Basiri, Adrian Bishop, and Patric Jensfelt. Distributed control of triangular formations with angle-only constraints. Systems and Control Letters, 59:147-154, 2010. [6] M.R. Benjamin, J.J. Leonard, H. Schmidt, and P.M. Newman. An overview of MOOS-IvP and a brief users guide to the IvP helm autonomy software. Massachusetts Institute of Technology, MIT CSAIL, Tech. Rep. TR-2009-28-07, 2009. [7] Wallace M Bessa, Max S Dutra, and Edwin Kreuzer. An adaptive fuzzy sliding mode controller for remotely operated underwater vehicles. Robotics and Autonomous Systems, 58(1):16-26, 2010. [8] Wallace M Bessa, Max S Dutra, and Edwin Kreuzer. Dynamic positioning of underwater robotic vehicles with thruster dynamics compensation. InternationalJournal of Advanced Robotic Systems, 10, 2013. [9] Wallace M Bessa and Edwin Kreuzer. Sliding mode control of a remotely operated underwater vehicle with adaptive fuzzy dead-zone compensation. PAMM, 11(1):803-804, 2011. 205 [10] M. Branicky, S. Phillips, and W. Zhang. Scheduling and feedback co-design for networked control systems. Proceedings of the 41st IEEE Conference on Decision and Control, Las Vegas, Nevada, USA, 2002. [11] Lorenzo Brignone, Joio Alves, and Jan Opderbecke. Grex sea trials: first experiences in multiple underwater vehicle coordination based on acoustic communication. In OCEANS 2009-EUROPE, pages 1-6. IEEE, 2009. [12] Roger W Brockett and Daniel Liberzon. Quantized feedback stabilization of linear systems. Automatic Control, IEEE Transactionson, 45(7):1279-1289, 2000. [13] Aranya Chakrabortty and Pramod P Khargonekar. Introduction to wide-area control of power systems. In American ControlConference (ACC), 2013, pages 6758-6770. IEEE, 2013. [14] A. Chiuso, NI Laurenti, L. Schenato, and A. Zanella. Lqg cheap control over SNRlimited lossy channels with delay. Proceedingsof the IEEE Conference on Decision and Control, 2013. [15] 0. Costa and S. Guerra. Stationary filter for linear minimum mean square error estimator of discrete-time markovian jump systems. IEEE Transactionson Automatic Control, 47(8):1351-1357, 2002. [16] Daniel Coutinho, Minyue Fu, and Carlos E de Souza. Output feedback control of linear systems with input and output quantization. In Decision and Control, 2008. CDC 2008. 47th IEEE Conference on, pages 4706-4711. IEEE, 2008. [17] Renwick E Curry. Estimation and control with quantized measurements. MIT press Cambridge, 1970. [18] Jianguo Dai. A delay system approach to networked control systems with limited communication capacity. Journalof the FranklinInstitute, 347(1):1334-1352, 2010. [19] David F Delchamps. Stabilizing a linear system with quantized state feedback. Automatic Control, IEEE Transactionson, 35(8):916-924, 1990. [20] S. Dey, A. Chiuso, and L. Schenato. Remote estimation subject to packet loss and quantization noise. Proceedingsof the IEEE Conference on Decision and Control, 2013. [21] R. Doe. Introduction of control area network (CAN) diagnostics in AA1 car auto diagnosis and auto repair help homepage. http: //www. aal car. com/ library/ can-systems .htm. Accessed: 2014-06-01. [22] R. Dorf. Modern Control Systems: Tenth Edition. Pearson Prentice Hall, 2005. [23] Nicola Elia and Sanjoy K Mitter. Stabilization of linear systems with limited information. Automatic Control, IEEE Transactions on, 46(9):1384-1400, 2001. 206 [24] Fabio Fagnani and Sandro Zampieri. Stability analysis and synthesis for scalar linear systems with a quantized feedback. Automatic Control, IEEE Transactionson, 48(9):1569-1584, 2003. [25] T Fortmann, Yaakov Bar-Shalom, Molly Scheffe, and Saul Gelfand. Detection thresholds for tracking in clutter-a connection between estimation and signal processing. Automatic Control, IEEE Transactionson, 30(3):221-229, 1985. [26] Thor I Fossen and Mogens Blanke. Nonlinear output feedback control of underwater vehicle propellers using feedback form estimated axial flow velocity. Oceanic Engineering, IEEE Journalof, 25(2):241-255, 2000. [27] Minyue Fu. Lack of separation principle for quantized linear quadratic gaussian control. Automatic Control, IEEE Transactionson, 57(9):2385-2390, 2012. [28] Minyue Fu and Lihua Xie. The sector bound approach to quantized feedback control. Automatic Control, IEEE Transactionson, 50(11):1698-1711, 2005. [29] Minyue Fu and Lihua Xie. Finite-level quantized feedback control for linear systems. Automatic Control, IEEE Transactionson, 54(5):1165-1170, 2009. [30] Minyue Fu and Lihua Xie. Quantized feedback control for linear uncertain systems. InternationalJournalof Robust and NonlinearControl, 20(8):843-857, 2010. [31] Huijun Gao and Tongwen Chen. A new approach to quantized feedback control systems. Automatica, 44(2):534-542, 2008. [32] Arthur Gelb and Wallace Vander Velde. Multiple-Input Describing Functions and NonlinearSystem Design. [USA] McGraw-Hill, Inc., 1968. [33] Eric Gilbertson, Brooks L Reed, Josh Leighton, Mei Yi Cheung, and Franz S Hover. Experiments in dynamic control of autonomous marine vehicles using acoustic modems. In Robotics andAutomation (ICRA), 2013 IEEE InternationalConference on, pages 5131-5137. IEEE, 2013. [34] Oleg A Godin and David R Palmer. History of russian underwater acoustics, 2009. [35] Kevin R Goheen and E Richard Jefferys. On the adaptive control of remotely operated underwater vehicles. InternationalJournal of Adaptive Control and Signal Processing,4(4):287-297, 1990. [36] J. Guckenheimer and P. Holmes. Nonlinear oscillations dynamical systems and bifurcations. Applied MathematicalSciences, 42, 1990. [37] Cedric Guibert, Emmanuel Foulon, N Ait-Ahmed, and Luc Loron. Thrust control of electric marine thrusters. In IndustrialElectronics Society, 2005. IECON 2005. 31st Annual Conference of IEEE, pages 6-pp. IEEE, 2005. [38] Y. Guo, W. Gui, and C. Yang. On the design of compensator for quantization-caused input-output deviation. Information Sciences, 54(4):824-835, 2011. 207 [39] V. Gupta, A.F. Dana, J.P. Hespanha, R.M. Murray, and B. Hassibi. Data transmission over networks for estimation and control. IEEE Trans. Automatic Control, 54(8):1807 -1819, aug. 2009. [40] V. Gupta, B. Hassibi, and R.M. Murray. Optimal LQG control across packetdropping links. Systems & ControlLetters, 56(6):439-446, 2007. [41] M. Hadidi and S. Schwartz. Linear recursive state estimators under uncertain observations. IEEE Transactionson Automatic Control, 24(6):944-949, 1979. [42] C.N. Hadjicostis and R. Touri. Feedback control utilizing packet dropping network links. In Decision and Control, 2002, Proceedingsof the 41st IEEE Conference on, volume 2, pages 1205 - 1210 vol.2, dec. 2002. [43] Anthony J Healey, SM Rock, Steven Cody, D Miles, and JP Brown. Toward an improved understanding of thruster dynamics for underwater vehicles. Oceanic Engineering, IEEE Journalof, 20(4):354-361, 1995. [44] Liu Hsu, Ramon R Costa, Fernando Lizarralde, and JPVS Da Cunha. Dynamic positioning of remotely operated underwater vehicles. IEEE Robotics and Automation Magazine, 7(3):21-31, 2000. [45] Y Huaicheng, S. Zhenzhen, Z. Hao, and S. Hongbo. Quantized h. filtering for discrete-time networked systems with mixed delays and missing measurements. Proceedings of the 31st Chinese Control Conference, Hefei, China, 2012. [46] Yumiko Ishido, Kiyotsugu Takaba, and Daniel Quevedo. Stability analysis of networked control systems subject to packet-dropouts and finite-level quantization. Systems and ControlLetters, 60(1):325-332, 2011. [47] C. Jiang and M. Cai. h. control of networked control systems with state quantisation. InternationalJournalof Systems Science, 42(6), 2011. [48] Shun Jiang, Xiangsheng Zhang, Binjie Gu, and Feng Pan. Reliable fault detection for nonlinear networked systems with imperfect measurements: A multi-packet transmission mechanism. Circuits, Systems, and Signal Processing, pages 1-20, 2013. [49] Z. Jin, V. Gupta, and R.M. Murray. State estimation over packet dropping networks using multiple description coding. Automatica, 42(9):1441-1452, 2006. [50] K. Johansson, M. Torngren, L. Nielsen, I. Hristu-Varsakelis, and W. Levine. Handbook of Networked and Embedded Control of Syst. Birkhauser, 2005. [51] RE Kalman. Nonlineat aspects of sampled-data control systems. In Proc. Symp. Nonlinear CircuitAnalysis VI, pages 273-313, 1956. [52] Euntai Kim, Heejin Lee, and Mignon Park. Limit-cycle prediction of a fuzzy control system based on describing function method. IEEE Transactionson Fuzzy Systems, 8(1):11-23, 2000. 208 [53] Jinhyun Kim and Wan Kyun Chung. Accurate and practical thruster modeling for underwater vehicles. Ocean Engineering,33(5):566-586, 2006. [54] Min-Seok Kim and Sung-Chong Chung. Friction identification of ball-screw driven servomechanisms through the limit cycle analysis. Mechatronics, 16(2):131-140, 2006. [55] Tae Won Kim and Junku Yuh. A novel neuro-fuzzy controller for autonomous underwater vehicles. In Robotics and Automation, 2001. Proceedings2001 ICRA. IEEE InternationalConference on, volume 3, pages 2350-2355. IEEE, 2001. [56] Oliver Kinnane, John Ringwood, Damien Kelly, and Simon Malpas. Describing function approximation for biomedical engineering applications. Irish Systems and Signals Conference, 2004. [57] Chi-Kwong Li and Roy Mathias. The determinant of the sum of two matrices. Bulletin of the Australian MathematicalSociety, 52(03):425-429, 1995. [58] Li Li and Yuanqing Xia. Unscented kalman filter over unreliable communication networks with markovian packet dropouts. IEEE Transactionson Automatic Control, 2013. [59] Q. Ling and M. Lemmon. Power spectral analysis of networked control systems with data dropouts. IEEE Transactionson Automatic Control, 49(6):955-960, 2004. [60] Qiang Ling and Michael D Lemmon. Stability of quantized control systems under dynamic bit assignment. Automatic Control, IEEE Transactionson, 50(5):734-740, 2005. [61] Ming Liu, Qingling Wang, and Hongyi Li. State estimation and stabilization for nonlinear networked control systems with limited capacity channel. Journal of the FranklinInstitute, 348(1):1869-1885, 2011. [62] Qiugang Lu, Lixian Zhang, Michael Basin, and Hui Tian. Analysis and synthesis for networked control systems with uncertain rate of packet losses. Journal of the FranklinInstitute, 349(7):2500-2514, 2012. [63] Magdi S Mahmoud, Nezar M Alyazidi, and Abdul-Wahed A Saif. Dynamic feedback control over unreliable communication channels. IMA JournalofMathematical Control and Information, page dnt006, 2013. [64] John Mallet-Paret and Hal Smith. The Poincare-Bendixson theorem for monotone cyclic feedback systems. Journal of Dynamics and Differential EQuations, 2(4):367-422, 1989. [65] Michel Mariton. Jump linearsystems in automatic control. CRC Press, 1990. [66] Eva Miklovicovi and Marian Mrosko. Pid controller design in networked control systems. Recent Researches in Engineeringand Automatic Control: Proc. of ECC, 11:150-155, 2011. 209 [67] RK Miller, AN Michel, and JA Farrell. Quantizer effects on steady-state error specifications of digital feedback control systems. Automatic Control, IEEE Transactions on, 34(6):651-654, 1989. [68] Peter Henry Milne. Underwateracoustic positioningsystems. Gulf Publishing Co., Houston, TX, 1983. [69] Maryam Moayedi, Yung K Foo, and Yeng C Soh. LQG control for networked control systems with random packet delays and dropouts via multiple predictive-input control packets. In Preprintsof the 18th IFAC World CongressMilano (Italy), pages 72-77, 2011. [70] Maryam Moayedi, Yung Kuan Foo, and Yeng Chai Soh. Networked LQG control over unreliable channels. InternationalJournal of Robust and Nonlinear Control, 23(2):167-189, 2013. [71] Biju Naduvathuparambil, M Valenti, Ali Feliachi, et al. Communication delays in wide-area measurement systems. In Southeastern Symposium on System Theory, volume 34, pages 118-122. Citeseer, 2002. [72] M. Nagahara and D.E. Quevedo. Sparse representations for packetized predictive networked control. In Proc. IFAC World Congress, 2011. [73] N. Nahi. Optimal recursive estimation with uncertain observation. IEEE Transactions on Information Theory, 15(4):457-463, 1969. [74] Girish N Nair and Robin J Evans. Stabilization with data-rate-limited feedback: tightest attainable bounds. Systems & Control Letters, 41(1):49-56, 2000. [75] Girish N Nair and Robin J Evans. Exponential stabilisability of finite-dimensional linear systems with limited data rates. Automatica, 39(4):585-593, 2003. [76] J. Nilsson, B. Bernhardsson, and B. Wittenmark. Stochastic analysis and control of real-time systems with random time delays. Automatica, 34(1):57-64, 1998. [77] J. Nilsson et al. Real-time control systems with delays. PhD thesis, Ph. D. dissertation, Department of Automatic Control, Lund Institute of Technology, 1998. [78] Yugang Niu, Tinggang Jia, Xingyu Wang, and Fuwen Yang. Output-feedback control design for NCSs subject to quantization and dropout. Information Sciences, 179(1):3804-3813, 2009. [79] N. Noiray, D. Durox, t. Schuler, and S. Candel. A unified framework for nonlinear combustion instability analysis based on the flame describing function. Journalof FluidMechanics, 615(1):139-167, 2008. [80] Edwin Olson. Apriltag: A robust and flexible multi-purpose fiducial system. Technical report, University of Michigan APRIL Laboratory, May 2010. 210 [81] Angel Peterchev and Seth Sanders. Quantization resolution and limit cycling in digitally controlled PWM converters. 18(1):301-309, 2003. IEEE Transactions on Power Electronics, [82] Jon Postel. Transmission control protocol. DARPA Internet ProgramProtocolSpecification, 1981. [83] Daniel Quevedo and Dragan Nesic. Robust stability of packetized predictive control of nonlinear systems with disturbances and markovian packet losses. Automatica, 48(1):1803-1811, 2012. [84] F Rasool and SK Nguang. Quantised robust H. output feedback control of discretetime systems with random communication delays. IET Control Theory and Applications, 4(11):2252-2262, 2010. [85] Faiz Rasool, Dan Huang, and Sing Kiong Nguang. Robust H. output feedback control of networked control systems with multiple quantizers. Journal of the Franklin Institute, 349(3):1153-1173, 2012. [86] E. Riskin, C. Boulis, S. Otterson, and M. Ostendorf. Graceful degredation of speech recognition performance over lossy packet networks. In Proc. Eurospeech, 2001. [87] C.L. Robinson and P.R. Kumar. Sending the most recent observation is not optimal in networked control: Linear temporal coding and towards the design of a control specific transport protocol. In Proc. 46th IEEE Conf Decision and Control, pages 334 -339, dec. 2007. [88] Seth Sanders. On limit cycles and the describing function method in periodically switched circuits. IEEE Transactionson Circuitsand Systems-I Fundamental Theory andApplications, 40(9):564-573, 1993. [89] L. Schenato. Optimal estimation in networked control systems subject to random - delay and packet drop. Automatic Control, IEEE Transactions on, 53(5):1311 1317, june 2008. [90] L. Schenato, B. Sinopoli, M. Franceschetti, K. Poolla, and S.S. Sastry. Foundations of control and estimation over lossy networks. Proc. IEEE, 95(1):163-187, 2007. [91] Pete Seiler and Raja Sengupta. An h approach to networked control. Automatic Control, IEEE Transactionson, 50(3):356-364, 2005. [92] B. Sinopoli, L. Schenato, M. Franceschetti, K. Poolla, M. Jordan, and S. Sastry. Kalman filtering with intermittent observations. IEEE Transactions on Automatic Control, 49(9):1453-1465, 2004. [93] B. Sinopoli, L. Schenato, M. Franceschetti, K. Poolla, and S. Sastry. An LQG optimal linear controller for control systems with packet losses. In Proc. 44th IEEE Conf Decision and Control, pages 458-463. IIEEE, 2005. 211 [94] B. Sinopoli, L. Schenato, M. Franceschetti, K. Poolla, and S. Sastry. Optimal linear LQG control over lossy networks without packet acknowledgment. Asian Journal of Control, 10(1):3-13, 2008. [95] Jean-Jacques E. Slotine and Weiping Li. Applied Nonlinear Control. [Upper Saddle River, New Jersey] Prentice Hall, Inc., 1991. [96] David A Smallwood and Louis L Whitcomb. Model-based dynamic positioning of underwater robotic vehicles: theory and experiment. Oceanic Engineering, IEEE Journalof, 29(l):169-186, 2004. [97] S. Smith and P. Seiler. Estimation with lossy measurements: Jump estimators for jump systems. IEEE Transactionson Automatic Control, 48(12):2163-2172, 2003. [98] Hongbo Song, Guo-Ping Liu, and Li Yu. Networked predictive control of uncertain systems with multiple feedback channels. IndustrialElectronics, IEEE Transactions on, 60(11):5228-5238, 2013. [99] D. Tang, E. Dowell, and L. Virgin. Limit cycle behavior of an airfoil with a control surface. Journal of Fluidsand Structures, 12(1):839-858, 1998. [100] S. Tatikonda and S. Mitter. Control under communication constraints. IEEE Trans. Autonomatic Control, 49(7):1056 - 1068, July 2004. [101] James Taylor. Wiley Encyclopedia of Electrical and Electronics Engineering. John Wiley and Sons, Inc., 1999. [102] Tesla. Autonomous underwater vehicle systems. http: / /www. teslaoffshore.com/services/AUV-Systems. Accessed: 2014-0601. [103] Koji Tsumura, Hideaki Ishii, and Hiroto Hoshina. Tradeoffs between quantization and packet loss in networked control of linear systems. Automatica, 45(1):29632970, 2009. [104] Fei-Yue Wang and Derong Liu. Networked control systems. Springer, 2008. [105] Shao-bu Wang, Quan-yuan Jiang, and Yi-jia Cao. Wams-based monitoring and control of hopf bifurcations in multi-machine power systems. Journalof Zhejiang University SCIENCE A, 9(6):840-848, 2008. [106] Shaobu Wang, Xiangyu Meng, and Tongwen Chen. Wide-area control of power systems through delayed network communication. Control Systems Technology, IEEE Transactionson, 20(2):495-503, 2012. [107] Wei Wang and Jean-Jacques Slotine. On partial contraction analysis for coupled nonlinear oscillators. Biological Cybernetics, 92:38-53, 2004. 212 [108] Zidong Wang, Daniel WC Ho, and Xiaohui Liu. Variance-constrained filtering for uncertain stochastic systems with missing measurements. Automatic Control, IEEE Transactionson, 48(7):1254-1258, 2003. [109] Li Wei, Minyue Fu, and Huanshui Zhang. Quantized output feedback control with multiplicative measurement noises. InternationalJournal of Robust and Nonlinear Control, 2014. [110] Louis L Whitcomb and Dana R Yoerger. Development, comparison, and preliminary experimental validation of nonlinear dynamic thruster models. Oceanic Engineering, IEEE Journalof, 24(4):481-494, 1999. [111] Louis L Whitcomb and Dana R Yoerger. Preliminary experiments in model-based thruster control for underwater vehicle positioning. Oceanic Engineering, IEEE Journalof, 24(4):495-506, 1999. [112] Wing Shing Wong and Roger W Brockett. Systems with finite communication bandwidth constraints. ii. stabilization with limited information feedback. Automatic Control, IEEE Transactionson, 44(5):1049-1053, 1999. [113] Fuwen Yang and Qing-Long Han. H. control for networked systems with multiple packet dropouts. Information Sciences, 252:106-117, 2013. [114] Hongjiu Yang, Yuanqing Xia, Peng Shi, and Mengyin Fu. Stability analysis for high frequency networked control systems. Automatic Control, IEEE Transactions on, 57(10):2694-2700, 2012. [115] R. Yang, P. Shi, G. Liu, and H. Gao. Network-based feedback control for systems with mixed delays based on quantization and dropout compensation. Automatica, 47(12):2805-2809, 2011. [116] Dana Yoerger, John Cooke, and Jean-Jacques Slotine. The influence of thruster dynamics on underwater vehicle behavior and their incorporation into control system design. IEEE Journalof Oceanic Engineering, 15(3):167-179, 1990. [117] Lixian Zhang, Huijun Gao, and Okyay Kaynak. Network-induced constraints in networked control systemsa survey. IndustrialInformatics, IEEE Transactionson, 9(1):403-416, 2013. [118] Wei Zhang, M.S. Branicky, and S.M. Phillips. Stability of networked control systems. Control Systems, IEEE, 21(1):84 -99, feb 2001. [119] Lu Zhou, Tao Lin, and SB Chen. Autonomous acquisition of seam coordinates for arc welding robot based on visual servoing. Journal of Intelligent and Robotic Systems, 47(3):239-255, 2006. 213