EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  <20162017  2018  2019  2020  2021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  <20162017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: RE: FFT and waveform
From: Mark Rivers <[email protected]>
To: "'Gofron, Kazimierz'" <[email protected]>, "'[email protected]'" <[email protected]>
Date: Sun, 27 Mar 2016 20:44:24 +0000

Hi Kaz,

 

I suspect your request for FFT support may be related to the quadEM module.  The following are from the release notes for the upcoming R7-0 release of quadEM.  These items are all currently available in the master branch of quadEM on github. 

 

*******************************************

- Changed the time-series and FFT support. Previously the time-series used the drvFastSweep driver from the synApps "mca" module. FFTs were done by an SNL program in the quadEM module. Now the time-series is done by the NDPluginTimeSeries plugin in areaDetector/ADCore. The FFT is now done by the NDPluginFFT plugin, also in ADCore. These changes mean that quadEM no longer depends on the mca or seq modules. They also add some significant new capabilities. For example the drvFastSweep driver is limited to epicsInt32 data, while the NDPluginTimeSeries plugin can handle any data type, include epicsFloat64 which is what the quadEM driver produces.


- Improved the support for data acquisition applications, such as step-scan and on-the-fly scans using ion-chamber and photodiode detectors. This is particularly true for the TetrAMM model, using the new firmware version 2.9.08.

 

- Changed the AcquireMode choices from Continuous/One-shot to Continuous/Multiple/Single. Multiple will collect NumAcquire acquisitions and then stop. Single is the same as the previous One-shot, but using the same terminology as areaDetector.

 

- Changed the TriggerMode choices from Internal/ExternalTrigger/ExternalGate to FreeRun/Software/ExternalTrigger/ExternalBulb/ExternalGate. These are explained in the quadEMDoc documentation.

*******************************************

 

The documentation for the NDPluginFFT plugin mentioned my previous message is here:

http://cars.uchicago.edu/software/epics/NDPluginFFT.html

 

The documentation for the NDPluginTimeSeries plugin mentioned my previous message is here:

http://cars.uchicago.edu/software/epics/NDPluginTimeSeries.html

 

Mark

 

 

 

From: Mark Rivers

Sent: Sunday, March 27, 2016 12:27 PM

To: 'Gofron, Kazimierz'; '[email protected]'

Subject: RE: FFT and waveform

 

Hi Kaz,

 

This is from the areaDetector/ADCore release notes for the upcoming R2-5 release.  These items are available now in the master branch on github.

 

****************************************

### NDPluginFFT

* New plugin to compute 1-D or 2-D Fast Fourier transforms.  It exports 1-D or 2-D

  NDArrays containing the absolute value of the FFT.  It creates 1-D waveform

  records of the input, and the real, imaginary, and absolute values of the first row of the FFT.

  It also creates 1-D waveform records of the time and frequency axes, which are useful if the 1-D

  input represents a time-series. The waveform records are convenient for plotting in OPI screens.

* The FFT algorithm requires that the input array dimensions be a power of 2, but the plugin

  will pad the array to the next larger power of 2 if the input array does not meet this

  requirement. 

*  The simDetector test application in

  [areaDetector/ADExample](https://github.com/areaDetector/ADExample)

  has a new simulation mode that generates images based on the sums and/or products of 4 sine waves.

  This application is useful for testing and demonstrating the NDPluginFFT plugin.

****************************************

 

 

This is from the areaDetector/ADExample notes for the upcoming R2-2 release.  These items are available now in the master branch on github.

 

****************************************

* Created a new driver in ADExample/exampleApp/ADCSimDetectorSrc.

  This driver generates times-series data for 8 signals as a 2-D array [8, NumTimePoints].

  The signals are common waveforms (sine, cosine, square wave, sawtooth, random noise, etc.)

 

  The driver was written in part to test the new NDPluginTimeSeries and NDPluginFFT plugins

  in ADCore R2-5. But it can also serve as a starting point for writing drivers that are used

  to collect time-series data like ADCs, waveform digitizers, etc. 

 

  There is a new iocs/iocADCSimDetector directory that creates an application for testing

  the driver.

* Added a new sine-wave simulation mode to simDetector.  This simulation mode constructs images

  as the sum or products of two sine waves in the X and Y directions.  It was designed in part

  to test the new NDPluginFFT plugin in ADCore R2-5.

****************************************

 

Mark

 

 

From: [email protected] [mailto:[email protected]] On Behalf Of Gofron, Kazimierz

Sent: Sunday, March 27, 2016 11:24 AM

To: '[email protected]'

Subject: FFT and waveform

 

Hi all,

 

My waveform (1024 current reading in [A], @1s) needs to be processed for frequencies using FFT method. The current values are in range between pA and mA ranges.

 

There is an existing tech-talk exchange on FFT from about 5 years ago that discuss FFT3, fftw, and waveProc.  

 

FFT3 based:

http://www.aps.anl.gov/epics/tech-talk/2011/msg01143.php

http://www.fftw.org/fftw3_doc/Complex-DFTs.html#Complex-DFTs

 

The github fftw development:

https://github.com/FFTW/fftw3

 

The waveProc is bit dated (2004?)

http://www.aps.anl.gov/epics/download/modules/index.php

 

Any newer solutions and suggestions?

 

Kazimierz Gofron

NSLS-II Controls Group

Brookhaven National Laboratory

(p) +1 (631) 344 5283

(f) +1 (631) 344 8085

(e) [email protected]

(w) www.bnl.gov/nsls2

 


References:
FFT and waveform Gofron, Kazimierz
RE: FFT and waveform Mark Rivers

Navigate by Date:
Prev: RE: FFT and waveform Mark Rivers
Next: RE: Question about the connection refused lzfneu
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  <20162017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: RE: FFT and waveform Mark Rivers
Next: RE: FFT and waveform Gofron, Kazimierz
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  <20162017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 15 Jul 2016 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·