I loaded data obtained from the Agilent Infiniium 54832D-MSO oscilloscope into Matlab and did some basic FFT analysis:
foo=csvread('sig24_tag150.2_J20062.csv');
Fs = 1000000 % 1 Msps
x = foo(1:1000000,2); % 1M samples.
N=length(x);
%this part of the code generates that frequency axis
if mod(N,2)==0
k=-N/2:N/2-1; % N even
else
k=-(N-1)/2:(N-1)/2; % N odd
end
T=N/Fs;
freq=k/T; %the frequency axis
%takes the fft of the signal, and adjusts the amplitude accordingly
X=fft(x)/N; % normalize the data
X=fftshift(X); %shifts the fft data so that it is centered
stem(freq,abs(X))
xlabel('Freq (Hz)')
ylabel('Amplitude')
title('FFT output')
grid
I used the guide at http://www.phon.ucl.ac.uk/courses/spsci/matlab/lect9.html to generate a specgram:
[SB, Sf, St] = specgram(x, 1024, Fs, 512, 384);
bmin = max(max(abs(SB)))/100; % 40dB
imagesc(St, Sf, 20*log10(max(abs(SB),bmin)/bmin));
axis xy;
xlabel('Time (s)');
ylabel('Frequency (Hz)');
lgrays = zeros(100,3);
for i=1:100
lgrays(i,:) = 1-i/100;
end
colormap(lgrays);
Using bmin of 300 (top 50dB)

Using bmin of 100 (top 40dB)

Try using [SB, Sf, St] = spectrogram(x, 32768, 16384, 32768, Fs); - window of 32ms. Only finds 3 of 5 samples.
Try using [SB, Sf, St] = spectrogram(x, 4096, 3072, 4096, Fs); - window of 4ms. Finds five, but they're not very clear. Possibly clear enough though! Slow - 25 seconds
Shorter window (128/96/128) - poor vertical resolution. Can see five if I look at 50dB, but three at 40dB.
1024/720/1024 - loads of noise at 50dB, but very clear at 40dB.
I need to:
Start writing up a DECC seeding grant application.
Apply for and receive a July 14 date for introductory talk.
Test sample depth on Rigol scope. Someone has written a script that reads Rigol waveforms into Matlab
Buy some stuff from RS:
Also try to source