Author Topic: Measuring the speed of a brushed motor with back EMF  (Read 9786 times)

0 Members and 1 Guest are viewing this topic.

Offline SimonTopic starter

  • Global Moderator
  • *****
  • Posts: 17728
  • Country: gb
  • Did that just blow up? No? might work after all !!
    • Simon's Electronics
Re: Measuring the speed of a brushed motor with back EMF
« Reply #25 on: October 14, 2017, 03:58:24 pm »
You will find larger motors have more armature coils so the counts per rev go up increasing the frequency to sample. It also means looking very carefully at each motor i may use and potentially having o alter a circuit that needs to be pretty universal. I can of course give this a go with a sense resistor and scope and see what I get. Of course this all becomes nightmarish with PWM control and near impossible as I may end up counting my PWM pulses.
 

Online Benta

  • Super Contributor
  • ***
  • Posts: 5839
  • Country: de
Re: Measuring the speed of a brushed motor with back EMF
« Reply #26 on: October 14, 2017, 09:48:26 pm »
Simon, you're overthinking this and making it much more complicated than needed.

You need to go back to the basic model of a PMDC motor, which is in the attached pic.

R is the lumped resistance of armature, brushes etc. L is armature inductance; e is the back EMF from the armature rotating.
It's simple. For dynamic system response, L is negligible compared to the mechanical time constants, but is of course helpful for PWM smoothing.
« Last Edit: October 14, 2017, 09:58:23 pm by Benta »
 

Online Zero999

  • Super Contributor
  • ***
  • Posts: 19345
  • Country: gb
  • 0999
Re: Measuring the speed of a brushed motor with back EMF
« Reply #27 on: October 14, 2017, 10:44:46 pm »
Monitoring the back EMF from a DC motor, is a common way to regulate the speed. Various ICs are available to do this, but none of them for the kind of power level you required. See link below for an example:
http://pe2bz.philpem.me.uk/pdf%20on%20typenumber/I-L/LA5586.pdf
 

Offline SimonTopic starter

  • Global Moderator
  • *****
  • Posts: 17728
  • Country: gb
  • Did that just blow up? No? might work after all !!
    • Simon's Electronics
Re: Measuring the speed of a brushed motor with back EMF
« Reply #28 on: October 15, 2017, 09:03:29 am »
Simon, you're overthinking this and making it much more complicated than needed.

You need to go back to the basic model of a PMDC motor, which is in the attached pic.

R is the lumped resistance of armature, brushes etc. L is armature inductance; e is the back EMF from the armature rotating.
It's simple. For dynamic system response, L is negligible compared to the mechanical time constants, but is of course helpful for PWM smoothing.

Well yes and no. As max_torque pointed out if the motor resistance is low this gets hard, I expect that with a very low resistance the inductance totally dominates so the back emf will always yield a result that is very close to the supply voltage making it hard to pick out changes in speed.
 

Online Benta

  • Super Contributor
  • ***
  • Posts: 5839
  • Country: de
Re: Measuring the speed of a brushed motor with back EMF
« Reply #29 on: October 15, 2017, 11:20:15 am »
This is where your instinct is wrong. Totally dominant is the back EMF and it will tell you the speed quite precisely.
If, for instance, KV is 500, your back EMF will be:
0 V @ 0 rpm
1 V @ 500 rpm
2 V @ 1000 rpm
3 V @ 1500 rpm
and so on.

For practical motors, L is insignificant. Think about it in power terms. If the motor would be mainly inductive, it would'nt deliver any mechanical power.
« Last Edit: October 15, 2017, 06:43:43 pm by Benta »
 

Offline SimonTopic starter

  • Global Moderator
  • *****
  • Posts: 17728
  • Country: gb
  • Did that just blow up? No? might work after all !!
    • Simon's Electronics
Re: Measuring the speed of a brushed motor with back EMF
« Reply #30 on: October 15, 2017, 12:28:53 pm »
Well I shall experiment and see.
 

