• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 554
  • Last Modified:

Controlling torque of DC Brushed Motor


I have a trouble here and I'm almost sure that what I want to do is impossible.
But to be 100% sure I want to ask all you about your opinions.

I have a DC Brushed motor with permanent magnets.
A very common motor like Fig1.

(Just a pic. from internet, not the real one)

Note: I don't have motor datasheet because I don't know motor model or brand.
But it's like Mabuchi's motors.

I made a H Bridge circuit with PWM to control SPEED and DIRECTION of rotation.

Now I need to implement a torque correction.

When loading the motor, the PWM threshold must increase to keep torque constant.

I did this before using sensors like Hall sensors and optical encoders.
The feedback from Hall/Optic. Encoder tells me when the motor reachs the desired speed meaning that torque is enough for the load applied.

But now I need to do this correction without any sensor attached to the motor.

To do this, first I added a shunt resistor to measure the motor current.
But I need another parameter to determinate the correction behavior.

With the shunt, I can detect if the motor is loaded. The current will rise and based on this I need to increase PWM Threshold in order to increase motor torque, keeping torque constant with load variation. The problem is that when the voltage increases, to correct the torque loss due to the load, the current also increases. And as the current is my feedback about load, that condition cause an infinite grow of voltage because I'm unable to detect when I need to stop increasing motor voltage. Also I can't measure motor speed that is a perfect reference for this correction circuit.

Someone have any idea about how to do this torque control without sensors attached to motor ?

I think that is not possible due the math and physics rules as I described above.
But if some technique to catch motor commutation just by power supply wire is possible then I would be able to measure motor speed solving the problem.

The big question is:

How to measure DC Brushed Permanent Magnet Motor speed by power supply signal ?

Any ideas ?

Thank you all in advance.
  • 3
  • 2
1 Solution
There are several additional things to look at:

You may be able to tell the motor speed by looking at the glitch frequency.
Every time the brushes make or break, you get a glitch.

And you can also look at power balance:

Electrical Power into the motor is V*I

This power goes into heating the windings:  I²*R

and into friction and mechanical work.

The rotary power of the motor is  proportional to   Torque * RPM

Motor equations are here:


You should also check out Back EMF.  I understood it once a long time ago.
This is seems very relevant:

     Back-EMF refers to using the voltage generated by a spinning motor (EMF)
     to conclude the speed of the motor's rotation.

giovaniluigiAuthor Commented:

I think the better way is going by BEMF.

But, as I have PWM into motor windings, I need to read the BEMF just when the H BRIDGE is with both lowside transistors "ON" and both highside transistors "OFF".

Now this is another problem.

When the motor is running this condition will never happens.
This is what I understood by some files and pages that I found on internet and by your links
Worried about phishing attacks?

90% of attacks start with a phish. It’s critical that IT admins and MSSPs have the right security in place to protect their end users from these phishing attacks. Check out our latest feature brief for tips and tricks to keep your employees off a hackers line!

What are you trying to do with the motor and what tools do you have?
And what is your budget.

Are you trying to make an analog controller or do you have a µC available?

You may be able to calibrate the motor:

    A constant PWM and current correspond to a fixed RPM and loading.
    Build that data table.

    At any time you know the applied PWM (voltage) and you can measure
    current I and dI/dt.  

Can't you measure Back EMF when the H-bridge is off with something like
an INA117?

giovaniluigiAuthor Commented:
All this, is because I have a friend with a lot of machines that have no control.
Those machines have just a motor connected to a transformer. And... That's all.

I want to implement a torque correction to all of those machines.

I did a circuit with a uC PIC controlling the bridge.

I did the table that you mentioned before, but it doesn't worked well.
Mostly because of measuring problems with the opamp in the shunt.
I used a LM258.
I filtered the signal that comes out from opamp, due to the PWM influence.
But the PIC A/D can have some accuracy problems due to this signal.

I will try to measure back EMF or redo the table.
I'm not expert on eletronics.
In analog parts, I have no experience.
My area is computer, but I trying...
James MurrellProduct SpecialistCommented:
This question has been classified as abandoned and is closed as part of the Cleanup Program. See the recommendation for more details.
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

The 14th Annual Expert Award Winners

The results are in! Meet the top members of our 2017 Expert Awards. Congratulations to all who qualified!

  • 3
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now