Other Parts Discussed in Thread: DRV8353, UCC27714, MOTORWARE, DRV8312, DRV8302, TMS320F28069
Can anyone explain why we are seeing this strange behavior and loss of control during regen, and how we can tune the controller to eliminate it?
I am seeing a problem with my custom design where when I set Iqref higher and higher, at some point, the torque delivered to the load decreases with increasing Iqref. This is with a fixed speed load on a dynamometer. If I continue to increase Iqref, the controller becomes confused and stutters a lot and produces unsteady torque. We saw this behavior at both 550 RPM and 850 RPM. VBAT was about 55 V, and the motor rated speed is about 2600 RPM at 55 V. The motor is a 10 pole-pair outrunner. We are using a large test battery that can accept very large regen current without any problem.
Here is a graph showing measured torque, measured phase current (peak) and estimated torque (from FAST output) vs Iqref. In the graph, I am showing Iqref positive, but of course, since it is regen, the Iqref we are setting is actually negative.
The code we were running is essentially lab 5a. We adjusted Iqref using the debugger.
It seems like Rs can affect this problem. In one case we forced Rs to be slightly higher than the result of the ID, and that raised the Iqref level at which control was lost.
user.h stuff:
2625.user.h
We have a DRV 8353RS gate driver. Low-side shunts are 500 uOhms. Shunt amplifier gain is 40 V/V. Vref is 3.3 V. Hardware phase filters have a cutoff frequency of about 1400 Hz.
Note: in the past we have performed testing on this motor with other controllers and were able to achieve torque levels in regen higher than this. I don't think stator saturation is happening.
Back emf of motor when spinning freely (no controller attached)
Current waveform after loss of control (not sure if this is typical... it seems like the waveform looked a bit different every time)