Extremely well written. All I was going to say was that the PWM method of driving a low voltage motor at high voltages allows significantly better torque than normal voltages. Sometimes that can be a real plus in the application, such as when driving a motor who is designed to vibrate with an eccentic cam; they are easier to startup. --Bob At 11:29 AM 6/14/2003 -0400, you wrote: >It isn't very relevant to running a little tiny 10mA motor but IMHO, it is >a mistake to assume that 400 to 2000Hz is a good typical PWM frequency. > >(WARNING: here comes a long explanation :-) > >There are two regimes or modes that PWM can operate in: low frequency and >high frequency. > >Which one you are operating in depends on whether your PWM period is >significantly higher or lower than the motor's inductive-resistive (RL) >time constant, which is L/R (so it is determined by whether your frequency >is much larger or smaller than R/L). If your switching element and wiring >has significant resistance, you need to include this in the R here. > >If the low frequency region, you usually connect the motor to the power >supply during the "ON" time and leave it open circuited (with a flyback >diode) during the "OFF" period. The current waveform in the motor then >looks like a constant current during the ON time and the current very >quickly decays to zero at the beginning of the OFF period and remains zero >for the majority of the OFF time. > >This results in torque pulses being applied to the motor (since torque is >proportional to current). You rely on the mechanical time constant of the >system to smooth out these torque pulses into steady motion. > >In this region of operation, your main concern is that you do not want so >low a PWM frequency that you cause mechanical vibration and you don't want >so high a frequency that it becomes very audible and annoying. > >The average motor current equals the average battery current and the >applied torque (at a fixed motor RPM) is a linear function of the PWM duty >percent. > >The motor output power is average current times back EMF (motor open >circuit voltage as it spins and acts like a generator). System input >power is average current times battery voltage. Roughly, the motor speed >and therefore EMF will go up linearly with duty percent, so you can have a >very inefficient situation in this PWM region. Consider a situation where >the motor EMF is only 1 volt and your supply voltage is 10 volts (PWM duty >of about 10%). This means that your system will only be 10% efficient. The >extra power is lost in I^2*R losses in the motor winding resistance, which >is NOT Iavg^2*R but is actually the average(I^2)*R, which is much higher >since your current consists of very large pulses of short duration. > >The other mode of PWM operation is high speed mode, where your PWM period >is so short that the RL time constant tends to keep the motor current >constant during each PWM cycle. Here, you connect the motor to the supply >during the ON time but SHORT it during the OFF time. > >This rubs a lot of people the wrong way because they realize that normally, >shorting a motor causes breaking (the back EMF acts to put current through >in the direction that causes torque opposite the direction of rotation). >However, what they don't realize is that when you suddenly short a motor, >you actually get positive torque for a very short period of time (due to >the stored energy in the inductance being used very efficiently to drive >the motor) followed by breaking. If you are using a high enough PWM >frequency, then the breaking never happens (unless you are at a lower PWM >duty than you should be for the current speed and load torque). > >In the high frequency mode, the motor and PWM switch are being used like a >little buck SMPS (switching power supply) to efficiently convert from the >high supply voltage down to the lower back EMF of the motor. This happens >because the inductor forces a constant current, and so has a high voltage >across it when the supply is connected to the motor. This high voltage >bucks the supply and prevents the current from increasing. Since voltage >times current equals power, this represents power going into the inductor >during the on time, Then, during the off time, the inductor acts like a >little power supply most of that power back to the motor. > >The net result is that there is very little current ripple in the motor so >that things are efficient (Iavg^2 is about equal to average(I^2)) and also >the applied torque is very uniform. > >For typical motors, we will be taking about somewhere around 10kHz as a >typical high frequency PWM, although plenty of motors need 30 or even 60kHz >drive to get well into this region (you usually want less than 30% current >ripple for high efficiency). This is especially true of very high >performance motors for electric flight, for example, which have low >inductance. > >Another plus of this method is that you get the option of breaking as a >free byproduct. If you set the PWM duty to zero, you get full breaking and >anything lower than the equilibrium point that sustains your speed will be >breaking to some extent. This is different than the low-speed method where >you need a separate switching element to do breaking (or at least a >separate control signal). Setting the PWM duty to a lower value than the >equilibrium in low speed operation just causes the motor to slow down due >to the attached load, which might be very light and cause a slow speed >change. This can be a problem for feedback control systems because your >ability to apply torque is highly asymmetrical (you can apply high positive >torque but almost no negative torque). > >The down-side of the high frequency method is that you need to design your >switching circuit very well so that it can switch efficiently at these high >frequencies. As Herbert said, you need to minimize the time spent in >transition. You also still need a flyback diode because you need to prevent >voltage spikes during each transition (voltage spikes are due to the >inductor trying to enforce constant current through a circuit with high >resistance, such as when both switching elements are open). > >Average supply current is now duty percent times motor winding current. In >both PWM methods, if your battery or supply has a significant internal >resistance, you often want to bypass it with large capacitors (that can >handle the ripple current) so that your supply voltage doesn't go up and >down with each current pulse. Even though the high frequency method causes >constant current in the motor, it still draws pulses from the supply. > >Another minor downside is that the equations become slightly more >complicated. Current is now a nonlinear function of duty percent and you >can get situations where peak motor torque is achieved at a PWM duty >percent below 100% and actually drops off above that. In extreme cases >(which only occur when your supply resistance is very high), you might >actually need to take this into account to achieve maximum torque during >acceleration. In other words, a higher PWM duty will always result in a >higher final speed, but just pegging it at 100% and then dropping it down >to the equilibrium PWM duty for your new speed, as you would assume would >give the fastest response, might actually be slower than, say, going to >80%, sliding up to 90% during the acceleration, and then bringing it down >to the new duty. > >When you bypass your power supply with capacitors such that it sees a >constant current, then you get: > >Imotor = d*Vb/(d^2*Rw+Rm) >Ibatt=d*Imotor > >where Imotor is motor winding current, Vb is battery (or supply) open >circuit voltage, Rw is the resistance of the battery (or supply) and all >the wiring connecting it to the circuit. Rm is the resistance of the motor >plus switching element plus any wire between them. > >Note that this becomes the simple linear formula when Rw is much smaller >than Rm (as might be the case with NiMH or NiCd batteries). > >I just went through all of this with a high performance brushless motor >controller design and I managed to get somewhere around 90% efficiency from >battery to load even at 50% duty. It sure took a while to figure it all >out, though! It is also amazing how few people seem to know this, although >I did find one site that explained it well. > >Sean > > > > > > >At 07:11 AM 6/14/2003 -0400, you wrote: >> > > Well, it all depends one what you want to do. You could >> > simply drive the >> > > motor with a 50% duty cycle waveform and probably get an average pretty >> > > close to 1.5V. The one great thing about motors is that they have a very >> > > high inductance, which means they filter incoming pulsed waveforms quite >> > > well. The frequency of operation isn't too critical, I'd say >> > anywhere from >> > > 400Hz to maybe 2000Hz would PROBABLY be OK. >> > > >-- >http://www.piclist.com#nomail Going offline? Don't AutoReply us! >email listserv@mitvma.mit.edu with SET PICList DIGEST in the body --------------- NOTICE 1. This account can accept email & attachments up to 10M in size. 2. Federal Monitors: At request of client, some attachments are encrypted. Please DO NOT delay traffic; please reply with credentials for password. -------------- -- http://www.piclist.com#nomail Going offline? Don't AutoReply us! email listserv@mitvma.mit.edu with SET PICList DIGEST in the body