This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Instaspin Lab02b ACIM identification error

I am trying to perform identification of an ACIM motor with lab02b. My motorware version is 14.

It performs identification with DC bus voltage 320V. There is no problem. But when I increase the DC bus voltage to 400V after EST_State_RatedFlux estimator state becomes EST_State_Error. At EST_State_RatedFlux state it seems that motor frequency is restricted to 1 Hz instead of 5 Hz. 

Actually my motor label is as follows:

Y connection:

Voltage:380 V

Frequency:50 Hz

Power:1500 W

Current: 3.6A

Poles: 4

Delta Connection:

Voltage:220 V

Frequency:50 Hz

Power:1500 W

Current: 6.2A

Poles: 4

My motor is delta connected and I wrote down following values in user.h

#define USER_MOTOR_TYPE MOTOR_Type_Induction
#define USER_MOTOR_NUM_POLE_PAIRS (2)
#define USER_MOTOR_Rr (NULL)
#define USER_MOTOR_Rs (NULL)
#define USER_MOTOR_Ls_d (NULL)
#define USER_MOTOR_Ls_q (NULL)
#define USER_MOTOR_RATED_FLUX (0.8165*220.0/50.0)
#define USER_MOTOR_MAGNETIZING_CURRENT (NULL)
#define USER_MOTOR_RES_EST_CURRENT (0.7)
#define USER_MOTOR_IND_EST_CURRENT (NULL)
#define USER_MOTOR_MAX_CURRENT (6.2)
#define USER_MOTOR_FLUX_EST_FREQ_Hz (5.0)

But I think instaspin assumes that the motor is Y connected, but my connection is delta. Is there any thing I need to change in the code for a delta connected motor?For an example do I need to change the values in user.h? 

What can be the reason for the estimator SW to enter into error state?

  • Rs identification

    OK, let's see one thing first. Do you get proper Rs identification? First, make sure the current is slowly increased to 0.7 Amperes (as your user.h), and make sure variable: "gMotorVars.Rs_Ohm" is stable at the end of Rs identification

    Ramp up

    With motor unloaded, could you please confirm that the motor ramps up to 5 Hz (per your user.h)?

    Id Rated

    During this stage, Id is increased, until the estimated flux reaches the specified flux (in your user.h, the target flux = 0.8165*220.0/50.0 = 3.5926 Hz)

    While ramping up Id, you will see the amplitude of the currents go higher and higher, until the specified flux is reached. Could you please share a plot of a phase current as Id is creased while identifying Id Rated?


    Let's stop there for now, and let's make sure the first three steps are correctly identified.

    -Jorge

  • My user.h parameters are:

    #define USER_MOTOR_TYPE MOTOR_Type_Induction
    #define USER_MOTOR_NUM_POLE_PAIRS (2)
    #define USER_MOTOR_Rr (NULL)
    #define USER_MOTOR_Rs (NULL)
    #define USER_MOTOR_Ls_d (NULL)
    #define USER_MOTOR_Ls_q USER_MOTOR_Ls_d
    #define USER_MOTOR_RATED_FLUX (0.8165*220.0/50.0)
    #define USER_MOTOR_MAGNETIZING_CURRENT (NULL)
    #define USER_MOTOR_RES_EST_CURRENT (1.0)
    #define USER_MOTOR_IND_EST_CURRENT (NULL)
    #define USER_MOTOR_MAX_CURRENT (8.2)
    #define USER_MOTOR_FLUX_EST_FREQ_Hz (5.0)

    Rs identification


    There is no problem with Rs it reads appropriately. The value is as much as I expect.

    Ramp -up

    While identifying Id_rated it increases the current step by step and reaches 5 Hz in frequency as we expect. But i see that motor current saturates somehow due to some reason. You can see it on the figure. What can be the reason?

    Moreover, after Id rated identification frequency becomes 1 Hz

    .

  • during Id Rated how does gMotorVars.Flux_VpHz change?

  • I have put two graphs below. First one is the gMotorVars.Flux_VpHz that I have taken from thegraph window of CCS. Second one is the motor phase currents waveform from my oscilloscope screen. 

    In the first graph, it seems that after sample 115, there is a sudden increase in gMotorVars.Flux_VpHz. This is the instant where state changes from EST_State_IDRated to EST_State_RatedFlux 

  • try increasing this value in user.h to
    #define USER_IDRATED_DELTA (0.0005)
  • I have changed it, the result is the same.
  • One more question: is it possible to start estimator states from Locked Rotor State. I mean are there any function like EST_setState()?
  •   no, you can't start at an intermediate state in the motor ID state machine