Apply DC Dynamic load block in a three phase grid connected rectifier circuit

In a MATLAB example "Three phase Grid connected rectifier control", I try to achieve similar waveforms from the example but with a modification. The modification is that the resistive load is replaced with Dynamic load block. The p port of the dynamic load block is connected to a matlab script. The script creates a timeseries power (in Watts) that changes in magnitudes over time in seconds. In the Dynamic load block description, it mentions that when the voltage from the DC supply drops below the Minimum supply voltage, the load behavior changes and the block acts as a resistive load.
Problem: My DC output voltages are incorrect, it has negative values and the waveform looks messed up. I am unsure where the problem is. What are possible troubleshooting steps I should try?
Thank you.

 Accepted Answer

Umar
Umar on 4 Mar 2026 at 18:29
Edited: Umar on 4 Mar 2026 at 18:31
Hi @Xuan Minh,
Thanks for sharing the details of your setup — this is a really interesting modification and the issue you're running into makes a lot of sense once you dig into how the Dynamic Load block actually behaves under the hood. The most likely culprits for your negative and messy DC output voltage are:
First, make sure you have a Simulink-PS Converter block sitting between your From Workspace block and the P port of the Dynamic Load, with the input unit explicitly set to W (Watts) — this is mandatory for any Simscape physical signal input and without it the block receives a garbage signal;
Second, check the polarity of your + and − terminals on the Dynamic Load, because unlike the resistive load you replaced which is symmetric, the Dynamic Load will instantly see a negative supply voltage if wired backwards and immediately switch into open-circuit conductance mode, which breaks everything downstream;
Third, the default Minimum supply voltage parameter is only 20 V, but your DC bus is ramping from 0 V up to around 600 V during startup, meaning the block is constantly switching between its three internal operating regimes (constant power, resistive, and open circuit) during that ramp, which fights the PI controller that was originally tuned for a plain resistive load — try setting that parameter to around 400–500 V and also delay your timeseries power demand to only kick in after about 0.15 seconds once the bus has settled;
Fourth, make sure your Dynamic Load is connected in parallel with the existing DC Link capacitor subsystem and not replacing it, because constant power loads have a negative incremental impedance characteristic that requires that capacitor to remain in place as a stability buffer; and
Finally, avoid step changes in your timeseries power profile — use smooth ramps instead, as sudden steps will destabilise the cascade PI control loop that was never designed for a constant power load. Start with the PS Converter and polarity checks first and you should see an immediate improvement.
Good luck!

1 Comment

Thank you so much for the inputs. So far I followed your first 4 suggestions, and I will start to troubleshoot the last step you suggest. I will update my questions soon. Thank you!

Sign in to comment.

More Answers (0)

Products

Release

R2024b

Asked:

on 4 Mar 2026 at 18:13

Commented:

on 8 Mar 2026 at 3:53

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!