A Peltier device is a solid-state heat pump that transfers heat from one side to the other. The heat transfer simultaneously reduces the temperature at one side of the device and increases it at the other side, generating in this way a temperature gradient across the sides of the device.


Peltier cooling is not efficient compared to vapor-compression refrigeration, but Peltier devices have the advantage of being small, having a long life, no moving parts, making no noise and being able to switch from cooling to heating.


Here I will show how to take advantage of the arbitrary function generator (AFG) and the fast sampling rate of the NGU401 to characterize a simple Peltier-based cooling/heating system.



Cooling/heating System


The system is made of a Peltier module sandwiched between a heatsink and a temperature sensor board. The temperature sensor board (built for a C. elegans neuroscience lab) uses 4 TI TMP116N temperature sensor, but only the sensor centered in the middle of the Peltier module was used to make the measurements. I cooled the heatsink with a computer fan which was raised with 4 spacers from the table (to allow it to blow air from one side to the other). I used an Espressif ESP32 to read the temperature from the board and transmit it through a virtual serial port to the computer.


The setup looked like this:






I/V Curve tracing


When tracing I/V curves the speed of the sweep can have a major impact in the results. If the sweep causes the device under test (DUT) to raise its temperature, the resulting measurements can be completely different than if the temperature is not affected during the sweep. To avoid raising the temperature the sweep must be "pulsed" or performed in a very short time to avoid injecting too much heat to the DUT.


To compare the effect of temperature in the I/V curve I performed a stepped constant voltage (CV) sweep and a pulsed sweep, while simultaneously recording the temperature. The CV sweep was made of 21 steps of 0.5 V each from -5 V to +5 V. Steps of 2 m and 3 m (at the initial step) were given to the system so as to make measurements in a roughly temperature steady state condition. Measurements were made with the number of power line cycles (NPLC) set to 1 to reduce mains noise. For the pulsed sweep I generated 1 ms pulses (the minimum duration supported by the instrument) followed rests of 1 s between pulses. Measurements were made at 500 ksps using the fast logging (FastLog) feature of the instrument.


The next images show the measured raw data:




To generate the I/V plot I averaged the 2 last seconds at each step of the CV sweep, and the 0.5 ms mid section of each pulse of the pulsed sweep. As both curves looked very close to straight lines, I also plotted how their resistance varied at different voltages.




The plots show that as long as the temperature at both sides of the Peltier module are ambient temperature the Peltier module behaves like a ~2.5 ohm resistor. On the other side, when there is a temperature gradient across the Peltier module, the resistance is always higher than when there is no gradient, no matter if the measured side of the Peltier module is hotter or colder than the ambient temperature.



Efficiency measurement


The simplest and inexpensive way to drive a Peltier module is with PWM signal, but it is usually advised against when efficiency is relevant. A recent Texas instrument application note (Driving a Peltier Element (TEC): Efficiency and Aging), measured the ability of a Peltier to generate a temperature gradient when driven with 20 kHz, 50% duty cycle PWM current, compared to constant current. One limitation of TI's tests is that they used only a duty cycle of 50%, so I was wondering how different duty cycles would affect the efficiency.


I decided to use a relatively low PWM frequency of 100 Hz, and performed a sweep from 100 % duty cycle (inverted polarity), to 0% duty cycle, to 100 % (non-inverted polarity). For this, I used the SMU AFG functionality, and FastLog at 500 ksps. Instead of storing into memory the measured I/V values, I measured the average delivered power for every 125.000 (250 ms) measurements. Just like in the previous CV sweep, the first step here had a duration of 3 min, while the rest only 2 min.



The efficiency plot was then generated averaging the last 2 seconds at each step, of both, the CV sweep and the PWM sweep.



As expected, at duty cycles of 0% and 100%, the results are identical, since the signals are identical. At very low power, the difference seems to be the biggest, for instance at ~70 mW constant voltage (CV) can cool the temperature ~3.5 ºC, while at ~980 mW PWM the temperature drops only ~2.6 ºC. When heating, CV is also much more efficient than PWM, but the difference tends to be lower than when cooling. For heating and cooling, as the duty cycle reach 100%, the differences between CV and PWM shrink. It is also interesting to see how much easier is to heat than to cool, lets take look at what can be achieved with a power budget of 5 W. When cooling the temperature was reduced ~23.1 ºC (CV) and ~14.8 ºC (PWM), while when heating, the temperature increased ~37.2 ºC (CV) and ~30.6 ºC (PWM).