Pages: 1 [2]   Go Down
Author Topic: What to use to power a Water Pump  (Read 1818 times)
0 Members and 1 Guest are viewing this topic.
Anaheim CA.
Offline Offline
Faraday Member
**
Karma: 47
Posts: 2891
...
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

The pump in question can possibly be affected by the pwm rate and may exhibit some strange behavior if the PWM signal is a multiple of the motor control frequency. In a brushless motor the drive to the motor is ac. I noticed that the flow rate is variable and I don't think the motor controller would "Like" to see chopped dc at a rate close to the drive signal to the motor. Other than that one minor point I see no reason why you couldn't use a PWM control for motor speed. Computers CPU fans do it quite well. I do think however that the PWM rate needs to be higher than the motor drive rate or period to avoid interactions. Try it and see... I have little experience with small brushless motors used in CPU fans beyond changing them out when they fail. Most failures are due to poor quality material used for the bearings (bushings) in the motor... But some go dead and a few I have used failed repeatedly. PWM Control or bad luck...? I never figured out which but that question has always bothered me... IMO
I don't in theory see any reason why not but I haven't tried it to see with anything I have ever built.

Doc
Logged

--> WA7EMS <--
“The solution of every problem is another problem.” -Johann Wolfgang von Goethe
I do answer technical questions PM'd to me with whatever is in my clipboard

Dallas, Texas
Offline Offline
God Member
*****
Karma: 31
Posts: 887
Old, decrepit curmugeon
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Yes logic level, means that the gate will respond when at 5V.

Yes, I believe a MOSFET is the most effective method, I do not like relays and if the motor for the pump is DC, you can use a MOSFET with PWM to adjust the power of the motor (but it is not a linear relationship), which you can't do with a relay.

I had decided on using a MOSFET over a relay, I was trying to be even more general than that. Keep in mind I'm clueless about most of this stuff.

So do I have to specifically get a MOSFET that supports PWM right? Any model suggestions?

Also what do you mean by it is not a linear relationship? How accurate do you think I can get? How could I improve this?

Sorry for so many questions, I just need to be pointed in the right direction here and I can take it from there.