Offline max_torque

  • Super Contributor
  • ***
  • Posts: 1272
  • Country: gb
    • bitdynamics
Re: Measuring the speed of a brushed motor with back EMF
« Reply #31 on: October 15, 2017, 04:53:36 pm »
As the DC resistance of the motor gets smaller, the smaller the voltage term of I x R becomes, so your PWM applied voltage (the Fwd voltage) actually gets proportionally closer to the back emf.  Hence, the smaller the R, the closer you can get to just considering the speed of the motor to be linearly proportional to the applied PWM duty cycle.

Consider a motor of Kv equal to 1000 rpm/volt and with a DC resistance of 1 ohm.  With a forward voltage of say 12V (50% DC on a 24V supply), and for 1amp current.

Vfwd (voltage applied by pwm to motor) = 12
Vi (the voltage driving the current) = 1  (1 amp x 1 ohm)

Therefore
Vbemf must be 11V, and the motor must be doing 11,000 rpm.  (91.7% of the basic PWM duty applied)


If the motor only had a 100 mOhm resistance, and everything else was the same, then Vi is just 0.1v  (0.1 ohm x 1 amp), Vfwd is unchanged at 12v, so Vbemf is now 11.9V and the motor is therefore doing  11,900 rpm. (99.1% of the basic PWM duty applied)


So, as the resistive component gets smaller, then although you need to measure current more accurately, the error caused by that measurement reduces commensurately!

In fact for a Fan Load, which has a power consumption proportional to the cube of it's speed, you could not even measure current and just estimate the speed from a correction factor to the PWM applied.  Of course, if you want to be able to detect a blocked fan, then you need to measure the current, so you can detect a stalled motor etc
 

Offline SimonTopic starter

  • Global Moderator
  • *****
  • Posts: 17728
  • Country: gb
  • Did that just blow up? No? might work after all !!
    • Simon's Electronics
Re: Measuring the speed of a brushed motor with back EMF
« Reply #32 on: October 15, 2017, 07:02:05 pm »
I have just experimented with a 24V fan that has a 3.5 ohm resistance and uses 2.97A at 24V, easy enough to measure with a meter and confirmed by my power supply in constant current mode, (I figure with mV and 10mA resolution the power supply makes a higher resolution ohm-meter ;))

Indeed with this fan estimating speed was a piece of cake with 10mA resolution which if my measurement range had been 3A would have been a 0.3% resolution. This is less than I'd get with a 10 bit ADC (0.1%) but of course with the time i have oversampling what is a ripply voltage anyway off the current sense resistor would gain plenty of resolution.

I got 5.175mV/rpm

Given that most brushed motors seem to have a 10-20 times start up current I guess that for 12V 20ish A that is 30-60 m-Ohm resistance. Yes I'd want to measure current anyway to protect against potential fan blockage so a current sense resistor will have to go in, a whopping 800uR with a 20mV full scale if i want to keep dissipation down to 0.5W normal running. Would running off a 30mV ADC reference be asking for trouble? I guess I'd have to amplify that result but it's probably a cheaper option than a nice LEM current sensor for £10-12 a pot
« Last Edit: October 15, 2017, 08:19:29 pm by Simon »
 

Offline oldway

  • Super Contributor
  • ***
  • !
  • Posts: 2172
Re: Measuring the speed of a brushed motor with back EMF
« Reply #33 on: October 16, 2017, 12:55:03 pm »
Sincerely, I can not understand !!!!  :palm:

I was already working in 1981 in power electronics and we were making the speed control (thyristor converters) of  independently excited DC motors (same as permanent magnets motors)  using either the electromotive force obtained by performing the U-RxI operation, or using the information of a tacho-generator RE0444 Radio Energie.

Why do you have a problem for obtaining the electromotive force of a DC motor in 2017 ? We already solved this problem in the years 80's....
Nb: with electromotive force, you have easily the RPM information.
 

Offline SimonTopic starter

  • Global Moderator
  • *****
  • Posts: 17728
  • Country: gb
  • Did that just blow up? No? might work after all !!
    • Simon's Electronics
