Turning Red Pitaya into a multi-channel analyzer
Posted: Mon Dec 07, 2015 2:24 pm
I recently acquired a Red Pitaya to be used to read in a 0-10V signal from a HIAC HRLD 150+ particle counter. This unit is being used to detect the presence of 4 to 70 micron particles suspended in hydraulic oil. Several ways to read the signal in already exist, one such method is using a multi-channel analyzer. This is one that is used with this particular sensor often:
http://www.amptek.com/products/mca-8000 ... lications/
The basic operation of a particle counter: a laser within the unit is passed through a column of fluid being precisely metered through the viewing area. This laser light then goes into a photo-diode and is converted into the analog signal. When a particle goes in front of the viewing area, a shadow is created, and a voltage pulse on the photo-diodes output is generated which is linearly proportional to the area of the shadow (particle size).
My hope for this project is to be able to read the signal in on the Red Pitaya over a period of time, say 1 minute, counting each pulse it sees as well as bucketizing the counts along with the peak voltage of the pulses into a histogram. (e.g., Pulses >= 30 mV and up >4 microns in size, pulses >= 60 mV and up >6 microns in size, pulses >= 100 mV and up >14 microns in size and so forth up the scale to 70 microns. At the end of the time period, the data (counts for each size bucket) would be sent to a data acquisition system which is recording other parameters for the test continuously (say temperature, pressure, flow rate etc...).
Any thoughts on how to attack this problem? I'm expecting to have to dive into some C programming if I needed to, but I also have MATLAB, so I didn't know if there was a clever way to do this using just the built in commands.
http://www.amptek.com/products/mca-8000 ... lications/
The basic operation of a particle counter: a laser within the unit is passed through a column of fluid being precisely metered through the viewing area. This laser light then goes into a photo-diode and is converted into the analog signal. When a particle goes in front of the viewing area, a shadow is created, and a voltage pulse on the photo-diodes output is generated which is linearly proportional to the area of the shadow (particle size).
My hope for this project is to be able to read the signal in on the Red Pitaya over a period of time, say 1 minute, counting each pulse it sees as well as bucketizing the counts along with the peak voltage of the pulses into a histogram. (e.g., Pulses >= 30 mV and up >4 microns in size, pulses >= 60 mV and up >6 microns in size, pulses >= 100 mV and up >14 microns in size and so forth up the scale to 70 microns. At the end of the time period, the data (counts for each size bucket) would be sent to a data acquisition system which is recording other parameters for the test continuously (say temperature, pressure, flow rate etc...).
Any thoughts on how to attack this problem? I'm expecting to have to dive into some C programming if I needed to, but I also have MATLAB, so I didn't know if there was a clever way to do this using just the built in commands.