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.

DRV10970: Large delay when switching direction

Part Number: DRV10970

Hi all,

In my team, we're using the DRV10970 to drive motors connected to wheels. We're having trouble with switching directions. When switching direction with these wheels at high duty cycles (80%) everything works well. The wheel gets braked (since it's in braking mode) and quickly turns into the opposite direction. At lower duty cycles (30%) this doesn't happen. The wheel is braked, remains stationary for about 0.3 seconds and only then starts turning in the opposite direction. When driving our wheels, this 0.3s delay is a big problem, but we haven't figured out how to solve it.

We suspected C_retry might be too low, but right now we've changed it to 1nF, which should have a retry at about 15ms, so I don't believe this is the problem. We're using a supply voltage of 12V to drive a Maxon EC 45 flat Ø42.9 mm, brushless, 30 Watt motor.

I've included the schematic of how we've connected the chip.

Hope you can help. Thanks for your time. If you have any further questions, I'll try to answer them as soon as I can.

  • As an update to my question, we found out that the delay in switching directions doesn't have a direct correlation with the PWM signal, but with the actual speed of the motors. Using a high duty cycle while lowering the speed of the motor with a mechanical resistance also produces the delay in switching directions.

    After some further testing we found that the DRV seems to be waiting for the Hall sensors to be stationary for some time before switching directions. This means that you can extend the delay by randomly turning the motor in any direction. When the motor is released, it will do its 0.3s of waiting, after which it will continue its normal operation.

    I'm really hoping someone has a solution, since we're out of ideas!
  • Hey Nahuel,

    Thanks for the update and apologizes for the delay.

    Based on your description, there doesn't seem to be an obvious answer so we need to do some troubleshooting. Can you monitor RD, Retry, FG, and FR using an oscilloscope? We need to get a comprehensive timing diagram of the event for both the high speed (working) event and the low speed (not-working) event.

    Thanks,
    -Cole
  • Hi Cole,

    Thanks for your answer. I'll try to get some scope traces on Monday. In the meanwhile, I've made some progress by trial and error. By turning the PWM off, waiting 1ms, changing direction, waiting 1ms and then turning the PWM on again, the delay seems to be gone. Do you think the 2ms delay in the code will be translated into a 2ms delay in driving or does setting the PWM to 0 initiate the braking process immediately just like switching direction would?

    Thanks,

    Nahuel

  • Hey Nahuel,

    It sounds like you've solved the problem (correct me if I'm wrong of course). 2ms delay is a lot less than 300ms.

    Anyways, you are correct that driving the PWM low (off) will initiate a brake sequence just like switching the direction.

    Best,

    -Cole