PDA

View Full Version : Identifying PWM Fans


WmTasker
04/03/2013, 03:49 AM
I have an electronics salvage warehouse in my town and they have thousands of 12Vdc fans. They sell them for only a few dollars. My problem is I need to figure out which ones could be PWM. I know that PWM can be either 3 or 4 wire. Is there a way I can use a multimeter to test the fans to determine if they are PWM? Is there any other way to tell if they are PWM?

Here are a few 3 wire ones I was looking at?
http://i841.photobucket.com/albums/zz336/wmtasker1016/JBJ%2028g%20Nanocube/7E27DB84-A68C-47B8-8976-FBD9EC82C395-1950-0000029AF77BA63C.jpg

http://i841.photobucket.com/albums/zz336/wmtasker1016/JBJ%2028g%20Nanocube/8A7A8F2A-3CEE-4FCF-A20D-E477C2F8D1F8-1950-0000029AFF879E32.jpg

Gorgok
04/03/2013, 04:33 AM
Not really sure of a way to tell if a wire is for pwm... i don't think i've ever seen a 3 wire pwm fan, only 4 wire ones. But that is not the point.

What you can use the multimeter on is the 3rd wire while spinning the fan, measuring for Hz. If it gives a reading its a speed sensor =D.

Eud
04/03/2013, 09:20 AM
I always thought the PWM fans were 4 wire.

WmTasker
04/03/2013, 09:32 AM
I always thought the PWM fans were 4 wire.

That seems to be what everyone is saying but I saw on another forum that they were talking about 3 wires.

