bode plot from experiment data

241 views (last 30 days)
BK
BK on 28 Sep 2017
Commented: Alfred on 21 Jun 2023
hello all, I have experimental input and output data (saved as data in excel).
- Data is sinusoidal function(time domain). The input signal have a continuously increasing frequency(ex. 0 Hz ~ 1000 Hz). And output signal is sensor measuring data that it have same shape as the input signal.
- I don't have transfer function.
I want draw bode plot using these experiment data. please some body help me.

Answers (1)

Nick Choi
Nick Choi on 2 Oct 2017
Edited: Nick Choi on 2 Oct 2017
Assuming you have the input data and output data in the MATLAB workspace as vectors, you could use the 'tfestimate' function to estimate the transfer function of the data and then use the 'bode' function to obtain the bode plot of the transfer function.
The following documentation page provides additional information on how to use the 'tfestimate' function:
If the data is not in MATLAB yet, you can use the 'xlsread' function to import the data from the Excel spreadsheet. The following documentation page provides additional information on how to use the 'xlsread' function:
  1 Comment
Alfred
Alfred on 21 Jun 2023
Does this still work on 2017b? I checked the tfestimate help page but the output of tfestimate is not a sys object, so I can't use bode(sys)

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!