problems

Transcription

problems
MAE143A Signals & Systems - Homework 9, Winter 2013
— due by the end of class Tuesday March 12, 2013.
Figure 1: Cross-section of a jet engine showing combustors.
Figure 2: Experimental combustor setup in single-nozzle rig.
Question 1— Analyzing real data in matlab
Ruby and Archie1 are two engineers working for Whatt & Pritney Jet Engines. Here is part of their email interchange.
Hey Ruby,
I was in the test bay late last night -- too many meetings during the day -- running
some tests on the MX-25 Single Nozzle Rig. The hooting from the combustion instability
is still there at 220Hz and it’s really starting to bug me trying to understand what
is going on.
Could you please take a look at the attached data and let me know what you see?
Thanks,
Archie.
Download the data file signal.dat (click on the link), which is the data file Archie included in the email to Ruby. This
is a text file consisting of three columns of floating-point numbers.
1 Of course, that is not their real names, which are Veronica and Richard. There is a one-point (purely imaginary) bonus for working out who Ruby
and Archie are and providing their surnames.
After a few moments cursing Archie for failing to explain the parameters of the data, Ruby loads the data into matlab with
the command
load(’signal.dat’)
and sees that the dataset consists of three columns of 16,384 elements, each representing a different signal.
She plots each of the columns of signal and presumes that the first column might be time in seconds, which would mean
that the data were sampled at 5kHz. She surmises that the second column is the recorded pressure and the third column is
the recorded heat release rate, since it is always positive. Further, she learnt long ago that, if you take the logarithm of the
heat release rate, the signal becomes more symmetric. So create three new signals:
time = signal(:,1);
pres = signal(:,2);
hrrt = log(signal(:,3));
Plot the pressure data versus time and the heat release rate versus time.
Use Archie’s comment ‘the combustion instability is still there at 220Hz’ to verify from the
pressure data plot that Ruby has indeed made the correct interpretation of the first column.That is, the sampling rate is
5kHz. Although, Archie might be a little off in frequency. He is musically inclined and picked the note A as the closest.
?
The data clearly exhibit quite, but by no means perfectly, periodic oscillations in both pressure and heat release rate.
Ruby, having aced MAE143A at UCSD, decides to look for more accurate analysis of the frequencies which are clearly
present in the data. For this she turns to discrete Fourier analysis. If the data truly were periodic, then we could compute
their complex Fourier Series from one or several periods of the oscillation. She further recalls that matlab uses the fft
function over the whole data to do this.
Create two discrete Fourier series from the data.
fpres = fft(pres);
fhhrt = fft(hhrt);
Look at the first few elements in fpres and fhhrt and verify that the first element is real and the following elements are
complex. This helps us identify that the first element of the DFT of pressure is the constant term. Verify this by comparing
the first element of fpres with sum(pres).
?
?
Given that the DFT computes the Fourier Series based on 16,384 data and yields 16,384 values in fpres, the second
element of fpres
must
or fundamental component or one cycle in 16,384 samples. It is given by
be the first harmonic
P16384
2π
t , and in general
fpre(2)= t=1 prest exp −j 16384
P16384 2π
(k − 1)t , k = 1, 2, . . . , 16384.
fpre(k)= t=1 prest exp −j 16384
so that this is a discrete version of the Fourier Series without the division by 1/T .
2π
2π
2π
(16384 − k)t = exp j 16384
kt = exp −j 16384
kt , for integer t. Then examine the vector
Show that exp −j 16384
fpres and show that the final element is the complex conjugate of the second element, the second last element is the
conjugate of the third element etc. Continuing this analysis, determine and verify which other element of fpres is its
own conjugate and hence is real. What is the frequency corresponding to this term? This is called the folding freqeuncy
because of the conjugate symmetry around this point. It is also the Nyquist frequency of the sampled data.
?
?
?
Ruby then relabels the frequency axis in Hertz from 0 to the folding frequency and replots the first half of the DFT
magnitudes, abs(fpres), against this scaled axis. Please make the same plot. Ruby’s is below.
?
?
Identify the major peaks in this magnitude plot. According to Archie, they should be around 220Hz, plus a couple of other
places. Just count groups of peaks, not fine scale individual peaks. Verify which peaks are present in pressure and which
peaks are present in the heat release rate.
?
4
2.5
Pressure DFT
x 10
Magnitude (Pa)
2
1.5
1
0.5
0
0
500
1000
1500
Frequency (Hz)
2000
2500
Figure 3: Ruby’s plot of magnitude of DFT for the pressure signal from combustion.
Question 2 — Fitting a part of a model using DFT and data
Figure 4: Simplified combustion instability model.
Ruby knows of the Perrachio-Proscia simplified dynamic model of the combustion instability. This is shown in Figure 4
above. This suggest that heat release rate signal, qt in the figure, is a nonlinear function of a delayed version of the
derivative of the pressure, pt , in the figure. That is,
qt = Φ [ṗt−τ ] ,
for some function Φ[·] and some time delay τ . She wants to estimate τ . She knows that Φ is a saturation function with a
negative slope. So that
∠qt = ∠ (−ṗt−τ ) .
Ruby needs to work out the phase relationship between pt and ∠ (−ṗt−τ ) at each frequency ω radians/sec.
(1)
Show that the Laplace transform of −ṗt−τ is given by −se−sτ P (s), where P (s) is the Laplace transform of pt .
?
Show that the frequency response from pt to −ṗt−τ is therefore given by −jωe−jωτ .
?
Show that the phase of this frequency response is − π2 − ωτ radians at radian frequency ω.
?
Now use (1) and this latest expression for the phase to show that the phase difference between qt and pt at frequency 220
radians/sec is
?
φqp = −
π
− 2π × 220 × τ radians.
2
(2)
Using your identified peak frequency from Question 1 and the DFT vectors fpres and fhrrt to find the experimental
phase difference between qt and pt . That is, look at the difference in angles of the complex numbers fhrrt(i) and
fhrrt(i) for i which corresponds to the maximum peak magnitude. (For Ruby, i=691 or 210.6 Hz.)
?
If your experimental phase difference is positive (as is Ruby’s), then from (2) we see that we need to add a multiple of 2π
to the right hand side in order to keep the delay τ positive. Ruby added a single multiple of 2π and arrived at a time delay
τ = 3.5 milliseconds.
?
This value of 3.5 milliseconds is physically reasonable and represents the transport time between the nozzle exit and
arrival of the fuel at the flame front in the combustor.
Ruby replies.
Dear Archie,
I analyzed your data -- no thanks to you for omitting: the sample time, signal labels,
scales, etc -- and see that the transit time from nozzle to flame front is 3.5 ms.
So it is no wonder you have the hooting oscillation because this is too long for flame
stability. I think that you are running the MX-25 too lean.
An alternative for fixing the hooting oscillation is to study the Krylov-Bogoliubov
theory of periodic excitation of resonant systems and then to design a time-varying
subharmonic feedback controller. But I don’t think you have what it takes to understand
this and, sure as hell, I don’t have the time to explain it to you.
Now leave me alone,
Ruby XXX.