Measurement of the sample vibrations when rotating the Spindle
-Table of Contents
- -1 Signal Processing
-1.1 Load Data
-
-Measurement data_001.mat
corresponds to a measurement where the spindle is not turning and data_002.mat
where the spindle is turning at 1rpm.
-x1
is the signal coming from the geophone located on the marble and x2
is the signal from the geophone located on the sample station.
-
data1 = load('mat/data_001.mat', 't', 'x1', 'x2'); -data2 = load('mat/data_002.mat', 't', 'x1', 'x2'); --
1.2 Pre-processing
-imax = min([length(data1.t), length(data2.t)]); - -data1.t = data1.t(1:imax); -data1.x1 = data1.x1(1:imax); -data1.x2 = data1.x2(1:imax); - -data2.t = data2.t(1:imax); -data2.x1 = data2.x1(1:imax); -data2.x2 = data2.x2(1:imax); --
1.3 Time domain Data
-figure; -hold on; -plot(data1.t, data1.x1); -plot(data2.t, data2.x1); -hold off; --
figure; -hold on; -plot(data1.t, data1.x2); -plot(data2.t, data2.x2) -hold off; --
1.4 ASD and Frequency domain data
-dt = data1.t(2) - data1.t(1); -Fs = 1/dt; -windows_psd = hanning(ceil(10/dt)); --
[pxx1m, f] = pwelch(data1.x1, windows_psd, [], [], Fs); -[pxx1h, ~] = pwelch(data1.x2, windows_psd, [], [], Fs); - -[pxx2m, ~] = pwelch(data2.x1, windows_psd, [], [], Fs); -[pxx2h, ~] = pwelch(data2.x2, windows_psd, [], [], Fs); --
figure; -hold on; -plot(f, sqrt(pxx1m)); -plot(f, sqrt(pxx2m)); -hold off; -set(gca, 'xscale', 'log'); -set(gca, 'yscale', 'log'); -xlabel('Frequency [Hz]'); ylabel('PSD [m/s/sqrt(Hz)]') --
figure; -hold on; -plot(f, sqrt(pxx1h)); -plot(f, sqrt(pxx2h)); -hold off; -set(gca, 'xscale', 'log'); -set(gca, 'yscale', 'log'); -xlabel('Frequency [Hz]'); ylabel('PSD [m/s/sqrt(Hz)]') --
figure; -hold on; -plot(f, sqrt(pxx2m)); -plot(f, sqrt(pxx2h)); -hold off; -set(gca, 'xscale', 'log'); -set(gca, 'yscale', 'log'); -xlabel('Frequency [Hz]'); ylabel('PSD [m/s/sqrt(Hz)]') --
figure; -hold on; -plot(f, cumtrapz(f, pxx1m)) -plot(f, cumtrapz(f, pxx2m)) -set(gca, 'XScale', 'log'); -xlabel('Frequency [Hz]'); ylabel('CAS [m]') --