I am trying to find switching losses of a Modular Multilevel Converter (MMC) with PLECS Blockset. My SubModules (SM) are half-bridge (chopper cell) and there are 4 SMs in each arm of the MMC. As a first step, I am trying to find the switching losses of a single IGBT and a single diode (out of 48 IGBTs and 48 diodes of the whole MMC). So, I have made a parallel connection of an IGBT and a diode and give them a thermal description (5SNA 2000K450300_IGBT and 5SNA 2000K450300_Diode which can be downloaded from here). The rest of the switches are just ideal IGBTD components without any thermal description. When I run the system I get this error:
Negative turn-off loss (E = -3.89521). The relevant variables are:v = -2706.21i = -2706.21T = 25.8755
For the given values in the error, the turn-off loss would be negative due to PLECS interpolation for negative current. However, the given value for current in the error is wrong. The current at turn-off instant of the diode is 1222.4 A (and not -2706.21 A) and this value should give me a positive turn-off loss. Can someone please help me with this issue?
P.S. I have also attached the 4 photos for better quality.
Without your model it’s not possible to be 100% sure of how to fix this, but since the the diode’s turn-off loss data as provided by the manufacturer doesn’t explicitly force zero losses at 0A (or negative) current it could just be the case that you need to modify the data to do so. See below where I changed the 0A data to be at 1A and then added a value of 0J at both -1A and 0A (to clamp the losses at zero). Attached is the updated XML file as well.
Note that you may need to apply a similar modification to the conduction losses (and also for the IGBT’s switching and conduction loss data should you see error messages related to these).
Thanks a lot for the answer. Sorry I was away last week that’s why I am replying late. The problem of negative turn-off loss for the diode is solved now.
I used the XML file that you have attached and this time I had constant 0 turn-off loss (and not positive as I was expecting due to the voltage, current, and temperature at turn-off instant). So I came to know that there should be something wrong with my model. I made my submodules when I was completely new to PLECS and instead of NOT block (which I couldn’t find in the library at that time), I used a Compare to Constant (==0) block for gate input of the lower switches. Now I changed that to NOT block and I am getting positive turn-off loss both with the original XML file and the one you updated.
I have attached the both models now (the one with Compare to Constant block which is MMCT_plecs_notworking.slx and the one with NOT block which is MMCT_plecs_working.slx). My PLECS circuit has 4 submodules in each arm and I am looking at the thermal losses of the submodule on the upper left of the circuit. I also found that in order to have positive turn-off loss for the diode, all the Compare to Constant blocks should be substituted by NOT block (not just the one in submodule on the upper left). Also, I wanted to compare the output of the Compare to Constant block with NOT block and I noticed that as soon as I connect the Compare to Constant block to the gate signal (even though the output is not connected to the switch) I receive negative (with the original XML) or 0 (with the updated XML) doide turn-off loss. I have also attached the original (5SNA 2000K450300_Diode.xml) and the updated (5SNA 2000K450300_Diode_e.xml) thermal profile. Please let me know if my explanations or the models are not clear enough.
Thank you so much again for the answer and your time :)Best regards,Sohrab
I am unable to run your model due to you including some blocks from MATLAB toolboxes I don’t have on my machine, but your modulation implementation seems to make sense to me!