This application note presents a possible control implementation for a single-phase PV inverter, controlling the grid current in the dq reference frame. This approach requires the emulation of quadrature components that do not exist in a single-phase system, hence justifying the use of a dedicated emulation principle named fictive-axis emulation. The attractiveness of this approach is related to its excellent capability to decouple the control of the active and reactive power flows.


The following zip file contains an example of control using MATLAB Simulink.

Minimum requirements:

  • Imperix ACG SDK or newer.
  • MATLAB Simulink R2016a or newer.
  • Plexim PLECS VIEWER 4.4.2 or newer (free)

Control implementation

The proposed control is implemented on MATLAB Simulink using the associated blockset for B-Box RCP / B-Board PRO (part of imperix ACG SDK). The chosen control implementation consists in controlling the grid current using a rotating reference frame (dq-type) synchronized with the grid frequency. The attractiveness of this approach is related to its excellent capability to decouple the control of the active and reactive power flows. Additionally, the mechanisms commonly used in three-phase applications can be re-used directly. On the other hand, this approach requires the emulate the components (e.g. β-axis) that do not exist in a single-phase system, hence justifying the use of a dedicated emulation principle name fictive-axis emulation.

Alternatively, the grid current could also be controlled using a Proportional Resonant (PR) controller TN110: Proportional Resonant (PR) control, which would circumvent the need for FAE, but at the cost of a less intuitive decoupling of active and reactive power flows.

The sampling period (Ts) is assumed to be identical to the switching period. The duty-cycles are hence logically updated only once per period. This results in an average delay of 1.25¡Ts. Other sampling strategies could be implemented, requiring only few adjustments to the controller parameters.

Grid-side control

Synchronization with the grid is implemented using a Phase-Locked Loop (PLL), which is itself based on a Second-order Generalized Integrator (SOGI) TN104: SOGI-based PLL. This technique offers an attractive immunity to harmonic perturbations that are not uncommon in such applications. In the present case, the SOGI also has the attractive benefit that the quadrature output can be directly used for the FAE subsystem.

The grid current itself is controlled thanks to a conventional dq-based vector current control, which is further detailed in TN106: Vector current control. As such, the reactive power flow can be freely defined through \begin{array}{l}I_g_\beta\end{array}, while the active power flow is controlled through\begin{array}{l}I_g_\alpha\end{array} by the bus voltage controller.

In order to feed the necessary Park transform, the β-axis current is emulated using an estimator as described in TN124: Fictive Axis Emulation (FAE). This estimator essentially replicates the plant transfer function.

The DC bus voltage control implements a conventional cascaded PI controller TN108: Cascaded voltage control, but with the particularity that a notch filter is placed on the error input in order to remove double-frequency components (here 100Hz) from the controller output \begin{array}{l}I_{g,d}\end{array}. Indeed, single-phase systems intrinsically have pulsating instantaneous active power flows, which results in DC voltage oscillations. These oscillations are therefore desirable by design and shall not be rejected by the voltage controller.

PV-side control

The PV current is controlled thanks to a conventional PI controller, whose reference can be freely defined. No Maximum Power Point Tracking (MPPT) is implemented in this example. This topic is nevertheless addressed in TN117: Maximum Power Point Tracking (MPPT).

Simulation results

Simulation results are provided below, showing various transients due to active and reactive power setpoint changes. Notably, the reference steps on the PV current (Ib) indirectly impacts the d-axis grid current (Ig_d), through the DC bus voltage control.

Useful academic references

[1] B. Bahrani, S. Kenzelmann and A. Rufer, “Multivariable-PI-based dq current control of voltage source
converters with superior axis decoupling capability,” in IEEE Trans. Ind. Electron., Vol. 58, N° 7, Jul. 2011.
[2] M. Ciobotaru, R. Teodorescu and F. Blaabjerg, “A new single-phase PLL structure based on a second-order generalized integrator,” in Proc. PESC Conf., Rhodos, Greece, June 2006.
[3] F.J. Rodríguez, E. Bueno, M. Aredes, L.G.B. Rolim, F.A.S. Neves and M.C. Cavalcanti, “Discrete-time
implementation of second-order generalized integrators for grid converters,” in Proc. IECON Conference,
Orlando, Nov. 2008.
[4] R. Teodorescu, F. Blaabjerg, M. Liserre, and P. C. Loh, “Proportional resonant controllers and filters for grid-connected voltage-source converters,” in IEE Proc. on Electr. Power Appl., Vol. 153, N°. 5, Sep. 2006.

Quick-start guide

An obvious prerequisite of grid-tied operation is that all necessary precautions are used in order to make the flow of uncontrolled currents through the inverter diodes impossible. This notably requires that the DC bus is pre-charged by suitable means before the connection to the grid. Useful information regarding how to pre-charge the DC bus in grid-tied applications is given in TN131.

Don’t forget to properly configure protection thresholds on the B-Box RCP before starting experimental activities. The related documentation can be found in PN105.

Required hardware

Experimentation on this Application Note can be made using standard imperix equipment:

In addition, the following equipment is needed:

  • 1x 7.5mF DC bus capacitor (Cdc)

  • 1x PV panel or PV panel emulator

  • 1x isolation transformer (not shown)

  • 1x AC disconnector, or better controllable relay as well as a circuit breaker.

  • (1x pre-charge circuit - optional, not shown)

I/O signals

Controller inputs (sensors)

Controller outputs (PWM signals)

  • PWM0-PWM1 - Boost converter

  • PWM2-PWM3 - Grid inverter, leg A

  • PWM4-PWM5 - Grid inverter, leg B

PWM0 can most often be avoided unless reverse conduction in the MOSFET is desired.

Start-up procedure

The following steps can be used as a brief reminder of a reasonable start-up procedure:

1) Before addressing this application, run a simpler control code in order to validate that:

  • All measurements are correctly acquired, with the appropriate gain and sign (notably currents).
  • Protections are correctly configured and do trigger at the appropriate value.
  • The switched voltage (EMF) at the converter-side of the grid inductor has no obvious phase mismatch with the grid voltage (e.g. operating in open-loop while disconnecting the inductor). There are indeed numerous risks of polarity errors…

2) Pre-charge the DC bus to a sufficient voltage to avoid any risk of uncontrolled diode conduction. In single-phase application, the minimum DC bus voltage is defined by \begin{array}{l}V_{DC,min}=\widehat{V_{g}}\end{array}.

Double-check this condition.

3) Physically connect the converter to the grid, either using a controllable relay or using manual wiring.

4) In BB Control, enable PWM operation. Related getting-started instructions are available in PN137: Simulation essentials with PLECS.

Experimental results

To be added…

  • No labels