Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

For a PMSM BLDCmodel configured to use the PMSM Variable Ld/Lq machine type, a JSON file is required to define the machine characteristics. The file must contain the following information:

Parameter (JSON key)

Value type

Unit

Description

Example

PolePairs

int


Number of pole pairs of the machine.

Code Block
languagejson
"PolePairs": 2

DqTransformAngleOffset

double

degree

Angle offset applied to the abc to dq Transform, before Id and Iq are referenced to look up Ld, Lq, and Fm. A value of 0 indicates that the direct axis is aligned with Phase A when the rotor angle θ=0. In other words, the active power reaches a maximum when Id is at a maximum.  This is the default behavior.

For more information, see the Reference Frame Transformation description.

Code Block
languagejson
"DqTransformAngleOffset": 0

Ra

double

Ohm

Phase A Resistance of the machine

Code Block
"Ra": 0.04

Rb

double

Ohm

Phase B Resistance of the machine

Code Block
"Rb": 0.04

Rc

double

Ohm

Phase C Resistance of the machine

Code Block
"Rc": 0.04

Id_axis

double[]

A

One dimensional array of the current values along the direct axis of the stator.

This array must be the same size as Iq_axis, it can contain up to 128 values, and they must be arranged in ascending order.

Code Block
"Id_axis": [
  -50.0,
  0.0,
  50.0
],

Iq_axis

double[]

A

One dimensional array of the current values along the quadratic axis of the stator.

This array must be the same size as Id_axis, it can contain up to 128 values, and they must be arranged in ascending order.

Code Block
"Iq_axis": [
  -50.0,
  0.0,
  50.0
],

Ld

double[][]

H

Two dimensional array of the direct-axis inductance values. 

The size of this array must be n x n, where n is equal to the number of current values in Id_axis and Iq_axis.

Figure 1 below describes how the inductance values are mapped from the JSON file array to the Ld table.

Code Block
languagejson
"Ld": [
  [
    0.0004,
    0.00042,
    0.00041
  ],
  [
    0.00041,
    0.00044,
    0.00043
  ],
  [
    0.0004,
    0.00042,
    0.000425
  ]
],

Lq

double[][]

H

Two dimensional array of the quadratic-axis inductance values. 

The size of this array must be n x n, where n is equal to the number of current values in Id_axis and Iq_axis.

Figure 1below describes how the inductance values are mapped from the JSON file array to the Lq table.

Code Block
languagejson
"Lq": [
  [
    0.0004,
    0.00042,
    0.00041
  ],
  [
    0.00041,
    0.00044,
    0.00043
  ],
  [
    0.0004,
    0.00042,
    0.000425
  ]
],

Fm

double[][]

Wb

Two dimensional array of the Permanent Magnet Flux Linkage values.  For the majority of use cases, the data entered in this table is constant, as shown in the example column. Entering variable data into this table may cause unexpected simulation results. If your application requires variable Permanent Magnet Flux Linkage values, please contact OPAL-RT Support for additional information.

The size of this array must be n x n, where n is equal to the number of current values in Id_axis and Iq_axis.

Figure 1below describes how the inductance values are mapped from the JSON file array to the Permanent Magnet Flux Linkage table.

Code Block
languagejson
"Fm": [
  [
    0.1,
    0.1,
    0.1
  ],
  [
    0.1,
    0.1,
    0.1
  ],
  [
    0.1,
    0.1,
    0.1
  ]
]

...