Simulation on Switching and Conduction Loss on Three Phase Inverter

Simulating switching & conduction losses in a three-phase inverter usually requires simulation software created primarily for power electronics (or) electrical engineering applications.

  • MATLAB/Simulink and

are two popular software packages for conducting such simulations.

Here’s a general strategy for simulating switching & conduction losses in a 3-phase inverter utilizing MATLAB/Simulink:

Modeling a Three-Phase Inverter

To simulate the three-phase inverter, use MATLAB/Simulink. This model should comprise

  • Power semiconductor devices (IGBTs or MOSFETs),
  • Gate drivers,
  • DC link capacitors, and
  • Load.

Switching Losses

Controlling the gate signals of power semiconductor devices allows you to introduce switching events into the inverter. You may control the device switching using PWM signals.

Create a switching loss simulation for each power semiconductor device. This model typically takes into account the

  • On-State Voltage Drop,
  • Switching Frequency, &
  • Gate Driver Parameters.

Conduction Losses

Calculate the conduction losses in power semiconductor devices throughout both on- and off-state operations. The conduction losses are determined by parameters such as the devices

  • Forward Voltage Drop,
  • Current Rating, &
  • Duty Cycle.

Include thermal models that take into consideration for how temperature affects conduction losses.

Simulation Setup

Define the inverter’s input voltage source and load parameters.

Configure simulation parameters such as

  • Simulation Time,
  • Solver Options, &
  • Sampling Rates.

Run the Simulation

Run the simulation and monitor the switching & conduction losses in power semiconductor devices.

Keep track of vital performance data like efficiency, total losses, & device temperatures.

Analyze and Optimize

Analyze the simulation findings to find possibilities for improvement in switching & conduction losses.

Optimize the inverter’s architecture, control techniques, and switching patterns to reduce losses and increase efficiency.


Validate the simulation results through comparing them to theoretical calculations (or) experimental data.

Modify the simulation model as necessary to maintain accuracy and dependability.

For more complex simulations or extensive analysis, you may want to include heat models, parasitic components, & control algorithms in your simulation.

Sample Simulation

An example of a basic MATLAB/Simulink code for modeling the conduction and switching losses in a 3-phase inverter is as follows:

% Three-Phase Inverter Simulation for Switching and Conduction Losses

% Define simulation parameters Fs = 10e3; % Sampling frequency (Hz) T = 1/Fs; % Sampling period (s) t_end = 0.1; % Simulation time (s) t = (0:T:t_end-T)'; % Time vector

% Define input voltage (three-phase sinusoidal) Va = sin(2pi50t); % Phase A voltage (sinusoidal) Vb = sin(2pi50t - 2pi/3); % Phase B voltage (120 degrees phase shifted) Vc = sin(2pi50t + 2*pi/3); % Phase C voltage (240 degrees phase shifted)

% Define load parameters R_load = 10; % Load resistance (ohms) L_load = 0.01; % Load inductance (H)

% Inverter switching frequency and duty cycle f_switch = 1e3; % Switching frequency (Hz) duty_cycle = 0.5; % Duty cycle (50%)

% Create Simulink model model = ‘three_phase_inverter’; open_system(new_system(model));

% Add blocks to Simulink model add_block(‘powerlib/Elements/Inverter’,‘three_phase_inverter/Inverter’); add_block(‘powerlib/Elements/RL Series Branch’,‘three_phase_inverter/Load’); add_block(‘powerlib/Power Electronics/Controller’,‘three_phase_inverter/Controller’);

% Connect blocks add_line(‘three_phase_inverter’,‘Controller/1’,‘Inverter/1’); add_line(‘three_phase_inverter’,‘Load/1’,‘Inverter/2’);

% Set block parameters set_param(‘three_phase_inverter/Inverter’,‘WaveForm’,‘square’,‘Amplitude’,‘V_dc/2’,‘Frequency’,‘f_switch’,‘PhaseDelay’,‘0’,‘DutyCycle’,‘duty_cycle’); set_param(‘three_phase_inverter/Load’,‘Resistance’,‘R_load’,‘Inductance’,‘L_load’); set_param(‘three_phase_inverter/Controller’,‘SampleTime’,‘T’);

% Set simulation parameters set_param(‘three_phase_inverter’,‘StopTime’,‘t_end’);

% Open Simulink model open_system(model);

% Simulate the model sim(model);

% Plot results figure; subplot(2,1,1); plot(t,Va,t,Vb,t,Vc); title(‘Input Voltage (Three-Phase)’); xlabel(‘Time (s)’); ylabel(‘Voltage (pu)’); legend(‘Phase A’,‘Phase B’,‘Phase C’); grid on;

subplot(2,1,2); plot(simout.time,simout.signals.values(:,1),simout.time,simout.signals.values(:,2),simout.time,simout.signals.values(:,3)); title(‘Output Voltage (Load)’); xlabel(‘Time (s)’); ylabel(‘Voltage (V)’); legend(‘Phase A’,‘Phase B’,‘Phase C’); grid on;

% End of code

A basic Simulink model for a 3-phase inverter with a resistive-inductive load is set up by this code. It models switching and conduction losses and produces 3 sinusoidal input voltages for the inverter. After that, a plot of the output voltages throughout the load is created for analysis.

Please be aware that this code only offers a simple example; depending on your particular needs, you might need to modify it further by adding advanced control algorithms, incorporating thermal modeling, (or) modifying certain parameters relevant to your application.

Furthermore, commercial simulation software such as PLECS provides specialized toolboxes & libraries for power electronics simulations, including pre-built components and extensive modeling features designed specifically for inverter switching and conduction loss analysis.