Dynamic time-over-threshold and active source
Posted: 11 Dec 2017, 05:08
Hello all,
I want to share with you my resent results while attempting to build a better (than sound card) data acquisition system that is still cheap and suitable for hobbyists.
My focus (also with sound card data acquisition) is to have more than a single channel to make coincidence measurements. While it works with the sound card, the time resolution is rather limited: with a 192 kHz sampling rate one cannot easily get below a few micro seconds. Time resolution is crucial for coincidence measurements. Few nanoseconds resolution is desirable. I also would like to have more than two channels... I would be happy with four. There are four channel sound cards, but if I had to buy special hardware for my measurements, I could rather try to find something that fits my needs better.
I started playing around with the time-over-threshold method, where the detector signal is compared with a constant threshold voltage level. It works by measuring the time t0 when the rising edge of the detector signal crosses the threshold voltage, and time t1 when the falling edge crosses the signal again. The time difference t1-t0 has information about the pulse length, but also about the pulse height. The relation between pulse length and amplitude is approximately logarithmic if the rising edge is fast and the falling edge is an exponential decay. One problem I encountered was that I couldn't make the voltage threshold as low as I wanted without sacrificing energy resolution. I found some publications about "dynamic time-over-threshold" methods: after the leading edge of the signal crosses the threshold, the threshold is increased in order to intercept the falling edge at higher voltages, where the impact of noise is lower. EDIT: This is illustrated in the picture below (smaller error due to the intersection of the signal at a higher amplitude) For time measurements, I used an FPGA development board https://embeddedmicro.com/products/mojo-v3.html (for 75$) with some custom VHDL code. It records the time of the threshold crossing with 5ns resolution and sends the time value over USB to a PC. The analog voltage comparison is done on an add-on board for the FPGA board. More information about the device can be found here https://emsyfs.blogspot.com/2017/09/fpg ... ition.html and here https://emsyfs.blogspot.com/2017/10/gam ... -over.html.
I am quite happy with the result so far. The following spectrum was taken with a 3x3 inch NaI(Tl) detector from BICRON at -700 Volts and a LYSO crystal as a source. One more special thing about that measurement: there was no shielding or background subtraction applied. The clean spectrum is rather resulting from the fact that I used the LYSO (which is also a scintillator) in conjunction with a Silicon photomultiplier to give me another signal to "gate" my NaI detector. In other words: the NaI signals were only filled into the spectrum when within a 50ns time window there was also a singal from the LYSO scintillator. Here is a picture of this "active source" A few final comments to this method:
1) Number of channels can be easily increased. I synthesized the VHDL code successfully with 16 channels, but my front-end card only supports 4 channels.
2) Due to the logarithmic behavior, there is practically no saturation in the data acquisition. It can digitize signals with very high amplitudes like cosmic muons. (maybe the front-end saturates at some point).
3) The calibration is a bit more difficult, because a linear function will not work. But if the signal shape is known, this can be handled.
4) The time resolution of 5ns can most likely be improved (down to 1ns should be possible with a bit of effort).
Best regards,
Michael
I want to share with you my resent results while attempting to build a better (than sound card) data acquisition system that is still cheap and suitable for hobbyists.
My focus (also with sound card data acquisition) is to have more than a single channel to make coincidence measurements. While it works with the sound card, the time resolution is rather limited: with a 192 kHz sampling rate one cannot easily get below a few micro seconds. Time resolution is crucial for coincidence measurements. Few nanoseconds resolution is desirable. I also would like to have more than two channels... I would be happy with four. There are four channel sound cards, but if I had to buy special hardware for my measurements, I could rather try to find something that fits my needs better.
I started playing around with the time-over-threshold method, where the detector signal is compared with a constant threshold voltage level. It works by measuring the time t0 when the rising edge of the detector signal crosses the threshold voltage, and time t1 when the falling edge crosses the signal again. The time difference t1-t0 has information about the pulse length, but also about the pulse height. The relation between pulse length and amplitude is approximately logarithmic if the rising edge is fast and the falling edge is an exponential decay. One problem I encountered was that I couldn't make the voltage threshold as low as I wanted without sacrificing energy resolution. I found some publications about "dynamic time-over-threshold" methods: after the leading edge of the signal crosses the threshold, the threshold is increased in order to intercept the falling edge at higher voltages, where the impact of noise is lower. EDIT: This is illustrated in the picture below (smaller error due to the intersection of the signal at a higher amplitude) For time measurements, I used an FPGA development board https://embeddedmicro.com/products/mojo-v3.html (for 75$) with some custom VHDL code. It records the time of the threshold crossing with 5ns resolution and sends the time value over USB to a PC. The analog voltage comparison is done on an add-on board for the FPGA board. More information about the device can be found here https://emsyfs.blogspot.com/2017/09/fpg ... ition.html and here https://emsyfs.blogspot.com/2017/10/gam ... -over.html.
I am quite happy with the result so far. The following spectrum was taken with a 3x3 inch NaI(Tl) detector from BICRON at -700 Volts and a LYSO crystal as a source. One more special thing about that measurement: there was no shielding or background subtraction applied. The clean spectrum is rather resulting from the fact that I used the LYSO (which is also a scintillator) in conjunction with a Silicon photomultiplier to give me another signal to "gate" my NaI detector. In other words: the NaI signals were only filled into the spectrum when within a 50ns time window there was also a singal from the LYSO scintillator. Here is a picture of this "active source" A few final comments to this method:
1) Number of channels can be easily increased. I synthesized the VHDL code successfully with 16 channels, but my front-end card only supports 4 channels.
2) Due to the logarithmic behavior, there is practically no saturation in the data acquisition. It can digitize signals with very high amplitudes like cosmic muons. (maybe the front-end saturates at some point).
3) The calibration is a bit more difficult, because a linear function will not work. But if the signal shape is known, this can be handled.
4) The time resolution of 5ns can most likely be improved (down to 1ns should be possible with a bit of effort).
Best regards,
Michael