In: Electrical Engineering
Design DC to AC Inverter for electric vehicles using (MATLAB/SIMULINK)
Model Development Process:
The model development process consists of
1) determining how the model will be used,
2) identifying the key equations, parameters, and
assumptions,
3) building and refining the model,
and then
4) the actual model application and evaluation. The model can be
used to evaluate the energy flow of a DC motor drive train, and to
determine the ability of the system to meet specific drive cycle
speed and torque requirements. The major components of the model
are input road torque, input road speed, motor model, motor
controller model, battery model, and PI controller.
A block diagram of the model is presented below in Figure 2: DC
Drive Simulation Model. In the model the required Road Speed and
Road Torque are inputs, and the major model blocks are
the Motor Model, Controller Model, Battery Model, PI Controller
Model, and feedback from the PI Controller to the main power
controller. The feedback includes a one-sample delay with an
initial condition to prevent an algebraic loop in the Simulink
model.
Key Equations
Determining the key equations and their corresponding variables and
parameters is a necessary first step in model development. Each
block in this simplified model represents one or more major
equations as listed below.
DC Motor:
As noted earlier, Battery Electric Vehicles (BEV) and Hybrid
Electric Vehicles (HEV) frequently use special, high efficiency
Permanent Magnet Synchronous Motors (PMSM). This type of motor may
be referred to as a brushless DC motor because it runs from DC
voltage but does not have brushes. PMSM motors actually use AC
voltage that is supplied by the Motor Controller. The motor
controller inverts the DC voltage to produce an AC voltage at the
proper voltage and frequency. The motor voltage is frequently a
10-20 KHz Pulse Width Modulated AC voltage where the voltage and
frequency are adjusted to provide the proper motor speed and
magnetic field values.
A DC permanent magnet motor was used in the simulation model
presented below. This type of motor is not appropriate for BEV or
HEV applications due to weight and efficiency considerations. This
motor was used in the simulation because it frequently covered
undergraduate engineering education.
The motor model includes some terms and parameters for power loss
and time lag while other terms were omitted from the model. The
model accounts for power loss in the winding
resistance and time lag due to the energy storage in the magnetic
field of the winding inductance.
There is no field power loss because it is a permanent magnet
field.
The model does not include power loss due to friction and other
rotational losses of hysteresis, eddy current, and windage. The
model also does not include the time lag due to energy
storage
in the rotor inertia. The motor model is based on the following
equations.
Developed Torque is proportional to armature current:
Equation 1: Td(Nm) = Km*IA(Amp) Developed motor torque
Developed Voltage is proportional to armature speed:
Equation 2: VD(Volt) = WD (rad/sec)/Km Developed motor voltage
Motor armature input or terminal voltage is equal to the sum of
developed voltage plus resistance and inductance voltage drops. In
addition, the motor High Side voltage and current are directly
connected to, and therefore identical to, the motor controller High
Side voltage and current.
Equation 3: VH(Volt) = IH(Amp)*RA(Ohm) + LH(Henry)*di(t)/dt(A/s) +
VD(V) Motor Voltage
Shaft output torque is equal to developed torque minus friction
loss (Bw) and inertial loss (J*dw(t)/dt). Friction and inertial
were not specified in the model and are assumed equal to
zero.
Therefore developed torque and output torque are equal in this
model. However, the model could be easily modified to include these
parameters in the future.
The motor physical constant, Km , is a physical parameter that
depends upon the construction of the motor. In the SI system Km has
units of (Amp/Nm) or (Volt/(rad/sec)). At the electrical –
mechanical interface inside the motor the developed electrical
power (P = IA* VD* Km ) is equal to the developed mechanical power
(P = Km* Td* WD).
As noted earlier, in the motor model the mechanical friction and
inertia as well as the magnetic power losses have been set to zero.
Therefore, the power loss will only occur in the armature
resistance, and the time lag will only occur in the armature
inductance.
Motor Controller:
The motor controller is assumed to be an ideal controller with no
power loss and no time lag.
The controller simply raises the battery voltage to meet the higher
voltage needs of the motor.
The dimensionless constant gain or K ratio of the input and output
voltages is determined in order to meet the motor’s needs. The same
K ratio is used to adjust the current so that input and output
power values are equal.
High side voltage is equal to K times the low side voltage:
Equation 4: VH = K*VL Controller High Side Current
High side current is equal to 1/K times the low side voltage:
Equation 5: IH = (1/K)*VL Controller High Side Voltage
Battery:
The battery is modeled as a voltage source with an internal
resistance. The model accounts for internal power loss in the
resistance of the battery. There is no time lag component in the
model.
The battery is assumed to have a constant internal voltage, EB .
The battery terminal voltage,VB , is equal to the sum of the
internal voltage and resistance voltage drop. The battery voltage
and battery current are equal to the controller low side voltage
and current.
Equation 6: VB (Volt) = IA(Amp) *RA(Ohm) + EB(Volt). Battery model
calculation
VL (Volt) = IL(Amp) *RA(Ohm) + EB(Volt). Assuming: VB = VL and IA =
IL
The battery model uses the current and voltage information from the
Motor Controller to calculate the required battery’s internal
voltage. This voltage is compared with the actual EB
value to create a battery voltage error, BEER, and that error is
used by the PI controller model to adjust the loop gain.
Equation 7: BERR = EB (actual) - EB (calculated) Error Voltage
Calculation
Proportional Integral (PI) Controller:
The PI controller accepts the BERR signal from the Battery Model
and uses proportional (Kp) and integral (Ki) to calculate the gain
K value that is used by the Motor Controller.
Equation 8: K = ( Kp + s*KI)*BERR PI Calculation
The simulation includes eight equations and eight variables.
Simulation Model Blocks
Motor Model
The simulation block for the motor includes Equations 1 – 3 for the
motor. The block is shownbelow in Figure 3: Motor Model Block
Motor Controller Model
The simulation block for the Motor Controller includes Equations 4
and 5 for the motor controller. The block is shown below in Figure
4: Motor Controller Model Block
Battery Model
The simulation block for the battery model includes Equations 6
& 7 for the battery. The block is shown below in Figure 5:
Battery Model Block
PI Controller Model: The block model includes Equation 8 for the
controller.
The Gain (K) of the Motor Controller is determined by the output of
the PI Controller model.
The gain has an initial starting value of 0.1. This value was
preset within the controller’s integration block to minimize the
possibility of a Simulink simulation error due to an
algebraic
loop. An algebraic loop is basically a divide by zero operation
when the simulation is trying to solve the set of linear
equations.
The PI Controller checks to see that the output is not zero. If the
output is zero then the controller outputs a small value ( 0.001).
This is done to prevent model analysis failure due to dividing by
zero when solving the linear equations. The controller also
includes a gain limiting block to prevent excess feedback
signals.
The block is shown below in Figure 6: PI Controller Model Block
Drive System Model
The Speed and Torque values were written to the MATLAB Workspace,
and the values were then read into the model speed and torque
look-up tables. The Clock input to the look-up tables
used the following time base values that were setup in the model
parameters table: Tmin = 0, Tstep = 0.01, Tstop = 100
seconds.
The displayed Scope values were also written to the MATLAB
Workspace as Structures with Time. A MATLAB script was used to
pre-load the speed and torque data in the Workspace, Run
the Simulation, obtain the key data from the Scope Structures, and
plot the data. The complete Motor Drive Model is shown below in
Figure 7: Motor Drive Model.
Simulation results are as follow