Downsampling by averaging

Forum for discussing PicoScope version 6 (non-automotive version)
Post Reply
robios
Newbie
Posts: 0
Joined: Wed Nov 25, 2015 4:53 pm

Downsampling by averaging

Post by robios »

Hi,

I have PicoScope 4224 and I'm looking for an option to perform a downsampling by averaging but can't find it.

What I want to do is to capture a few millisecond waveforms without having aliasing. To avoid aliasing I set a sampling rate to 40Msps or more, but it unnecessary increases a number of samples. So I manually decimate (by averaging) the captured waveforms, but it's just a waste of time. Can PicoScope 6 do it for me?

BTW, the resolution enhancement applies a moving-average filter to captured waveforms, but it should decimate (by averaging like CIC filter) instead. The higher frequency band above fnyq/N, where N is N in https://www.picotech.com/library/oscill ... nhancement, is just useless since it is already eliminated by the moving-average filter.

Regards,
Kazuhiro

Hitesh

Re: Downsampling by averaging

Post by Hitesh »

Hi Kazuhiro,

The PicoScope 6 software has a Math Channel feature which will continuously average the waveforms collected since the start of the data capture.

This will limit the number of samples collected per waveform to 2MS (PicoScope 6.10.18 stable or earlier) or 5MS in the PicoScope 6.11.7 Beta version.

Please note that if the data is saved to file and later reloaded, the average displayed will only be of the waveforms in the data file.

If you are using the API functions in order to collect data using the Software Development Kit, then you can retrieve averaged data using downsampling.

I will feedback your comments about the moving average filter to our Development Team.

Regards,

robios
Newbie
Posts: 0
Joined: Wed Nov 25, 2015 4:53 pm

Re: Downsampling by averaging

Post by robios »

Hi Hitesh,

The averaging I meant is in other words rebinning. Say we have 10 samples (not 10 waveforms) t[0] to t[9] and want to down-sample by 2, we want to get 5 samples (t[0]+t[1])/2, (t[2]+t[3])/2, ..., (t[8]+t[9])/2.

Kind regards,
Kazuhiro

Hitesh

Re: Downsampling by averaging

Post by Hitesh »

Hi Kazuhiro,

For downsampling with averaging, you would need to use the Software Development Kit.

We do provide support for a range of programming languages including C/C++, C#, (MS Excel) VBA, LabVIEW, MATLAB and VB .NET.

Regards,

robios
Newbie
Posts: 0
Joined: Wed Nov 25, 2015 4:53 pm

Re: Downsampling by averaging

Post by robios »

Hi Hitesh,

I see. No official python support yet?

Kind regards,
Kazuhiro

Hitesh

Re: Downsampling by averaging

Post by Hitesh »

Hi Kazuhiro,

Not at the present moment - please e-mail support@picotech.com in order to discuss this further.

Thanks,

hexamer
Advanced User
Advanced User
Posts: 5
Joined: Tue Aug 12, 2014 10:09 pm

Re: Downsampling by averaging

Post by hexamer »

robios wrote:Hi,

I have PicoScope 4224 and I'm looking for an option to perform a downsampling by averaging but can't find it.

What I want to do is to capture a few millisecond waveforms without having aliasing. To avoid aliasing I set a sampling rate to 40Msps or more, but it unnecessary increases a number of samples. So I manually decimate (by averaging) the captured waveforms, but it's just a waste of time. Can PicoScope 6 do it for me?

BTW, the resolution enhancement applies a moving-average filter to captured waveforms, but it should decimate (by averaging like CIC filter) instead. The higher frequency band above fnyq/N, where N is N in https://www.picotech.com/library/oscill ... nhancement, is just useless since it is already eliminated by the moving-average filter.

Regards,
Kazuhiro
I would strongly second the recommendation for a CIC decimator on the scope. In developing my application I was considering implementing a CIC decimator to solve a specific problem, but ended up solving it a simpler way - all the while wishing the scope already had true decimation. A modern PC is plenty powerful to perform decimation with a CIC+FIR compensator. But a significant benefit of doing this on the scope would be reduction in size of the transferred data. I don't know if it's realistic to do this with the current scope's FPGA (via upgrade), but maybe it could be considered on future scopes.

Hitesh

Re: Downsampling by averaging

Post by Hitesh »

Hi hexamer,

I have forwarded your comments to the Development Team for consideration.

Thanks,

Post Reply