sfsuphysics
04/03/2013, 09:56 AM
Well you COULD use only 3 wires with a PWM fan, however PWM fans are 4 wire with 2 wires being power, 1 being PWM and 1 being a speed wire (measures how fast it's spinning). 3 wire fans are the same way without the PWM, basically it's used as a warning since if your fan dies very often you overheat your CPU or whatever it's cooling so it wants an alert if it ever dies.

IIRC, you can control any DC fan via PWM, however it requires a few more components to make it work.

WmTasker
04/03/2013, 10:14 AM
Well you COULD use only 3 wires with a PWM fan, however PWM fans are 4 wire with 2 wires being power, 1 being PWM and 1 being a speed wire (measures how fast it's spinning). 3 wire fans are the same way without the PWM, basically it's used as a warning since if your fan dies very often you overheat your CPU or whatever it's cooling so it wants an alert if it ever dies.

IIRC, you can control any DC fan via PWM, however it requires a few more components to make it work.

When you say turn any fan into PWM, are you thinking something like this?

http://i841.photobucket.com/albums/zz336/wmtasker1016/JBJ%2028g%20Nanocube/4D8820F8-4F45-44D9-810D-FFB414DEAC47-2772-000003DAB00F05A6.jpg

der_wille_zur_macht
04/03/2013, 10:22 AM
That will work (assuming pin 47 is a PWM output) but depending on the fan it may be really noisy. I'm guessing in that design the idea is to have the Arduino monitor pin 44 to determine if the fan has failed.

der_wille_zur_macht
04/03/2013, 10:24 AM
Also, you could do that design with any 2-wire fan, and just not implement the monitoring on pin 44. Instead of monitoring fan speed, you could wire a thermal sensor to the Arduino, on whatever device you're trying to cool, and determine the fan's effectiveness (or if it's failed) that way.

Play with the fans you get at different speeds, starting and stopping them, etc- cheap used 12v fans tend to be a mixed bag in terms of reliability.

WmTasker
04/03/2013, 10:34 AM
This is on a Arduino Mega 2560 board. What I am understanding from where I got that schematic, is that pin 44 is the PWM controler and pin 47 is just a digital on/off switch.

Edit: Is there a schematic around here for wiring a normal 2 or 3 wire fan to a PWM circuit?

Kawi9_cf
04/03/2013, 10:35 AM
If anyone gets that circuit to work I would be very interested I have not been able to make it work.

der_wille_zur_macht
04/03/2013, 11:07 AM
Edit: Is there a schematic around here for wiring a normal 2 or 3 wire fan to a PWM circuit?

That IS the schematic. Connect your Arduino's favorite PWM pin to the base of the transistor with the resistor in series. Connect the fan's +V wire (red) to the 12v DC supply, and connect the fan's ground (black) to the transistor's collector.

If the fan has a third wire, cap it off and forget it exists.

The Arduino will now switch the transistor according to the analogwrite value you put on that pin, and it'll PWM the fan at that duty cycle.

sfsuphysics
04/03/2013, 12:37 PM
Here's another diagram I found on an overclocker (computer) site.

This is for only 2 wire fans. Doesn't have a diode but does have an extra transitor, and it moves the resistor to the fan side of things.
http://www.overclockers.com/forums/picture.php?albumid=395&pictureid=2336

That said unless you're trying to save every penny possible, you can get PWM fans new for less than $10. And the fans posted looks like they came out of that box of old computer parts you keep around never wanting to throw away anything because you might need it... but probably shouldn't use it :D

der_wille_zur_macht
04/03/2013, 01:37 PM
Make sure you understand the original intent of a given schematic. The "PWM output from mobo" signal in that schematic likely indicated connection to something other than a raw pin on a processor. Pins on the AVR used in the Arduino need a base load resistor between them and a transistor (as shown in the earlier schematic) otherwise when it goes high it'll essentially be a short to ground and will burn up the AVR.

Also it's common for this application to not indicate a flyback diode (the IN4001 in the first schematic) but any time you're feeding a square wave or sudden on/off to an inductive load like a motor (or large relay) it's probably a good idea.

sfsuphysics
04/03/2013, 01:58 PM
Good point, I know on a motherboard there's a single pin which is the PWM output, didn't occur to me there could be additional circuitry "hidden" before the pin.

WmTasker
04/03/2013, 02:32 PM
My local radio shack doesn't carry the transistor BC549C. Is there another one than can be used in its place that radio shack might have?

der_wille_zur_macht
04/03/2013, 02:57 PM
The transistors in both of these circuits are BJT NPN transistors. Just about any NPN transistor will work, assuming it has the power capability for the current your fan will draw. Find out what current you need to support, then look for an NPN transistor that has a rating at least twice that.

I would be surprised if your ratshack didn't have the TIP31 mentioned in the other schematic.

WmTasker
04/03/2013, 03:09 PM
I found this one at Radio Shack. The specs say it Max rate is 3A @ 40W. I would think at would be enough for a Fan that is 12vdc and most I have seen are less than 100mA.

http://www.radioshack.com/product/index.jsp?productId=2062610#tabsetBasic

WmTasker
04/03/2013, 03:15 PM
One Last thought. I wired my LDD-700 for dimming, the the LDD Vin- has the GRD from both the Arduino and the 48VDC power supply together. If I wire the fan like the schematic states above, then I will have the GRD for the Arduino, 48VDC PS and the 12VDC PS all connected. Is this OK?

Eud
04/03/2013, 03:59 PM
One Last thought. I wired my LDD-700 for dimming, the the LDD Vin- has the GRD from both the Arduino and the 48VDC power supply together. If I wire the fan like the schematic states above, then I will have the GRD for the Arduino, 48VDC PS and the 12VDC PS all connected. Is this OK?

I wired mine that way, and I think it is OK because I think I know how DC power supplies work, but I'm interested in confirmation too.

WmTasker
04/03/2013, 08:01 PM
This is my Arduino project. My brain has been in overdrive for the last week while working on this. I just have to finish my fans and my Temperature sensors.

http://i841.photobucket.com/albums/zz336/wmtasker1016/JBJ%2028g%20Nanocube/0B242B1F-3DB7-458C-A8E4-4036084FEF56-2354-0000031B040B3102.jpg

woganaga
04/03/2013, 09:54 PM
My local radio shack doesn't carry the transistor BC549C. Is there another one than can be used in its place that radio shack might have?

A TIP120 will work. Or any logic level MOSFET. Ratshack will usually have tip120s.

I am guessing is probably what you are trying to achieve: http://ruggedcircuits.com/html/circuit_-7.html. If you use a darlington (ie tip120) instead of a mosfet you can lose the pulldown resistor.

Important note: you need a diode across any inductive load.... Google "flyback diode" for more information on why.

Note... the third lead on DC fans usually just delivers a pulse each time the fan rotates so you can tell its running. the pulse lead do not control the fan speed (you can use them to measure the fan speed and change V accordingly)

-d

der_wille_zur_macht
04/04/2013, 05:55 AM
I found this one at Radio Shack. The specs say it Max rate is 3A @ 40W. I would think at would be enough for a Fan that is 12vdc and most I have seen are less than 100mA.

http://www.radioshack.com/product/index.jsp?productId=2062610#tabsetBasic

That will work. Or the TIP120 as woganaga mentioned.

One Last thought. I wired my LDD-700 for dimming, the the LDD Vin- has the GRD from both the Arduino and the 48VDC power supply together. If I wire the fan like the schematic states above, then I will have the GRD for the Arduino, 48VDC PS and the 12VDC PS all connected. Is this OK?

Not only is it OK, it HAS to be that way!

WmTasker
04/05/2013, 06:12 AM
There's something that I don't understand about the Schematic I posted above. Why is all that needed to connect a PWM Fan to an Arduino Board? Shouldn't I just be able to connect Fan+ to the 12DC PS+, the Fan- to both the PS- and the Arduino GRD, then just connect the Fan PWM wire to the Arduino PWM PIN?

der_wille_zur_macht
04/05/2013, 08:21 AM
If you find a fan with PWM control, you can probably do that. These will be 4-wire fans.

Basically, this is the hierarchy of PC fans:

1) Two wire fans have a positive and negative wire, and run at a constant rpm for a given voltage. There's no control or feedback. You can "control" these by either chopping the voltage (with a transistor driven by a PWM signal) or linearly controlling the DC voltage.

2) Three wire fans have a positive and negative wire, and a tach wire. They function EXACTLY the same as a two wire fan, but they have a feedback mechanism (the third wire). The third wire does not let you control the fan. Instead, it provides a pulse (two per RPM) to allow you to determine the speed the fan is running at. You can control these fans the same ways as mentioned above, with the caveat that PWM'ing the power source for a 3 wire fan will mean that the tach signal becomes useless, as the circuit that creates that signal (from a hall sensor on the fan) won't be powered when the PWM signal is low, so you'll "miss" pulses.

3) Four wire fans are just like three wire, but they also have a "PWM" wire. There is a controller inside the fan that interprets the signal on the PWM wire and controls the fan's speed. It's not always a 1:1 duty cycle ratio, often the fan's internal controller will apply some sort of logic depending on the fan's original intended use (i.e. it'll have a minimum cutoff point where it shuts off below a certain duty cycle, or it'll revert to a minimum RPM when the duty cycle drops below a certain point). 4-wire fans were created to allow a PWM signal to control the fan while still retaining the tach signal, and also to allow the fan to carry intelligence as described above. This can be a failsafe mechanism such that the fan will behave in a known state if the controller stops sending a PWM signal, for example. 4-wire fans can also be controlled by PWM'ing the power source, as described for 2-wire fans, with the same caveat that doing so will mean that the tach signal will be useless.