Re: Measuring the speed of a brushed motor with back EMF
« Reply #34 on: October 16, 2017, 12:57:37 pm »
Well I'm sorry "old" man but i'm a newcomer, I have much to learn. As I explained above, gen the help received and my experiments I too now understand this and hopefully how to achieve it.
 

Offline oldway

  • Super Contributor
  • ***
  • !
  • Posts: 2172
Re: Measuring the speed of a brushed motor with back EMF
« Reply #35 on: October 16, 2017, 04:18:33 pm »
That is so easy !!!!

I have already explained how to do it, but it does not seem to interest you.

The voltage U is the voltage at the terminals of the motor duly filtered by a low-pass circuit to eliminate the AC component of your PWM.

It is necessary to know the current of the motor.
It does not matter how you measure that current. (shunt + amplifier, Hall effect sensor, ...)

It is then necessary to subtract a fraction of this current information from U to perform the operation E (electromotive force) = U - R x I

You subtract it using an operational amplifier.

The number of RPM's is proportional to E.
 

Offline SimonTopic starter

  • Global Moderator
  • *****
  • Posts: 17728
  • Country: gb
  • Did that just blow up? No? might work after all !!
    • Simon's Electronics
Re: Measuring the speed of a brushed motor with back EMF
« Reply #36 on: October 16, 2017, 04:33:51 pm »
Yes and i have got it now thank you and will be using a micro controller.
 

Offline oldway

  • Super Contributor
  • ***
  • !
  • Posts: 2172
Re: Measuring the speed of a brushed motor with back EMF
« Reply #37 on: October 16, 2017, 04:42:46 pm »
With this method, speed control accuracy of 1 to 2% was achieved and with a tach generator, an accuracy of 0.1%.

This gives an idea of the accuracy of the speed measurement. (1 to 2% accuracy)
 

Offline SimonTopic starter

  • Global Moderator
  • *****
  • Posts: 17728
  • Country: gb
  • Did that just blow up? No? might work after all !!
    • Simon's Electronics
Re: Measuring the speed of a brushed motor with back EMF
« Reply #38 on: October 16, 2017, 04:44:52 pm »
Yes 1-2% is fine, the current sense resistor has a tolerance of 1% to start with so really if I can read the speed out with 5% accuracy I'd be happy.
 

Online Benta

  • Super Contributor
  • ***
  • Posts: 5839
  • Country: de
Re: Measuring the speed of a brushed motor with back EMF
« Reply #39 on: October 16, 2017, 05:42:36 pm »
Quote
It is necessary to know the current of the motor.

I disagree. There's no need to know the current for accurate speed control.
It is necessary for an analog control loop, where you have no option to measure the pure back EMF and thus have to compensate for the ohmic losses.
But for a smarter loop, where you have the option of having small time breaks in the drive voltage, measuring pure back EMF is possible. The advantage is of course that you do not need to know the internal motor resistance.

The drive current is naturally interesting for other reasons (overload, torque etc.).
 

Offline SimonTopic starter

  • Global Moderator
  • *****
  • Posts: 17728
  • Country: gb
  • Did that just blow up? No? might work after all !!
    • Simon's Electronics
Re: Measuring the speed of a brushed motor with back EMF
« Reply #40 on: October 16, 2017, 05:58:51 pm »
Yes i will reserve myself the option to measure back emf but when doing a design it's nice to have all the options there are avoiding board redesigns for different projects. Indeed I would very much want to measure current anyway to determine if there is an over-current or blocked motor situation plus the option of reporting power consumption (one day when I get round to doing coms software).
 

Online Siwastaja

  • Super Contributor
  • ***
  • Posts: 8108
  • Country: fi
Re: Measuring the speed of a brushed motor with back EMF
« Reply #41 on: October 16, 2017, 07:26:13 pm »
A bit OT:

You also kinda "need" the current measurement and current-mode feedback loop anyway to form a proper motor controller...

