Bode diagram to Nichols curve
4 次查看(过去 30 天)
显示 更早的评论
Hi,
I want to tune a machine we are experimenting on using the Nychols-curve. In the machine-software it's possible to measure some Bode-plots of the machine itself. With these results (magnitude and phase at different frequencies) i want to plot a Nichols-curve. I know it's possible with the SISOTOOL to make a Nychols-curve using a systemmodel, but i want a direct link between the bode and nichols curve using a tool like sisotool.
Any help? Simon
0 个评论
回答(2 个)
Hin Kwan Wong
2011-12-2
Since you have the mag and phase data for bode plot is open loop You can just plot a Nichols plot yourself by transforming the coordinates for a Nichols by using the formula
H(i*w)/(1+H(i*w))
basically you just plot: plot(PHASE, db(ComplexData./(1+ComplexData)));ngrid;
where ComplexData is complex open loop response in cartesian form
PHASE is in degrees = 180*angle(ComplexData)/pi
0 个评论
Craig
2011-12-2
Hi Simon,
You can create an FRD (frequency response data object) using the mag and phase information
>> m = [1;2;3]; % mag in abs
>> ph = [10;15;30]; % phase in deg
>> w = [10;20;30]; % frequency rad/sec
>> sys = frd(m.*exp(1i*pi/180*ph),w);
Then use the plotting commands to view it. Note FRD objects can be imported into SISOTool as well.
>> figure;
>> bode(sys)
>> figure;
>> nichols(sys)
or
>> ltiview({'bode','nichols'},sys)
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Classical Control Design 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!