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.

DRV8231A: Finding direction of current using IPROPI feature

Part Number: DRV8231A
Other Parts Discussed in Thread: DRV8231

Hi team,

I would like to know if it is possible to know the direction of current flow (through the motor) using the IPROPI pin feature that is available on DRV8231A IC.

Regards

Raviteja

  • Raviteja,

    It is not possible since IPROPI only displays the absolute value of the motor current. An easy way to determine current flow is measuring the voltage across the motor terminals. The voltage polarity sets the current direction in the motor.

    Regards,

    Pablo Armet

  • it is possible to know the direction of current flow (through the motor) using the IPROPI pin feature that is available on DRV8231A

    Since the IPROPI current only flows OUT (sourcing) of the pin, one direction only, into the sense resistor and to GND, so it is independent of the current direction in the motor. 

    I'm curious of why you need to know the direction of the current? Based on the IN1 and IN2 signals, you can tell the motor current direction, most of the time.

    Brian

  • @Pablo, @Brian, thanks for the responses. I got the answer I needed.

    As to using the polarity of IN1 and IN2 to arrive at the direction of current, I feel it might not work as a general principle, and below is my rationale:

    As the current through the motor is given as:

    I = (V_applied - K_v * ω)/R_terminal

    and ω is a function of previously accumulated torques and varying external load conditions. So, it is not necessary that the direction of I and V_applied are the same at every instant.

    Curious to know what you think.

    Regards

    Raviteja

    P.S. Larger context: I am working on a control schema to use only the instantaneous current and voltage measurements for a semi-open loop control of a DC motor, hence the question.

  • Hi Raviteja,

    I = (V_applied - K_v * ω)/R_terminal

    and ω is a function of previously accumulated torques and varying external load conditions. So, it is not necessary that the direction of I and V_applied are the same at every instant.

    Tell us more about the application, such as uni-direction speed control, or two-direction position control. 

    If this is a closed-loop servo control (except torque control) then I'm pretty sure you have motor shaft encoder feedback, which can provide speed information.

    So with motor speed feedback, it is easy to compute the sign of the current I in your posted equation. 

    Brian

  • Raviteja,

    Another solution is to use the DRV8231 (non-A variant of the DRV8231). This device is same as DRV8231A expect it does not have integrated current sensing. Instead a sense resistor is placed on the SENSE pin (source of low side FETs) for current monitoring. A bidirectional current sense amplifier. like the INA2181A1DGS, can be used for bidirectional current sensing. The reference voltage of the CSA can be set to midrail voltage (1.65V for 3.3V rail). A voltage of 1.65V corresponds to 0-A, voltage <1.65V is negative current, and voltage >1.65V positive current.

    Regards,

    Pablo Armet

  • Hi Pablo,

    Another solution is to use the DRV8231 (non-A variant of the DRV8231). This device is same as DRV8231A expect it does not have integrated current sensing. Instead a sense resistor is placed on the SENSE pin (source of low side FETs) for current monitoring.

    For DRV8231, the current flows through the shunt resistor only ONE direction into the GND and not out. So this also cannot tell the motor current direction. 

    Brian

  • Brian,

    You are correct. Please disregard my comment. This solution will be more useful for determining when motor in in driving or coast mode.