This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

what is "low inductance" ?

The "labs" indicate that for low inductance motors I need to increase the PWM frequencies. But how do I know that my motor is "low inductance"? 

I'm currently running a motor that is detected as 115uH. It has 68 mOhm Rs. Is this low?

Apparently the cogging force on my motors are "high", this causes the motor not to spin during the tests (with the default configuration). As normal sensorless drivers manage to spin this type of motor, and work from the back-emf once it is spinning fast enough, shoudn't the estimator "verify" that it is spinning by using the back-emf? Now it just gets "bad results". 

  • Well, below 50uH is generally what we consider very low inductance.  Below this level it becomes much more challenging to collect good current information and keep a clean sinusoidal waveform.  So if there is ever an opportunity to add inductance to a system we recommend > 50uH. 

    But the Ls value isn't the only thing that dictates your choice of PWM switching frequency, there are many factors related to the inverter switching characteristics, timing of the control loops, dynamic response, etc.

    In general you want to minimize the PWM frequency to reduce switching losses. But if you aren't switching fast enough you will offset those switching losses with losses from the motor. Unfortunately there aren't any formulas to calculate the "best" frequency.

    Roger Wolff said:
    Apparently the cogging force on my motors are "high", this causes the motor not to spin during the tests (with the default configuration). As normal sensorless drivers manage to spin this type of motor, and work from the back-emf once it is spinning fast enough, shoudn't the estimator "verify" that it is spinning by using the back-emf? Now it just gets "bad results". 

    During the motor ID state the FAST estimator is not yet operational and you are running pseudo open-loop (you are taking in feedback but aren't directly using that feedback in the control system). You are trying to identify the necessary parameters so that the FAST motor model will produce accurate estimations.  To identify the flux and inductance the motor must be rotating freely - with minimal load to keep stability - at a prescribed frequency.

    Increase the USER_MOTOR_RES_EST_CURRENT until the motor starts up, reaches, and maintains the USER_MOTOR_FLUX_EST_FREQUENCY

  • Suppose I have a 10V motor with 10A of current, suppose we want to limit the current ripple to 5%, suppose the PWM is currently at 50%, suppose we have a 100uH motor and are PWM-ing at 50kHz......

    During the on-time, there is 10V across the motor, This lasts for 10 microseconds. With U = L dI/dt we get: dI = U.dt/L = 10V.10us / 100uH = 1A. Too much! that would be 10%, not 5%.

    With "dI" known and dt unknown we can transform into: dt = L dI/U or rather: 2f = 1/dt = U/(L.dI) where f is the minimum PWM frequency.

    My current motor runs at say 12V, has an L of 97uH and would allow 0.5A of current ripple (that's about the total current when running unloaded, but lets assume it is loaded for now).

    f = U/2L.dI = 12V/(2.100uH.0.5A) = 0.12MHz = 120kHz.

    Correct?


    www.hobbyking.com/.../__6247__hexTronik_DT750_Brushless_Outrunner_750kv.html

    Assuming instaspin allows 40kHz, maybe upto 60kHz PWM, this would mean that this motor is out of reach....