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.

Low Inductance motor with InstaSPIN

Other Parts Discussed in Thread: DRV8312

Good day all.

Now we are trying to spin our low inductance motor (sensor less type) with DRV8312 kit.

But with original condition, we found it is very difficult to make our motor spin.

Motor parameters.

R=0.2 ohm

L=8 uH

As you can see, R/L is too big, so we add extra inductors (33uH) between inverter output and motor.

But due to cost and space issue, we would like to remove them.

(By our observation, driver current waveform seems no good without extra inductors and its spin is not stable.)

Driver board: DRV8312-69M-KIT (with F28069 90MHz)

Pole: 2 Pairs

Target max speed: 40000rpm or more

Power supply Voltage: 24V

PWM frequency: 45 or 90 kHz

Question

Is there any good idea to operate our motor without extra inductors?

  • I have one more question.

    If I set a very big R/L value, Lab10 program will reject SystemEnable flag setting to 1.

    Even if I set it as 1, it will turn to 0 automatically.

    Is it correct operation?

    If so, please let me know its limitation and how to avoid it.

     

    Regards

  • there are many threads on the low Ls issue on this board. its' a challenging topic, but we run 1500-2000 Hz motors often. Yes, with <50 uH motors the current looks worse and worse, but stable operation is always achievable.

    Junji Takiguchi said:
    and its spin is not stable.)

    What are the conditions?

    Are you running in torque mode?  If you are running in speed mode have you tuned the speed controller gains?  You will need to reduce the default Kp/Ki speed gains significantly, > / 10.

    What is the peak current of this motor to produce peak torque?  What is the short circuit current?  Flux / 2pi / Ls =

    This DRV8312 driver is only 3.5A continuous and 6.5A peak.  I can easily see peaks that are tripping the driver.

    Junji Takiguchi said:
    so we add extra inductors (33uH) between inverter output and motor.

    adding inductance is very helpful to smoothing out the current. be sure that the voltage measurement however is still being done at the motor terminal, meaning the inductor is inbetween the inverter and the voltage measurement.

    there is a post on this, let me find and link

    If I set a very big R/L value, Lab10 program will reject SystemEnable flag setting to 1.

    Even if I set it as 1, it will turn to 0 automatically.

    Is it correct operation?

    If so, please let me know its limitation and how to avoid it

    The error check function is finding an error. View the error reported and then reference in user.c and find the error name.

    example, you probably are seeing this one:

    if((USER_MOTOR_Rs != 0.0) && (USER_MOTOR_Ls_d != 0.0) && (USER_MOTOR_Ls_q != 0.0))
        {
          if(((float_t)USER_CTRL_FREQ_Hz <= (USER_MOTOR_Rs / (USER_MOTOR_Ls_d + 1e-9))) ||
            ((float_t)USER_CTRL_FREQ_Hz <= (USER_MOTOR_Rs / (USER_MOTOR_Ls_q + 1e-9))))
            {
              USER_setErrorCode(pUserParams, USER_ErrorCode_ctrlFreq_Hz_Low);
            }
        }

    you can remove this error check if you like, or in the proj_lab## comment out the error check which is forcing the flag to keep you out of main.