Engee documentation

BLDC

Three-winding brushless DC motor with trapezoidal flow distribution.

blockType: AcausalElectricPowerSystems.Electromechanical.PMSM.BrushlessDC

Path in the library:

/Physical Modeling/Electrical/Electromechanical/Permanent Magnet/BLDC

Description

Block BLDC simulates a synchronous machine with permanent magnets and a three-phase stator with a connection «star». The unit has two options for determining the flux distribution of permanent magnets depending on the angle of rotation of the rotor. A simplified parameterization is presented, suggesting that the counter-EMF has an ideal trapezoidal shape. For a simplified one, either flow coupling or rotor-induced counter-EMF is indicated.

The figure shows an equivalent electrical circuit for the stator windings.

bldc 1

Engine design

This figure shows a motor design with one pair of poles on the rotor.

bldc 2

For the accepted axis arrangement corresponding to the figure, the phase flow is and the flux of the permanent magnet is aligned when the angle of the rotor is equal to zero. The unit supports the second option for determining the rotor axis. For the second definition, the rotor angle is the angle between the magnetic axis of the phase and the axis the rotor.

Trapezoidal rate of flow change

The magnetic field of the rotor, due to permanent magnets, creates a trapezoidal flow rate depending on the angle of the rotor, as shown in the figure.

bldc 3

The counter—EMF is the rate of flow change, which is determined as follows

where

  • — flow coupling of a permanent magnet;

  • — the angle of rotation of the rotor;

  • — mechanical rotation speed.

Height The profile of the trapezoidal flow rate is determined from the maximum value of the permanent magnet flow.

Integrating in the range of before , we get

where

  • — flow coupling of a permanent magnet;

  • — height of the flow rate profile;

  • — the range of rotor angles in which the EMF induced by the flux of permanent magnets in the stator is constant;

  • — the range of rotor angles in which the counter-EMF increases or decreases linearly when the rotor moves at a constant speed.

From the previous equation, we can obtain

Defining electrical equations

The voltages on the stator windings are defined as

where

  • , , and — external voltages applied to the three electrical connections of the motor;

  • — the equivalent active resistance of each stator winding;

  • , , and — currents flowing in the stator windings;

  • , and — the rate of change of the magnetic flux in each stator winding.

A permanent magnet and three windings contribute to the overall flow connecting each winding. The total flow is determined as follows

where

  • , , and — total flows connecting each stator winding;

  • , , and — intrinsic inductors of the stator windings;

  • , , etc. — mutual inductors of the stator windings;

  • , , and — streams of permanent magnets connecting the stator windings.

The inductors in the stator windings are functions of the rotation angle of the rotor and are defined as follows

where

  • — the intrinsic inductance of the stator phase, that is, the average intrinsic induction of each of the stator windings;

  • — the amplitude of the change in the inductance of the stator, that is, the amplitude of the change in the intrinsic and mutual inductance when the angle of rotation of the rotor changes;

  • — mutual inductance of the stator, that is, the average mutual inductance between the stator windings.

The permanent magnet flux connecting each stator winding corresponds to the trapezoidal profile shown in the figure above. The unit implements a trapezoidal profile using lookup tables to calculate the flux values of permanent magnets.

Simplified equations

The defining voltage and torque equations for the unit are as follows

where

  • , , — axis stresses , and the voltage of the zero sequence , respectively;

  • — Park transformation, defined as follows:

    ;

  • — the number of pairs of poles of the permanent magnet of the rotor;

  • — mechanical speed of rotation of the rotor;

  • , and — partial derivatives of the instantaneous flows of permanent magnets connecting each phase winding;

  • , and — these are the currents of the axes , and the zero sequence, respectively, defined as follows:

    .

  • — axis stator inductance ;

  • — axis stator inductance ;

  • — inductance of the zero sequence of the stator;

  • — the torque of the rotor. The torque is transferred from the motor housing (port C) to the motor rotor (port R).

Modeling of thermal effects

Thermal ports can be opened to simulate heat losses. To do this, check the box for the parameter Enable thermal port.

Variables

Use the parameter group Initial Targets to set the priority and initial target values for the block parameter variables before modeling. For more information, see Configuring physical blocks using target values.

Ports

Conserving

# R — the rotor of the machine
rotational mechanics

Details

A mechanical port connected to the rotor of the machine.

Program usage name

rod_flange

# C — machine body
rotational mechanics

Details

A mechanical port connected to the machine body.

Program usage name

case_flange

# ~ — three-phase port
electricity

Details

Three-phase port.

Dependencies

