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.

DRV8434A: TORQUE_COUNT typical values

Part Number: DRV8434A


Tool/software:

I am trying to use this chip in the mode were I can just read the TORQUE_COUNT voltage but am not seeing expected results

Setup:

1) STL_MODE =GND

2) STL_REP = GND

3) 1/8 step mode (M0,M1 high)

My motor current is set by a pot between DVDD, Vref, and Gnd (vref ~0.75V).

The torque count is <50 mV when stopped. the only exception is that when i first come out of sleep it is ~2.4V. If i then do a few single steps it <50 mV and stays there.  While executing a turns it sometimes rises to about 60mV but always is back to near 0 when done. These results don't change if i force a stall.

I'll note though, that there is a somewhat flexible coupling between the shaft i can grip and the motor so maybe that is affecting the results. The motor R is ~4.5 Ohm so  think i shouldn't need the 8x gain.

Is it expected for the toque count be near 0 when stopped? Why can't i ever observe a significant voltage at this pin?  The above data was with 1/8 micro stepping but fullsteps were basically the same.

  • Hi Adam,

    Thank you for posting in this forum.

    Is it expected for the toque count be near 0 when stopped?

    Yes this is correct.

    Why can't i ever observe a significant voltage at this pin?  The above data was with 1/8 micro stepping but fullsteps were basically the same.

    If the step rate is very low the voltage on this pin when no stall would be very low. What was the step input frequency? Was there an ramp profile used? 1/8 or 1/16 step mode typically has the best case torque count output with this device. What was the VM voltage used? > 12 V should give reasonable analog output level as long as the pps STEP input is fast enough to generate fair amount of BEMF. 

    Regards, Murugavel 

  • Step input was quite slow ~125 Hz. It wasn't clear from the datasheet that this mattered. How fast does this need to be to get a meaningful reading? When should I same the pin voltage? e..g how soon after STEP going high, if this matters

    Further testing: I do confirm that if i use the 8x gain setting (ENABLE hi-Z), that I can get a signal which is good enough to tell if stalled. Still pretty small though. This signal is somewhat strong are 250 Hz than 125, but still pretty small. It would be good to know what considered optimal here and when I should query this value, as mentioned above.

  • Hi Adam,

    Step input was quite slow ~125 Hz. It wasn't clear from the datasheet that this mattered.

    The stall detection algorithm is based on the BEMF generated by the motor. If it is not sufficiently higher the stall detection will not work. This application note explains the theory - it is for a different device but working with the same principle - https://www.ti.com/lit/an/slvaei3/slvaei3.pdf. Very low step rate would result in low BEMF.

    How fast does this need to be to get a meaningful reading?

    This would depend on the motor. You can increase the step rate for your motor and see at which speed you start to see torque count that makes sense. Perhaps in the 400 to 600 pps range.

    how soon after STEP going high, if this matters

    It takes four electrical cycles of the current waveform - four full sine cycles to get a steady torque count. Subsequently the count is updated every half electrical cycle at the current zero crossing time. Each sine electrical cycle at 1/8 steps would require 32 STEP pulses. 

    Further testing: I do confirm that if i use the 8x gain setting (ENABLE hi-Z), that I can get a signal which is good enough to tell if stalled. Still pretty small though. This signal is somewhat strong are 250 Hz than 125, but still pretty small. It would be good to know what considered optimal here

    This would also depend on your system. Some systems have fluctuating torque counts due to variable friction etc. This would require higher count to account for the dips even without stall. If you get steady counts at 250 Hz STEP rate and could consistently differentiate between stall and no stall this should be okay.

    and when I should query this value, as mentioned above.

    As mentioned about for 1/8 step the count will get updated every 16 STEP pulse between current zero to zero crossing. If you're keeping tab on the indexer position which would be normal practice for stepper positioning you can know when zero crossing happens based on the Table 7-3. Relative Current and Step Directions, in the datasheet. It is aligned to the B-coil current zero crossing. Thank you. 

    Regards, Murugavel