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: Problems with PWM/Motor Startup

Part Number: DRV8306

Tool/software:

Hello TI community,

we are developing a BLDC driver PCB using DRV8306. The motor shall run at full speed or stand still by applying HIGH or LOW to the PWM pin. This would allow for a very simple interfacing method.

Unfortunately this method doesn't work if we configure the maximum motor current by setting V_DS and R_SENSE to a appropriate value (2x rated current) based on the used motor (see motor data below). If the max. motor current is two times the rated motor current, the motor doesnt start and nFAULT signals an error. If the max. motor current gets further increased, the motor slowly increases its speed to max speed while the nFAULT pin signals some error until it reached full speed. If we set the max motor current to a very much higher value it works just fine. This is likely caused by not enough current supplied to the motor to get it started. But setting the max. motor current to a to high value is also not feasable in case of a motor still stand during operation.

The datasheet doesn't seem to especially note the need of ramping up the applied duty cycle to start the motor.

We would like to know if our approach is feasable or if we are missing something and it doesn't work like that. Suggestions to achieve our goal with other approaches are also appreceated.

If any further informations are needed please let me know.

Regards.

Used motor data:

Rated voltage: 24 V

Rated current: 1.8 A

Rated power: 26 W

Rated speed: 4000 rpm

3 HAL-sensors

  • Hi Tobias,

    Am I understanding correctly that you are trying to switch the PWM either HIGH or LOW to start and stop the motor? I think this could work since HIGH would technically be like a 100% duty cycle PWM, is that the duty cycle you want to operate at? Have you attempted to ramp up to 100% duty cycle and do you still see the issues persist?

    What is your IDRIVE setting?

    What is the state of your nBRAKE pin?

    Regards,

    Yara

  • Hi Yara,

    thank you for your further questions.

    Yes, correctly, we are simulating 0% duty cycle by applying LOW and 100% by applying HIGH. If the duty cycle gets ramped up from 0% to 100% over about 40 ms or above the motor starts without any faults. But ramping it up requires some kind of controller. We would like to avoid this, except there is no other way. IDRIVE is set to maximum by pulling it to DVDD (150/300 mA). nBRAKE is pulled to DVDD. We don't need it.

    Regards,

    Tobias

  • Hi Tobias,

    I'm not sure this is possible. I think this device can support 100% duty cycle but not for long durations such as keeping PWM high when wanting to spin a motor. I'm suspecting VDS monitors are tripping because there isn't a period where the monitors can accurately check since high side is always on and low side is always off. Something like 98% might work without needing to ramp up or down

    If you are trying to avoid using a controller have you considered using something like a 555 timer circuit to supply the PWM pin with something around 98% duty cycle? and then test going from 0% duty cycle (low) to high (98%duty cycle from the timer circuit)

    Regards,

    Yara

  • Hi Yara,

    the datasheet states that 100% duty cycle is indeed supported. If the duty cycle jumps from 0% to 100% and the motor won't start spinning but vibrating, I can rotate the shaft manually to start the motor and it works just fine.

    I tried your suggestion of jumping from 0% to 98% duty cycle. I also tried other values (95%, 90%,...). But the motor still doesn't start up correctly. It seems like we have to ramp it up with a microcontroller or some other logic IC circuit.

    However, thanks for your help.

    Regards,

    Tobias