Bode Plot axes changes with sampling time?
8 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Why does the Bode Plot 'bode()' frequency axis change in magnitude if the sampling time 'dt' is changed in magnitude? If dt is changed from 1e-3, to 1e-4, the axis labels go from 10^1 --> 10^4, to 10^2 --> 10^5. But sampling time shouldn't change the axis magnitude, just the accuracy.
dt = 1e-4;
t = (0 : dt : 50)';
uc = chirp(t, 0.1, t(end), 100);
yc = circshift(uc, 100); %phase shift the output
data = iddata(yc, uc, dt);
TF= etfe( data );
bode(TF);
Antworten (4)
Arkadiy Turevskiy
am 21 Apr. 2014
Bearbeitet: Arkadiy Turevskiy
am 21 Apr. 2014
The FFT frequency is basically an inverse of sampling time, so when you make dt 10 times smaller, frequency goes 10 time higher, as shown in the example referenced above.
0 Kommentare
John
am 21 Apr. 2014
2 Kommentare
Arkadiy Turevskiy
am 21 Apr. 2014
If you take a look at a signal processing book like Discrete-Time Signal Processing by Oppenheim and Schafer, and look at frequency-domain representation of sampling, you will see that all the frequency plots are defined with sampling frequency, 1/T Hz , or 2pi/T rad/sec.
The bode plot will show the right content at the right frequencies, but the range will always extend to (1/t)/2 - half of the sampling frequency. This is the right behavior. If you have t=1e-4, you can still capture frequency content happening at just below half of sampling frequency, 5 Khz. With sampling time 1e-3, you can only capture frequency content up to 500 Hz.
Think about it this way: if your transfer function is a very narrow passband at 100 Hz, no matter what dt is (1e-3 or 1e-4), you will see your passband at 100Hz, but the range will extend to either 500Hz or 5,000 Hz.
Siehe auch
Kategorien
Mehr zu Plot Customization finden Sie in Help Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!