To enable this port, set the parameter Winding type meaning Wye-wound or Delta-wound.

Program usage name

port

# n — neutral
electricity

Details

A non-directional port connected to the neutral.

Dependencies

To enable this port, set the parameter Winding type meaning Wye-wound, and for the parameter Zero sequence meaning Include.

Program usage name

n

# HA — thermal port of the winding A
warm

Details

Thermal port connected to the winding .

Dependencies

To use this port, check the box for the parameter Enable thermal port.

Program usage name

stator_thermal_port_a

# HB — thermal port of the winding B
warm

Details

Thermal port connected to the winding .

Dependencies

To use this port, check the box for the parameter Enable thermal port.

Program usage name

stator_thermal_port_b

# HC — thermal port of the winding C
warm

Details

Thermal port connected to the winding .

Dependencies

To use this port, check the box for the parameter Enable thermal port.

Program usage name

stator_thermal_port_c

# HR — thermal port of the rotor
warm

Details

The thermal port connected to the rotor.

Dependencies

To use this port, check the box for the parameter Enable thermal port.

Program usage name

rotor_thermal_port

Parameters

Rotor

# Back EMF profile — The anti-EDF profile
Perfect trapezoid - specify maximum flux linkage | Perfect trapezoid - specify maximum rotor-induced back emf

Details

Parameterization to determine the flux distribution of a permanent magnet depending on the rotation angle of the rotor. Available values:

  • Perfect trapezoid - specify maximum flux linkage — use this value to set the maximum flux coupling for the permanent magnet and the angle of the rotor at which the EMF is constant. It is accepted that the shape of the EDF is an ideal trapezoid.

  • Perfect trapezoid - specify maximum rotor-induced back emf — use this value to set the maximum EMF value induced by the rotor and the corresponding rotor rotation speed. It is accepted that the shape of the EDF is an ideal trapezoid.

Values

Perfect trapezoid - specify maximum flux linkage | Perfect trapezoid - specify maximum rotor-induced back emf

Default value

Perfect trapezoid - specify maximum flux linkage

Program usage name

rotor_parameterization

Evaluatable

No

# Maximum permanent magnet flux linkage — the maximum value of the flux coupling of permanent magnets
Wb | mN*m/A | N*m/A | kN*m/A | kgf*m/A

Details

The maximum value of the flux coupling of permanent magnets with any of the stator windings.

Dependencies

To use this parameter, set for the parameter Back EMF profile meaning Perfect trapezoid - specify maximum flux linkage.

Units

Wb | mN*m/A | N*m/A | kN*m/A | kgf*m/A

Default value

0.03 Wb

Program usage name

pm_flux_linkage

Evaluatable

Yes

# Rotor angle over which back emf is constant — the angle of the rotor at which the EMF is constant
rad | deg | rev | mrad | arcsec | arcmin | gon

Details

The range of rotor angles in which the constant magnetic flux binding the stator winding is constant. In the figure it is indicated as .

Dependencies

To use this parameter, set for the parameter Back EMF profile meaning Perfect trapezoid - specify maximum flux linkage or Perfect trapezoid - specify maximum rotor-induced back emf.

Units

rad | deg | rev | mrad | arcsec | arcmin | gon

Default value

pi/12 rad

Program usage name

theta_constant

Evaluatable

Yes

# Maximum rotor-induced back emf — the maximum value of the anti-EMF induced by the rotor
V | uV | mV | kV | MV

Details

The maximum value of the EMF induced by the rotor in the stator windings.

Dependencies

To use this parameter, set for the parameter Back EMF profile meaning Perfect trapezoid - specify maximum rotor-induced back emf.

Units

V | uV | mV | kV | MV

Default value

9.6 V

Program usage name

emf_max

Evaluatable

Yes

# Rotor speed used for back emf measurement — the rotational speed of the rotor used to measure the EMF
rad/s | deg/s | rad/min | deg/min | rpm | rps

Details

The speed of rotation of the rotor corresponding to the maximum anti-EMF induced by the rotor.

Dependencies

To use this parameter, set for the parameter Back EMF profile meaning Perfect trapezoid - specify maximum rotor-induced back emf.

Units

rad/s | deg/s | rad/min | deg/min | rpm | rps

Default value

600 rpm

Program usage name

w_measurement

Evaluatable

Yes

# Number of pole pairs — number of pairs of poles of the machine

Details

The number of pairs of permanent magnet poles on the rotor.

Default value

6

Program usage name

N_pole_pairs

Evaluatable

Yes

