System Optimization of Motor Resolver
System Optimization of Motor Resolver
Ansoft Corporation
Abstract
Resolver as an angular position sensor is widely used Resolver system is complicated, equation based method is insufficient Resolver normally operates in the environment that has EMI/EMC issue Fast response and accurate position feedback is critical in the electrification of automotives and aircrafts A system level circuit simulator is needed to accurately account for all the above-mentioned factors
Outline
Variable Reluctance Resolver FEA Model Resolver Excitation Signal Generator Resolver-to-Digital Converter Ideal Resolver System Behavioral Model Resolver Cable Parasitics Resolver System Integration Conclusions
Cable (Q3D)
(Simplorer)
Higher Resolution (up to 16-bit) Wider Environment Temperature (-55~+220C max) Higher Tolerance to Vibration (20~40gs) Higher Tolerance to Dust Robust EMC/EMI Performance(no electronics on board, cab be shielded) More Sizes Available
2D
1.00
0.50
Y3 [V]
0.00
-0.50
-1.00
-Parametric Sweep Geometry -Sweep Number of Turns in the Slots -Check Different Winding Arrangements -Try Different Materials -Innovate New Designs -Etc.
Goal:
* Optimize Outputs * Reduce Cost
Sweep Angle (0~90 deg, in steps of 0.5 deg) Sweep Source Magnitude (-2.5~2.5 Amp Turns, 20 counts) Total: 181*20 = 3,620 rows Each row takes 50 seconds to simulate Total simulation time on one machine = 181,000 seconds
50.28 Hours!
Use DSO (Distributed Analysis) 8 Machines were used Simulation Time = 9 Hours 10 Minutes
Almost 6 Times!
Cable (Q3D)
(Simplorer)
Oscillators
OPV51
-
N0012
R3
+
33 R10
V
N0022 VM1
R4
Signal Generator
N0045
N0053
VM3
2DGraphSel1 9.10 7.50 5.00 2.50 250.00m 0 250.00u Excit... Excit...
E1
E2 E4
N0051
C1
47n
2DGraphS... 1.80 1.00 0 -1.00 -1.80 0 100.00u 250.00u E2.V [V] 3.45 2.00 0 -2.00 -3.46 0
OPV53
+
OPV54
-
N0051
R11
+
33 R12 2.7k PNP11 R14 R16
V
100.00u
250.00u
VM2
Cable (Q3D)
(Simplorer)
Resolver-to-Digital Converter
Classical RDC Algorithm
Us1
Phase Shift
+
R2 C1
+
Magnitude Match
VM2
+ +
OPV53
-
OPV52
-
+
V
OPV51
-
R7
VM1
R1
R4
Resolver:
V_excitation = U1*sin(2*PI*Freq*t) V_Out_Sin = U2*sin(2*PI*Freq*t)*sin(Thita) V_Out_Cos = U2*sin(2*PI*Freq*t)*cos(Thita)
R8 R3 R6 R5 Uc1
RDC:
90 Degree Phase shift: V_Out_Sin_1 = U2*sin(2*PI*Freq*t+90deg)*sin(Thita) = U2*cos(2*PI*Freq)*sin(Thita) Summation: V_sc = V_Out_Sin_1 + V_Out_Cos = U2_2 *sin(2*PI*Freq*t + Thita) Magnitude Match: V_sc_1 = U1 *sin(2*PI*Freq*t + Thita) Comparison: V_excitation = U1*sin(2*PI*Freq*t) V_sc_1 = U1 *sin(2*PI*Freq*t + Thita)
TRANS1
STATE1
TRANS3
STATE3
SET: Vin_ref:=1
SET: Vo_square:=1
STATE2
TRANS2
STATE4
TRANS4
SET: Vin_ref:=-1
SET: Vo_square:=-1
FML_INIT1
ICA:
Position
EQU
FML_INIT2
ICA:
Delay
ICA:
Vin_ref:=0 Vo_square:=0
t1:=0 t2:=0
GZ1
Position_out_final:=0
TRANS7
SET: t2:=t
20.00
SET: t3:=t2-t1
PHI
theta
sin
Vsinomegatsintheta
phi
Theta
sinomegat
E0 E0
V Vsinomegatcostheta offset
Excitation
resolver _RD_IC
Cable (Q3D)
(Simplorer)
RLC Matrix
Sub-circuit
T3 N0023 T2 T1 N0053
Resolver_Cable_6twists
T6 T5 T4
T3 T2 T1
Resolver_Cable_6twists
T6 T5 T4
T3 T2 T1
Resolver_Cable_6twists
T6 T5 T4
T3 T2 T1
Resolver_Cable_6twists
T6 T5 T4
T3 T2 T1
Resolver_Cable_6twists
T6 T5 T4
N0086 T3 T2 T1
Resolver_Cable_6twists
T6 T5 T4
T3 T2 T1
Resolver_Cable_6twists
T6 T5 T4
T3 T2 T1
Resolver_Cable_6twists
T6 T5 T4
T3 T2 T1
Resolver_Cable_6twists
T6 T5 T4
T3 T2 T1
Resolver_Cable_6twists
T6 T5 T4 N0087
Cable (Q3D)
(Simplorer)
Input_AC_Mag := 1 Input_AC_Freq:=12k Conductor_Ratio:=0.1 Number_of_Rotor_Poles := Rotor_Speed :=100 Tend := 45/(Rotor_Speed*(360/60)) Hmin := 1/Input_AC_Freq/100 Hmax := Hmin
Resolver
2DGraphSel1 994.27m 100.00m 2DGraphSel1 Vout_sin Vout_cos
Vin
Input_AC_Mag := 1 Input_AC_Freq:=12k Conductor_Ratio:=0.1 Number_of_Rotor_Poles :=2 Rotor_Speed :=100 Tend := 45/(Rotor_Speed*(360/60)) Hmin := 1/Input_AC_Freq/100 Hmax := Hmin
Magnitude Match
VM2
+ +
OPV53
-
OPV52
-
+
V
OPV51
-
R7
VM1
Us1
R1
R4
R8 R3
Resolver
R5 Uc1
2DGraphSel1 994.27m 100.00m 2DGraphSel1 Vout_sin Vout_cos
R6
TRANS1
STATE1
TRANS3
STATE3
Vin
SET: Vin_ref:=1
SET: Vo_square:=1
2DGraphSel1
STATE2
TRANS2
STATE4
TRANS4
VM1.... Vin
SET: Vin_ref:=-1
SET: Vo_square:=-1
FML_INIT1
ICA:
Position
EQU
FML_INIT2
ICA:
Delay
ICA:
Vin_ref:=0 Vo_square:=0
t1:=0 t2:=0
GZ1
Position_out_final:=0
Vo_s... VM1....
20.00
TRANS7
2DGraphSel1 1.10
Vin Vin_ref
500.00m
STATE8
TRANS8
WAIT
SET: t2:=t SET: t3:=t2-t1 TRC (GZ1.VAL < 1) AND (Pulse_pos = 1) SET: Position_out :=Input_AC_Freq*t3*180
True
20.00
20.00
0 0 5.00m 7.50m
0 0 5.00m 7.50m
20.00
20.00
0 0 500.00u 750.00u
VM1
S_ROTB1
Cable_Excitation
N0053 source12 N0087 Rotor_22
+
VM3
V
+
V
N0086 N0023
out11
E1
E2
E4
VM5
out12
R1
Cable_Out_Cos
N0087 N0053
out21
out22
Resolver_FEA_Link
FEA
Phase Shift
+
R10 C1
+
Magnitude Match
VM2
+ +
N0086 N0023
VM6
R2
Cable_Out_Sin
N0087 N0053
OPV53
-
OPV52
-
+
V
Us1 R9 Uc1
OPV51
-
R7
VM4
R4
R8 R3 R6
2DGraphSel1 1.80 1.00 910.00m 500.00m E2.V [V] 0 -500.00m -920.00m 9.00m 9.50m 10.00m 0
2DGraphSel3 R1.V [V] VM5.V [V] 910.00m 500.00m 0 -500.00m -910.00m 5.00m 10.00m 2DGraphSel3 VM3.V [V] VM1.V [V] 91.77 0
TRANS1
STATE1
R5
TRANS3
STATE3
0 -1.00 -1.80
5.00m
10.00m
2DGraphSel3
ICA:
Vin_ref:=0 Vo_square:=0
t1:=0 t2:=0
GZ1
Position_out_final:=0
3.50 2.00 0
TRANS7
STATE7
TRC Position_out>Position_out_final
SET: t1:=t TRC (GZ1.VAL > 0) AND (Pulse_pos =0) STATE8 TRANS8 WAIT
0 0 5.00m 8.59m
2DGraphSel3
2DGraphSel1
SET: t2:=t SET: t3:=t2-t1 TRC (GZ1.VAL < 1) AND (Pulse_pos = 1) SET: Position_out :=10000*t3*180
True
SIMP...
1.00
SIMP...
+
+
2.7k NPN1 R5 33 R9
E3
VM1
source11 Rotor_21
S_ROTB1
OPV52
N0022
+ -
N0023
N0086
OPV51
Cable_Excitation
+
V
N0053
source12 N0087
Rotor_22
33
N0051
R10 +
N0022 VM1
R4 2.7k
2DGraphSel1
VM3
PNP1 R6
+
V
N0086 N0023
out11
E1
E2
E4
9.10 7.50 5.00 2.50 250.00m Excit... Excit...
VM5
out12
R17
200
R1
Cable_Out_Cos
N0087 N0053
out21
C1
47n
out22
Resolver_FEA_Link
FEA
+
V
N0086 N0023
Phase Shift 0
1.24k
250.00u
Magnitude Match
VM2
+
VM6
R10
C1
N0045 R7 442
R8
E6
R2
Cable_Out_Sin
N0087 N0053
OPV53 +
+
+ OPV51
OPV53
N0053
OPV52
-
+
V
Us1
N0051
OPV54 --
R9 R11
R4
R7 R15 33
+
VM4
T3
33 R16
T6 T5 T4
Resolver_Cable_6twists
T3 T2 T1
1.80 1.00
Resolver_Cable_6twists
T6 T5 T4
T3 T2 2DGraphSel1 T1
Resolver_Cable_6twists
T6 T5 T4
E2.V [V]
T3 T2
910.00m
T6 T5
500.00m
Resolver_Cable_6twists
T3 T2 2DGraphSel3 T1
R1.V [V] VM5.V [V]
Resolver_Cable_6twists
T6 T5
910.00m 2DGraphSel3 500.00m 0 -500.00m -910.00m R2.V [V] VM6.V [V]
Uc1
R12
N0023 V VM2
R8
T2 T1
R3
R6
T1
T4
T4
TRANS1
STATE1
R5
TRANS3
N0053
5.00m
10.00m
2DGraphSel3
N0086 T6 T5 T4 T3 T2 T1
Resolver_Cable_6twists
T3
TRC VM4.V < 0
T6 T5 T4
T3
0
T6 T5
-2.00 -3.35
Resolver_Cable_6twists
T3 T2 T1
T6 T5
T3 T2 T1
Resolver_Cable_6twists
T6 T5 T4 N0087
S_ROTB1... Position_o..
T2 T1 ICA:
Position_out_final:=0 Resolver_Cable_6twists
T2 T1
Vin_ref:=0 Vo_square:=0
t1:=0 t2:=0
GZ1
9.00m
T4
9.50m
10.00m
T4
Resolver_Cable_6twists
50.00
2DGraphSel3
TRANS7
STATE7
SET: t1:=t TRC (GZ1.VAL > 0) AND (Pulse_pos =0) STATE8 TRANS8 WAIT
0 0
theta
Scope 1
5.00m
sin
Vsinomegatsintheta
8.59m
PHI phi
Theta
2DGraphSel3
sinomegat
2DGraphSel1 1.10
Vsinomegatcostheta
2DGraphSel1
SET: t2:=t SET: t3:=t2-t1 TRC (GZ1.VAL < 1) AND (Pulse_pos = 1) SET: Position_out :=10000*t3*180
True
E0
2.00u
offset
SIMP...
resolver
cos
1.00
SIMP... Excitation
Conclusions
Resolver Deserves More Attention for Applications where Rugged, High-accuracy Position Sensing is Needed A Systematic Approach is Necessary for Signal Generator / Resolver / Cable / Resolver-to-Digital Converter System Optimization Simplore as a Multi-level / Multi-domain System Simulator is an Ideal Tool for Applications where Electric Circuitry, Field Simulation and Paracitics are Involved Each Tool (Simplorer / Maxwell / Q3D) can be Used as a Standalone Design Tool to Optimize Components (Signal Generator / RDC Algorithm / Resolver / Cable) in the System This Systematic Approach Ensures Engineers from both Sides of Component Design / System Integration to be Successful
Future Work:
N0004 N0012 N0022
1. Add Termination Impedance, to take into account the harmonics and transmission line reflection
+
V
VM1
source11 Rotor_21
S_ROTB1
N0023
N0086
Cable_Excitation
N0053 source12 N0087 Rotor_22
+
VM3
V
+
V
N0086 N0023
out11
E1
E2
E4
VM5
out12
R1
Cable_Out_Cos
N0087 N0053
out21
out22
Resolver_FEA_Link
FEA
Phase Shift
+
R10 C1
+
Magnitude Match
VM2
+ +
N0086 N0023
VM6
R2
Cable_Out_Sin
N0087 N0053
OPV53
-
OPV52
-
+
V
Us1 R9 Uc1
OPV51
-
R7
VM4
R4
R8 R3 R6
2DGraphSel1 1.80 1.00 910.00m 500.00m E2.V [V] 0 -500.00m -920.00m 9.00m 9.50m 10.00m 0
2DGraphSel3 R1.V [V] VM5.V [V] 910.00m 500.00m 0 -500.00m -910.00m 5.00m 10.00m 2DGraphSel3 VM3.V [V] VM1.V [V] 91.77 0
TRANS1
STATE1
R5
TRANS3
STATE3
0 -1.00 -1.80
5.00m
10.00m
2DGraphSel3
ICA:
Vin_ref:=0 Vo_square:=0
t1:=0 t2:=0
GZ1
Position_out_final:=0
3.50 2.00 0
TRANS7
STATE7
TRC Position_out>Position_out_final
SET: t1:=t TRC (GZ1.VAL > 0) AND (Pulse_pos =0) STATE8 TRANS8 WAIT
0 0 5.00m 8.59m
2DGraphSel3
2DGraphSel1
SET: t2:=t SET: t3:=t2-t1 TRC (GZ1.VAL < 1) AND (Pulse_pos = 1) SET: Position_out :=10000*t3*180
True
SIMP...
1.00
SIMP...
Future Work:
N0004 N0012 N0022
VM1
source11 Rotor_21
S_ROTB1
N0023
N0086
Cable_Excitation
N0053 source12 N0087 Rotor_22
+
VM3
V
+
V
N0086 N0023
out11
E1
E2
E4
VM5
out12
R1
Cable_Out_Cos
N0087 N0053
out21
out22
Resolver_FEA_Link
FEA
Phase Shift
+
R10 C1
+
Magnitude Match
VM2
+ +
N0086 N0023
VM6
R2
Cable_Out_Sin
N0087 N0053
OPV53
-
OPV52
-
+
V
Us1 R9 Uc1
OPV51
-
R7
VM4
R4
R8 R3 R6
2DGraphSel1 1.80 1.00 910.00m 500.00m E2.V [V] 0 -500.00m -920.00m 9.00m 9.50m 10.00m 0
TRANS1
STATE1
R5
TRANS3
STATE3
0 -1.00 -1.80
Scope 1
5.00m 10.00m
PHI
2DGraphSel3 theta 91.77 VM3.V [V] Vsinomegatsintheta VM1.V [V]
sin
phi
Theta
SET: Vin_ref:=-1 FML_INIT1
ICA:
sinomegat
0 S_ROTB1... Position_o..
E0
ICA:
V
9.50m 10.00m
Vin_ref:=0 Vo_square:=0
t1:=0 t2:=0
GZ1
Position_out_final:=0
E0
Vsinomegatcostheta
50.00
offset
2DGraphSel3
Offset
TRC Position_out>Position_out_final
3.50 2.00 0
Excitation
TRANS7
STATE7
Offset
-2.00 -3.50
SET: t1:=t TRC (GZ1.VAL > 0) AND (Pulse_pos =0) STATE8 TRANS8 WAIT
resolver _RD_IC
8.59m
2DGraphSel3
2DGraphSel1
SET: t2:=t SET: t3:=t2-t1 TRC (GZ1.VAL < 1) AND (Pulse_pos = 1) SET: Position_out :=10000*t3*180
True
SIMP...
1.00
SIMP...
180 /pi
899.00m 9.00m 9.50m 10.00m
1/E1 Subtract 1
Scope 4
Scope