cancel
Showing results for 
Search instead for 
Did you mean: 

Rotor speed

Vnguy.1
Associate II

Hello~ my friends.

0693W000001sTsJQAU.jpg

For rotor speed calculation, I have two problems

  1. How can you convert from equa (1) to equa (2)? If you know please explain a little detail for me.
  2. For rotor speed computation, why we use 0.1 Hz of frequency? why we don't use others frequency like 1Hz, 5Hz, or 10Hz...?

These above question make me curious. So, if you know, please tell me know. Thank you so much.

Keep your safety in Covid-19.

Best regard.

3 REPLIES 3
Enrico Poli
ST Employee

Hi,

Let me try to better explain how the conversion between the two speed format is performed.

In formula 1, you have the definition of a dpp unit:

Electrical angle is expressed using a 16 bit integer (i.e. 1 rad = 65536) and the FOC frequency is used as timebase. This is your new "unit" for the speed calculations.

In formula 2, you have the conversion between the two units, let me split it in two intermediate conversions:

[dpp] = 65536 / FOCfreq [rad/s] --> 1 rad per second is equal to 65536/FOCfreq dpp

[rad/s] = 1/10 [rad * Hz/10] --> 1 rad by tenth of Hz is equal to 0.1 rad per second (i.e. rad by Hz)

then

[dpp] = [rad/s] * 65536 / FOCfreq = [rad * Hz/10] * 1/10 * 65536 / FOCfreq

All these unusual formats allows integer calculations instead of fixed point or floating point ones.

Hi Enrico,

I saw this reply from a year ago and wanted to ask a related question. In my sensorless application driving a BLDC I need the best resolution possible. I set the SPEED_UNIT to _001Hz but the feedback from the SPD_GetAvrgMecSpeedUnit procedure still seems to be in units rounded to 6. For example I can read 3059 and 3064 but nothing in between. I'm running a 6 pole-pair motor at nominally 30.5Hz and my requirement for speed variation is <2us p-p jitter. I'm finding it quite challenging ;)

I'm using a STM32G431 48-pin device with a STSPIN233 using 5V on a custom board. My start current peak is about 700mA and my run current is typically 35mA peak.

For my speed feedback in procedure STC_CalcTorqueReference is SPD_GetAvrgMecSpeedUnit the correct procedure to use to get measured speed?

Thank you for consideration of my problem.

Thanks,

Brian

Hi @BTrem.1​,

please open a new topic for your question.

I suggest you to post it in the STM32 Motor Control section.

Have a nice day.

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