... unless you do it the "stupidly dumb & the old way", size all the components for the stalled rotor current defined by the motor lumped R & DC bus voltage, and let the motor iron saturate and the motor run at maybe 10% efficiency while spinning up (+ all the corner cases). Then you write some control logic to shut it down if this unsafe (but completely normal everyday) situation lasts "too long", and buy FETs 10x sized over your need, and spend time building proper drive for them.

The lower the motor R (and hence, the better the nominal efficiency), the harder it gets to make it work the dumb way (meanwhile, it works very well for very small motors)

The proper, modern, well designed alternative is to implement the normal current mode feedback, which always runs the motor at good efficiency, and provides fairly accurate torque limit in case you'll ever need it. The "overcurrent" detection is not for faults, it's part of normal operation, since, contrary to common misbelief, this "overcurrent" is not any kind of fault but happens all the time; the most prominent example being the startup!

Properly designed drive gives the same (or nearly so) torque, but with much lower current, much better motor efficiency, and for much cheaper, since it 100% guarantees no blown fets without carefully oversizing everything.
 

Online Benta

  • Super Contributor
  • ***
  • Posts: 5839
  • Country: de
Re: Measuring the speed of a brushed motor with back EMF
« Reply #42 on: October 16, 2017, 07:44:15 pm »
I don't think anyone has said that current monitoring is not a good idea. Just that it's irrelevant to speed control.

Quote
Properly designed drive gives the same (or nearly so) torque, but with much lower current, much better motor efficiency

Really? So a PMDC motor supplied with a DC voltage and operating at, say, 70% efficiency will suddenly become 85% efficient with the right drive?
I think you need substantiate that. References, please.

 

Offline oldway

  • Super Contributor
  • ***
  • !
  • Posts: 2172
Re: Measuring the speed of a brushed motor with back EMF
« Reply #43 on: October 16, 2017, 07:52:42 pm »
A DC motor drive, whether done by phase control or by PWM, must have a current limitation and a soft start circuit.

The reasons are multiple, not only for the protection of semiconductors but also for that of the motor. (for exemple, to avoid flash to the collector because commutation becomes bad and brushes begin sparking during overcurrents)

And we forget one thing with the permanent magnet motors: the demagnetization of the magnets by the armature reaction during overcurrents.

So, as I said, we need the current information anyway.
 

Online Siwastaja

  • Super Contributor
  • ***
  • Posts: 8108
  • Country: fi
Re: Measuring the speed of a brushed motor with back EMF
« Reply #44 on: October 17, 2017, 08:05:28 am »
Quote
Properly designed drive gives the same (or nearly so) torque, but with much lower current, much better motor efficiency
Really? So a PMDC motor supplied with a DC voltage and operating at, say, 70% efficiency will suddenly become 85% efficient with the right drive?
I think you need substantiate that.

Sure.

Think about the extreme case: When you apply the full voltage in a stalled DC motor, it basically takes current only limited by the R of the windings and brushes, hence massive I^2R losses, without providing more torque than the iron magnetization can support anyway. This is the "diminishing returns" area of operation - double the current, only get slightly more torque. Typically the efficiency starts to drop considerably after about 150-200% the nominal torque (~ current) of the motor - (of course depending on the motor!) You can check the efficiency curves on the motor datasheets if you don't believe this.

Now, when you apply a controlled, i.e., limited current, which takes into account what the motor can actually do, you get the same (or nearly the same) torque with much less current, much less losses, better efficiency.

Of course, a totally stalled motor will never do any work, and the efficiency, by definition, is always 0%. The absolute losses are still important; with a proper driver, the motor can survive while giving this torque indefinitely.

But when the motor is driven at low RPMs - sometimes this happens only during spin-up, sometimes this operating mode is continuous (such as in an EV when driving in city traffic) - the choice of dumbly applying full voltage, vs. "just apply some PWM based on speed control, using current measurement only as a safety thing", vs. "use a proper current mode", might mean motor efficiencies such as 10%, 60%, and 90%, respectively. The middle one of those three examples is hard to predict and analyze, and the solutions typically have much more "safety" logic (and, hidden state) than anybody expected when they chose to use such a "simple" system :). And this safety logic often gives unnecessary "nuisance trips", when the user actually wanted a torque control.

