Other Parts Discussed in Thread: TMS320F28054M
I'm trying to implement ACIM motor identification with a project based on Lab 10b.
Motor ID is failing during the flux estimation (with EST_ErrorCode_FluxError).
The processor is the TMS320F28054M.
User parameters are:
#define USER_MOTOR_TYPE MOTOR_Type_Induction (Asynchronous ACI)
#define USER_MOTOR_NUM_POLE_PAIRS (2)
#define USER_MOTOR_Rr (2.394)
#define USER_MOTOR_Rs (4.20)
#define USER_MOTOR_Ls_d (0.02757)
#define USER_MOTOR_Ls_q (0.02757)
#define USER_MOTOR_RATED_FLUX (3.0)
#define USER_MOTOR_MAGNETIZING_CURRENT (1.414)
#define USER_MOTOR_RES_EST_CURRENT (0.5)
#define USER_MOTOR_IND_EST_CURRENT (NULL)
#define USER_MOTOR_MAX_CURRENT (2.55)
#define USER_MOTOR_FLUX_EST_FREQ_Hz (5.0)
#define USER_MOTOR_ENCODER_LINES (0)
define USER_MOTOR_MAX_SPEED_KRPM (1.8)
This is a 220VAC 60Hz motor, so the correct flux value should be around 3 V/Hz.
The estimator runs:
After EST_State_Rs, gMotorVars.Rs_Ohm is set to 3.67
Then during EST_State_RampUP the motor ramps to 150 RPM
Then during EST_State_IdRated the flux gMotorVars.Flux_VpHz settles to about 3.0. Which matches the USER flux setting.
At the end of EST_State_IdRated, gMotorVars.MagnCurr_A is set to 1.78.
But then during ESTState_RatedFlux the flux estimate increases to 3.6 and the EST_ErrorCode_FluxError is triggered. The limit seems to be 120% of the USER value 1.2 * 3.0 = 3.6.
I've tried increasing USER_MOTOR_RATED_FLUX from 3.0 to 4.0, but then the estimated flux increases to 4.8 and the error is still tripped.
Proj_lab02a has function calls to recalcKpKi(), setFeLimitZero() & acim_Dir_qFmtCalc(), but proj_lab10b doesn't. I've added these calls to to my project and the flux estimatoin still fails.
What needs to be added to proj_lab10b to perform motor identification? Maybe my description of the problem will help pin-point it.
Thanks.

