Transfer Function of Closed Loop

2 views (last 30 days)
hyungjc
hyungjc on 18 Feb 2021
Answered: Mahesh Taparia on 23 Feb 2021
So, I created a closed loop on simulink. And I've added 2 simout(To Workspace) for the input and output.
Now, I'm trying to use them on matlab and I try doing
x = tf(out.output, out.input); %I named the simout as output and input
I get an error "The values of the "Numerator" and "Denominator" properties must be row vectors or cell arrays of row vectors,
where each vector is nonempty and containing numeric data. Type "help tf.num" or "help tf.den" for more
information."
I have saved my To Workspace format as a 2D Array.
Any help would be highly appreciated.
  1 Comment
Fangjun Jiang
Fangjun Jiang on 19 Feb 2021
quite wrong. tf() is to define a transfer function. help tf

Sign in to comment.

Answers (1)

Mahesh Taparia
Mahesh Taparia on 23 Feb 2021
Hi
To find the transfer function, "tf" function require the coefficient of numerator and denomenator. For example, consider below:
numerator = [1,9]; % numerator coefficients
denominator = [2,3,4];% denomenator coefficients
sys = tf(numerator,denominator)
So, the numerator and denomenator are row vectors not a 2D array. For more information, you can refer to this documentation of 'tf'. In your case, it is not clear what you are storing in variable out. Store the numerator and denomenator coefficient, it will works.

Products


Release

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by