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.

DRV8306: PWM frequency dependent motor speed

Part Number: DRV8306

Tool/software:

Hi everyone,

we are designing a BLDC motor controller using DRV8306 and having issues with PWM frequency.

We are using a 24V 27W motor, R_ISEN = 250mOhm and digital Hall sensors with open-drain outputs.

Schematic and layout of our DRV8306 driver:

DRV8306_Motorcontroller_Schematic.pdf

As we set PWM to 30% or higher and then keep it constant and sweep trough frequencies from 10 to 200kHz, the motor speed and its power usage goes constantly up until roughly 100kHz.

At this point, the motor stops, fault LED lights up or the motor drives very poorly while fault LED lights up quite a lot.

As we increase the frequency even more, fault conditions stop, motor speed and power usage increases constantly again to higher speeds than before.

Schematic and layout of DRV8306EVM:

DRV8306EVM_Schematic.PDF

DRV8306_Motorcontroller_Layout.pdf

After comparing our design with the DRV8306EVM, we lowered the value of R_ISEN with two parallel 250mOhm resistors to 125mOhm and the PWM frequency dependency was solved.

Then we lowered R_ISEN even more with three parallel 250mOhm resistors to 83mOhm and the motor drove very poorly and inconsistent, even more than initially, regardless of PWM and PWM frequency, so switched back to 125mOhms.

Then we added a 4,7µF capacitor parallel to the voltage divider between the Hall negative rail and ground and increased the capacitor attached between DVDD and ground from 100nF to 1µF and the fault condition at around 100kHz PWM frequency was solved.

Now the motor works nearly as good as it does with the DRV8306EVM.

Can you explain this kind of behaviour so that we can design a properly working bldc driver?

Thanks,

Tobias

  • Hi Tobias,

    The main item that stands out to me is DVDD using a 100nF capacitor. The value the DVDD capacitor was increased to, 1uF, is the value recommended in the datasheet which is likely why some of the issues stopped appearing after this capacitor was increased to the datasheet value. With a lower capacitance value, load transients can affect the voltage level of DVDD and cause the DRV8306 to not preform as stated in the datasheet.

    If you are still able to see issues with R_ISEN being populated with the 250 mohm and/or 83 mohm resistor configurations can you provide a capture of the nFault pin, ISEN voltage, and PWM input?

    Seeing the nFault can help to narrow down the fault being reported by seeing the time it takes to toggle and the ISEN voltage can help to see if the voltage is exceeding any fault thresholds.

    Regards,

    Joshua
      

  • Hi Joshua,

    Here are some measurements with 250mOhm and 83mOhm R_ISEN.

    f_PWM = 45kHz

    R_ISEN = 83mOhm, 40% pwm:

    With this configuration the motor starts to drive poorly. Below 40% pwm everything works as intended.

    R_ISEN = 83mOhm, 50% pwm:

    Unregular driving of the motor increases.

    R_ISEN = 83mOhm, 60% pwm:

    The motor stops above 60% pwm.

    With R_ISEN = 250mOhm things are different. Motor speed and power consumption nearly don't vary, regardless of the pwm.

    R_ISEN = 250mOhm, 50% pwm:

    R_ISEN = 250mOhm, 10% pwm:

    Regards,

    Tobias