How to plot step response of second order system?

omgNot = 1;
zetaNot = 0.6;
H = tf(omgNot^2,[1, 2*zetaNot*omgNot, omgNot^2]);
stepplot(H)
I am using the code above to plot the step response of a second order system, but I am getting the follwoing error
Invalid default value for property 'InputName_' in class
'DynamicSystem':
Attempt to execute SCRIPT strings as a function:
I would really appreciate your help. Thank you.

댓글 수: 7

Upload the script file that you are executing.
The code above is all I have in the script
madhan ravi
madhan ravi 2019년 2월 4일
편집: madhan ravi 2019년 2월 4일
Might happen you have a script file named as a function. What shows up? when you type the below in command window post the results:
which tf -all
which stepplot -all
>> which tf -all
which stepplot -all
C:\Program Files\MATLAB\R2017b\toolbox\control\ctrlmodels\@tf\tf.m % tf constructor
C:\Program Files\MATLAB\R2017b\toolbox\control\ctrlmodels\@DynamicSystem\tf.m % DynamicSystem method
C:\Program Files\MATLAB\R2017b\toolbox\dsp\filterdesign\@mfilt\tf.m % mfilt method
C:\Program Files\MATLAB\R2017b\toolbox\shared\controllib\engine\@StaticModel\tf.m % StaticModel method
C:\Program Files\MATLAB\R2017b\toolbox\signal\signal\@dfilt\tf.m % dfilt method
C:\Program Files\MATLAB\R2017b\toolbox\shared\controllib\engine\@DynamicSystem\stepplot.m % DynamicSystem method
Not certain where exactly the problem lies but you seem to be missing:
/Applications/MATLAB_R2018b.app/toolbox/ident/ident/@idParametric/tf.m % idParametric method
How do i fix this problem? Is there a way to add the .m file to this folder?
The best option is to contact mathworks support team by clicking the Contact Us button on the top right corner if this page. And finally post the solution (the reason) provided by them as an answer and accept it so it might be helpful for others.

댓글을 달려면 로그인하십시오.

답변 (4개)

Hiroumi Mita
Hiroumi Mita 2019년 2월 4일

0 개 추천

Do you have any MATLAB workspace variables pre-defined and the name is such as,'tf' ,'sterpplot', or ' DynamicSystem'?
Needless to say, double defined same name of pre-defined functions and workspace variable is prohibited.
The reason is priority of workscape name and functionname depends on the prioirty of MATLAB path.
If you have 'tf' where is in MATLAB workspace variable , this is the highest priority.
Second, if you have 'tf' function or other famous name's function you personally programed in current directory which name is same as functions as provided by toolboxes , the function located in current directory has higher priority than Toolboxes.
Please check above.
In my environment , your scriput runs normally.

댓글 수: 1

It would have been crystal clear when typing
which ... -all
as the OP has posted the results of it , neither it is a variable or a custom made function/script. Possible reason could be that the OP has made some changes in the default script file.

댓글을 달려면 로그인하십시오.

Vikas Panit
Vikas Panit 2021년 8월 18일

0 개 추천

You can use the MATLAB pre-defined variables of Control Systems Toolbox to solve the following problem. If you dont have Control Systems toolbox download from here - https://in.mathworks.com/products/control.html
Here is the code you can use to find step response of second order system and command window output:
wn= input('frequency')
zeta= input('damping factor')
k= input('constant')
num= [k*wn^2]
deno= [1 2*zeta*wn wn^2]
g= tf(num, deno)
t= feedback(g,1)
step(t, 'r')
Martial Mezatio
Martial Mezatio 2022년 2월 1일

0 개 추천

clear all
close all
s=tf(s);
g=1/2*s+1);
step_g/s)
Afshan.N.
Afshan.N. 2023년 7월 13일

0 개 추천

wn= input('frequency') zeta= input('damping factor') k= input('constant') num= [k*wn^2] deno= [1 2*zeta*wn wn^2] g= tf(num, deno) t= feedback(g,1) step(t, 'r')

카테고리

도움말 센터File Exchange에서 Plot Customization에 대해 자세히 알아보기

제품

릴리스

R2017b

질문:

2019년 2월 4일

답변:

2023년 7월 13일

Community Treasure Hunt

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

Start Hunting!

Translated by