It looks like we're going to work backwards here, because now we're going to look at the PWM generator. I'm actually just going to discuss my first (bad) idea here as best I can and revisit this part one or more times in the future. Unfortunately I can't recall all the details of my initial circuit, only that it didn't work well and why. This post won't have many pictures and will be mostly anecdotal.
My first thought was to use a 555 timer. And why not? There are tons of PWM application examples in datasheets and around the internet. However, most of these circuits are just variations on the astable multivibrator circuit where a potentiometer is used to vary the duty cycle. We do have a start though.
 |
| Astable Multivibrator from TI NE555 datasheet |
Our temperature sensor will be providing us a control voltage, so the pot is out. The "Control Voltage" (or "CV" or "CONT" on some drawings) looks interesting though. Perhaps I can just throw my sensor output in there and see what happens.
Before going any farther I'll mention a little research that led me astray. I had wanted to find an appropriate PWM frequency so I searched the internet for something like "atx fan pwm". I found several articles by hobbyists as well as some white papers by control IC vendors on the subject. It quickly seemed apparent that something around 20kHz was common, as it was outside the audible spectrum. I'll fast forward to the end and tell you that higher frequencies only works on 4-wire fans, and that your typical 3-wire fans need something lower, like 30-200Hz. But that wasn't the only reason my 555 circuit sucked.
So I tuned my 555 circuit for close to 20kHz, fed my sensor voltage (we'll discuss it later, let's just pretend it works for now) into the "Control Voltage" pin of the 555 and powered it up. I'll apologize for not having oscilloscope captures before describing the waveforms...... sorry.
First of all, rather than spinning, the fan kinda kicked a little and gave off a high pitched squeal. Blasting the the sensor (again, a diode) with a heat gun illuminated another problem. I mocked up a 555 circuit in LTSPICE to show what happened:
This one I kinda saw coming. The duty cycle is changed by leaving the off time constant and just extending the on time. And as a consequence, the frequency changes too. All around, not a good plan.
We'll try another circuit in the next part.
 |
| Testing with a heat gun. Probably shouldn't leave it on the papers. |