I am using the DRV10983 (currently on the DRV10983EVM eval board) to control a GBM4108H-120T motor. I used the GUI at first, but now I am using a microprocessor to set configuration parameters and control the speed over I2C. I have a lot of little issues but I'll try to summarize the big ones.
My supply voltage is 12V. I know the guide says to use 24V, but that is over the maximum voltage for this motor.
Here are my parameter settings along with my understanding of their meanings (please check...):
0x03: 0xC0 (disable standby, enable configuration)
0x20: 0x69 (Rm = 5.4 measured with multimeter)
0x21: 0x48 (Kt = 117 determined by brute force)
0x22: 0x3A (fixed time control advance because I can't measure the LR time constant)
0x23: 0x00
0x24: 0x60 (open loop current 4A, rate 6 Vcc/s, no brake)
0x25: 0xFD (open loop acc = 2.1 Hz/s first order, 0.22 Hz/s2 second order)
0x26: 0x3F (open/closed threshold = 5.6 Hz)
0x27: 0x9C (ignore the Kt and speed faults, enable AVS)
0x28: 0x0E (current limits to maximum)
0x29: 0xA8 (enable closed loop stall detection, closed loop acc = 0.37 Vcc/s, dead time = 360ns)
0x2A: 0x0D (enable open loop stall detection, disable IPD)
0x2B: 0x0E (closed loop control)
The tuning guide did not work for me in terms of measuring Kt and the LR time constant, because the waveform of the current doesn't look anything like guide says.
That's from starting the motor up and it looks nothing at all like Fig. 19, so I don't know how to get a value for that parameter.
The first issue is that the driver always says my Kt is wrong. I cannot get anything done unless I turn off the Kt fault detection. This is despite the fact that I am setting MotorParam2 to 0x48 (Kt_ph-ct = 117 mV/Hz) and the value I read from {MotorKt1:MotorKt2}/2/1090 is 121 mV/Hz, so my setting is actually as close as possible to the correct value. OK, so, whatever, this worries me but I can work around it by disabling the abnormal Kt fault.
Now, I am trying to get better behavior on motor stalls. I spin the motor at 2 Hz and it does not take much force at all to stall it out by hand. When this happens, the driver sits around for 5 seconds with the "stuck in closed loop" light on, then reboots and the motor starts up again. Is there any way to make this faster? I need the motor to start moving again in less than 5 seconds. Alternatively, which parameters can I adjust to increase the amount of torque required to stall out the motor?