hello,
I'm using the evaluation board for the µC Delfineo F28377D with the evaluation software exemple: IDDK_PM_Servo_F2837x.
The provided exemple use the SPEED_FR macro.
I understand how work this macro and the filter need.
It is well documented.
But The source code realize an output saturation, where documentation do not write onit.:
/* Saturate the output */ \
v.Tmp=_IQsat(v.Tmp,_IQ21(1),_IQ21(-1)); \
Which is the aim to saturate output value to +/-1 because with this, we limit the Motor speed to 3000rpm. (With BASE_FREQ = 200HZ)
I don't understand why limit on Speed measure output?
I try to change BASE_FREQ to 1000Hz to increase maximal rpm to 15000, but this lead to instable system oscillation on low speed (0..150 rpm) And I don't know why..
My idea is to keep BASE_FREQ = 200Hz and does not limit the output of speed macro (so 15000rpm which lead to Speed output value to 5.0) but if we also limit PI_POS macro to +/- 5 and then we keep PI_Speed macro limit to +/-1 (which correspond to torque) Did I make a mistake?