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.

DRV8312 PWM duty ratio not increase.

Other Parts Discussed in Thread: DRV8312, TMS320F2806, TMS320F28069M, MOTORWARE, LAUNCHXL-F28027F, DRV8301, BOOSTXL-DRV8301

I'm using DRV8301-69M-KITwith our high speed motor.

When I tried to increase motor speed from 40000rpm to 50000rpm, acceleration stopped at 47000rpm. It was impossible to reach to 50000rpm.

(I already confirmed that motor can rotate over 60000rpm with another driver unit. And no false found in excel chart. )

When I observed that PWM signal from C2000 to DRV8312, I found that PWM duty ratio is not changed at 47000rpm.

Its duty ratio is about 90%. (On time 90%, Off time 10%)

Until 47000rpm, duty ratio is changing to increase drive current. But at 47000rpm, it stopped.

At that time, off course driver current not increased.  As the result, motor speed stays at 47000rpm.

Test condition: Vbus=15V, PWM frequency 90kHz

 

Question.

  Why does PWM duty ratio not change? Is there any limitation? Or is there any parameter to set it?

 

Regards.

  • Hi Takiguchi-san,

    Would you please confirm which kit you are using? Is it the DRV8301-69-KIT or the DRV8312-69-KIT?

    Thank you.

  • Thank you for your reply.

     I'm using DRV8312-69-KIT for this test.

    (As our plan, we would like to use DRV8312 and 8301 both kit due to power limitation. But in the case of 8301, our motor cannot rotate... If you have any ideas for this issue, please let me know.) 

     

    Regards.

  • Junji,

    Can you check the PWM duty cycle outputs from TMS320F28069M controlCARD? This way, actual source of duty cycle limitation will be indentified i.e. it is limited by controller TMS320F2806 or driver DRV8312.

    Best Regards

    Milan

  • I checked and measured at PWMA, PWMB and PWMC.

    It means that Control card output is limited. Not output of DRV8312. Driver follows to input signals.

     

    Regards.

  • Ok so it’s clear that duty cycle is limited by controller.  I assume you are using Insta-spin FOC algorithm that comes with TMS320F28069M control CARD.

    This can happen if Vd and Vq outputs of d and q-axis current controllers are limited, to produce 90% duty cycle. You can increase the limits of them to get 100% duty cycle.

    In case if above modification does not solve issue, I would suggest to raise the query to Insta-spin forum, folks there would be able to guide you further properly on this issue.

    Best Regards

    Milan

  • I changed some parameters that specify a limitation of current.

    But still not improved.

    Could you help me to get proper person's help?

     

    Regards.

  • Junji,

    Ok for now, I am forwarding the query to our C2000 motor control expert.

    In future, put controller related queries to C2000 Insta-spin forum to get the quick reponse.

    Best Regards

    Milan

  • I would guess you have limited the modulation to what we define as 1.0 which is pure sinewave.

    If you are using the InstaSPIN-FOC or InstaSPIN-MOTION GUI, you can change this in the advanced tab up to 2.0 for full 6-step modulation.  This GUI is "frozen" and has none of the updates we've added in last 14 months to our source code, which you can find in MotorWare.

    In MotorWare we changed how we define the modulation index. 1.0 is still sinewave and is all we recommend when using the space vector generator and basic triggering that is included in the ROM code and the "frozen" GUI.

    If you use proj_lab10 in MotorWare you will find that we have included the source for another space vector generator called svgen_current, which also inlcudes advanced triggering for getting the best current samples during the very small low-side shunt sampling windows.  The modulation will allow you to move to 1.15 for space vector and 1.3333 for 6-step BLDC.

    Also, all projects in MotorWare that run the control from user code include angle delay compensation, which adds the proper ammount of angle increment to the control system to compensate for the sample to output delay of the control system (which will vary with rotor speed).

     

    So please use MotorWare and I'm sure you will get the speed you desire.  To be sure that your speed controller is well tuned and you can verify the modulation to the inverter by viewing the gMotorVars.Vs variable.

    Regarding the DRV8301 kit, it is likely that your motor was not properly identified.  This EVM has a very large Voltage and Current range which makes it very challenging to get proper readings on low flux or low inductance motors.  I suspect you are using a <24V and/or <10A motor.  If that's the case, you can re-do the HW circuitry to reduce the scaling or try the BOOSTXL-DRV8301 inverter (24V/10A continuous) with LAUNCHXL-F28027F for the controller.