# Rotor angle definition — a reference point for measuring the angle of the rotor
Angle between the a-phase magnetic axis and the d-axis | Angle between the a-phase magnetic axis and the q-axis

Details

A reference point for measuring the rotation angle of the rotor. If the value is selected Angle between the a-phase magnetic axis and the d-axis, then the rotor and phase flows align when the rotor angle is zero. When selecting a value Angle between the a-phase magnetic axis and the q-axis phase current creates maximum torque when the rotor angle is zero.

Values

Angle between the a-phase magnetic axis and the d-axis | Angle between the a-phase magnetic axis and the q-axis

Default value

Angle between the a-phase magnetic axis and the d-axis

Program usage name

axes_parameterization

Evaluatable

No

Stator

# Winding type — connection of windings
Wye-wound | Delta-wound

Details

Select the winding connection:

  • Wye-wound — star connection.

  • Delta-wound — triangle connection. Phase connects between ports A and B, phase — between ports b and c, phase — between ports c and a.

Values

Wye-wound | Delta-wound

Default value

Wye-wound

Program usage name

winding_type

Evaluatable

No

# Stator parameterization — parameterization of the stator
Specify Ld, Lq, and L0 | Specify Ls, Lm, and Ms

Details

The method of parameterization of the stator.

Choose Specify Ld, Lq, and L0 or Specify Ls, Lm, and Ms.

Values

Specify Ld, Lq, and L0 | Specify Ls, Lm, and Ms

Default value

Specify Ld, Lq, and L0

Program usage name

stator_parameterization

Evaluatable

No

# Modeling fidelity — simulation accuracy
Constant Ld and Lq

Details

Select the accuracy of the simulation:

  • Constant Ld and Lq — values and they are constant and are determined by the appropriate parameters.

Dependencies

To use this parameter, set for the parameter Stator parameterization meaning Specify Ld, Lq, and L0.

Values

Constant Ld and Lq

Default value

Constant Ld and Lq

Program usage name

machine_parameterization

Evaluatable

No

# Stator d-axis inductance, Ld — stator inductance along the d axis
H | nH | uH | mH

Details

Stator inductance along the axis .

Dependencies

To use this parameter, set for the parameter Stator parameterization meaning Specify Ld, Lq, and L0, and for the parameter Modeling fidelity meaning Constant Ld and Lq.

Units

H | nH | uH | mH

Default value

0.00022 H

Program usage name

L_d

Evaluatable

Yes

# Stator q-axis inductance, Lq — stator inductance along the q axis
H | nH | uH | mH

Details

Stator inductance along the axis .

Dependencies

To use this parameter, set for the parameter Stator parameterization meaning Specify Ld, Lq, and L0, and for the parameter Modeling fidelity meaning Constant Ld and Lq.

Units

H | nH | uH | mH

Default value

0.00022 H

Program usage name

L_q

Evaluatable

Yes

# Stator zero-sequence inductance, L0 — inductance of the zero sequence of the stator
H | nH | uH | mH

Details

The inductance of the zero sequence.

Dependencies

To use this parameter, set:

  • For the parameter Winding type meaning Wye-wound, for the parameter Zero sequence meaning Include, and for the parameter Stator parameterization meaning Specify Ld, Lq, and L0.

  • For the parameter Winding type meaning Delta-wound, and for the parameter Stator parameterization meaning Specify Ld, Lq, and L0.

Units

H | nH | uH | mH

Default value

0.00016 H

Program usage name

L_0

Evaluatable

Yes

# Stator self-inductance per phase, Ls — stator’s own inductance per phase
H | nH | uH | mH

Details

The average intrinsic inductance of each of the three stator windings.

Dependencies

To use this parameter, set for the parameter Stator parameterization meaning Specify Ls, Lm, and Ms.

Units

H | nH | uH | mH

Default value

0.0002 H

Program usage name

L_s

Evaluatable

Yes

# Stator inductance fluctuation, Lm — the amplitude of the change in stator inductance
H | nH | uH | mH

Details

The amplitude of the change in the intrinsic and mutual inductance of the stator windings, depending on the angle of rotation of the rotor.

Dependencies

To use this parameter, set for the parameter Stator parameterization meaning Specify Ls, Lm, and Ms.

Units

H | nH | uH | mH

Default value

0.0 H

Program usage name

L_m

Evaluatable

Yes

# Stator mutual inductance, Ms — mutual inductance of the stator
H | nH | uH | mH

Details

The average mutual inductance between the stator windings.

Dependencies

To use this parameter, set for the parameter Stator parameterization meaning Specify Ls, Lm, and Ms.

Units

H | nH | uH | mH

