请用MATLAB代码根据下面这段代码求出Zddce,Zdqce,Zqdce,Zqqce的传递函数s = tf('s'); kpi=6;kii=50;kpv=2;kiv=50;K=6.5;Dq=320;W1=100*pi;J=0.013;Dp=5;Vd=310.272;Id=32.23; Lf=2e-3;Rf=1.5;Cf=200e-6; A=[(kpi+kii/s)*(-(kpv+kiv/s)-Cf*s),(kpi+kii/s)*(-1.5*(kpv+kiv/s)*(1/(K*s+Dq))*Id+W1*Cf);(kpi+kii/s)*(-1.5*Id*(kpv+kiv/s)*Vd/(J*(s^2)+Dp*s)/W1-W1*Cf),(kpi+kii/s)*(-(kpv+kiv/s)-Cf*s)]; B=[-(kpi+kii/s),1.5*Vd*(kpi+kii/s)*(kpv+kiv/s)/(K*s+Dq);-1.5*(Vd^2)/(J*(s^2)+Dp*s)/W1*(kpi+kii/s)*(kpv+kiv/s),-(kpi+kii/s)]; C=[Lf*Cf*(s^2)+Rf*Cf*s-(W1^2)*Lf*Cf+1,-2*W1*Lf*Cf*s-W1*Rf*Cf;2*W1*Lf*Cf*s+W1*Rf*Cf,Lf*Cf*(s^2)+Rf*Cf*s-(W1^2)*Lf*Cf+1]; D=[Lf*s+Rf,-W1*Lf;W1*Lf,Lf*s+Rf]; Zoutce =(Udc*A-C)\(D-Udc*B); Zddce = Zoutce(1,1); Zdqce = Zoutce(1,2); Zqdce = Zoutce(2,1); Zqqce = Zoutce(2,2);
时间: 2023-06-27 18:02:21 浏览: 157
传递函数的MATLAB表示方法
5星 · 资源好评率100%
s = tf('s');
kpi=6;
kii=50;
kpv=2;
kiv=50;
K=6.5;
Dq=320;
W1=100*pi;
J=0.013;
Dp=5;
Vd=310.272;
Id=32.23;
Lf=2e-3;
Rf=1.5;
Cf=200e-6;
A=[(kpi+kii/s)*(-(kpv+kiv/s)-Cf*s),(kpi+kii/s)*(-1.5*(kpv+kiv/s)*(1/(K*s+Dq))*Id+W1*Cf);(kpi+kii/s)*(-1.5*Id*(kpv+kiv/s)*Vd/(J*(s^2)+Dp*s)/W1-W1*Cf),(kpi+kii/s)*(-(kpv+kiv/s)-Cf*s)];
B=[-(kpi+kii/s),1.5*Vd*(kpi+kii/s)*(kpv+kiv/s)/(K*s+Dq);-1.5*(Vd^2)/(J*(s^2)+Dp*s)/W1*(kpi+kii/s)*(kpv+kiv/s),-(kpi+kii/s)];
C=[Lf*Cf*(s^2)+Rf*Cf*s-(W1^2)*Lf*Cf+1,-2*W1*Lf*Cf*s-W1*Rf*Cf;2*W1*Lf*Cf*s+W1*Rf*Cf,Lf*Cf*(s^2)+Rf*Cf*s-(W1^2)*Lf*Cf+1];
D=[Lf*s+Rf,-W1*Lf;W1*Lf,Lf*s+Rf];
Udc = 1; % assuming Udc = 1
Zoutce =(Udc*A-C)\(D-Udc*B);
Zddce = Zoutce(1,1);
Zdqce = Zoutce(1,2);
Zqdce = Zoutce(2,1);
Zqqce = Zoutce(2,2);
% Print the transfer functions
fprintf('Zddce = %s\n',char(Zddce));
fprintf('Zdqce = %s\n',char(Zdqce));
fprintf('Zqdce = %s\n',char(Zqdce));
fprintf('Zqqce = %s\n',char(Zqqce));
阅读全文