john152 发表于 2006-11-27 19:15

[求助]怎样考虑传递函数的相位差?

怎样考虑传递函数的相位差?
比如Ht1=xt(s)/xr(s)=kt*(s^2+q4*s+q3)/(mt*(s^4+a1*s^3+a2*s^2+a3*s+a4))
是否就直接令s=jw,将Ht1的实部与虚部分离,然后根据反正切函数算出角度就是xt与xr的相位差?
我的Matlab程序为:
a1 =83.4710;
a2 =4.0822e+003;
a3 =2.5912e+004;
a4 =4.4118e+004;
q3 =12.5566;
%%相频
%Ht1
w=0:0.01:10;
re1=(q3-w.^2).*(w.^4-a2.*w.^2+a4)-w.*q4.*(w.^2.*a1+w.*a3);
im1=(q3-w.^2).*(w.^2.*a1+w.*a3)+w.*q4.*(w.^4-a2.*w.^2+a4);
arc1=abs(atan(im1./re1).*180./pi);
figure(5)
plot(w,arc1,'r')
hold on
这样做好像有点问题吧

john152 发表于 2006-12-8 22:33

做出来的是一条不规则的折线,而且变化幅度很大,有没有知道是怎么回事,谢谢

zhuofeng 发表于 2006-12-9 17:24

你画出来的相频曲线就是你想要的东西

随心就动 发表于 2013-5-27 21:00

如果是平稳随机的测试信号呢?

求毕业 发表于 2013-8-6 17:06

折线是因为超出了相位范围
页: [1]
查看完整版本: [求助]怎样考虑传递函数的相位差?