필터 지우기
필터 지우기

How to find the max Phase lead provided by a Compensator?

조회 수: 9 (최근 30일)
Gidel
Gidel 2023년 12월 1일
댓글: Sam Chak 2023년 12월 2일
If I have a compensator such as s+1/s+3, is there a command to find the max phase lead angle provided by it?

답변 (2개)

David Goodmanson
David Goodmanson 2023년 12월 1일
편집: David Goodmanson 2023년 12월 1일
Hi Gidel,
It's not a single command and it's numeric, but is
w = 0:.001:10; maxangle = (180/pi)*max(angle((i*w+1)./(i*w+3))) % degrees
maxangle = 30.0000
sufficient?

Sam Chak
Sam Chak 2023년 12월 1일
You can also check using the bodeplot() for visual and the bode() for finding the max angle.
sys = tf([1 1], [1 3])
sys = s + 1 ----- s + 3 Continuous-time transfer function.
h = bodeplot(sys);
setoptions(h, 'FreqUnits', 'Hz', 'MagVisible', 'off');
grid on
[mag, phase, wout] = bode(sys);
maxAngle = max(phase)
maxAngle = 30.0000
  댓글 수: 2
Gidel
Gidel 2023년 12월 1일
Thank you, also is it possible to find the maximum gain from this?
Sam Chak
Sam Chak 2023년 12월 2일
Since your original question has been answered, perhaps you would also like to determine the compensator's magnitude at the frequency where the maximum phase angle occurs.
% Transfer function of the Lead Compensator
sys = tf([1 1], [1 3])
sys = s + 1 ----- s + 3 Continuous-time transfer function.
h = bodeplot(sys); grid on
% Extract data points from Bode plot
[mag, phase, wout] = bode(sys);
% Max phase angle
maxAngle = max(phase)
maxAngle = 30.0000
% Frequency at which the max phase angle occurs, ω_max
idx = find(phase == maxAngle);
wmax = wout(idx)
wmax = 1.7321
% Compensator's magnitude at ω_max
magwmax = mag(idx)
magwmax = 0.5774
% Check mag dB
magdB = 20*log10(magwmax)
magdB = -4.7712

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Get Started with Control System Toolbox에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by