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.

INSTASPIN-BLDC: Motor control for low inductance motor

Part Number: INSTASPIN-BLDC
Other Parts Discussed in Thread: DRV10987, DRV8313, MOTORWARE, DRV8312, , CONTROLSUITE

My customer is trying to drive a low inductance BLDC motor between 10000 and 25000 rpm (one pole-pair motor) with a sensorless control scheme. We started with the DRV10987 driver but found the PWM frequency is too low (50 kHz) which causes large pk-pk current ripple from the low inductance (L = 0.1 mH, R = 1.8 ohm). To get reasonable current ripple, the PWM frequency probably needs to be closer to 200 kHz.  The customer has a DRV8313 eval board, but the MSP430 code on this board uses a PWM rate of 20 kHz. 

We need help figuring out how to drive and control the motor.  Maybe there is a C2000 based Insta-spin based solution that can be used to drive the DRV8313 eval board?

  • You might download the motorWare from the following link, the software includes a C2000 based instaSPIN-FOC solution using DRV8312 that should be similar to DRV8313. But it's difficult to support such high PWM frequency (200KHz) limit to CPU bandwidth, the maximum PWM frequency is about 60kHz that could be supported by C2000 controller (F28069F) enabled instaSPIN-FOC.
    www.ti.com/.../motorware
  • Hi Yanming,
    Thank you for the quick reply. Maybe I'm wrong about needing a higher PWM (but the math seems to point that way)- have you had to support a request to spin a low inductance motor such as this before?
  • The lab02c is a special one to implement identification for low inductance motor, you might use this lab to identify the motor parameters, and run the motor as your requirement using other labs with the identified motor. That's fine for most low inductance motors.
  • Hi Yanming,
    We are still struggling with good control for the motor.
    What we need is to get INSTASPIN-BLDC running on a Piccolo kit with the PWM frequency running above 55 kHz, 60 kHz should work. Customer does not wish to use FOC.
    We have the DRV8312-69M motor kit. How specifically can we modify the PWM speed and load BLDC control this onto the Control Card on this kit, (or do we need a different control card.)
    Eventually, we will probably use the DRV8313, but the DRV8312 kit is probably the easiest way to prove the motor needs to be driven at a higher PWM.
  • You might try the instaSPIN-BLDC reference in controlSUITE.

    Download controlSUITE from the following link, and then install it as a default configuration.
    www.ti.com/.../controlsuite

    You will find the reference project in the below folder that is an example on a trapezoidal controlled BLDC. But you have to change the device configuration file in this project since it was designed with F2803x. (F28035 ControlCard).
    C:\ti\controlSUITE\development_kits\DRV8312-C2-KIT_v128\InstaSPIN_BLDC

    The PWM frequency should be at least 30 times more than the maximum frequency of the motor.
  • Hi Yanming,
    Yes, we are looking at the Control Suite for the C2-Kit. We may try this on the C2 kit first (F28035) if we can get it running at a high enough PWM frequency.
    Two Questions:
    1. Where in the SW is the PWM frequency set so we know what we need to change to speed it up. We know the 20 KHz in the DRV8313 EVM is not fast enough and we need to at least double this.
    2. Is the SW easily transferable to the 69M kit (F28069) by changing the configuration file as you mentioned, or is there more involved ?
  • 1. Change the ISR_FREQUENCY and ISR_FREQUENCY in BLDC_int_Settings.h.
    2. Yes, you need to change BLDC_Int-DevInit_F2803x.c and related functions to the device in the project.