Tool/software:
Hi,
It seems, that the inductance estimation frequency for my ACIM motor is extremly slow and I don't know how to change that. I'm using the MotorControl SDK V5.0.2 with custom hardware.
The hardware works fine for PMSM motors so far (identification like in the datasheet on several motors), but for ACIM there seems to be a problem.
The overall estimation seems like in the spruhj1i, except the inductance and Rr estimation is extremly slow in my example.
From Docu:
Measured (Note that there is some noise on the current probe, the actual signal looks pretty good):
IdMag:
After IdMag found:
So the motor works fine after identification, but I'm not sure if the measured inductance is good or not (probably not).
The parameters I'm using are:
#define USER_MOTOR1_TYPE MOTOR_TYPE_INDUCTION #define USER_MOTOR1_NUM_POLE_PAIRS (1) //Only 1 pole pair #define USER_MOTOR1_Rr_Ohm (NULL) #define USER_MOTOR1_Rs_Ohm (NULL) #define USER_MOTOR1_Ls_d_H (NULL) #define USER_MOTOR1_Ls_q_H (NULL) #define USER_MOTOR1_MAGNETIZING_CURRENT_A (NULL) #define USER_MOTOR1_RATED_FLUX_VpHz (0.8165f*230.0f/50.0f)//(0.8165f*400.0f/50.0f) //STAR: 230VAC, DELTA: 400VAC #define USER_MOTOR1_RES_EST_CURRENT_A (0.5f) #define USER_MOTOR1_IND_EST_CURRENT_A (NULL) #define USER_MOTOR1_MAX_CURRENT_A (2.0f) #define USER_MOTOR1_FLUX_EXC_FREQ_Hz (5.0f) #define USER_MOTOR1_NUM_ENC_SLOTS (NULL) #define USER_MOTOR1_INERTIA_Kgm2 (7.06154e-05f) #define USER_MOTOR1_FREQ_NEARZEROLIMIT_Hz (1.0f) // Hz #define USER_MOTOR1_RATED_VOLTAGE_V (400.0) #define USER_MOTOR1_FREQ_MIN_Hz (1.0) // Hz #define USER_MOTOR1_FREQ_MAX_Hz (400.0) // Hz #define USER_MOTOR1_FREQ_LOW_Hz (5.0) // Hz #define USER_MOTOR1_FREQ_HIGH_Hz (200.0) // Hz #define USER_MOTOR1_VOLT_MIN_V (15.0) // Volt #define USER_MOTOR1_VOLT_MAX_V (650.0) // Volt #define USER_MOTOR1_FORCE_DELTA_A (0.005f) // A #define USER_MOTOR1_ALIGN_DELTA_A (0.001f) // A #define USER_MOTOR1_FLUX_CURRENT_A (1.0f) // A #define USER_MOTOR1_ALIGN_CURRENT_A (USER_MOTOR1_MAX_CURRENT_A) // A #define USER_MOTOR1_STARTUP_CURRENT_A (USER_MOTOR1_MAX_CURRENT_A) // A #define USER_MOTOR1_TORQUE_CURRENT_A (USER_MOTOR1_MAX_CURRENT_A) // A #define USER_MOTOR1_OVER_CURRENT_A (12.0f) // A #define USER_MOTOR1_SPEED_START_Hz (1.0) #define USER_MOTOR1_SPEED_FORCE_Hz (25.0) #define USER_MOTOR1_ACCEL_START_Hzps (10.0) #define USER_MOTOR1_ACCEL_MAX_Hzps (10.0) #define USER_MOTOR1_SPEED_FS_Hz (3.0) // only for encoder, N/A #define USER_MOTOR1_ENC_POS_MAX (USER_MOTOR1_NUM_ENC_SLOTS * 4 - 1) #define USER_MOTOR1_ENC_POS_OFFSET (668) // Only for eSMO, N/A #define USER_MOTOR1_KSLIDE_MAX (1.50f) #define USER_MOTOR1_KSLIDE_MIN (0.15f) #define USER_MOTOR1_PLL_KP_MAX (7.25f) #define USER_MOTOR1_PLL_KP_MIN (1.25f) #define USER_MOTOR1_PLL_KP_SF (5.0f) #define USER_MOTOR1_PLL_KI (2.8125E-06f) // Not used, reserve #define USER_MOTOR1_BEMF_THRESHOLD (0.5f) #define USER_MOTOR1_BEMF_KSLF_FC_SF (2.0f) #define USER_MOTOR1_THETA_OFFSET_SF (1.0f) #define USER_MOTOR1_SPEED_LPF_FC_Hz (200.0f) // for IS-BLDC, N/A #define USER_MOTOR1_RAMP_START_Hz (1.0f) #define USER_MOTOR1_RAMP_END_Hz (30.0f) #define USER_MOTOR1_RAMP_DELAY (1) // for Rs online calibration #define USER_MOTOR1_RSONLINE_WAIT_TIME (60000U) // 5min/300s at 5ms base #define USER_MOTOR1_RSONLINE_WORK_TIME (24000U) //2min/120s at 5ms base
So the flux excitation frequency is 5Hz and according to the manual, that should also be used for the inductance estimation, but it seems only to start with that. Any idea, what is going wrong here?
Edit: Are there somehow more information, why the motor does not keep the flux exitation frequency? only get EST_STATE_LS from the estimator, but not why it is not keeping up the field frequency?
Hi,
Sorry for the delay. You are evaluating the Universal Motor Control Lab, correct? There are some specific considerations for ACIM vs PMSM motor ID.
I will see if someone with more expertise on our motor ID routine can offer some suggestions. I will provide some thoughts below for the time being.
Best,
Kevin
The lab and FAST algorithm are not validated for ACIM, and it's not recommended for ACIM as well. If you want to use the InstaSPIN-FOC for ACIM, please try to use the lab and the supporting devices in motorWare.
Hi,
Ok, so you only support ACIM on the old microcontrollers (picolo) that are compatible with motorWare? Will there be support for the new C2000 in near future?
You can design your own algorithm for ACIM with any C2000 devices. We have plan to design and update the algorithm for ACIM as well, but it's not available in a short time.