Home About Controller Schematics Hardware Downloads

Below is a the schematic diagram for the Fan Controller board. Click on the image for a larger version suitable for printing.

The core of the controller is the 16F877 PIC micro controller. This micro controller has 8K Flash program memory, 368 bytes data memory, 256 bytes of EEPROM memory, 8 channel 10 bit A/D converters, and up to 20MHz clock speed. I used the 4MHz version which turned out to be sufficient.

On the top right are the temperature sensors - LM35s. The temperatures are converted to voltages which are fed into the A/D converters.

Below that is the switching circuit for the PWM consisting of IRF510 MOSFET transistors. MOSFETs are used as they are far more efficient in switching circuits than bipolar transistors; they have a much higher slew rate and low on resistance. The diodes D2,D3,D4 are choke diodes which allow induced voltages from the inductive loads (fans are inductive loads) to be dissipated into the supply rail. The resistors R7,R8 and R9 are for measuring current. The voltage across these resistors are connected to the PIC's A/D converters.

Shown at the bottom of the diagram is the RS232 level converter.

Datasheets for most of the components are available in the downloads section.

Date Comment
2/8/2004 I recently had a look at the prototype board I made and noticed that their isn't a 2.6V zener reference in the circuit. Its actually a some kind of precision variable voltage reference that I used while prototyping the circuit to get a decent reference voltage. I don't even know if you get 2.6V zeners! If you are building this circuit bear this in mind. You may want to use a different (better) voltage reference circuit. The reference voltage of 2.6V is programmed in the windows application so technically you could use any reference and make the modifications in the application.  
3/5/2004 There is an error on the schematic regarding the voltage reference D1. The actual implementation uses a 2.6V reference as the PIC micro A/D converters don't work with a voltage reference less than 2.5V. Unfortunately this reduces the accuracy of the readings as only a portion of the 10 bit A/D range is actually used. This is an unfortunate limitation on the PIC micro controller. 
3/5/2002 I received an email from Dean Claxton about the IRF510 MOSFET. The IRF510 that I'm using in my design is actually not 100% suitable due to the logic level voltages that I'm using. At 5V the MOSFET won't be fully saturated and will only switch 1A. In most cases this will be ample, however if you need to switch more current he recommends using an IRL510 (I haven't verified the suitability of this component so you will need to check it out yourselves).
3/5/2002 I have also received requests from some people to allow more fans to be controlled. As you can see in the schematic it is possible to control more than 3 fans, however all the A/D channels are used so if you wanted to add additional fans to the system you won't be able to measure the current usage of those fans.

The other issue is the firmware and the windows application. These will both need to be updated to handle more fans as they are currently hard coded for 3. If you need more fans you can make the changes yourself. I'm not planning on making any changes in the near future. Good Luck!