Back-to-back three-phase converter with grid-tied LCL filter
Table of Contents
This application note details a possible control implementation for a back-to-back three-phase converter. In the proposed example, the rectifier is tied to the grid using an LCL filter, in a transformer-less fashion. On the other side, the inverter drives a passive RL load.
Downloads
The following zip file contains an example of control using MATLAB Simulink.
Minimum requirements:
- Imperix ACG SDK 3.5.1.1 or newer.
- MATLAB Simulink R2016a or newer.
- Plexim PLECS VIEWER 4.4.2 or newer (free)
Operating principles of back-to-back three-phase converter
Grid connection
As with any Voltage Source Converter (VSC) topology, this system requires that the DC bus is appropriately pre-charged before normal operation can be initiated (\(V_{DC,min}=\widehat{V_{g,ll}}\)). To this end, a pre-charge circuit is introduced between the converter and the grid, with a set of three resistors that limit the DC bus charging current. These resistors can be later bypassed during normal operation, thanks to a software-controlled relay. TN131 gives further recommendations regarding system start-up techniques for grid-tied applications.
Grid-side control
The control of the inverter is subdivided into 2 parts. First, a closed-loop controller regulates the bus voltage by drawing current from the grid. Second, this grid current is controlled in the stationary reference frame, with an additional term for the active damping of the LCL filter. The relevant documentation is given below:
- Cascaded voltage control (TN108) details the design of the bus voltage controller.
- Active damping of LCL-type filters (TN123) details the active damping used for in this application.
- Proportional Resonant (PR) control (TN110) details the design of a current closed-loop controller with a resonant controller.
Load-side control
On the load side, a passive load is used. This allows the application example to be as generic as possible. Typically, this second converter may also be part of a drive (see for instance AN004, which addresses the direct torque control of a permanent magnet synchronous machine).
In the present case, the load currents are controlled using a closed-loop controller in the dq domain. The grid angle Īø is re-used for the sake of simplicity. However, a different angle generation mechanism can be used depending on the application.
Further information on the dq-type current control can be found in Vector current control (TN106).
Simulation of back-to-back three-phase converter
The proposed control was implemented in Matlab/Simulink and the system model was simulated with PLECS. The following graphs show the simulation results obtained with:
- Grid voltage: 400V RMS
- DC bus voltage: 725V
- Reference load peak current: Step from 0A to 11A at t=300ms
- Load resistor: 30Ī©
- Switching frequency: 20kHz
A reference load current step is imposed at t=300ms. During the transient, a voltage drop of 4V can be observed on the DC bus voltage. This voltage drop (0.6% of the DC bus voltage) is corrected by the bus voltage control. In this application example, the current drawn by the load-side inverter is not feed-forwarded into the bus voltage control. Naturally, the introduction of such compensation would improve the control dynamics and reduce this voltage drop.
Looking at the presented simulation results, the following comments can be made:
- During the transient, as well as during steady-state, the grid current is in phase with the grid voltage, as specified by the reference (
Ig_q_ref = 0
). - The load current
Il_d
reaches its reference in 25 ms (95% of the final value), following the same behavior as a step response of a first-order system. - The grid currents (
Ig_alpha
,Ig_beta
) follow their references with an instantaneous error of less than 0.02A.
The following figures plot the grid and load currents, respectively (phase A). The load current is filtered through a basic LR-type filter, while the grid current is filtered by a LCL-type filter. The load current ripple reaches 1.7A at this operating point. The grid current ripple is significantly lower and reaches the design value of 10mA.
Quick-start guide for the back-to-back three-phase converter
Required hardware and wiring
Experimentation on this Application Note can be made using standard imperix equipment, included in the power electronics test bench:
- 1x āType Aā rack with 6x PEB8024 modules
- 2x passive filters racks or:
- 6x 2.5mH inductor (L1,L2)
- 3x 3ĀµF capacitor (Cf)
- 3x 1Ī© resistor (Rf)
- 3x 2.5 mH inductor (Ll)
- 6x DIN800V voltage sensors
- 3x DIN50A current sensors
- 1x grid connection panel
In addition, the following equipment is needed:
- 3x load resistors (Rl)
The side figure shows the proposed wiring for this application.
The following table summarizes the parameters used to test this application.
Parameter | Value | Parameter | Value | Parameter | Value |
Grid voltage (l-l, RMS) | 230 V | Bus voltage reference | 725 V | PWM frequency | 20 kHz |
Inductance L1 (LCL) | 2.5mH | Capacitance Cf (LCL) | 3 ĀµF | Inductance L2 (LCL) | 2.5 mH |
Resistance R1 (LCL) | 22 mĪ© | Resistance Rf (LCL) | 1 Ī© | Resistance R2 (LCL) | 22 mĪ© |
Inductance Ll (load) | 2.5 mH | Resistance Rl (load) | 30 Ī© |
System start-up
These steps can be followed to start up the system:
- Generate run-time code for the provided Simulink file using imperixās SDK for automated code generation by building the model (Ctrl+B). Consult the Quick-start guide if needed.
- Connect to the B-Box RCP using Cockpit. To do so, consult the Quick-start guide if needed.
- In the debugging tab, display the following variables:
precharge_relay
,bypass_relay
,gridSide_active
,Vdc
,Vdc_ref
,loadSide_active
andIl_d_ref
. - Check that all analog inputs are correctly configured and protection thresholds appropriately adjusted. Consult PN105 for detailed instructions if needed.
- Pre-charge the DC bus through the precharge resistors by closing the precharge relay (set
precharge_relay = 1
, whilebypass_relay
is still0
). - When the DC bus voltage is stabilized (i.e. when grid current is negligible), close the bypass relay (
bypass_relay = 1
). - Check that
Vg_d
is constant and thatVg_q
is close to zero to validate the phase order and the correct operation of the PLL. - Set the desired DC voltage setpoint (e.g. 725V) and start the rectifier control by setting
gridSide_active = 1
. - Click on āEnable outputā to allow the generation of PWM signals.
- Set the desired load current
Il_d_ref
and start the load-side operation by settingloadSide_active = 1
.
System shut down
The following steps detail the procedure to shut down the system:
- Deactivate the load-side controller by setting
loadSide_active = 0
. - Deactivate the grid-side controller by setting
gridSide_active = 0
. The DC bus voltage decreases to the rectified grid voltage within a few seconds. - Disconnect the grid part (open
precharge_relay
andbypass_relay
). The DC bus voltage decreases slowly. - To dissipate the remaining DC bus energy in the load resistors, set a load current
Ig_d_ref
of 1A and restart the load current control (loadSide_active = 1
). The DC bus voltage decreases quickly to zero. - When
Vdc
is zero, disconnect the load part by settingIg_d_ref = 0
andloadSide_active = 0
. - Block all PWM output signals by clicking on āDisable outputsā.
Remote control GUI
Altering the controller tunable parameters (e.g. relay commands, controller setpoints,…) can be done easily from Cockpit. Alternatively, a GUI like the one shown below can be built to give instant access to all relevant variables. More information on how to develop a GUI using Matlab App Designer is given in GUI with the App Designer (PN130).
Experimental results of the back-to-back three-phase converter
The following figures represent the experimental results obtained with:
- Grid voltage: 400V RMS
- DC bus voltage: 725V
- Load reference peak current: 11A
- Switching frequency: 20kHz
As in simulation, the grid current is in phase with the grid voltage, as specified by its zero quadrature reference value Ig_q_ref = 0
. In this case, the reactive power is 0. Other setpoints could be specified.
All currents (grid Ig_alpha
, Ig_beta
and load Il_d
) follow their reference value. A slightly larger error is visible compared to the simulation. Part of this difference can be explained by the relatively large distortion of the grid voltage (domestic grid voltage at imperix premises).
The next figure shows the results obtained using an oscilloscope under the same conditions. As it can be seen, all signals are in phase with the grid voltage and show a low level of distortion.
As expected, the load current ripple is significantly larger than the grid current ripple, which is hidden in the residual closed-loop control noise.
- CH1 – yellow: the grid voltage (phase A),
- CH2 – cyan: grid current (phase A)
- CH3 – magenta: the load current (phase A)