Other Parts Discussed in Thread: MOTORWARE
Hi all,
I am trying to implement field weakening to torque control application. I am currently using lab5a for the torque control. First I studied lab9 to understand the field weakening and then added field weakening function to lab5a (using fw.c and fw.h). For the testing I set Vs_ref for a small value and tested. It was stable for small torque commands (low accelerations) but Vs was very unstable with large torque commands ( high accelerations). Then I tried to tune the system by changing FW_INC_DELTA , FW_DEC_DELTA, and FW_NUM_ISR_TICKS_PER_CTRL_TICK. If the FW_INC_DELTA , FW_DEC_DELTA are small , there is a lare overshoot with Vs but less ripples on Vs. If they are large, there is a small overshoot with large ripple. Then I tried to add a PID to change the FW_INC_DELTA , FW_DEC_DELTA . Also I tried to add PID to make Id_ref vale directly without using increment, decrement method. But Still I couldn't fix this issue for high acceleration.
How can safely enter to field weakening region without a overshoot of Vs when there is high acceleration.
Hope to hear from you.
Thanks.