# Driving Permanent Magnet DC Motor via PWM

SUMMARY:

I am currently trying to finish up a DIY project I've been working on for a while: Building an electric potters wheel. I acquired a treadmill and salvaged quite a few good parts from it, and thought this would be a great way to put it to use. Unfortunately when I got everything together, and after a few tests I committed a terrible crime: I dropped a washer on my MC-60 motor controller board. As you guessed, on my next start-up there was magic smoke everywhere.

So I have all the physical assembly completed, and a good condition treadmill motor without power supply. So I'm venturing into salvaging and building my own, not spending $50-$100 on a new board if I can help it.

I have been doing quite a bit of reading over the past few weeks and came to the conclusion that PWM supply offers the most consistent torque, and this was what I was concerned about. I don't want the thing to be choppy and low torque, so I'm going to do some physical reductions with pulleys/gears to be able to maintain a decent amount of torque on the motor.

I've completed my PWM circuit with the quick help of Netduino isolated with Opto to drive mosfets. Everything seems to be fine, yes I'll have to adjust components to varying voltages as time moves forward.

QUESTION:

I know I don't have to drive this thing with full 90vdc to get the small amount of toque/rpm I need correct? I mean it's a pottery wheel, not a lathe. I figured I might need 30-40vdc max, or is this a bad assumption? Will this drastically lower my torque to an unusable level? I really would like to avoid dealing with 90vdc PWM, that seems like way overkill.

PROPOSAL:

My theory on the power supply is I could simply use a transformer to reduce a 110vac voltage to say ~50vac (or whatever necessary) and then rectify and smooth this resulting DC voltage to a usable limit. Then drive this through the MOSFET, to the "clutch" (which helps further smooth any ripple), to the motor. Am I headed in the right direction or am I under-thinking something here? I just really don't want to waste anymore money on components until I can be certain it's the correct way to go. I also don't want to waste money on a control board that is complete overkill for my needs. All I need is simple on/off with a little bit of speed control, nothing really specific.

Thanks for any help.

Motor Specs:

Permanent Magnet DC Motor

Electrical Rating:
@130vdc  2.5hp  6700rpm 18amps
Continuous Duty  @95vdc 1.5 hp


Just realized it would probably be better to maintain a higher voltage to keep as much torque as I can, and adjust the duty cycle. Rather than adjusting the voltage to say 60vdc and then PWM that..

• PWM is a technique of generating the equivalent of a steady dc voltage - it doesn't enhnace torque characterisitics of DC motors anymore than a simple equivalent DC voltage. On DC motors, fairly simple current monitoring circuits can enhance torque characteristics to an almost constant-speed irrespective of load changes. Apr 28 '13 at 17:02
• Yes sry I was thinking about something else. PWM at 90vdc will maintain better torque than varying the voltage to adjust speed... that's what I was thinking of. Not that it gives you more torque than the equivalent constant source. Apr 28 '13 at 18:29
• You know, if you look up "constant speed DC motor circuits" you might get a fairly simple circuit that gives you a really good torque characterisitic - I've used it on dc motors driving small conveyor belts - the package hits the belt and the motor loses speed (due to the weight) but... hardly at all with the circuit I refer to - is this the type of idea you are looking for? Apr 28 '13 at 18:32
• The speed adjustment isn't as necessary at the moment, a working constant speed circuit could be later modified to allow some form of speed control so yes I probably will take this route over the next few days to see if will be easier/different in many ways. Thx for suggestion. Apr 28 '13 at 21:09

A bunch of issues:

1. Are you sure you have a brushed DC motor? This kind has only two connections. You simply apply voltage and it spins, which is what you are assuming in the rest of your question. All you said is that the motor has permanent magnets and is "DC", which could still leave other possibilities, like a brushless DC motor. Those are a lot more complicated to drive. Those have a lot more than two wires coming out, usually 3 for the drive coils and 5 for the Hall sensors.

2. $50-$100 sounds like the cheapest way to solve this problem unless you value your time at pennies/hour. If this is a brushless DC motor, then you are in over your head.

3. Whether you run the motor from 60 V, 120 V, or something else, that DC power still has to come from somewhere. This is independent of how you might switch it by applying something like PWM, for example. In other words, you still need some kind of power supply.

4. PWM does not somehow supply more consistant torque. PWM is merely a technique for modulating the effective motor voltage while starting with the same DC supply and wasting relatively little power in the process.

Systems that drive motors with PWM also often have speed or position feedback. If the feedback is used to maintain constant motor speed, then the motor can appear to have high torque without running away when the load is removed. However, this is due to the ability to modulate the motor drive and a servo loop with feedback. PWM is one means to modulate the motor drive, but by itself doesn't somehow get more torque from the motor.

5. Since PWM is a technique to present a lower apparent voltage to the motor than the raw DC power supply it is derived from, you should use the highest voltage supply the motor can handle.

