asymptotic magnitude bode plot for PI^alpha controller

how do i add the first three plot to get the forth plot
individual plot
a) for fractional zero
close all;hold off;alpha=0.8;Wcr=3.948;ki=3;w1=logspace(-2,log10(Wcr),1000);w2=logspace(log10(Wcr),2,1000);
Mag1= (20*log10(abs(ki)))*ones(1,numel(w1));Mag2=@(w2) 20*alpha*log10(w2);semilogx(w1,Mag1);hold on;
semilogx(w2,Mag2(w2));grid on;xlabel('Frequency');ylabel('Magnitude dB');
b)fractional pole at origin
clear all;hold off;alpha=0.8;Wcr=1;w1=logspace(-2,log10(Wcr),1000);w2=logspace(log10(Wcr),2,1000); Mag1= 0;Mag2=@(w2) -(20*alpha*log10(w2));
semilogx(w1,Mag1);hold on;semilogx(w2,Mag2(w2));grid on;xlabel('Frequency(rad/sec)');ylabel('Magnitude dB');

4 个评论

Do you have better code and better picture? Hard to read
that is PI^alpha final equation,as per the above image they plot separately each plot 1)Kp, 2)s^alpha+ki and 3)1/s^alpha, from the PI^alpha equation and add the three plots to get the final plot
1) constant gain magnitude equation |T(jw)|= 20log|Kp|
2)fractional zero magnitude equation, a) w<Wcr,|T(jw)|= 20log|Ki|
b) w>Wcr,|T(jw)|= 20*alphalog*w
here Wcr=|Ki|^(1/alpha)
and 3) for fractional pole, 1/s^alpha,magnitude equation |T(jw)|=- 20*alphalog*w,here w=1
i plotted fractional zero and fractional pole separetly (as the code given above),as per the paper it says when you add the first three it result the final graph

请先登录,再进行评论。

 采纳的回答

Try this
Kp = 1;
Ki = 2;
alpha = 1.5;
w_cr = abs(Ki)^(1/alpha);
w = logspace(-1, 3, 1000);
mask = w < w_cr;
term1 = 20*log(Kp)*ones(size(w));
term2 = mask.*(20*log(Ki)) + (~mask).*(20*alpha*log(w));
term3 = -20*alpha*log(w);
combined = term1 + term2 + term3;
subplot(4,1,1);
semilogx(w, term1)
subplot(4,1,2);
semilogx(w, term2)
subplot(4,1,3);
semilogx(w, term3)
subplot(4,1,4);
semilogx(w, combined)

4 个评论

mask = w < Wcr only this condition is used
is w>Wcr condition in fractional zero not required???
I also used inverted mask (~mask) which is is equivalent to w>Wcr.

请先登录,再进行评论。

更多回答(0 个)

标签

Community Treasure Hunt

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

Start Hunting!

Translated by