Close

Digital temperature compensation

A project log for Pomelo: Gamma Spectroscopy Module

A complete low-power gamma ray spectrometer that can be used by itself or integrated into other projects

mihaicuciucmihai.cuciuc 05/09/2024 at 05:130 Comments

The gain of silicon photomultipliers (SiPMs) increases with applied voltage and decreases with temperature. Hamamatsu has an informative write-up on this topic.

This presents an opportunity to compensate for temperature changes by tuning the bias voltage, with some circuits doing this directly in hardware, by having a thermistor in the voltage feedback loop of the bias supply. An example of this is in Figure 8 in the MAX1932 datasheet.

I decided to go with a digital temperature sensor and tweak the bias voltage in firmware. The temperature sensor is placed directly underneath the SiPM on the detector PCB to get a reading as close as possible to the sensor.

A TMP126 chip in the middle of the detector PCB provides very accurate temperature readings. The SiPM is directly underneath it, on the other side of the PCB.

I ran a few tests to see how temperature and bias voltage influence the spectra from a Na-22 source, with the following animated results.

Increasing temperature of the SiPM decreases its gain, so the gamma peaks shift to lower values in the spectrum. This can really mess up the long-term stability of the detector and make gamma peaks disappear into blobs. Temperature is in degrees Celsius.

Higher bias voltage increases the SiPM gain.

From this data I derived a voltage compensation coefficient and managed to keep the gain fairly stable, with a loop that runs every 5 seconds and updates the bias voltage. While it’s not great, it’s much better than without it.

Relative gain shift with fixed bias voltage (orange) and with a varying bias voltage calculated from the temperature value.

The difference that this makes is in keeping an overall better energy resolution for the system at varying temperatures.

Left plot has data taken between 29 and 40 degrees Celsius, without temperature compensation loop running. Plot on the right is taken between 24 and 40 degrees Celsius, but with the temperature compensation enabled and results in a better energy resolution.

Discussions