rs online recalibration - texas instrumentsprocessors.wiki.ti.com/images/4/45/is_workshop_16... ·...
TRANSCRIPT
Rs Online Recalibration
Rs Online Recalibration
FAST™ EstimatorFlux, Angle, Speed, Torque
Motor Parameters ID
Vbus
Vα_in
Vβ_in
Iα_in
Iβ_in
Angle
Speed
Flux
Torque
Enable Motor Identification
Enable PowerWarp™
Enable Rs Online Recalibration
EST_run
ROM
Rs~
Rr~
Irated~yrated~
Lsd~
Lsq~
q~
w~
t~
y~
t~
w~
y~
Irated~
q~
Enable Force Angle Startup
Motor Phase Currents
Motor Phase Voltages
Bus Voltage
Motor Type
Resistance vs. Temperature • R: Resistance in Ohms at temperature T, in Ohms (Ω)
• R0: Resistance in Ohms at temperature T0, in Ohms (Ω)
• α: Temperature coefficient of the material, in inverse Celsius (ºC-1)
• T: Final temperature of the material, in Celsius (ºC)
• T0: Reference temperature of the material, in Celsius (ºC)
• Example: – R0 = 10.0 Ω (Initial Motor Resistance at Room Temperature)
– T0 = 20.0 °C (Room Temperature)
– α = 0.00393 °C-1 (Copper Temperature Coefficient)
– T = 150 °C (Motor Heats Up to this Temperature)
– R = ? (Final Motor Resistance at T Temperature)
11.15
2015000393.010.10
1 00
R
R
TTRR
51% Increase in Rs!
Linear Approximation of
Resistance Vs Temperature
Accurate Rs Knowledge Needed at Low Speeds Including Startup
• Rs variations affect the sensorless performance since at low speed the main contributor to the voltage is dropped in
• Outside of low speeds, Rs variations do not affect performance much since voltage drop is mainly caused by
ssiR
sdt
di
s eL s
Introduction to Rs Online Recalibration
SVM
IqPI
SpeedPI
INVPARK
CLARKE
CLARKE
PARK
IdPI
TrajRamp
FAST™ EstimatorFlux, Angle, Speed, Torque
Motor Parameters ID
PWMDriver
ADCDriver
++
User_SpdRef
User_IqRef
User_IdRef
Vq
Vd
Vα_out
Vβ_out
Ta
Tb
Tc
Ia
Ib
Ic
Va
Vb
Vc
Vbus
Vα_in
Vβ_in
Iq_ref
Iq
Id_ref
Id
wref
Id
Iq
Iα_in
Iβ_in
Angle
Speed
Flux
Torque
Enable Motor Identification
Enable Rs Online Recalibration
Rs~
Rr~
Irated~yrated~
Lsd~
Lsq~
q~
w~
t~
y~
t~
w~
y~
Irated~
q~ q
~
q~
w~
Spdout
Enable Force Angle Startup
Torque Mode
Enable PowerWarp™
Motor Type
Phase Current with Rs Online at medium load (medium load does not need Rs Online)
25x Zoom
25x Zoom
Without Rs Online
With Rs Online
Phase Current with Rs Online at maximum load (current distortion barely noticeable)
Without Rs Online
With Rs Online
25x Zoom
25x Zoom
Rs Online vs. Rs Offline Motor at Standstill
Enable Rs Offline
Recalibration
Recalibrate Rs Offline
(Motor at standstill)
Rs Offline Recalibrated?
Disable Rs Offline
Recalibration
Enable Rs Online
Recalibration
Recalibrate Rs Online
(Motor is spinning)
Is motor still running?
Disable Rs Online
Recalibration
Stop Motor
YES
NO YES
NO
Run Motor
Rs Offline Motor Stopped
Rs Online Motor Spinning
Enabling Rs Online Recalibration
• Configure current to be injected. Typically a 5 to 10% value of the rated current is enough
RsOnLineCurrent_A = _IQ(USER_MOTOR_MAX_CURRENT * 0.05);
• When Rs Online is close to the Rs Offline value, switch on Rs Online as follows:
float32_t RsError_Ohm = gMotorVars.RsOnLine_Ohm - gMotorVars.Rs_Ohm;
EST_setFlag_enableRsOnLine(obj->estHandle,TRUE);
EST_setRsOnLineId_mag_pu(obj->estHandle,_IQmpy(RsOnLineCurrent_A,factor)));
if(abs(RsError_Ohm) < (gMotorVars.Rs_Ohm * 0.05))
{
EST_setFlag_updateRs(obj->estHandle,TRUE);
}
Disabling Rs Online Recalibration
• To disable Rs Online, use the example below, which clears flags, and clears currents being injected
EST_setRsOnLineId_mag_pu(obj->estHandle,_IQ(0.0));
EST_setRsOnLineId_pu(obj->estHandle,_IQ(0.0));
EST_setRsOnLine_pu(obj->estHandle,_IQ(0.0));
EST_setFlag_enableRsOnLine(obj->estHandle,FALSE);
EST_setFlag_updateRs(obj->estHandle,FALSE);
EST_setRsOnLine_qFmt(obj->estHandle,EST_getRs_qFmt(obj->estHandle));
Modifying Rs Online Parameters
• Injected Current Magnitude
• Slow Rotating Angle
• Delta Increments and Decrements of the Rs Online Value
• Filter Parameters
• For details about changing Rs Online Parameters refer to the Rs Online Section of the User’s Guide. SPRUHJ1
Monitoring Rs Online Resistance Value
• With a simple call, the Rs Online can be monitored
float32_t RsOnLine_Ohm = EST_getRsOnLine_Ohm(obj->estHandle);
2.7
2.8
2.9
3
3.1
3.2
3.3
3.4
3.5
0.0
30.0
60.0
90.0
120.
0
15.0
180.
0
210.
0
240.
0
270.
0
Rs (Ohm)
Time (s)
Rs
Example of Using the Rs Online Feature as a Temperature Sensor
Parameter Value Description
R 3.45 Ω Resistance at temperature T. Value found with Rs Online
R0 2.8 Ω Resistance at temperature T0. Value found with Rs Offline
α 0.00393 °C-1 Temperature Coefficient of Copper
T0 20 °C Reference Temperature when Rs Offline measured R0
T ? Final Temperature of Copper based on Rs Online
C07.79
00393.0
18.2
45.3
0.20
10
0
T
T
R
R
TT
2.7
2.8
2.9
3
3.1
3.2
3.3
3.4
3.5
0.0
30.0
60.0
90.0
12
0.0
15.0
18
0.0
21
0.0
24
0.0
27
0.0
Rs (Ohm)
Time (s)
Rs