[Scilab-users] Frequency response
Tan Chin Luh
chinluh at tritytech.com
Wed Sep 19 09:29:15 CEST 2018
Hi Claus,
If I understand you correctly (as mentioned by Rafael "I do not see how
you can “close the loop”, other that testing your theoretical model
against experimental data?"
1. you have a system which you have theoretical result (reference model)
2. you have another set of data which you want to compare with the
reference model
As you're the subject expert in your own code, I will leave it to you as
it will take time to look into them. :)
Instead, I illustrate something similar (I think) which you might be
able to adopt into your own code.
Codes below perform following steps:
1. Create a linear model in s domain.
2. Convert the model to z domain.
3. Get the impulse response from the z model.
4. From the impulse response data, find the frequency response (in your
case, it should be the data H that you obtained somewhere?)
5. Compare the response in 4 with the model response.
rgds,
CL
// Linear System in Time Domain
s=%s;
G = syslin('c', 10*s^2 , 3*s^2 + s + 2);
// Discreate Model
Ts = 0.05; // Sampling time for discrete model
SS_z = cls2dls(tf2ss(G),Ts);
tz = [0:Ts :50]';
u=ones(tz);
y2_step=dsimul(SS_z,u'); //Step response
u=zeros(tz);u(1)=1;
y2_imp=dsimul(SS_z,u'); //Impulse response
// Compute Bode plot from Impulse Response
tau_step = Ts;
H = y2_imp;
fs = 1/tau_step;
// Following part is the same code as earlier
b = poly(H($:-1:1),"z","coeff");
a = %z^(length(H)-1);
Gz = syslin('d',b,a);
Gz.dt = 1/fs;
[F,M]=repfreq(Gz,0.001,fs/2,0.01);
// Comparison
bode(G); // Ideal frequency response
plot(F(2:10:$),20*log10(M(2:10:$)),'r.'); // generated frequency response with repfreq
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.scilab.org/pipermail/users/attachments/20180919/ae1ce75e/attachment.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: cclnliongoiiadfi.gif
Type: image/gif
Size: 12775 bytes
Desc: not available
URL: <https://lists.scilab.org/pipermail/users/attachments/20180919/ae1ce75e/attachment.gif>
More information about the users
mailing list