No, any MOSFET will work with a PWM technique, but the motor itself might not.  By linear, I was referencing the fact that at 50% (AnalogWrite(2.5) the there might not be enough voltage for the motor to work at all.  The range of control may be much less.

Here is an Application Note, that may help you for this project; the note itself is for PIC's, but the techniques should be the same

http://ww1.microchip.com/downloads/en/appnotes/00857a.pdf
Logged

New true random number library available at: http://code.google.com/p/avr-hardware-random-number-generation/

Current version 1.0.1

Offline Offline
Newbie
*
Karma: 0
Posts: 29
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset


No, any MOSFET will work with a PWM technique, but the motor itself might not.  By linear, I was referencing the fact that at 50% (AnalogWrite(2.5) the there might not be enough voltage for the motor to work at all.  The range of control may be much less.

Okay I see. So this would be just a motor issue, some motors won't run at 25%, they'll only run at 50% if I understand correctly. But if I made the proper adjustments in my code, I could start at a different value, that value being whatever I determine to be the minimum to run my motor at all. I only need 4 levels.

Here is an Application Note, that may help you for this project; the note itself is for PIC's, but the techniques should be the same

http://ww1.microchip.com/downloads/en/appnotes/00857a.pdf

I'll check it out, thanks!

Also, quick capacitor question, I can get a 100v capacitor right? I'm assuming the voltage rating is just a maximum.

Logged

Anaheim CA.
Offline Offline
Faraday Member
**
Karma: 47
Posts: 2891
...
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
Yeah, but I'm thinking though, if I do that, why use PWM in the first place. It was suggested here, I actually hadn't though of it, I planned to do analog straight to the mosfet then to the motor.
the reason for using PWM instead of DC control (a variable linear regulator) is that a linear regulator or variable voltage power supply dissipates the "Unwanted" power as heat. So at low flow rates the DC power wasted will make the control element quite hot. A PWM power supply only has two states off and on, power is controlled by the period of the on signal as it gets narrower in relation to the off period the lower it's "Average voltage" is and the lower the speed the motor runs at.

Doc
Logged

--> WA7EMS <--
“The solution of every problem is another problem.” -Johann Wolfgang von Goethe
I do answer technical questions PM'd to me with whatever is in my clipboard

Offline Offline
Newbie
*
Karma: 0
Posts: 29
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

the reason for using PWM instead of DC control (a variable linear regulator) is that a linear regulator or variable voltage power supply dissipates the "Unwanted" power as heat. So at low flow rates the DC power wasted will make the control element quite hot. A PWM power supply only has two states off and on, power is controlled by the period of the on signal as it gets narrower in relation to the off period the lower it's "Average voltage" is and the lower the speed the motor runs at.

I think I'm missing something here. Can't I put out a low voltage directly from the Arduino with an analog pin? Nothing should be wasted in that case.

Or does the mosfet only do on/off? That would make sense, if it does that it'd work with PWM but not a lower incoming voltage.

So I'm thinking PWM -> mosfet -> capacitor (smooth it out) -> motor.
Logged

Anaheim CA.
Offline Offline
Faraday Member
**
Karma: 47
Posts: 2891
...
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Well, Yes you could put out a low voltage to a driver transistor. But then the voltage would be continuously "dropped" across the transistor so the voltage 'dropped' times the current being drawn by the motor is the power lost in the transistor. PWM gets around this fact be lowering the time the transistor is on or off to regulate the voltage that is supplied to the load, For a 10% power out simply turn on the transistor on 10% of the time. The only power wasted in the regulator is in transition from on to off and from off to on and a small part of the energy required to flip the field off and on, similar to hysteresis losses in regular mains transformers as heat. So at higher powers PWM makes a very effective means of power control. I hope this helps to explain how it is better as well as why I had some reservations about the PWM frequency interacting with the control loop in the brushless motor controller (driver).

Doc
Logged

--> WA7EMS <--
“The solution of every problem is another problem.” -Johann Wolfgang von Goethe
I do answer technical questions PM'd to me with whatever is in my clipboard

Offline Offline
Newbie
*
Karma: 0
Posts: 29
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I'm not 100% getting it yet, but I'll figure it out.

So PWM is the best way. Now is PWM -> mosfet -> capacitor (smooth it out) -> motor ideal do you think?
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 6
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I think I'm missing something here. Can't I put out a low voltage directly from the Arduino with an analog pin? Nothing should be wasted in that case.

Perhaps part of the problem is we're not being exacting with language.

  • There isn't an analog out (AO) pin on the Arduino.
  • There are only digital outputs (DO).
  • Some of the DOs are PWM.
  • A PWM DO can mimic an AO in some cases.
  • To further confuse things, analogWrite() is used to set the PWM rate.

Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 29
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Perhaps part of the problem is we're not being exacting with language.

  • There isn't an analog out (AO) pin on the Arduino.
  • There are only digital outputs (DO).
  • Some of the DOs are PWM.
  • A PWM DO can mimic an AO in some cases.
  • To further confuse things, analogWrite() is used to set the PWM rate.

Ahh. I see. Didn't realize that. Thanks!
Logged

United Kingdom
Offline Offline
Tesla Member
***
Karma: 224
Posts: 6614
Hofstadter's Law: It always takes longer than you expect, even when you take into account Hofstadter's Law.
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

I'm not 100% getting it yet, but I'll figure it out.

So PWM is the best way. Now is PWM -> mosfet -> capacitor (smooth it out) -> motor ideal do you think?


You can't use just a capacitor to smooth out the PWM power to the motor, you need an inductor too. [If you decided to use a linear circuit (the sort that wastes power and gets hot, see earlier post) to drive the motor, then you could use a resistor and capacitor to smooth out the PWM direct fro the output pin, followed by an amplifier to translate the 0-5V signal to 0-12V and provide more current.]

The minimum value of the inductor you should use is about V/(I*f) where V is the supply voltage (12V), I is the allowable current ripple (say 20% of the motor current so 0.12A) and f is the PWM frequency (a little under 500Hz for an Arduino). That comes to about 200mH. The inductor must be able to take the motor current without saturating. You will find it difficult to source an inductor with these specifications, and it would be huge. However, if you increase the PWM frequency to around 60KHz then you only need about 3mH, which is much easier to obtain, e.g. http://uk.farnell.com/murata-power-solutions/1433507c/inductor-3-3mh-700ma-10-0-8mhz/dp/2112803.

Logged

Formal verification of safety-critical software, software development, and electronic design and prototyping. See http://www.eschertech.com. Please do not ask for unpaid help via PM, use the forum.

Pages: 1 [2]   Go Up
Jump to: