Hi, I am using a NUCLEO-IHM03A1 on top of a STM32F411RE to control a NEMA23 format stepper motor. In trying to improve the torque and resolve stalling issues, I measured the RMS current into one of the phase windings using a DVM.
CM_VM is set ( paradoxically, this is documented at NOT enabling voltage mode but current mode ).
EN_TQREG is low. Indicating use of TVAL and freinds. I set TVAL _HOLD to 0x31 and use half-step mode. The following graphs show how this varies with step pulse frequency.
The step pulses are generated by the STM32 and the RM says in step clock mode powerSTEP01 is always considered "at rest" and so TVAL _HOLD sets the current. It does affect the current across the frequency range, but phase current is way below that corresponding to the reference voltage specired in TVAL_HOLD. One of the basic needs in stepper motor driving is current / torque control . How should this be done in step clock mode ?
I have taken readings attaching a test point to R1 sense resistor, sensing the phase current as the chip does. The fall-off at low speeds is curious. It is not clear what the control mechanism is here. The 57BYGH633 is a six wire stepper motor. The first graph is powered in half coil configuration, the second is full coil series connection.
I am applying 50V supply to a motor with 1 ohm resistance and 1.6mH ( in half-coil configuration ). It is unclear why the powerSTEP01 is delivering such a low current.
Further testing with a potential divider setting 0.25V at ADCIN and EN_TQREG high, shows similar large variations with step speed , no apparent regulation of output current and similarly low current values , well under the 2.5 amperes expected.
Unless there is a configuration error, it would appear that current control does not work in step clock mode. This does not seem to be in agreement with the datasheet.