Electronic – Driving Permanent Magnet DC Motor via PWM

acdc motorpower supplypwmrectifier

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 

ADDED:

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..

Best Answer

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.