clear all;
close all;
Fs=100;%采样频率
n=0:1/Fs:20;
%% 手动输入随机振动参数
% %随机振动加速度的RMS
% RMS_Acc=0.0372;
%
% %PSD波形中的峰值
% Peak1=3*1e-4;
% Peak2=3.5*1e-4;
% Peak3=2*1e-4;
% Peak4=3.5*1e-5;
% Peak5=1.8*1e-5;
%
Freq_y1=2;%正弦波1的频率
%模拟加速度随机振动信号
Amp_y1=1;%正弦波1的振幅
y1=Amp_y1*sin(Freq_y1*2*pi*n+2*pi*rand(1)); %产生频率1的sin函数
%白噪声的RMS
xn5=y1;%正弦振动
%xn=cos(2*pi*10*n);
%xn=0.2*randn(size(n));
%xn5=cos(2*pi*10*n);
%计算仿真的加速度的PSD
nfft=256;
window=boxcar(256);%矩形窗
window1=hamming(256);%海明窗
window2=blackman(256); %blackman窗
noverlap=192; %数据重叠率
range='onesided'; %计算正半区的PSD
%[Pxx,f]=pwelch(xn,window,noverlap,nfft,Fs,range);
[Pxx5,f]=pwelch(xn5,window1,noverlap,nfft,Fs,range);
%[Pxx2,f]=pwelch(xn,window2,noverlap,nfft,Fs,range);
%plot_Pxx=10*log10(Pxx);
%plot_Pxx1=10*log10(Pxx1);
%plot_Pxx2=10*log10(Pxx2);
%显示模拟的加速度振动信号
figure(1);
% subplot(2,1,1);
% plot(n,xn5);
% xlim([0 3]);
% ylabel('Acceleration G');
% xlabel('Time s');
% title('正弦振动时域信号')
% grid;
% subplot(2,1,2);
semilogy(f,Pxx5,'LineWidth',2);
xlim([0 10]);
xlabel('Frequency Hz');
ylabel('Acceleration PSD G^2/Hz');
%title('正弦振动信号的PSD')
grid;