马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?我要加入
x
function pinlv()
clf
fs=20000;
N=800;
n=0:N;
t=n/fs;
% x1=3*sin(2*pi*25*t);
% x2=3*cos(2*pi*25*t);
% y1=6*sin(2*pi*25*t-pi);
% y2=6*cos(2*pi*25*t-pi);
x1=load('1024x.txt');
x2=load('1024y.txt');
y1=load('r1024.txt');
y2=load('q1024.txt');
x=i*x1+x2;
y=i*y1+y2;
r1=fft(x,N);
r2=fft(y,N);
mag1=abs(r1);
mag2=abs(r2);
deg1=angle(r1)*180/pi;
deg2=angle(r2)*180/pi;
f1=(0:length(r1)-1)'*fs/length(r1);
f2=(0:length(r2)-1)'*fs/length(r2);
subplot(2,2,1),plot(f1,mag1/N);grid
subplot(2,2,2),plot(f2,mag2/N);grid
subplot(2,2,3),plot(f1,deg1);grid
save data3.txt deg1 -ascii;
subplot(2,2,4),plot(f2,deg2;grid
save data4.txt deg2 -ascii;
figure
plot(f1,deg1);
figure
plot(f2,deg2);
在这里面的每个txt里都有8000多个数据,这四个数据是通过涡流传感器测得转子前后支撑的水平和垂直方向上的,我是把前后支撑的各两个数据构成一个复函数,然后对这个复函数FFT,因为不知道信号的相位,只知道转子是动不平衡,前后支撑相位相差180度,我这个程序不满足,别且N的数值不一样,相位差也跟着变化,我现在很迷茫,不知道是什么地方有问题,请知道的大侠给我指点指点,感谢每一个看过的人 |