Hi,
I have a high voltage servomotor controller with highly modified Intraspin software with resolver feedback. This works ok with one type of motor.
I want to configure a new type of motor. Then some strange things are happening and I don't understand why.
I got no errors when the motor starts. only a high pitch noise. I already the bandwidth to 1.
when I give a command to spin the motor I see ctrlHandle->Idq_ref.value[1] increase. So the current PI controller gets a reference. But the motor doesn't rotate.
To verify that rotate field and resolver are aligned in the same direction. I changed L1 and L3. At startup the motor starts spinning at a controlled speed. So the speed controller does work.
So what are possible causes of the high pitch noise? The resolver signal is a strong and stable signal. I lowered the bandwidth already to 1.
Thanks.
This are the motor parameters:
#define USER_MOTOR_TYPE MOTOR_Type_Pm // Motor_Type_Pm (All Synchronous: BLDC, PMSM, SMPM, IPM) or Motor_Type_Induction (Asynchronous ACI)
#define USER_MOTOR_NUM_POLE_PAIRS (5) // PAIRS, not total poles. Used to calculate user RPM from rotor Hz only
#define USER_MOTOR_Rr (NULL) // Identified phase to neutral in a Y equivalent circuit (Ohms, float) NULL for PM
#define USER_MOTOR_Rs (3.41) // Identified phase to neutral in a Y equivalent circuit (Ohms, float)
#define USER_MOTOR_Ls_d (0.0105) // For Induction, Identified average stator inductance (Henry, float)
#define USER_MOTOR_Ls_q (0.0105) // For Induction, Identified average stator inductance (Henry, float)
#define USER_MOTOR_RATED_FLUX (0.8165*230.0/466.6) // sqrt(2/3)* Rated V (line-line) / Rated Freq (Hz) (maxspeed(hz) * pole pairs
#define USER_MOTOR_MAGNETIZING_CURRENT (NULL) // Identified magnetizing current for induction motors, else NULL
#define USER_MOTOR_RES_EST_CURRENT (0.15) // During Motor ID, maximum current (Amperes, float) used for Rs estimation, 10-20% rated current
#define USER_MOTOR_IND_EST_CURRENT (-0.15) // During Motor ID, maximum current (negative Amperes, float) used for Ls estimation, use just enough to enable rotation
#define USER_MOTOR_MAX_CURRENT (1.42) // CRITICAL: Used during ID and run-time, sets a limit on the maximum current command output of the provided Speed PI Controller to the Iq controller
#define USER_MOTOR_IDENT_FREQUENCY_Hz (20.0) // During Motor ID, maximum commanded speed (Hz, float), ~10% rated
#define USER_MOTOR_FLUX_EST_FREQ_Hz (5.0) // During Motor ID, maximum commanded speed (Hz, float). Should always use 5 Hz for Induction.
// Number of lines on the motor's quadrature encoder
#define USER_MOTOR_ENCODER_LINES (360.0) // Number of lines on the motor's quadrature encoder
#define USER_MOTOR_MAX_SPEED_KRPM (5.6) // Maximum speed that the motor
#define USER_SYSTEM_INERTIA (0.01) // Inertia of the motor & system, should be estimated by SpinTAC Velocity Identify
#define USER_SYSTEM_FRICTION (0.01) // Friction of the motor & system, should be estimated by SpinTAC Velocity Identify
#define USER_SYSTEM_BANDWIDTH_SCALE (0.5)