Default value

2e-05 H

Program usage name

M_s

Evaluatable

Yes

# Stator resistance per phase, Rs — active resistance of the stator per phase
Ohm | mOhm | kOhm | MOhm | GOhm

Details

The active resistance of each of the stator windings.

Units

Ohm | mOhm | kOhm | MOhm | GOhm

Default value

0.013 Ohm

Program usage name

R_s

Evaluatable

Yes

# Zero sequence — enabling the zero sequence
Exclude | Include

Details

The option to turn on or off the zero sequence.

  • Include — the zero sequence is taken into account. Use this default setting to prioritize model accuracy.

  • Exclude — the zero sequence is not taken into account. To increase the speed of computer simulation or real-time startup, select this option.

Dependencies

To use this parameter, set for the parameter Winding type meaning Wye-wound.

Values

Exclude | Include

Default value

Include

Program usage name

zero_sequence

Evaluatable

No

Mechanical

# Rotor inertia — inertia of the rotor
kg*m^2 | g*m^2 | kg*cm^2 | g*cm^2 | lbm*in^2 | lbm*ft^2 | slug*in^2 | slug*ft^2

Details

Inertia of the rotor connected to the mechanical port R. The value can be zero.

Units

kg*m^2 | g*m^2 | kg*cm^2 | g*cm^2 | lbm*in^2 | lbm*ft^2 | slug*in^2 | slug*ft^2

Default value

0.01 kg*m^2

Program usage name

J

Evaluatable

Yes

# Rotor damping — rotor damping
N*m*s/rad | mN*m*s/rad | kN*m*s/rad | kgf*m*s/rad | lbf*ft*s/rad

Details

Damping during rotation.

Units

N*m*s/rad | mN*m*s/rad | kN*m*s/rad | kgf*m*s/rad | lbf*ft*s/rad

Default value

0.0 N*m*s/rad

Program usage name

D

Evaluatable

Yes

Temperature Dependence

# Resistance temperature coefficient — temperature coefficient of resistance
1/K | 1/degR | 1/deltaK | 1/deltadegC | 1/deltadegF | 1/deltadegR

Details

Ratio in the equation relating the active resistance to temperature. It is assumed that the winding resistance is linearly dependent on temperature and is defined as:

,

where:

  • — active resistance at temperature ;

  • — active resistance at the measurement temperature ;

  • — temperature coefficient of resistance. The value for copper is 3.93e−3.1/K.

Units

1/K | 1/degR | 1/deltaK | 1/deltadegC | 1/deltadegF | 1/deltadegR

Default value

0.00393 1/K

Program usage name

alpha

Evaluatable

Yes

# Permanent magnet flux temperature coefficient — temperature coefficient of permanent magnet flux
1/K | 1/degR | 1/deltaK | 1/deltadegC | 1/deltadegF | 1/deltadegR

Details

The partial derivative of the flux density of a permanent magnet from temperature. It is used to reduce the torque and induced EMF linearly when the temperature rises.

Units

1/K | 1/degR | 1/deltaK | 1/deltadegC | 1/deltadegF | 1/deltadegR

Default value

-0.001 1/K

Program usage name

alpha_flux

Evaluatable

Yes

# Measurement temperature — Measurement temperature
K | degC | degF | degR | deltaK | deltadegC | deltadegF | deltadegR

Details

The temperature for which the engine parameters are specified.

Units

K | degC | degF | degR | deltaK | deltadegC | deltadegF | deltadegR

Default value

298.15 K

Program usage name

T_measurement

Evaluatable

Yes

Thermal Port

# Enable thermal port — switching on thermal ports

Details

The parameter value determines the presence of the block’s thermal ports, and whether heat loss modeling will be performed.

Default value

false (switched off)

Program usage name

has_thermal_port

Evaluatable

No

# Thermal mass for each stator winding — heat capacity for each stator winding
J/K | kJ/K

Details

The value of the heat capacity for each stator winding. Heat capacity is the energy required to raise the temperature by one degree.

Dependencies

To use this option, check the box for the option Enable thermal port.

Units

J/K | kJ/K

Default value

100.0 J/K

Program usage name

stator_thermal_mass

Evaluatable

Yes

# Rotor thermal mass — heat capacity of the rotor
J/K | kJ/K

Details

The heat capacity of the rotor. Heat capacity is the energy required to raise the temperature by one degree.

Dependencies

To use this option, check the box for the option Enable thermal port.

Units

J/K | kJ/K

Default value

200.0 J/K

Program usage name

rotor_thermal_mass

Evaluatable

Yes