The lowest common denominator is that ALL of these fans can be controlled by PWM'ing the power source, or by directly controlling the input voltage. The real caveats are that PWM'ing the power source can be noisy, as most fans will exhibit "growl" at the PWM frequencies you're likely to be generating from something like an Arduino. The bad thing about the other option, controlling the voltage, is that many of these fans will have a point where they start to behave inconsistently - if you drop the voltage below a given point, they might just stop suddenly after a few minutes, or they might not start if your starting voltage is too low.

There's a whole niche of fan controller circuits out in industry, with all kinds of different features to solve the above problems. You can pretty easily recreate most of these features with a microcontroller, but to me, after a point, it all becomes moot. Most of the applications where highly featured fan control are important are very dynamic environments. Think about the PC on your desk. It's sitting there idling along, and then all of a sudden you tell it to play a big video file, or render some complex graphic, and the processor's thermal load increases tenfold, for a few minutes, then dies back down. The fan needs to needs to be able to adjust to that sort of incredibly dynamic load.

By contrast, most of the things on a fish tank that need cooling are incredibly predictable. LEDs, for instance, will follow the same pattern of warming up, churning out a predictable amount of heat for 8 or 10 hours, then cooling down. To me, this means that it's less important to have a dynamic thermal management approach, because you can design to the known load and then add a failsafe (thermal sensor on the heatsink, or some way to detect the fan has stopped) and be done with it.

Just food for thought...

WmTasker
04/05/2013, 11:00 AM
Actually, all of that made since to me. Thanks

So ..... Since my LEDs are nothing like a computer where the cooling requirements can fluctuate from minute to minute, I should just wire the fans to come on at a set time and then turn off with the lights. The PWM control is really not needed.

Question: Will all DC Fans with 4 wires be a PWM Fan? If not, what else could the four wires be for?

