Control Optimization Applications Steven C. Rogers 25 May 2012
Slide 1
Steven Rogers bio • Experience: > 20 years in control systems analyses (classical & modern state space), including research in advanced control theory, advanced signal processing, adaptive system theory, stochastic system theory, adaptive neural networks applied to aerospace systems (aircraft, satellites, space station, & missiles). Kalman filter development for state estimation and parameter estimation, fuzzy logic for classification, control & signal processing, adaptive filter theory used for system ID & spectral analyses. • Education: 1996-PhD in ME (control theory/signal processing) from Kansas State University, 1985-MSME (thermal systems/control theory) from the University of Kansas. 2
Control Optimization Presentation Abstract • An approach to optimization will be described and three applications will be presented, one of which is based on wind turbine false alarm issues. • If time is available an active control system will be described along with an application to a satellite flexible structure model.
3
Optimization Based on Genetic Algorithms Applied to Controller Tuning
• Motivation/Introduction Optimizer Based on Genetic Algorithm Description & Optimization Process • Application to Simple Benchmark Model for Tuning using minimization (linear analysis) • Application to MEMS sensor linear model using H∞ robustness criteria & maximation • Application to Bladed model of a Wind Turbine to reduce false alarms due to generator overspeed 4
Typical Algorithm Development Process Control Algorithm Design
Linear Analysis Non Linear simulations
HITL Component Tests
Prototype tests
The control algorithm design incorporates all of the code and documentation necessary for system operation. Prerequisites for control algorithm design includes decomposing software specifications and system performance requirements into control algorithm objectives. Algorithm Design Loops are: - Linear analysis with Matlab for preliminary checking of concepts using linearized models at representative operating conditions - Non Linear simulations are with higher fidelity models that also incorporate supervisory controls including start ups, shut downs, faults, etc. Validate algorithm designs under more comprehensive operating conditions. - HITL (hardware in the loop) evolves as components become available. - Testing and evaluation on operating prototype. - Optimization generally occurs at the early stages up to and including the nonlinear simulations. Optimization may be used to analyze more comprehensive operating ranges and enhance robustness. It also may be used to automate design. 5
Typical Optimization Objectives & Run •
•
•
Performance at each iteration
As many of the control objectives as practical are formulated into a composite scalar index. Each objective would be weighted (by priority and optimizer progress) appropriately in order to give a balanced optimization. This is called multi-objective optimization. The magnitudes of the various objective performance indices is summed over a set of test operating conditions for comparison between each control parameter sample. The composite index is usually set up for minimization. Typical optimization objectives include: 1. Reduce deviation from setpoint. 2. Reduce oscillation of controlled variables/measurements, input variables & other process variables needing damping (structural motion, for example) 3. Improve production economics 6
Optimization Based on Genetic Algorithms Description • A random optimization procedure was developed according to ideas based on genetic algorithms. • A genetic algorithm (GA) is a search heuristic that mimics the process of natural evolution. • Main idea is that random values are selected about the best and other solutions for testing. Various methods are used to apply the random values. • A composite performance index is computed at the end of each iteration for comparison purposes.
7
Matlab Code Based on Genetic Algorithm Population of two is carried at each iteration. One of the two is the best. The other is a random perturbation. Number of iterations is specified. Variation factor for random updates
Every 10th iteration rndvec is modified to better diversify the trial. Only random selections are changed from the best. (recombination)
Every 4th iteration the new trial is formed by averaging the best & previous run. (crossover – sort of) The usual trial is formed by perturbing the best run. Retain the best for future comparison.
Optimization steps include: • Initialization (GA_best baseline) • Evaluation • Selection of new trial • Re-evaluation and new trial selection
pindex(1) = optim_agc_adap(GA_best); ln = length(GA_best); niter = 395; factorf = 0.11; rndvec = zeros(1,length(GA_best)); for j = 1:niter in = GA_best; if mod(j,10)==0 tempkey = unique(randi(ln,1,randi(ln,1,1))); for k = tempkey,rndvec(k) = rand - 0.5;end if length(rndvec)<ln,rndvec(1,ln) = 0;end temp = GA_best'.*(1+factorf*rndvec'); elseif mod(j,4)==0 temp = (0.5*GA_best'+0.5*GA_2ndbest').*(1+factorf*(rand(ln,1)-0.5)); else temp = GA_best'.*(1+factorf*(rand(ln,1)-0.5)); end in = [in;temp']; pindex(2) = optim_agc_adap(abs(in(2,:))); [minPI numGAbest] = max(pindex); GA_best = in(numGAbest,:); pindex(1) = pindex(numGAbest); maxpindex = pindex(numGAbest); if numGAbest~=1,GA_2ndbest = in(1,:);end save GA_params GA_best GA_2ndbest end
8
Genetic Algorithm Optimization Applied to Controller Tuning
• Motivation/Introduction Optimizer Genetic Algorithm Description & Optimization Process • Application to Simple Benchmark Model for Tuning using minimization (linear analysis). • Application to MEMS sensor linear model using only H∞ robustness criteria & maximation • Application to Bladed model of a Wind Turbine to reduce false generator overspeed alarms 9
Simple Benchmark Model •
The model is an undamped 2-mass spring system modeled by: y(s) = p(s)u(s)+pd(s)d(s) 1 2 0.5 s 1 0.5 k p ( s ) 2 1 2 ; p ( s ) d 1 2 s 2 k s 1 s 1 2k
• •
K is the spring constant A control law (see ref) based on the 2 DOF (degree of freedom) IMC (internal model control) is given by: Cont = q*qd/(1 – Pest*q*qd) 1 2 3 2 s 2k~ s 1 0.5 3 s 2 s 3 1 s 1 Pest ( s ) 2 1 2 ; q( s ) ; s q 4 d 1 2 s 2 k~ s 1 s 1 1 2 s 2
Ref: Brosilow, Techniques of Model-Based Control, cp. 8, Prentice Hall, 2002
10
Simple Benchmark Model – Implementation & Optimization • Implementation is in simulink • Setpoint is set at 0 and a series of pulse disturbances are input • Optimization was performed in two trials: 1) four variables & 2) eleven variables • Trial 1 optimization consists of optimizing around the four variables given at the bottom of the previous slide. 3 2 1 • Trial 2 is based on the Cont transfer function’s 11 values (6 in the numerator & 5 in the denominator). If we multiply out the controller equation Cont = q*qd/(1 – Pest*q*qd) we get the 11 values.
11
Trial 1 Optimization Results â&#x20AC;&#x201C; Four variables â&#x20AC;˘ â&#x20AC;˘
Two optimization objectives: 1) minimize deviation from 0 (error) and 2) try to maintain smooth performance After 400 iterations err is the sum of squared error (18% improvement) and diff is sum of error change squared (13.4% improvement).
In this case only minor improvements noted. Also, a bias following a positive disturbance occurs.
12
Optimization Applications Results – Trial 2 •
• • •
The same two optimization objectives as in Trial 1: 1) minimize deviation from setpoint 0 (error) and 2) try to maintain smooth performance. After 400 iterations err is the sum of squared error (82% improvement) and diff is sum of change squared (74% improvement). The composite improvement is 77%. Different parameter suites may give different results even for simple applications. Optimization may be used for controller tuning.
13
Genetic Algorithm Optimization Applied to Controller Tuning
• Motivation/Introduction Optimizer Genetic Algorithm Description & Optimization Process • Application to Simple Benchmark Model for Tuning using minimization (linear analysis) • Application to MEMS sensor linear model using only H∞ robustness criteria & maximation • Application to Bladed model of a Wind Turbine to reduce false generator overspeed alarms 14
MEMS Gyro Model
• • •
The AGC (automatic gain control) is applied to the drive axis of a MEMS vibratory gyroscope in order to provide sensor accuracy & responsiveness. The control issue is the leading-following resonator problem in the drive axis of MEMS dual-mass vibratory gyroscope where there is no mechanical linkage between the two component masses. The paper below provided a controller & it was decided to find a more stable set of parameter values by maximizing an H∞ stability measure.
Ref: Sensors 2009, 9, 5952-5967, http://www.mdpi.com/journal/sensors 15
MEMS Gyro Model & Hâ&#x2C6;&#x17E; Robustness
â&#x20AC;˘ â&#x20AC;˘ â&#x20AC;˘ â&#x20AC;˘ â&#x20AC;˘
â&#x20AC;˘
â&#x20AC;˘
đ?&#x2018;¨ = đ?&#x2018;˛đ?&#x2019;&#x2018; â&#x2C6;&#x2014; đ?&#x2018;żđ?&#x;&#x17D; â&#x2C6;&#x2019; đ?&#x2019;&#x201C; + đ?&#x2018;Š
â&#x20AC;˘
đ?&#x2018;Š = đ?&#x2018;˛đ?&#x2018;° đ?&#x2018;żđ?&#x;&#x17D; â&#x2C6;&#x2019; đ?&#x2019;&#x201C;
â&#x20AC;˘
đ?&#x2019;&#x201C; = đ?&#x153;¸đ?&#x2019;&#x201A;
â&#x20AC;˘
đ?&#x153;˝ = đ??&#x17D;đ?&#x;&#x17D; + đ?&#x2018;˛đ?&#x2019;&#x2014; đ?&#x2019;&#x203A;
â&#x20AC;˘
đ?&#x2019;&#x203A; = đ?&#x2018;˛đ?&#x2019;&#x203A; đ?&#x2019;&#x161;
â&#x20AC;˘
đ?&#x2019;&#x161; = đ?&#x153;¸đ?&#x2019;&#x2018;
đ??&#x2026; đ?&#x;?
đ?&#x2019;&#x2122; + đ?&#x2019;?đ?&#x2019;&#x2018; â&#x2C6;&#x2019; đ?&#x2019;&#x201C;
đ?&#x2019;&#x2122; + đ?&#x2019;?đ?&#x2019;&#x2018; đ?&#x2019;&#x201E;đ?&#x2019;?đ?&#x2019;&#x201D;đ?&#x153;˝ â&#x2C6;&#x2019; đ?&#x2019;&#x161;
The above linearized equations were transformed into a state space form [A,B,C,0]. Given a realization of the form [A,B,C,0] of a controllable and observable plant the Control Algebraic Riccati Equation (CARE) and Filtered Algebraic Riccati Equation (FARE) are given below. A* X + X A â&#x20AC;&#x201C; X B B* X + C* C = 0 (CARE) A Z + Z A* - Z C* C Z + B B* = 0 (FARE) đ?&#x;?/đ?&#x;?
The solution (see ref) to the đ?&#x153;¸đ?&#x2019;&#x17D;đ?&#x2019;&#x160;đ?&#x2019;? equation is đ?&#x153;¸đ?&#x2019;&#x17D;đ?&#x2019;&#x160;đ?&#x2019;? = đ?&#x;? + đ??&#x2020;đ?&#x2019;&#x17D;đ?&#x2019;&#x201A;đ?&#x2019;&#x2122; đ?&#x2018;żđ?&#x2019; . This direct solution is attractive in that an acceptable Îł is found without resorting to the more well-known Îł-iteration. The Îłmin is a measure of robust system stability. The larger it is the more stable the system. if the maximum value of đ??&#x2020;đ?&#x2019;&#x17D;đ?&#x2019;&#x201A;đ?&#x2019;&#x2122; đ?&#x2018;żđ?&#x2019; (an Hâ&#x2C6;&#x17E; robustness measure) may be found through optimization, a more stable system will result. This may be accomplished in a straight forward fashion by adjusting the controller gains until the maximum value of đ??&#x2020;đ?&#x2019;&#x17D;đ?&#x2019;&#x201A;đ?&#x2019;&#x2122; đ?&#x2018;żđ?&#x2019; ď&#x192; [0,1] is achieved. It should be noted that the above addresses the system robustness, but does not specify performance. Ref: Zhou & Doyle: Essentials of Robust Control, Prentice Hall, 1998 16
MEMS Results
Y output. Red is optimized, green is baseline. Lower value suggests greater stability, or reduced sensitivity to noise.
A output in radians. Red is optimized, green is baseline. Higher value suggests reduced sensitivity to input noise.
Significant robustness improvement from 0.3559 to 0.7003 for đ??&#x2020;đ?&#x2019;&#x17D;đ?&#x2019;&#x201A;đ?&#x2019;&#x2122; đ?&#x2018;żđ?&#x2019; .
17
Optimization Based on Genetic Algorithm Applied to Controller Tuning • Motivation/Introduction Optimizer Genetic Algorithm Description & Optimization Process • Application to Simple Benchmark Model for Tuning using minimization (linear analysis) • Application to MEMS sensor linear model using only H∞ robustness criteria & maximation • Application to Bladed model of a Wind Turbine to reduce false generator overspeed alarms
18
Problem Statement • •
• •
•
•
The system is a two-bladed Wind Turbine power generator with a Bladed model undergoing certification studies. At high & low air density (1.36 & 1.15 kg/m^3) with a 25 m/s wind speed a software overspeed alarm/shutdown occurs, even though these are nominal operating conditions. This causes the blade to be feathered and the system to be shut down starting at time ~113 seconds. The control loops are collective pitch control, independent blade pitch control, and generator speed control. The original controllers are PID and PI and were designed by classical control methods using the matlab sisotool with linear models taken from Bladed. The false shutdown issue did not surface until discovered during certification studies in the Bladed model. Solution is to manipulate controller parameters to find a better parameter suite which must be proven in Bladed simulations. 19
Optimizer Application to Bladed • Optimization requires interfacing with Bladed to enable simulations to be run from matlab scripts. • The given Bladed controller is in the form of a 1) dll consisting of the controller architecture and a 2) text file containing controller parameters. The text file must be modified to test each iteration. • Three main matlab/Bladed interface utilities were written: – New values written to parameter text file at each iteration – Create Bladed run file (in matlab) & update each iteration if there are different operating conditions – Following each Bladed simulation, import Bladed output data into matlab environment for performance index calculation.
• Optimization objectives include: – Eliminate false alarms. (Note this is directly related to the control loop setpoint tracking performance.) – Improve control loop performance. These loops are the collective pitch control, independent blade pitch control, and generator speed control. – Load & load imbalance mitigation incorporating Mx & My fatigue loads at the hub.
• Operating conditions: air density [1.1 & 1.357], wind speed [12 & 25 m/s]. These require multiple Bladed runs for each iteration. 20
Baseline Operating Condition â&#x20AC;&#x201C; high/low air density @ 12/25 m/s
Optimized
Original false alarm generator overspeed shutdown
Divergence of baseline & Optimized
21
Optimized
Baseline
Generator Speed Shutdown comparisons
Power shutdown
Power keeps generating
22
Bladed Optimizer Results – Performance Index Table • •
• • •
Table below lists all baseline & optimized controller parameters along with the performance indices. Red box shows multi-objective improvement. The numbers are listed as fractions – 0.28 28%. Blue highlights are the indices for the control loops directly related to false alarms. The generator control loop had the most dramatic improvement of ~29%. This effectively removed the overspeed false alarm for the conditions investigated. Another false alarm/shutdown encountered during the optimizer runs is ‘pitch sanity check’. This shutdown can occur if the pitch rate or position exceeds its respective threshold. The blade 1 & 2 loop improvements (~9 & ~12%) removed it. A key optimizer idea to note is the magnitudes of weighted indices in row 3. They should be balanced according to optimization progress and priorities.
23
Bladed Optimizer Results – Summary • • •
•
• • •
The main problem to be solved was to reduce unwarranted shutdowns. Multi-objective optimization was used with Bladed simulations driven by matlab scripts. Matlab/Bladed interface utilities were written and tested. The utilities were integrated into an optimization environment in which Bladed was used for the simulation data and matlab was used for the performance calculations and optimization process. The optimization objectives included: • Prevent/reduce false alarm/shutdowns due to generator overspeed • Improve control loop tracking for pitch & generator speed • Load & load imbalance mitigation Operating conditions investigated: air density [1.1 & 1.357], wind speed [12 & 25 m/s]. These require multiple Bladed runs for each iteration. The generator control loop had the most dramatic improvement of ~28%. This effectively removed the overspeed false alarm for the conditions investigated. Another key false alarm/shutdown encountered was ‘pitch sanity check’. This shutdown can occur if the pitch rate/position exceeds thresholds. The blade 1 & 2 loop improvements (~9 & ~12%) removed it in the operating conditions investigated. Target generator overspeed false alarm/shutdown was eliminated in the operating condition investigated, although this doesn’t mean all false shutdowns have been eliminated. Results show that optimization is one way to reduce false alarm/shutdowns, although complete elimination would require more rigorous investigations and collaborations with loads analysts. 24
Thank you for your time. Questions?
25
Active/Adaptive Noise Cancellation Applied to Structural Vibration Attenuation
• • • • • • • •
Motivation/Introduction Adaptive Noise Cancellation (ANC) FIR/IIR Adaptive Architecture ANC with Partially Known Information Differencing Filters for ANC Flexible Models for Simulation Simulink Model Results and Conclusions 26
Motivation of Active Adaptive Noise Cancellation Systems • Active Control Systems enable controllers to incorporate more information in order to improve performance. • In many aerospace systems the weight budget dictates lighter structures which lead to more structurally flexible systems. – Long slender structural elements are characterized by low frequency modes and low damping coefficients. – If the lower frequency vibration modes are low enough they can interfere with control loops. Low damping exacerbates this condition and prolongs the vibration. 27
Active Noise Cancellation Overview • The objective of an active noise cancellation system is to reduce the effects of or attenuate an undesired signal component from a given signal by use of an auxiliary signal. • Similar adaptive filtering technology is used commercially in telecommunications for audio noise and echo cancellation. • An FIR (numerator) filter is usually chosen as the adaptive filter structure due to its simplicity and ease of stabilization. • The coefficients of the FIR filter are modified in real time according to a function of an error signal.
28
Active/Adaptive Noise Cancellation Applied to Structure Vibration Attenuation
• • • • • • • •
Motivation/Introduction Adaptive Noise Cancellation (ANC) FIR/IIR Adaptive Architecture ANC with Partially Known Information Differencing Filters for ANC Flexible Models for Simulation Simulink Model Results and Conclusions 29
•
• •
FIR Noise Cancelling Adaptive noise canceling relies on the creation of an ‘anti-noise’ or noise inversion (signal y[n]), an operation controlled in an adaptive manner for the purpose of improved signal-to-noise ratio. The error term of this system is given by
en sn v1 n yn
If the error e[n] signal is minimized by the adaptive component, e[n] converges to the signal s[n] as the filter output y[n] adaptively attenuates the common noise components of the input v1[n] also contained in v0[n]. The signal e[n] becomes the signal used by the downstream systems. Care must be taken in the location and selection of the additional sensor(s) that produces the signal v0[n]. They should not contain portions of s[n]. The reference signal v0(n) is processed by an adaptive FIR filter to produce the output signal. M 1
y[n] wˆ k (n)v0 (n k ) k 0
The adaptive noise canceller should have no effect on the primary signal s(n), and the output signal-to-noise ratio is improved according to the amount of common (cancellable) frequency components. 30
Basic Adaptive IIR Filter • A typical adaptive IIR structure is given in the figure below. The residual error is e[n] d[n] y[n] The output signal of the IIR filter y[n] is computed as
y[n] aT [n]v0 [n] bT [n] y[n 1] •The objective of the adaptive system is to determine an optimum set of coefficients a[n] and b[n] to minimize a performance criterion that is based on the error signal e[n]. Many algorithms may be used to find the optimal set of coefficients. •As with the adaptive FIR filter, the steepestdescent algorithm can be used to update the filter coefficients. •A typical update equation for the general adaptive vector w[n] & then the specific a[n] & b[n] vectors is shown to the right.
w[n 1] w[n] u[n]e[n] a[n 1] a[n] v0 [n]e[n]
b[n 1] b[n] y[n 1]e[n] 31
Active/Adaptive Noise Cancellation Applied to Structure Vibration Attenuation
• • • • • • • •
Motivation/Introduction Adaptive Noise Cancellation (ANC) FIR/IIR Adaptive Architecture ANC with Partially Known Information Differencing Filters for ANC Flexible Models for Simulation Simulink Model Results and Conclusions 32
In the Case of Partially Known Frequency Modes • When the principal disturbance frequency or frequency of interest is known this information may be incorporated into the filter structure. • Some of the structures may be simple enough to predict a narrow range for the disturbance frequency. • The end result is the possibility to improve accuracy and reduce the size of the adaptive filter when additional knowledge is available. 33
Adaptive filters with Additional Knowledge The original IIR equation is: y[n] aT [n]v0 [n] bT [n] y[n 1]
The new equation is:
y[n] aT [n]v0 [n] b[n] * Sx[n] y[n 1] T
•Many flexible structures may be approximated as a simple transfer function derived from test data. •We would usually only know the frequency of the flexible structure and not the damping coefficient or the amplitude of an equivalent transfer function. •A transfer function Sx(z) may be composed of a known frequency plus an estimated damping coefficient. 34
Active/Adaptive Noise Cancellation Applied to Structure Vibration Attenuation
• • • • • • • •
Motivation/Introduction Adaptive Noise Cancellation (ANC) FIR/IIR Adaptive Architecture ANC with Partially Known Information Differencing Filters for ANC Flexible Models for Simulation Simulink Model Results and Conclusions 36
Differencing Adaptive Filters - 1 • Differencing filters are those with exogenous inputs or ARMAX (auto regression moving average exogenous) models. • An extra term based on a calculated deviation or differencing signal is included. • There are two options for the differencing signal: input and output. • The typical ARMAX model equations for input differencing are:
T
T
T
y[ n ] a [ n ]v 0 [ n ] b [ n ] y [ n 1] c [ n ]e [ n 1] e [ n ] v 0 [ n ] v 0 [ n 1]
• The ARMAX model equations for output differencing are:
y[n] aT [n]v0 [n] bT [n] y[n 1] cT [n]e[n 1] e[n] y[n] y[n 1] 37
Differencing Adaptive Filters - 2
• The update equations for differencing adaptive filters are: a[n 1] a[n] v0 [n]e[n]
b[n 1] b[n] y[n 1]e[n] c[n 1] c[n] e [n]e[n] e[n] d [n] y[n]
•The vector ‘c’ is of arbitrary but appropriate length. •The exogenous inputs incorporate a velocity vector into the filter so that it becomes slightly more responsive to transients and improves tracking. •The differencing filter may also be upgraded to include known information in the same way as the typical adaptive filter. 38
Adaptive Filters Considered • There were seven different adaptive filter structures described above used in this study and the matlab code for each is shown in the Appendix of the paper. They are listed as follows: • Cmode = 0 FIR filter • Cmode = 1 FIR filter with input differencing • Cmode = 2 IIR filter • Cmode = 3 IIR filter with input differencing • Cmode = 4 IIR filter with output differencing • Cmode = 5 IIR with partially known flexible model and input differencing • Cmode = 6 FIR filter with partially known flexible model 39
Active/Adaptive Noise Cancellation Applied to Structure Vibration Attenuation
• • • • • • • •
Motivation/Introduction Adaptive Noise Cancellation (ANC) FIR/IIR Adaptive Architecture ANC with Partially Known Information Differencing Filters for ANC Flexible Models for Simulation Simulink Model Results and Conclusions 40
Flexible Aerospace Structures • Autonomous vehicles including UAV’s and satellites have missions that require light weight flexible appendages to reduce their weight and volume footprints. • Large flexible appendages common to satellites include parabolic antennae, large synthetic-aperture radar, and solar arrays built from light materials in order to reduce their weight. Long duration UAV’s require light and high lift coefficient airframes. • Spacecraft structures are now becoming extremely complicated because of these appendages, which also may induce structural oscillation under the excitation of external torques and forces. • The vibration dynamics emanating from flexible appendages and liquid sloshing may interfere with the attitude control dynamics. • In this paper only the flexible solar array is modeled, which is constructed as an additive set of transfer functions
41
Flexible Model Used in Simulation • The development of the model is based on the Lagrange equations and one-mass modeling. • The model is composed of the rigid satellite body with two symmetrical solar arrays, each modeled by a single mass. • The input to the linear transfer functions is the three channel torque vector T(s) and the output is the flexible angular position vector θ(s) contribution from the solar array. Fi(s) is the optional contribution from other flexible structures. • The output angles θ(s) are added to the rigid body Euler angles. • The double integrator symbolically represents the rigid body system. 42
Active/Adaptive Noise Cancellation Applied to Structure Vibration Attenuation
• • • • • • • •
Motivation/Introduction Adaptive Noise Cancellation (ANC) FIR/IIR Adaptive Architecture ANC with Partially Known Information Differencing Filters for ANC Flexible Models for Simulation Simulink Model Results and Conclusions 43
Attitude Control System Simulink Model •
The figure below shows the Attitude Control System and how the adaptive noise control system integrates into it. The adaptive noise control system is designated ANC toward the bottom center of the figure. It may be turned on/off by a switch. We assume the strain gages may be oriented according to each pqr axis.
• • •
Attitude Control
4
1 q_ECI2Body
u
q
Inv (q)
4
q
3 q*r
Quaternion Inverse 4
r
4
[R ,R ,R ] 3
q
1
2
Quaternions to Rotation Angles
2 pointing command
4
|u| Abs
Sum of Elements
0
0)
Yaw
3
Selector
Copy
PD
3
3
2 torque cmd
Rate Transition 2
3
zero cmd
3
4 StrainGage
SG 3
5 pqrTruth
1 atterr
alterrr smoothing
3 3
3
PD Controller (0
3{3}
Pitch
Rate Transition 1
3
4
Roll
3
atterr
3
Quaternion Multiplication
3
3
3
Rotation Order: ZYX
4
NoOp
atterr_smooth [1x4]
T
nav_mode
3 pointing mode
Math Function
3
signals
pqr pqrTruth yerr
ANC
3 6
3 ANCout
44
• • •
Simulation
The seven different strategies as explained above were tested on the satellite model flight software shown below. An 8000 second trajectory was simulated for each of the seven strategies, which is approximately one orbit around the earth. The mission was to allow a sensor to ‘stare’ straight down at the earth. Two performance metrics were used for comparison: 1) Tracking error, difference between the ‘truth’ Euler angles and the filtered output and 2) equivalent fuel consumption in N-m Flight Software
4
q_ECI2Body FlexSatellite _ACS
<qecef 2b>
atterr asbsatellite _Navigation Position _ECEF
3 <xecef >
4{14}
pointing command 3
4 4 [nav _mode ]
<vecef >
4
1
propulsion command [nav _mode ]
sensor outputs Rate Transition
From 2
3
pqrTruth
sensor failure
ANCout pqrTruth
atterr 3
6
3{3}
2 ANCout
Attitude Control
3
3
3 torque_cmds
nav mode
9{11}
9{11}
1 fs output
9 {11}
Navigation [nav _mode ]
asbsatellite _FailureDetection sensor outputs
torque cmd
StrainGage
SG
4{14}
pointing mode
3
3
Velocity _ECEF
pointing command
nav_mode
Signal Conversion
nav_mode
From
sensor failure 4{4}
torque commands
actuator failure
actuator failure
Failure Detection
Copy
2
nav_mode
nav mode Rate Transition 1
[nav _mode ] Goto
Copyright 2006 -2007 The MathWorks , Inc .
45
Active/Adaptive Noise Cancellation Applied to Structure Vibration Attenuation
• • • • • • • •
Motivation/Introduction Adaptive Noise Cancellation (ANC) FIR/IIR Adaptive Architecture ANC with Partially Known Information Differencing Filters for ANC Flexible Models for Simulation Simulink Model Results and Conclusions 46
Sample Plots Active Noise Cancellation Using an FIR filter with a Partially Known Model
Active Noise Cancellation Turned Off (Baseline) ANC turned off total error = 133.3808 rad, total fuel = 4963.3052 N-m
FIR filter with partially known structure total error = 129.8659 rad, total fuel = 2138.7937 N-m
0.05
roll (rad)
roll (rad)
0.05 0
-0.05
-0.05 1000
2000
3000
4000
5000
6000
7000
8000
0.05
pitch (rad)
pitch (rad)
0
0 -0.05 0
1000
2000
3000
4000
5000
6000
7000
0.05 0 -0.05 0
1000
2000
3000
4000 5000 time in sec
6000
7000
8000
0
1000
2000
3000
4000
5000
6000
7000
8000
0
1000
2000
3000
4000
5000
6000
7000
8000
0
1000
2000
3000
4000 5000 time in sec
6000
7000
8000
0.05 0 -0.05
8000
yaw (rad)
yaw (rad)
0
0.05 0 -0.05
Note that the standard controller has a dead band and only consumes fuel when outside the control band. 47
Summary of Results • • • • •
The error and fuel metrics were calculated by summing the absolute value of the measurements at each time step. These metrics are shown in the table below along with filter descriptions. The data was generated from an 8000 second trajectory, which is approximately one orbit. The exogenous values were the differences between current and previous adaptive filter input or output values. The results show dramatic improvement regarding fuel consumption due to ANC applications.
Active Noise Cancellation Type
lags
Turned off (baseline)
Euler error Fuel consumption (rad) (N-m) 133
4963
FIR filter
970-num
120
1531
FIR filter with Input Differencing
815-num, 120-exog
133
2339
IIR filter
210-num, 120-den
117
1354
IIR filter with Input Differencing
155-num, 38-den, 40-exog
115
1064
IIR filter with Output Differencing
155-num, 38-den, 40-exog
115
1064
IIR filter with Partially Known Model and 155-num, 80-den, 80-exog Input Differencing FIR filter with Partially Known Model 1230-num, 200-exog
115
1091
130
2139
48
Conclusions & Future Research • Active noise cancellation system principles were discussed in the context of structural disturbances as the noisy signals to be attenuated. • Such an adaptive noise cancellation (ANC) system may be applied to remove structural disturbances in aerospace systems. • The concept was demonstrated using a simulink model of a generic satellite. • An ANC was embedded in all three roll-pitch-yaw channels of the satellite autopilot. • Seven adaptive filter approaches were developed and simulated. • Comparisons with and without the ANC in the control loop were shown. In all seven cases significant fuel consumption reduction was apparent. • Future proposed activities include additional aerospace model applications, addressing the stability issues for IIR filters, additional linear adaptive filter structures, neural network structures, testing on more realistic maneuvers (sensor calibration, orbital transitions, and transitioning to different sensors), investigating known frequency modes, and model reference ANC approaches. 49
Backup Slides
50
Adaptive Noise Cancellation Overview • The design of an active noise cancellation system is achieved based on the principles of feedback control. • Key Point - A system for adaptive noise cancellation has two inputs: 1)a noise-corrupted signal of interest and 2) an additional signal containing the offending noise, but without the signal of interest. • This process is active/adaptive noise control and uses ideas from control theory. 51
Active/Adaptive Noise Cancellation Applied to Structure Vibration Attenuation
• • • • • • • •
Motivation/Introduction Adaptive Noise Cancellation (ANC) FIR/IIR Adaptive Architecture ANC with Partially Known Information Differencing Filters for ANC Flexible Models for Simulation Simulink Model Results and Conclusions 52
Adaptive Noise Cancellation Description • • • •
•
The figure illustrates such a system. The Adaptive Component contains any appropriate adaptable structure, such as FIR, as well as the adaptive mechanism. The signal of interest s[n] is corrupted by noise v1[n] which may or may not originate from a noise source signal v0[n]. The noise signal v1[n] corrupting s[n] is different from the reference noise signal due to environmental or structural effects. This prevents perfect signal reconstruction of s[n] in e[n]. The adaptive filter will then be used to attenuate the signal v1[n], which is composed of frequency components common with v0[n]. The frequency components (remaining in e[n] from signal s[n]) not in common remain largely untouched as the common components will be subtracted out. This occurs because the adaptive components are computed to minimize the signal e[n].
53
• •
IIR Noise Cancelling Advantages & Disadvantages FIR filters have the advantages of simplicity and being easily stabilized, however, they require more lags and can only approximate system poles. IIR filter advantages:
– Advantage 1: The poles of the IIR filter achieve the same performance characteristics as the FIR filter with a significantly lower order. This is due to the feedback, which generates an infinite impulse response (IIR) with only a finite number of coefficients. Hence, IIR filters with the same characteristics require less computation per sample than FIR filters. – Advantage 2: IIR filters with sufficient order can exactly match poles as well as zeros of physical systems, whereas FIR filters can give only rough approximations to poles. Therefore, IIR filters can further minimize the mean-square error of the adaptive filter. •IIR filter disadvantages: •Disadvantage 1: IIR filters are not unconditionally stable because of the possibility that some poles of the filter may move outside of the unit circle during the adaptive processing, which will cause instability. Consequently, commercial systems usually monitor stability & enforce stability at each iteration, which increases computational demands. •Disadvantage 2: Adaptation may converge to a local minimum because the performance surface E[e2[n]] of adaptive IIR filters is generally nonquadratic and may be multimodal. •Disadvantage 3: Adaptive IIR algorithms generally are designed with a slow relative convergence in order to more easily maintain stability compared to adaptive FIR systems. 54
Active Noise Control Integration Into Simulation • •
•
• •
As shown in the figure there are three channels for active noise control corresponding to roll, pitch, and yaw. The three active noise control routines are called roll_AF_iir, pitch_AF_iir, and yaw_AF_iir. These blocks are simulink blocks which call matlab functions to calculate the adaptive noise filter outputs and the matlab code is given in the Appendices of the paper. Each of the channels calls the same function for adaptive noise cancellation. The normalized gain located at the top left strain gage input also is important to ensure the amplitude of the noise signals are easily ‘perceived’, and thus quickly used for attenuation by the adaptive filters. The normalized gain is large since the amplitude of the strain gage equivalents is small in magnitude compared to the pqr measurements
55