It really depends, in many cases with constant, light loads and easy dynamics, there is of course absolutely no difference between a current mode control and "simply" using speed information as a feedback signal for the PWM, except for the short inrush at spinup, which may be totally insignificant in the total energy consumption.

When building the inverter & motor for a test EV years back, one of the first things to notice between the control algorithms was the heating of the motor, while the PWM scheme stayed the same. This was hard to see on the lab table, but when driving a real 600kg vehicle at walking speeds, motor running at some hundred RPM only, this was a total showstopper. Sure, this was an induction motor, so there is the extra challenge of controlling the magnetization, so it's not a good example, but wanted to mention it anway since the effect was very dramatic. The first control scheme was a stupid speed regulation loop, the latter one was a torque control based on slip feedback.

With small motors, having high resistance anyway, and designed to work near the full speed most of the time, with a rather constant load, this is often ignored. A proper current-controlled source can really spin up a motor with 90% average efficiency, while a "dumb" solution may have average efficiency at 45% (ramping from 0% to 90%), but does this matter if the spin-up time is limited anyway, and there is a protection scheme that prevents the stalled motor running all the time?

BTW, since I sometimes like to give analogies, even though they are not 1:1 identical: this is analoguous to charging a capacitor from a voltage source through R, which always gives 50% efficiency by definition (there was a huge thread about this, it's hard to grasp to some!), vs. charging it with a current-controlled switch mode supply which doesn't have such 50% limit. In this analogy, the inductance of the "converter" (motor) saturates, and the system is back to the resistive nature only. Now, if you only charge the capacitor (spin up the motor) once, this 50% efficiency might not be an issue, but if you are have an extra load, draining the "capacitor" (BEMF), keeping it at 20% voltage all the time (i.e., driving an EV with motor running at 20% nominal speed), the control scheme must ensure that it stays a proper "converter", i.e., the core doesn't start to saturate. And by this, I don't only mean the "fully saturated" condition, but the area of operation which is kinda ok, but with diminishing returns and poor efficiency. You don't need to do that, just like you don't need to drive LEDs at absolute maximum ratings, since, even though they'll give you the most lumens out that way, the lm/W figure will drop.

But this is why each and every brushed DC motor controller driving large motors will always have a fast current regulation loop, which is the inmost, primary loop. It's the right thing to do, and it isn't even more complex - it's actually a lot simpler once you get rid of the old notions, since it makes sense -- just like we are finally starting to accept the current mode as a right thing to do when talking about switch mode converters, but the same is happening slower with motors, even though it's exactly the same case (imagine a huge output capacitor on a synch buck converter to simulate the inertia and BEMF).

Doing the Wrong Thing is often good enough, and doing the Right Thing is sometimes wrong in real engineering, but you need so stop and think about these things.

Hope this helps.
« Last Edit: October 17, 2017, 08:12:27 am by Siwastaja »
 

Offline Smokey

  • Super Contributor
  • ***
  • Posts: 2536
  • Country: us
  • Not An Expert
Re: Measuring the speed of a brushed motor with back EMF
« Reply #45 on: October 17, 2017, 08:37:23 am »
Brushed motors have current draw that fluctuates x times per cycle (depends on how many brushes are present and the number of commutator segments) --- you could probably get the speed far more accurately with that --- in fact, here's an interesting article and reference design about getting the position that way:

https://e2e.ti.com/blogs_/b/behind_the_wheel/archive/2017/08/16/the-seat-remembers-brushed-dc-motor-ripple-counting-drives-innovation-in-full-featured-memory-seats
http://www.ti.com/tool/TIDA-01421

How is this not the "right" answer?  That's a pretty square wave you can count.  Not sure how much better you'll get than that.
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf