• Non ci sono risultati.

Differences with respect to IPM control algorithm

5.3 FOC strategy for a SPM synchronous motor

5.3.1 Differences with respect to IPM control algorithm

As anticipated, in the second design process there are some differences inside the block diagram, for analysing the behaviour of the SPM in a more specific way. The FPGA VI, in this case, is simplified because the direct current regulator, the estimator of actual DC and the motor speed control loop are not implemented. Moreover, the maximum torque per ampere area has a reduced complexity, because in constant torque region the contribution of the reference stator current on the d-axis is kept null – the motor torque is just related to π‘–π‘ž through a constant. An additional feature is the decoupling block, in order to eliminate the dependence of the reference command voltages π‘£π‘‘βˆ— and π‘£π‘žβˆ— from the opposite axis contribution. This element can also be inserted in the FOC algorithm of the interior permanent magnet synchronous motor. However, due to hardware constraints, it is removed from the FPGA VI for leaving more resources to the implementation of other essential blocks – in particular for increasing the MTPA arrays size. The Clarke-Park direct and inverse transformations, the PI regulators for computing π‘£π‘‘βˆ— and π‘£π‘žβˆ— from the current error, the saturations for phase current and phase voltage and the ramp generator for torque request are identical to the corresponding IPM control loop blocks – except for the length of the words.

For this reason, the analysis is neglected. Concerning the motor scheme, 𝑖𝑑 and π‘–π‘ž are obtained in the same way, as well as the mechanical equation for evaluating rotor mechanical and electrical speed and angular position. The only difference in the motor loop is the independence of the electromagnetic torque from the d-axis current, because through the mathematical high throughput blocks the SPMSM already discussed equation is realized:

π‘‡π‘’π‘š =3

2 πœ†π‘ƒπ‘€ 𝑝𝑝 π‘–π‘ž = π‘˜π‘‡ π‘–π‘ž

where only the synchronous term contributes to torque generation. The principal variations with respect to previous project are discussed in the following sections.

5.3.1.1 Decoupling

The most innovative element is the block responsible for eliminating the coupling terms from the direct and quadrature command voltages – they are inserted between the PI regulators and the saturations. A case structure is implemented in the FPGA VI for choosing

160 whether to activate the mechanism or not and for comparing the different performances.

From the PMSM dynamic model in dq reference frame, the resulting equations are:

