In this study, I focus on the design and control of a single-phase photovoltaic grid-connected inverter system. The two-stage topology is adopted, which consists of a front-end DC-DC boost converter and a back-end DC-AC full-bridge inverter. This structure allows independent control of maximum power point tracking (MPPT) and grid-connected inversion, making it one of the most efficient types of solar inverters for residential and small-scale applications. I establish a mathematical model for each stage and build a 2 kW simulation model using MATLAB/Simulink. The control strategy includes a variable-step perturb-and-observe MPPT algorithm and a dual closed-loop control scheme with grid voltage feedforward. Simulation results demonstrate excellent stability, fast dynamic response, and low total harmonic distortion (THD) of the output current.
System Topology and Working Principle
I choose the two-stage single-phase inverter among various types of solar inverters because it decouples the MPPT control from the inversion process, offering greater flexibility in photovoltaic (PV) panel voltage ranges. The overall system structure is shown in the figure below. The PV array output is first boosted by a boost converter to a suitable DC bus voltage, then inverted to AC and connected to the grid through an L-type filter.

Front-end Boost Converter
The boost converter operates in two modes: when the switch V is on, the inductor L stores energy from the PV source; when off, both the source and the inductor deliver energy to the load. The output voltage is regulated by controlling the duty cycle. The key parameters are summarized in Table I.
| Parameter | Symbol | Value |
|---|---|---|
| Input capacitor | C1 | 1000 μF |
| Inductor | L | 1.45 mH |
| Output capacitor | C | 1500 μF |
| Switching frequency | fsw | 5 kHz |
Back-end Full-Bridge Inverter
The full-bridge inverter consists of four switches (V1–V4). By controlling the gating signals, an alternating output voltage is produced. For inductive loads, the output current lags the voltage due to freewheeling diodes. The inverter output voltage uab alternates between +Udc and -Udc. The mathematical expression for the inverter transfer function is given by:
$$ G_2(s) = \frac{K_{PWM}}{Ts+1} $$
where KPWM = Udc/Uc, Uc is the carrier peak voltage, and T = TPWM/2 is the switching period.
Maximum Power Point Tracking Algorithm
Among the many types of solar inverters, MPPT algorithms play a crucial role in extracting maximum power from PV panels. I implement a variable-step perturb-and-observe method to avoid steady-state oscillations. The algorithm first uses a large step ΔU1 to quickly approach the vicinity of the MPP, and then switches to a small step ΔU2 near the MPP. Table II lists the step sizes used.
| Voltage Region | Step Size |
|---|---|
| [0, 0.8Voc – ΔU] | ΔU1 = 1.0 V |
| [0.8Voc + ΔU, Voc] | ΔU1 = 1.0 V |
| [0.8Voc – ΔU, 0.8Voc + ΔU] | ΔU2 = 0.5 V |
The flow of the algorithm is implemented in a C-coded MATLAB function. The power P is computed from voltage and current, and the duty cycle of the boost switch is adjusted accordingly:
$$ P(k) = V_{pv}(k) \cdot I_{pv}(k) $$
$$ \text{If } dP > 0: \text{increase } V_{ref}; \text{otherwise: decrease } V_{ref} $$
Dual Closed-Loop Control for DC-AC Inverter
For the inversion stage, I adopt a voltage outer loop and current inner loop control. The outer loop regulates the DC bus voltage Udc to a constant reference U*dc. The output of the PI controller gives the amplitude of the reference current I*m, which is then multiplied by a unity sinusoidal signal sinθ synchronized with the grid. The inner current loop forces the inverter output current io to follow the reference. Additionally, grid voltage feedforward is added to eliminate the disturbance caused by the grid voltage e. The block diagram is represented by the following equations.
The current inner loop open-loop transfer function is:
$$ G_{io}(s) = G_1(s) G_2(s) G_3(s) = \frac{K_I K_{PWM} (\tau s + 1)}{s R_L \left( \frac{L}{R_L} s + 1 \right)} $$
where G1(s) = KP + KI/s is the PI controller, G2(s) ≈ KPWM is the inverter gain, and G3(s) = 1/(sL + RL) is the filter impedance. The feedforward gain kf is chosen to cancel the grid voltage disturbance:
$$ -e \cdot k_f \cdot K_{PWM} – e = 0 \Rightarrow k_f = -\frac{1}{K_{PWM}} $$
The PI parameters are designed based on desired crossover frequency ω*c and phase margin γ*. The design steps yield:
$$ \tau = \frac{ \frac{L}{R_L} \omega_c^* – \tan(90^\circ – \gamma^*) }{ \left[ 1 + \frac{L}{R_L} \omega_c^* \tan(90^\circ – \gamma^*) \right] \omega_c^* } $$
$$ K_I = \frac{ R_L \omega_c^* }{ K_{PWM} } \sqrt{ \frac{ \left( \frac{L}{R_L} \omega_c^* \right)^2 + 1 }{ (\tau \omega_c^*)^2 + 1 } } $$
Table III lists the designed PI parameters.
| Parameter | Symbol | Value |
|---|---|---|
| Proportional gain | KP | 0.85 |
| Integral gain | KI | 120 |
| Feedforward gain | kf | -1/KPWM |
Simulation Model and Results
I build the complete 2 kW single-phase photovoltaic grid-connected system in Simulink. The PV panel parameters at standard test conditions (STC: 25°C, 1000 W/m²) are: open-circuit voltage Voc = 181 V, maximum power voltage Vm = 145 V, maximum power current Im = 14.7 A, and Pmax = 2132 W. The load is a resistor of 79.5 Ω.
First, I test the system under constant irradiance of 1000 W/m². Figure 12 in the original study shows the PV output power reaches 2100 W within 0.05 s and stabilizes with small oscillations. The boost output voltage reaches 400 V in 0.3 s. Then, I verify the MPPT response under varying conditions. When the irradiance drops from 1000 W/m² to 800 W/m² at t = 0.25 s (temperature fixed at 25°C), the system tracks the new MPP quickly. Similarly, when temperature changes from 25°C to 20°C at constant irradiance, the output power increases slightly and re-stabilizes.
For the grid-connected inverter, I monitor the output current and grid voltage. The inverter current becomes sinusoidal and in phase with the grid after 0.15 s. The total harmonic distortion (THD) of the output current is measured as 4.52%, which is below the 5% requirement. I also test dynamic response under varying irradiance: at t = 0.4 s, irradiance changes from 1000 W/m² to 700 W/m²; at 0.6 s to 800 W/m²; and at 0.8 s back to 1000 W/m². The output current amplitude adjusts proportionally, demonstrating the effectiveness of the dual closed-loop control with grid feedforward.
Table IV summarizes the key simulation results.
| Condition | Steady-state output power | Boost voltage | Grid current THD |
|---|---|---|---|
| STC (1000 W/m², 25°C) | ~2100 W | 400 V | 4.52% |
| Irradiance step (1000→800 W/m²) | ~1680 W | 400 V | 4.6% |
| Temperature step (25→20°C) | ~2130 W | 400 V | 4.5% |
Conclusion
Through this research, I have successfully designed and simulated a two-stage single-phase photovoltaic grid-connected inverter. The MPPT algorithm based on variable-step perturb-and-observe provides fast and accurate tracking without excessive oscillation. The dual closed-loop control with grid voltage feedforward ensures unity power factor, low THD, and robust dynamic performance. This work highlights the advantages of this topology among various types of solar inverters and provides a reliable basis for practical implementations.
