rs online recalibration - texas instrumentsprocessors.wiki.ti.com/images/4/45/is_workshop_16... ·...

13
Rs Online Recalibration

Upload: others

Post on 02-Aug-2020

12 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Rs Online Recalibration - Texas Instrumentsprocessors.wiki.ti.com/images/4/45/IS_Workshop_16... · EST_setRsOnLine_qFmt(obj->estHandle,EST_getRs_qFmt(obj->estHandle)); Modifying R

Rs Online Recalibration

Page 2: Rs Online Recalibration - Texas Instrumentsprocessors.wiki.ti.com/images/4/45/IS_Workshop_16... · EST_setRsOnLine_qFmt(obj->estHandle,EST_getRs_qFmt(obj->estHandle)); Modifying R

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

Page 3: Rs Online Recalibration - Texas Instrumentsprocessors.wiki.ti.com/images/4/45/IS_Workshop_16... · EST_setRsOnLine_qFmt(obj->estHandle,EST_getRs_qFmt(obj->estHandle)); Modifying R

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

Page 4: Rs Online Recalibration - Texas Instrumentsprocessors.wiki.ti.com/images/4/45/IS_Workshop_16... · EST_setRsOnLine_qFmt(obj->estHandle,EST_getRs_qFmt(obj->estHandle)); Modifying R

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

Page 5: Rs Online Recalibration - Texas Instrumentsprocessors.wiki.ti.com/images/4/45/IS_Workshop_16... · EST_setRsOnLine_qFmt(obj->estHandle,EST_getRs_qFmt(obj->estHandle)); Modifying R

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

Page 6: Rs Online Recalibration - Texas Instrumentsprocessors.wiki.ti.com/images/4/45/IS_Workshop_16... · EST_setRsOnLine_qFmt(obj->estHandle,EST_getRs_qFmt(obj->estHandle)); Modifying R

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

Page 7: Rs Online Recalibration - Texas Instrumentsprocessors.wiki.ti.com/images/4/45/IS_Workshop_16... · EST_setRsOnLine_qFmt(obj->estHandle,EST_getRs_qFmt(obj->estHandle)); Modifying R

Phase Current with Rs Online at maximum load (current distortion barely noticeable)

Without Rs Online

With Rs Online

25x Zoom

25x Zoom

Page 8: Rs Online Recalibration - Texas Instrumentsprocessors.wiki.ti.com/images/4/45/IS_Workshop_16... · EST_setRsOnLine_qFmt(obj->estHandle,EST_getRs_qFmt(obj->estHandle)); Modifying R

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

Page 9: Rs Online Recalibration - Texas Instrumentsprocessors.wiki.ti.com/images/4/45/IS_Workshop_16... · EST_setRsOnLine_qFmt(obj->estHandle,EST_getRs_qFmt(obj->estHandle)); Modifying R

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);

}

Page 10: Rs Online Recalibration - Texas Instrumentsprocessors.wiki.ti.com/images/4/45/IS_Workshop_16... · EST_setRsOnLine_qFmt(obj->estHandle,EST_getRs_qFmt(obj->estHandle)); Modifying R

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));

Page 11: Rs Online Recalibration - Texas Instrumentsprocessors.wiki.ti.com/images/4/45/IS_Workshop_16... · EST_setRsOnLine_qFmt(obj->estHandle,EST_getRs_qFmt(obj->estHandle)); Modifying R

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

Page 12: Rs Online Recalibration - Texas Instrumentsprocessors.wiki.ti.com/images/4/45/IS_Workshop_16... · EST_setRsOnLine_qFmt(obj->estHandle,EST_getRs_qFmt(obj->estHandle)); Modifying R

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

Page 13: Rs Online Recalibration - Texas Instrumentsprocessors.wiki.ti.com/images/4/45/IS_Workshop_16... · EST_setRsOnLine_qFmt(obj->estHandle,EST_getRs_qFmt(obj->estHandle)); Modifying R

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