Is there any models of doing Direct Torque Control through State Vector Modulation?

0 votes

Refer to the "Induction Machine Drive Controlled with DTC” demo model.

The demo uses the “Combinatorial Logic” Block (Ztab) to determine the state vector. An explanation of the modulator logic is below, in case you find it unclear.

The combinatorial block inputs are:

- 3 binary signals reflecting the flux sector. There are six total sectors, represented by the integers 0-5.

- 1 binary signal representing flux control (1 = increase or 0 = decrease flux)

- 1 binary signal representing torque control (1 = increase or 0 = decrease torque)

Referring to lines 7-25 in the Model Initialization Commands - Z0 - Z7 are the 8 state vectors for a two level inverter. Ztab is a lookup table that takes those 5x binary inputs and selects one of the switching state vectors. Tab entries are in a 1D row. The row is calculated based on the binary inputs. You can calculate the row using the 5x binary inputs as follows: row = 1+2^4*u[1]+2^3*u[2]+2^2*u[3]+2^1*u[4]+2^0*u[5]. You can enter that calculation into a “function” block in PLECS (without the ‘row = ‘ portion of the equation).

For example, to increase torque and increase flux in sector 2, the signal would be 00111, resulting in row 8 of Tab which is the space vector Z3.

The demo uses the “Combinatorial Logic” Block (Ztab) to determine the state vector. An explanation of the modulator logic is below, in case you find it unclear.

The combinatorial block inputs are:

- 3 binary signals reflecting the flux sector. There are six total sectors, represented by the integers 0-5.

- 1 binary signal representing flux control (1 = increase or 0 = decrease flux)

- 1 binary signal representing torque control (1 = increase or 0 = decrease torque)

Referring to lines 7-25 in the Model Initialization Commands - Z0 - Z7 are the 8 state vectors for a two level inverter. Ztab is a lookup table that takes those 5x binary inputs and selects one of the switching state vectors. Tab entries are in a 1D row. The row is calculated based on the binary inputs. You can calculate the row using the 5x binary inputs as follows: row = 1+2^4*u[1]+2^3*u[2]+2^2*u[3]+2^1*u[4]+2^0*u[5]. You can enter that calculation into a “function” block in PLECS (without the ‘row = ‘ portion of the equation).

For example, to increase torque and increase flux in sector 2, the signal would be 00111, resulting in row 8 of Tab which is the space vector Z3.

...