cancel
Showing results for 
Search instead for 
Did you mean: 

Is there any off the shelf software available that will perform sensorless velocity measurement using back emf of a brushed DC motor?

SCrum.1
Associate III

I would like to investigate velocity control of a brushed DC motor using the STSPIN240/250 devices. 

The motor velocity can be measured using the back emf from the motor. Does anyone know if there is any off the shelf software for this?

I notice the X-NUCLEO-IHM13A1 driver board doesn't even connect the current shunts to the C7/C10 connectors so I'm guessing not. Asking just in case...

Thanks

1 ACCEPTED SOLUTION

Accepted Solutions
Cristiana SCARAMEL
ST Employee

Hello @SCrum.1​ and welcome to the ST Community.

The motor speed can be estimated through the BEMF measurement (ADC sampling of motor voltage when in high impedance) or the motor current ripple measurement.

In the second case, measuring the current ripple it is possible to estimate the motor speed:

Speed [rpm] = 60 / (P x Tr [s])

where P is the number of poles of the rotor and Tr is the period of the ripple in seconds

Note that this method cannot be used if the PWM current control is acting.

However, we do not have any software available for this type of measurement.

I hope this post can help you; if so, consider to mark it as best answer by clicking the label "Select as Best".

If you feel a post has answered your question, please click "Accept as Solution"

View solution in original post

4 REPLIES 4
Javier1
Principal

Is there Back-EMF at all in brushed motors?

The point of BackEMF in brushless motors is that when youre not actively driving them you can still see a sinusoidalish shape in any of the phases (depends of the motor topology)

With a brushed DC motor you will only see a constant DC signal?

Im not sure if you can get position info from there....... interesting tought

Extra, SENSORLESS doesnt really mean sensorless, it means the voltage/current sensors are inside the motor driver instead of a decoder or a hall-effect sensor in the motor.

If you have voltage sensors (adc), youre driving in trapezoidal mode.(backemf)

If you have current sensors, youre driving in field oriented control or vector control. (FOC)

we dont need to firmware by ourselves, lets talk
SCrum.1
Associate III

No you can't get position information because you don't have access to the individual phase currents, only the combined net current through all three phases. But you can still get the motor velocity as that current is dependent on the back emf which is proportional to the motor velocity. Its the current you are measuring not the voltage.

.

we dont need to firmware by ourselves, lets talk
Cristiana SCARAMEL
ST Employee

Hello @SCrum.1​ and welcome to the ST Community.

The motor speed can be estimated through the BEMF measurement (ADC sampling of motor voltage when in high impedance) or the motor current ripple measurement.

In the second case, measuring the current ripple it is possible to estimate the motor speed:

Speed [rpm] = 60 / (P x Tr [s])

where P is the number of poles of the rotor and Tr is the period of the ripple in seconds

Note that this method cannot be used if the PWM current control is acting.

However, we do not have any software available for this type of measurement.

I hope this post can help you; if so, consider to mark it as best answer by clicking the label "Select as Best".

If you feel a post has answered your question, please click "Accept as Solution"