This is a write up about a three way valve controller I decided to build. Project started when we had a Nibe air to water heat pump installed. We left our old oil based system more or less intact, in case it was needed when the temperature got too low for the Nibe. We also made a connection from the oil boiler to the Nibe so we could use it as a external heating system. Nibe has a maximum input temperature of 65 degrees Celsius. So we needed a controller to control the water temperature. First we installed a commercial solution, but for some reason it didn’t close the valve when the maximum temperature of 55 was reached. One solution would of been reverse engineer and fix the controller, but wheres the fun in that. So I decided to build my own.
There are two ways of making the controller and controlling the valve. One way was to do it like in the commercial controller, which had a integrated motor inside of it. Other way was to use an external motor. I chose the latter because it is easier to mount the controller and run wire to the device then it is to design a integrated unit. This way also reduces the effect that heat has to the unit, and this improves the reliability of the whole system.
The motor that I chose was a Belimo 24VAC three way valve motor like the one in the picture. This motor has three wire control, one common, and one wire for each direction. This way of control simplifies the controlling electronics, because all you need is to control the flow of 24VAC to one of the direction control wires. Downside of this way of control is that you don’t have the knowledge of the valves exact position, but for this application it’s not needed.
Controlling AC with a MCU is easiest with an optocoupled TRIAC. I chose MOC3032 optocoupler. This device is not designed to control the load directly but with aid of a slave triac. I decided to test running the motor directly, it worked and didn’t heat up too much. So I decided to design the schematic and PCB controlling the load directly, but this was for the prototype only. The triac requires a snubber circuit connected parallel to it, otherwise it will not stop the motor when the led inside of it is shut off.
After designing the PCB I ordered 10 of them from Itead. When they arrived I assembled a test board to help with the software development. Unfortunately there was a mistake on the board, for some reason the switch mode power supply would only give out ~0.6 volts. I started to check the board and removed the MCU, after that I noticed that VCC was shorted to ground. And the reason for the shor was that the display controller TLC 59282 was fried. I fried becaus I made a mistake with the schematic. I somehow got the VCC and GND pins mixed and it caused the IC to burn. So way to fix this was to cut the connection from the VCC to ground and vice versa. And finally use jumpers to fix the mistake.
Next part will focus on the software side of things.