efwefwef 2021-06-20 17:40 采纳率: 0%
浏览 28

MTALAB校正的程序getfield有问题怎么办

clc
clear all
close all
num=2;
den=conv([1,0],conv([0.25,1],[0.1,1]));%分母多项式展开
W=tf(num,den);%开环传递函数
kc=5;%稳态误差系数扩大5倍
yPm=45+10;%增加量取10dB
W=tf(W);%超前校正环节
[mag,pha,w]=bode(W*kc);%增大后的的开环频率特性的幅值和相位
Mag=20*log10(mag);
[Gm,Pm,Wcg,Wcp]=margin(W*kc);%幅值稳定裕度Gm、相位稳定裕度Pm、交接频率W
phi=(yPm-getfield(Pm,'Wcg'))*pi/180;
alpha=(1+sin(phi))/(1-sin(phi));%确定α的值
Mn=-10*log10(alpha);%α的对数值
Wcgn=spline(Mag,w,Mn);%确定最大相角位移频率
T=1/Wcgn/sqrt(alpha);%求T值
Tz=alpha*T;
Wc=tf([Tz 1],[T 1])%超前校正函数的传递函数
Wy_c=feedback(W*kc,1);%校正前的开环传递函数
Wx_c=feedback(W*kc*Wc,1);%校正后的系统传递函数
figure(1);
step(Wy_c,'r',5);
hold on;
figure(2);
step(Wx_c,'b',5);
bode(W*kc,'r');
hold on;
bode(W*kc*Wc,'b');
figure(3);
nyquist(W*kc,'r');
hold on;
nyquist(W*kc*Wc,'b');

  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2022-09-07 18:51
    关注
    不知道你这个问题是否已经解决, 如果还没有解决的话:

    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 以帮助更多的人 ^-^
    评论

报告相同问题?

悬赏问题

  • ¥15 有两个非常“自以为是”烦人的问题急期待大家解决!
  • ¥30 STM32 INMP441无法读取数据
  • ¥100 求汇川机器人IRCB300控制器和示教器同版本升级固件文件升级包
  • ¥15 用visualstudio2022创建vue项目后无法启动
  • ¥15 x趋于0时tanx-sinx极限可以拆开算吗
  • ¥500 把面具戴到人脸上,请大家贡献智慧,别用大模型回答,大模型的答案没啥用
  • ¥15 任意一个散点图自己下载其js脚本文件并做成独立的案例页面,不要作在线的,要离线状态。
  • ¥15 各位 帮我看看如何写代码,打出来的图形要和如下图呈现的一样,急
  • ¥30 c#打开word开启修订并实时显示批注
  • ¥15 如何解决ldsc的这条报错/index error