{ 𝑣𝑑 = 𝑅𝑠𝑖𝑑 + 𝐿𝑑𝑑𝑖𝑑

𝑑𝑑 βˆ’ πœ”π‘’πΏπ‘žπ‘–π‘ž π‘£π‘ž = π‘…π‘ π‘–π‘ž+ πΏπ‘žπ‘‘π‘–π‘ž

𝑑𝑑 + πœ”π‘’(𝐿𝑑𝑖𝑑+ πœ†π‘ƒπ‘€)

It is possible to visualize the link between 𝑣𝑑 and the q-axis current, through the quadrature inductance and the electrical speed, and the dependence of π‘£π‘ž on d-axis current and inductance and on magnetic flux of the permanent magnets, through again the electrical velocity. For obtaining the decoupling of the reference voltage terms, a simple mathematical operation is realized with the high throughput elements:

{ 𝑣𝑑,π‘‘π‘’π‘π‘œπ‘’π‘π‘™π‘’π‘‘βˆ— = π‘£π‘‘βˆ— + πœ”π‘’πΏπ‘žπ‘–π‘ž π‘£π‘ž,π‘‘π‘’π‘π‘œπ‘’π‘π‘™π‘’π‘‘βˆ— = π‘£π‘žβˆ—βˆ’ πœ”π‘’(𝐿𝑑𝑖𝑑+ πœ†π‘ƒπ‘€)

where 𝑣𝑑,π‘‘π‘’π‘π‘œπ‘’π‘π‘™π‘’π‘‘βˆ— and π‘£π‘ž,π‘‘π‘’π‘π‘œπ‘’π‘π‘™π‘’π‘‘βˆ— are the outputs – which are sent to the saturators – while π‘£π‘‘βˆ— and π‘£π‘žβˆ— are the reference quantities managed by the PI regulators; 𝑖𝑑 and 𝑖𝑑 are feedback quantities, obtained from the Clarke-Park transformations of the three-phase stator currents (passed from the motor loop through local variables). For the indicators of this SubVI, the same fixed-point dimension of the input voltages is used. In detail, 34 bits are reserved to the signed words and 11 of them are dedicated to the integer part. The block diagram is shown in figure 5.33.

Figure 5.33: Decoupling SubVI.

5.3.1.2 MTPA region

In the SPM field-oriented control loop there is no dedicated block for realizing the MTPA interpolation: as described before, in constant torque region the d-axis reference value of the stator current is kept null, because the direct and quadrature inductances are equal and consequently the motor torque contains just the synchronous contribution: in other words, no reluctance term is added. A switching mechanism is implemented for selecting the reference π‘–π‘‘βˆ—:

β–ͺ a null value in constant torque region;

β–ͺ a negative value obtained from the PI regulator that manages the FW in constant power region.

As a consequence, the representation of the current vector in the dq reference frame is aligned to the vertical quadrature axis for speed values below the nominal one. In the constant torque region, instead of the previous MTPA SubVI – used for applying the

162 interpolation to the LUTs, computed on MATLAB – a block scheme is implemented for realizing the inverse equation of the electromagnetic torque:

π‘–π‘žβˆ— = π‘‡βˆ—

π‘˜π‘‡= π‘‡βˆ— 32 πœ†π‘ƒπ‘€ 𝑝𝑝

π‘‡βˆ— is the requested torque from the user – no PI regulator filters the reference value in this case – while π‘–π‘žβˆ— is the corresponding reference quadrature contribution, used in the field-oriented control algorithm. The value π‘˜π‘‡ = 32πœ†π‘ƒπ‘€π‘π‘ is the torque constant and it depends on motor parameters: for reducing the computational complexity, this quantity is directly passed from the real-time interface to the FPGA VI when the model runs on the SPARK engine control unit. Concerning the flux-weakening – described in next paragraph – the phasor rotation happens, as well as in the IPM synchronous motor, with an increase of the direct contribution, and the saturation blocks are inserted in order to respect the phase current limit.

5.3.1.3 Flux-weakening for a SPMSM

The flux-weakening condition is implemented in the SPM project just for completeness, because in real applications this kind of motor doesn’t guarantee any substantial advantages in terms of increasing mechanical velocity. In fact, the absence of saliency – the direct and quadrature inductances are equal – and the relatively small permanent magnet flux limit the constant power region. As described, the surface-mounted motors are applied in lower speed applications and are actually abandoned by the automotive industry. The working principle of the SubVI is similar to the previous one, inserted in the IPMSM control algorithm. The mathematical blocks are identical, and the only difference is related to the initial condition of the integrator. In the interior permanent magnet configuration, the d-axis reference current is a negative value different from zero in the MTPA region, in order to exploit the additional reluctance torque; that quantity is used as initial condition when the motor enters the FW zone. In SPM case, π‘–π‘‘βˆ— is constantly null in in the lower speed region, so the PI regulator starts working from zero in order to manage the negative reference d-axis contribution for weakening the motor flux.

The other parts of the algorithm are copied from the IPMSM control project. In particular, the pre-saturation phase voltage module is computed from the command dq contributions and compared to the maximum value; again, a Butterworth filter is inserted for reducing the oscillations. Then, a relay block is used for generating a Boolean signal which

is true in FW region, false in MTPA. The PI starts working by comparing the filtered pre-saturation magnitude with the motor π‘‰π‘ π‘Žπ‘‘,π‘β„Žπ‘Žπ‘ π‘’, in order to regulate the reference d-axis current. A selector is managed by the Boolean indicator in order to set π‘–π‘‘βˆ— equal either to zero or to the PI output, depending on the motor status. As usual, the direct axis is affected by a scalar saturation, for giving priority to the phasor rotation in constant power region. The other reference quantity π‘–π‘žβˆ— is obtained directly from the user request through the torque constant, but it is vectorially saturated in order to respect the phase current limit – depending on the actual regulated π‘–π‘‘βˆ— – before being passed to the quadrature PI. When this kind of synchronous motor leaves the FW zone, the algorithm is simplified because the output of the proportional integral block is not compared to any quantities. There is no need for a MTPA interpolation here: when the phase voltage module falls below the lower threshold, the selector switches to π‘–π‘‘βˆ— = 0 A. The PI regulator output can assume at maximum a null value, consequently in case of a voltage magnitude smaller than π‘‰π‘ π‘Žπ‘‘,π‘β„Žπ‘Žπ‘ π‘’ it is automatically set equal to zero. Finally, also the anti-windup mechanism is identical to the IPMSM scheme, where the priority is given to the proportional branch, while the integral term is affected by a dynamic saturation.