EECE 3 Signals & Systems Pro. Mark Fowler Discussion #9 Illustrating the Errors in DFT Processing DFT or Sonar Processing
Example # Illustrating The Errors in DFT Processing
Illustrating the Errors in DFT processing This example does a nice job o showing the relationships between: the CTFT, the DTFT o the ininite-duration signal, the DTFT o the inite-duration collected samples, and the DFT computed rom those samples. However, it lacks any real illustration o why we do DFT processing in practice. There are many practical applications o the DFT and we ll look at one in the next example.
Recall the processing setup: (ote: no anti-aliasing ilter shown but we should have one!) sensor ADC x (t) x[n] x[] Inside Computer [] (ω) CTFT (theory) (Ω) DTFT (theory) x[] x[2] x[-] DFT processing Zeropadding to length zp [] [2] [ zp -3] [ zp -2] [ zp -] We study the theory o these memory array (Ω) DTFT (theory) memory array Practical computed DFT to understand what this shows us
Let s imagine we have the ollowing CT Signal: ( ) bt x t e u( t) or b > x(t) ow analyze what we will get rom the DFT processing or this signal t From our FT Table we ind the FT o x(t) is: A ( ω) ( ) jω + b CTFT Result (Theory) j2π + b I we sample x(t) at the rate o F s samples/second That is, sample every T /F s sec we get the DT Signal coming out o the ADC is: For this example we get: x[ n] [ bt e u( t) ] t nt e x[ n] x( t) x( nt ) btn u[ n] t nt bt n Δ n ( e ) u[ n] a u[ n] ote: a <
ow imagine that in theory we have all o the samples x[n] - < n < at the ADC output. Then, in theory the DTFT o this signal is ound using the DTFT table to be: B ( Ω) ae jω DTFT Result (Theory) For a < which we have because: bt a e & b >, T > ow, in reality we can collect only < samples in our computer: x [ n] a n n, ("Assume" x n n ( [ n] ) elsewhere) ecessary to connect the DFT result to the theoretical results we d like to see. The DTFT o this collected inite-duration is easily ound by hand : C ( Ω) ( jω ae ) ae jω
ote that we think o this as ollows:..and DTFT theory tells us that x [ n] x[ n] w [ n] π ( Ω) ( Ω ) ( ) ( Ω) ( Ω) 2 λ W λ dλ W π π A orm o convolution (DT Freq. Domain Convolution) and this convolution has a smearing eect.,,, 2, K, w [] n, otherwise Finally, the DFT o the zero-padded collected samples is [n] x zp x[] x[]... x[ ]... Total o zp points zp zp [ ] k n x zp [ n] 2πkn j zp D (The only part o this example we d really do )
Our theory tells us that the zero-padded DFT is nothing more than points on DTFT : [ k] ( Ωk ) zp 2πk where Ωk k,, 2,..., zp Spacing between DFT points is 2π/ zp Increasing the amount o zero-padding gives closer spacing ow run the m-ile called DFT_Relations.m or dierent F s,, & ap values
Results rom DFT_Relations.m Plot #: shows CTFT computed using: ( ) A j2π + b otice that this is not ideally bandlimited, but is essentially bandlimited. Thereore we expect some aliasing when we sample.
Plot #2: shows DTFT computed using: (For plotting) ( Ω) ae jω B Our theory says that: (For analysis) ( Ω) T k Ω + k2π 2π F s (CTFT rescaled to Ω and then shited by multiples o 2π) So we should see replicas in (Ω) and we do! We plot T (Ω) to undo the /T here
We also plot the CTFT against Ω F s 2π Ω Ω j ae ) ( DTFT : b F j b j s + Ω Ω + ) 2 / ( 2 ) ( 2 ) ( π π π Plot #2: Recall the two equivalent axes: Ω F s s F 2 F s 2 F s 2π π 2 π π
The theory in ( Ω) T k Ω + k2π 2π says we ll see signiicant aliasing in (Ω) unless F s is high enough F s The irst error visible in plot #2 DTFT CTFT
Plot #3 shows DTFT computed using ( Ω) ( ae ae jω ) jω C We see that (Ω) shows signs o the smearing due to: ( ) ( Ω) W ( Ω) Also called leakage error Ω The second error visible in plot #3 DTFT DTFT This leakage error is less signiicant as we increase, the number o collected samples
Plot #4 shows DFT computed using: zp [ k] zp n x zp [ n] e j2πkn zp D It is plotted vs. Ω k 2πk zp but with the right hal moved down to lie between -π & rad/sample For comparison we also plot (Ω) DFT DTFT ote: We show an artiicially small number o DFT points here
Theory says zp [k] points should lie on top o (Ω) not (Ω)!! We see that this is true I zp is too small (i.e. zp ) then there aren t enough DFT points on (Ω) to allow us to see the real underlying shape o (Ω) This is Grid Error and it is less signiicant when zp is large. The third error visible in plot #4 DFT DTFT
Summary o Results: sensor x(t) ADC x[n] Inside Computer CTFT x[] [] Aliasing Error DTFT x[] x[2] x[-] DFT processing Zeropadding to length zp [] [2] [ zp -3] [ zp -2] [ zp -] memory array memory array Smearing /Leakage Error DTFT Grid Error DFT
Example #2 Sonar Processing using the DFT
Radar/Sonar Processing using the DFT Imagine a stationary sonar and moving target y target Component o velocity along line o sight v Vs Radar/Sonar x Say we transmit a sinusoidal pulse: x x T ( t) Acos(2π ot),, else t T o Tx Transmit Rx Receive Physics tells us (Doppler eect) that the relected signal received will be: R αa cos 2π ( t), o + else ov c (c speed o propagation 33m/s or sound in air) s t + φ, t T Doppler shit in Hz o (or radars, this is generally in the khz range) (or sonar, this is in the s o Hz range)
Our CTFT theory tells us that the CTFT o the Tx signal will be: tx ( ) abs. value o shited sinc B e o o B e Assume that o is large enough that this decays to a negligible level by Hz and by ±B e Center o between and B e F s 2 B e Also CTFT theory tells us that the CTFT o the Rx signal will be: tx ( ) Peak is shited rom o by the doppler shit o ov C s r I we know o and we can ind where this peak is then we can ind V s : r o + V s c ov C r o s B e ( m / s)
Hydrophone sensor Computer: DT processing Anti-aliasing CT ilter signal CT signal ADC DT signal DFT processor DFT values peak search Get V s