Finding constants of an equation from a graph?
Show older comments
Hello
I have a transfer function that I'm trying to relate to another equation to get some constants. To make this more clear, I will show you an example. My transfer function is :
(-0.7312 s^4 - 0.795 s^3 - 8.145 s^2 + 10.92 s + 28.8)/
( 3.811 s^6 + 66.06 s^5 + 717.1 s^4 + 6787 s^3 + 28690 s^2 + 12750 s + 9.6)
and the constants I want to find are in this equation:
(Ke^(-t_d S)) / (τs+1)
So What I've been doing is drawing these two lines on a graph and through trial and error, trying to find the constants that would make the graphs almost identical. Is there a better way to do this? I'm going to write my code below if anyone's interested to check over it.
%Actual and Approximate TFs Response
NumA=[-0.7312 -0.795 -8.145 10.92 28.8];
DenA=[3.811 66.06 717.1 6787 2.869e04 1.275e04 9.6];
% Actual Transfer Function
Actual=tf(NumA,DenA);
Actual
num2=[3];
den2=[0.7,1];
% Approximate Transfer Function
Approximate=tf(num2,den2,'InputDelay',0.1);
% Plotting Actual and Approximate Transfer Functions
t=0:0.1:100000;
step(Actual,t)
hold on
step(Approximate,t,'r')
hold off
axis([0 100000 0 10])
Thank you in advance
Answers (0)
Categories
Find more on Structures in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!