相位滞后校正

% 2024年10月13日 悦博特(北京)科技有限公司 刘晓东 整理 《MATLAB与SIMULINK工程应用》 Mokhtari著中
% 相位滞后校正器 的程序,使原书中MATLAB 5.3版本的程序 适用于MATLAB 2022B版本
% 并将原书中版本画图合成到一张图中
% VX: lxdawn
% QQ:654199180
w=1:1000;
a=2;
tau=0.01;
C=(1+tau*i*w)./(1+a*tau*i*w);
num2str(asin((a-1)/(a+1)));
num2str(1/(tau*sqrt(a)));
figure(1);
subplot(211),semilogx(w,abs(C));
title('Phase lead corrector module' );
xlabel('Freguency in rad/s');
ylabel('Modwle');
subplot(212);
semilogx(w,angle(C));title('Phase lead corrector argument');
xlabel('Frequency in rad/s' );
ylabel( 'Phase in rad');
 

对应python代码:
from numpy import linspace
from scipy.integrate import solve_ivp
import matplotlib.pyplot as plt
from numpy import atan2

w = linspace(1, 1000, 1001);
a = 2;

tau = 0.01;
#C=(1+a*tau*1j*w)/(1+tau*1j*w);
C=(1+tau*1j*w)/(1+a*tau*1j*w);
plt.subplot(211)
plt.semilogx(w,abs(C))
#ax.semilogx(w, abs(C))

plt.subplot(212)
theta = atan2(C.imag,C.real);
plt.semilogx(w,theta);
plt.show()

滞后

 

posted @ 2024-10-14 09:28  lxdawn  阅读(100)  评论(0)    收藏  举报