As a fun project, we wanted to develop an application that could cool a surface down to freezing for ice cream mix or to chill a drink. For safety reasons, we didn't want to work with refrigerants, so the alternative was using a solid state Peltier element. These work by creating a temperature differential when power is applied, getting cold on one side, and hot on the other. If let run like this, the plate will eventually reach equilibrium at a medium temperature. However, pumping away the heat with a heatsink/fan connected to the hot side, this allows the cold side to get much colder. We also added intelligence using the PIC16F17146 MCU to allow for the user to set the temperature and to monitor safety-critical systems.
To use, simply set the desired temperature through the UI, then click Start
. The cold plate begins cooling, usually reaching the set temp in less than 5 mins.
The MCU uses a thermistor and look-up table to monitor the temperature of the plate, controlling the Peltier element using bang-bang control (which drives a FET) to keep the plate at the user set temperature. It also monitors the heat sink temperature and it's own internal temperature and adjusts the central fan's RPM to provide adequate heat sink cooling.
The system can pull 200W of power, so we wanted to make sure the plate was safe to use; especially given water could be spilled over the plate/electronics. Since the MCU controls the power to the Peltier element, the MCU can stop power to the Peltier element if it detects an issue, allowing us to implement multiple layers of safety.
First, the MCU is constantly monitoring the current being pulled by the Peltier element via a shunt resistor. If the current being pulled is higher or lower than expected (>10A or nothing is being pulled at all), the MCU turns off the Peltier element. Next, if any of the reported temperatures are higher or lower than allowed, the plate shutdowns to prevent damage. Lastly, the MCU has a watchdog timer making sure nothing stalls the CPU. If the MCU is prevented from tending to safety-critical measurements by a blocking piece of code, the watchdog resets the MCU. Also, there are multiple fuses built into the design as a last resort.
An in-depth guide of the inner-workings of the cold plate has been published in an App Note here
All code, PCB files, schematics, and CAD files for replicating parts of this design are located in the GitHub repo listed below. We published this design not with the intention someone would create their own cold plate, but instead using various aspects of this concept, such as parts of the firmware or the analog interfaces and digital controls into their own design.
Comments