Getting temperature values from a digital or analog temperature sensor on an arduino is fairly simple.
Arduino pwm fan controller.
I o pin 9 on the arduino board is directly connected to fan control input and by reading the state of 3 push buttons on pins 2 3 4 different pwm values are sent to the fan.
It is efficient because the pass transistor is used as a switch.
Many projects that use a temp sensor but never the most simple thing.
As long as the cooling is on the red led is on when not cooling the green led is on.
The frequency values can be adjusted between 125 hz 8 mhz as well as a variable duty cycle.
The ultimate project is to control the fan based on temperature.
I simply want to control a 4 wired fan or maybe several with an arduino board.
The system uses a temperature sensor to control four fans that are driven by an arduino controller.
A low frequency pulse width modulation pwm signal whose duty cycle is varied to adjust the fan s speed is used.
4 wired fan control pwm control a pwm fan with arduino.
The pc communicates with the arduino via the serial port.
On the pcb there is a 5 12v input for the fan supply.
Firstly make sure that you fan s are pwm controller you can check this by making sure that your fan connector has 4 wires.
There is some information out there.
Pwm fan controller sketch can be downloaded here.
Temperature based fan speed control monitoring with arduino.
The pwm controller accepts the control signal and adjusts the duty cycle of the pwm signal according to the requirements.
So after that no electricity flows through it turning the fan off.
For this reason i used arduinos d6 pin pwm.
How to connect it.
I had 5 laying around and thought mine as well give it a shot.
I have been wondering about this project and how to control my 4 pin pwm fans.
There is a jumper for switching the power supply from arduino or the 12v input.
It then becomes a matter of telling the fan pwm to raise or lower the speed based on the temperature.
An inexpensive single small pass transistor like 2n222 or bd139 can be used here.
The temperature and fan speed are reported through a 8 digit 7 segment display fitted on a rack mounted aluminium bar.
Design schematic diagram is shown next.
The system works by an application running on the pc checking the cpu temperature and checking whether to speed up or slow down the fans.
The arduino throttles the fans using pid logic and drives them through pwm.
Pwm waves with various duty cycle are shown in the figure below.
The blue led seen on the prototype board is just for verifying correct circuit.