Fan-controller for the Lavolta BPS305 bench power supply

The Lavolta BPS305 is a cheap bench power supply of Chinese origin. The device comes with a 24 V DC fan, but without any means to control it in any way. The fan will just run the whole time, which is pretty annoying. Because of that, I decided very build a fan-controller using a microcontroller and a sensor to measure the current temperature in the case.

Perfboard design was made with DIYLC. The board only contains an LM7805 to power the microcontroller. It uses a DS18b20 digital temperature sensor (orange trace) to get the current temperature value and then creates a PWM signal for the 12 V PWM case fan (yellow trace).The ready built board. The connector on the right side is for the temperature sensor. The connector on the left side is for the PWM signal of the 12V case fan.This is a cheap adjustable buck converter, which uses the internal 24 V DC of the power supply to switch it down to 12 V, since the fan is a 12 V fan (the only one I could get with a dedicated PWM signal). I used a piece of aluminum to mount the PCB on top of the fan itself.This is the already mounted fan and fan controller.The whole board is powered by 12 V DC from the buck converter above the fan.The yellow/green/blue wire is the DS18b20 temperature sensor, which I placed somewhere near the heatsink of the power-transistors.Done.

I used the avr-libc and avr-gcc to write and compile the code.At first I had a more sophisticated solution in mind. But after a while I decided to go with a simpler if-then-else kind of solution. For communicating with the DS18b20 sensor, I used a 3rd party library.