
OutputResponse gives funny results
Posted:
Oct 22, 2012 2:07 AM


Hello
I am trying to implement some examples on Dorf's book. Here is a code for one of them.
Tcl[p_,Kp_,Kd_,Ki_]=TransferFunctionModel[(Ki+Kp s+Kd s^2)/(Ki+Kp s+Kd s^2+p^2 s^2+2 p s^3+s^4),s]
fcl[t_,p_,Kp_,Kd_,Ki_]=Abs[OutputResponse[Tcl[p,Kp,Kd,Ki],UnitStep[t],t]];
Manipulate[{N[TransferFunctionPoles[Tcl[p,6,4,1]],2],Plot[fcl[t,p,6,4,1],{t, 0,Ts},PlotRange>All,AxesLabel>{t,x[t]},PlotStyle>Thickness[0.01],GridLine s>Automatic]},Style["Example 4.4  Dorf  12^th Edition  R(s) = 10/s, D(s) = 0",Bold],{{p,2},0,100,Appearance>"Labeled"},{{Ts,20},0.1,100,Appearance>"L abeled"}]
Even though the poles are on the left side (stable system), OutResponse gives huge numbers (instability) when the slider for the variable Ts is moved to higher values. More than, it is seems that this simple code makes Mathematica ever so slow.
Have I missed something?
Many thanks
Ed