der_wille_zur_macht
04/05/2013, 11:12 AM
So ..... Since my LEDs are nothing like a computer where the cooling requirements can fluctuate from minute to minute, I should just wire the fans to come on at a set time and then turn off with the lights. The PWM control is really not needed.

Personally, that's the approach I would take. If the fans are too strong, get different fans or run them on a 9v wall wart instead of 12v. And especially if you're getting used fans from a junk shop, I'd over-design (i.e. if you think you need one fan, put two in). This way, if there's a fan failure, you have time to notice it before it becomes critical.

Or, if you can, design so you don't need fans. They're noisy, failure prone, and worst of all they tend to be dust magnets. It kind of defeats the purpose of having a fan to cool some electronics device if all the fan ends up doing is blow/suck dust onto said device until the dust is so thick it overheats.

Question: Will all DC Fans with 4 wires be a PWM Fan? If not, what else could the four wires be for?

I suppose there could be exceptions, but that will pretty much always be the case for fans meant for PCs or other computer equipment.

moncapitane
04/05/2013, 12:12 PM
Actually, all of that made since to me. Thanks

So ..... Since my LEDs are nothing like a computer where the cooling requirements can fluctuate from minute to minute, I should just wire the fans to come on at a set time and then turn off with the lights. The PWM control is really not needed.

Question: Will all DC Fans with 4 wires be a PWM Fan? If not, what else could the four wires be for?

Answer: It does appear a fan with 4 wires is PWM, should be red/black/blue/green. Check out the pdf I just found online for additional information which should help:
http://www.formfactors.org/developer%5Cspecs%5C4_Wire_PWM_Spec.pdf

WmTasker
04/06/2013, 01:40 PM
I hope this works

http://i841.photobucket.com/albums/zz336/wmtasker1016/JBJ%2028g%20Nanocube/50EACE3B-7B39-4598-A84C-CDAC109E391D-4880-0000071AD5776F24.jpg

http://i841.photobucket.com/albums/zz336/wmtasker1016/JBJ%2028g%20Nanocube/CD369B4C-1A5E-4B48-A345-2C34A586469C-4880-0000071A99BB5EB3.jpg

WmTasker
04/07/2013, 07:04 PM
So lets turn this from controlling PWM fans with an Arduino board to trying to control a pump.

Is there any such thing as a PWM Power Head that I could control with an Arduino 5V PWM Signal?

Could I use the little circuit I made above to control a power head?

woganaga
04/07/2013, 08:27 PM
So lets turn this from controlling PWM fans with an Arduino board to trying to control a pump.

Is there any such thing as a PWM Power Head that I could control with an Arduino 5V PWM Signal?

Could I use the little circuit I made above to control a power head?

There are tunze powerheads that run DC and are probably controllable this way. You could use a triac to control an ac powerhead (as a switch / not PWM)

Gorgok
04/07/2013, 08:46 PM
Cheapest DC pump from Tunze is still over $230... Not sure if they are pwm controlled or analog controlled.

There is also the Jebao WP-40 which is a cheaper alternative for messing around, at $85 i wouldn't feel nearly as bad poking and prodding it than the equivalent (6105) Tunze pump at $340. This has been dissected and found to have an analog 5V control. Same method for using PWM on the fans would work for this, just at the lower source voltage.

WmTasker
04/10/2013, 05:39 PM
The Fans are working great and with just a $5 I was able to make my two fans PWM controllable.

Now for a new problem ....


