Modular Multilever Converter with SVPWM

Hello everyone,
I am new user and I am a student in Electrical Engineering. At the moment, I am trying to implement Space Vector Modulation in a simulation of a half-bridge MMC. I’m new to this forum and would greatly appreciate any guidance, advice, or resources that could help me with this implementation. My PSCPWM model is working well based on examples from the PLECS library, but I’m having trouble matching the output signal of the SVPWM block to the cascaded half-bridge MMC. Any guidance would be greatly appreciated!

Space Vector Nmoduls.plecs (108.5 KB)

Hi TheMoonlitKnight,

The PLECS SVPWM block outputs a 3-element vector signal, which in your model is then split by the Demultiplexer into three separate scalar signals..

The issue here is that the Signal Selector blocks you’re using on these scalar signals expect inputs with a length of n_cell. Since each output from the Demux is just a single value (size 1), PLECS throws an error.

I’m not too familiar with the specific modulation scheme you’re implementing for the MMC, so it would help to understand what behavior you’re targeting. For instance, are the top n_cells of each half-bridge meant to switch simultaneously, for example, Sr1 driving all the top switches of the half-bridges in the R leg at the same time?

Once that’s clear, it’ll be easier to suggest how to structure the signal routing or adjust the modulation logic accordingly.

Another suggestion for generating phase-shifted sine signals: instead of using three separate sine blocks with different phases, you can use a single sine signal and apply a vectorized phase shift. See the attached model for an example.

vectorizedSine.plecs (8.0 KB)