How to get bode diagram from slx model.

1 view (last 30 days)
How to get the bode diagram of digital filter like a FIR LPF designed by Fdatool. That is written in M-file. X axis unit is Hz, not rad/s. Please show me its M file.

Accepted Answer

Eeshan Mitra
Eeshan Mitra on 24 Aug 2017
The frequency response of a digital filter can be plotted using the "freqz" function in the Control System Toolbox.
Lets assume that a low-pass FIR filter is designed in the following manner with the following parameters in fdatool:
Filter Order: Minimum order
Fs = 1000 Hz
Fpass = 200 Hz
Fstop = 250 Hz
Apass = 1 dB
Astop =40 dB
The designed filter is then exported to the MATLAB Workspace as a filter object named 'Hd'.
The frequency response can be visualized by typing the following at the Command Window:
>> freqz(Hd)
Alternately if you want to plot the phase and magnitude separately, you can use output arguments with "freqz" to assign the frequency vector and the response for a specific sample frequency. For example:
>> fs = 1000;
>> [h,f] = freqz(Hd,501,fs); % 501 points
>> figure
>> subplot (2,1,1)
>> semilogx(f,20*log10(abs(h)))
>> subplot (2,1,2)
>> semilogx(f,angle(h))
  3 Comments
Eeshan Mitra
Eeshan Mitra on 25 Aug 2017
On second thoughts magnitude response should be represented as real(h) rather than abs(h)
Isao Okada
Isao Okada on 25 Aug 2017
My previous comment was wrong. My operation to get Hd was incorrect. I tried once again. Maybe your procesure to get the bode diagram was correct. Bode diagram method of the digital filter out of Fdatool will be refference for me. Thank you very much. But frequency includes 0Hz. Why?

Sign in to comment.

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!