I found this thread about my problem (http://www.reefcentral.com/forums/showthread.php?t=1936544).

I am using an Arduino Mega 2560 to control LDD-700s for my LEDs and a 8 channel relay board for my wavemaker and heater. Whenever one of the relays disengages, I get a blink on my fuge LEDs during the day, and my dlsplay LEDs during the night. I'm pretty sure I am having the problem described above.

What can I do to stop it? Will putting a diode across the coils stop it? And if so, what diode do I need and where do I hook it up at. I have this Relay Board (http://www.ebay.com/itm/110983062639?var=410149497719&ssPageName=STRK:MEWNX:IT&_trksid=p3984.m1439.l2649).

Thanks everyone
Billy


Quote:
Originally Posted by Chris27 *
I think you hit the nail right on the head, when relays switch, they create a pulse (emi) down the line, and given that everything is ultimately tied to the same power source, that is most likely the cause to your problem.*

When we design things in the real world (non-hobby), we use shielded cables and /or build filters into the circuits to reduce or eliminate emi, as it can cause some serious issues when you're dealing with sensitive electronics, or precision devices. In your case, a light simply flashes, while it may end the bulb prematurely, it's really not a concern unless you want to further complicate your DIY setup.

Quote:
Originally Posted by der_wille_zur_macht *
If it's buggering your RKL I'd be really nervous, especially if the RKL has control over anything critical (heater? chiller? etc.). Instability with a refugium light might not bother you, but if it causes other issues you're not currently aware of your tank could be at risk.

Quote:
Originally Posted by R2E2 *
Try putting a protection diode across the relay coil.

letoan
11/04/2013, 01:40 AM
Sorry to bring back old thread.

Anyone know if I could connect 5 of the 2-wire fans together? I'm running 1 fan using bc549c now but not sure how to wire multiples.

Gorgok
11/04/2013, 03:10 AM
Red to red, black to black, and enough current from the supply to run them all and you are set.

letoan
11/04/2013, 01:07 PM
Red to red, black to black, and enough current from the supply to run them all and you are set.

Hmm. That's it? Lol, didn't thought of that, I'm keep thinking that I need to put transistor and resistor on each fan.

WmTasker
11/04/2013, 01:57 PM
I have only one little circuit for 3 fans in my canopy. Runs with no problems.

letoan
11/04/2013, 06:09 PM
Was able to powered up 3 fans only and transistor (BC549C) got too hot.

Will the TIP120 do a better job?

WmTasker
11/04/2013, 09:15 PM
the first page, post 21, has some info on tip120. There is also some other good info there also. What is the ratings of the fans and the tip120?

letoan
11/04/2013, 10:01 PM
the first page, post 21, has some info on tip120. There is also some other good info there also. What is the ratings of the fans and the tip120?

I have no idea what's the rating of those fans (they're 12v, 92mm brushless fans that came with Makersled heatsink).

letoan
11/05/2013, 12:52 PM
Tried the tip120, still only 3 fans running, at least the tip120 didn't burn up like the bc549.


NM, working now. All 6 fans running, the molex cable I used to bridge the fans together was bad.

WmTasker
11/05/2013, 03:34 PM
Glad it's working for you. How do you like the MarkersLED heatsink? What are you using to control the LEDs?

letoan
11/05/2013, 06:20 PM
Glad it's working for you. How do you like the MarkersLED heatsink? What are you using to control the LEDs?

MakersLED heatsink is nice in options imo, you can mount fans and other stuffs with out tinkers like heatsinkusa t-slots. The aluminium they use on MakersLED's heatsink seem pretty cheap when comparing it to heatsinkusa. The best thing I like about MakersLED heatsink is you can seal off the LEDs moisture with the included acrylic sheet. Overall I was pretty satisfied with MakersLED, the only I could with for more is more lanes for the LEDs (only 5 lanes with MakersLED).

zachts
11/05/2013, 09:39 PM
If your having heating issues with transistors used on the fans, mount the transistor to your heatsink, that will solve the issue. I used bd138 if memory servs corectly on the controlls for mine (normal 3 wire fans) and it did need a small heatsink to stay cool running about 600mA to the fans, I don't think they would have burned up as I ran them for 8 hours with no heatsink for a test and they didn't shut down but got hot enough I was worried they could start a fire mounted into a canopy so I heatsinked them and they stay cool now.

I needed to add a capacitor to stop the anoying buz they were making but otherwise used the first diagram posted earlier on, with a diode, and the resistor for the base leg. cranking up the arduino to 25khz works too........

letoan
11/05/2013, 10:52 PM
If your having heating issues with transistors used on the fans, mount the transistor to your heatsink, that will solve the issue. I used bd138 if memory servs corectly on the controlls for mine (normal 3 wire fans) and it did need a small heatsink to stay cool running about 600mA to the fans, I don't think they would have burned up as I ran them for 8 hours with no heatsink for a test and they didn't shut down but got hot enough I was worried they could start a fire mounted into a canopy so I heatsinked them and they stay cool now.

I needed to add a capacitor to stop the anoying buz they were making but otherwise used the first diagram posted earlier on, with a diode, and the resistor for the base leg. cranking up the arduino to 25khz works too........

The bc549 was pretty hot, I swapped it out for the tip120 today, only a little warm now.

letoan
11/05/2013, 10:53 PM
What are you using to control the LEDs?

I'm planning to use arduino to control them.