The apparent motor drive voltage is the raw DC voltage times the PWM duty cycle. For example, if you start with a 120 V DC supply but the motor only needs 30 V to turn at the speed you want with the load you are going to present it, then a PWM duty cycle of 30V / 120V = 1/4 will do it, assuming the PWM frequency is high enough so that the motor does not react to individual PWM pulses. Let's say the PWM frequency is 25 kHz, which is a common frequency to run motors at. That means the PWM period is 40 µs. To make effective 30 V with 120 V in, you'd pulse the motor on for 10 µs every 40 µs, or 10 µs on and 30 µs off.

6. You say you are concerned about torque, but it appears what you really want is constant speed. If so, a servo loop in the micro that controls the PWM duty cycle to whatever it needs to be to maintain the set speed will give more apparent "torque" than brute force gearing the motor down to the point where whatever load variations you give it won't matter much at the motor.

• The motor has 4 wires, two blue, a black, and red. The blue wires are to connect a thermal breaker. Thus I figured brushed. Didn't take it apart though. I understand the PWM frequencies and voltages to an okay degree, like I said I have that circuit working to my liking. The power supply is the real question, but you have addressed that as well. Thanks for the response, and yes you're right a am concerned with constant speed not torque. I was thinking better torque, more consistent speeds with varying loads. Apr 28 '13 at 20:19
• Another point, you say the \$50-100 solution would be cheapest as far as time spent. Well I consider time learning time very well spent. Plus I did test the MC-60 that came with it and it pulsed very badly at mediocre speeds. I didn't want to have to drive it to max and gear it down like has been discussed, but that might inevitably be a decent route to take. Apr 28 '13 at 20:22

If you want torque you don't need to worry too much about drive voltage : it's the drive current you need to worry about. It's rated at 18 amps; make sure your drive circuitry can handle at least that much current without strain.

Basically, voltage controls speed (at light loads), current controls torque. If the motor is heavily loaded, (close to stall) high drive voltage won't help you; it's more current you need.

Measure the DC resistance of the motor : if it's 2 ohms, you will need to drive at least 36V to pass 18 amps through it at stall : higher voltages will only increase torque if you allow more current (and thus more heating). It's probably about 1 ohm...

Gearing it down via belts or similar is correct : that multiplies the torque for the same current : or allows the same torque at the wheel for less current and higher speed (higher voltage) at the motor - and higher motor efficiency as a plus.

Incidentally I've worked on an industrial potter's wheel in 240V-land : the manufacturers told me they had tried electronic speed controllers and went back to Variacs, finding them much more tolerant to high current abuse from stalling motors. So I'm not surprised you found the original controller unsatisfactory at low speeds. EDIT : these were universal motors; equally happy on AC or DC (because the magnetic field was generated by a coil not a permanent magnet). The Variacs produced variable AC voltage; there was no need to convert to DC (but you would have to, if you wanted to use a Variac with your PM motor)

• Thanks for the helpful response/information! So are you saying they basically used the Variacs to adjust the amount of AC going into the motor drive circuit? Thus adjusting the output DC and motor speed? Apr 29 '13 at 20:27
• Oh yeah, and resistance is a little above 2.. closer to 2.5. Therefore I'm going to need ~45v to hit the current needs at stall. Apr 29 '13 at 20:29
• Before you get carried away trying to get max torque at stall, you should consider what you're actually intending to do with that torque, and the dynamics in play. You intend to spin wet clay, right? Well, does it matter if the wheel instantly spins up, or would it be ok if it took a second or maybe two? When you're not working the clay, the wheel is an essentially inertial load. You might get reasonable responsiveness with much less than the 18A. Also, if your speed controller is capable of 18A, what happens if someone somehow gets caught in the works? Max torque is not always a good thing. May 4 '13 at 1:08
• @justjeff : good question; talk to a potter... that lump of wet clay is subject to rough handling at VERY low speed before you spin it up, before it is balanced. (Otherwise ... heavy wet projectile :-). I was told at uigpottery.co.uk/index.php that a good wheel is one that you can only just hold in stall using most of your strength, without tripping its breaker. If someone gets caught in it, take your foot off the pedal. May 4 '13 at 10:18

Your motor will need more than 30VDC to work (I guess).

You can control it with PWM at 95V.

PWM is actually a rectangular signal, with variable duty cycle.

• 20MHz is not feasible for this type of circuit Apr 28 '13 at 16:59
• I can run the thing from a direct 12v source, it just won't have any torque to drive a belt or gear... And I was reading elsewhere that the MC-60 only output at max around 50vdc because nobody could ever run fast enough to keep up with a full blown 90vdc through the motor. So that's why I ended up saying a lower voltage... this is why I'm here though. Should I just drive it with PWM ~90vdc at like 50% duty cycle? Resulting in ~half the voltage/speed across the motor. Thus maintaining max torque... I was just hoping to avoid such high voltages for cost of component sake really. Apr 28 '13 at 17:30