Saturation in Magnetic core (Simscape) failure

4 visualizzazioni (ultimi 30 giorni)
Balagopal
Balagopal il 1 Lug 2025
Risposto: Kautuk Raj il 22 Lug 2025
Hi,
I recently tried to design a transformer core in MATLAB using the Simscape Magnetic Core block. I set all the parameters according to my calculations and defined the hysteresis curve for the core using a saturated BH curve. Just like the example, I have used descending B and H values. I have at least three values (1400, 2000, and 4000 A/m) that correspond to the same B_sat value, and similarly for the negative side (-1400, -2000, -4000 A/m) with -B_sat in the array. The saturation point is set at B_sat as well.
The issue is that when I feed a sine voltage with an amplitude that should saturate the core (the number of turns, Ae, Le, and frequency are all calculated to reach B_sat at this amplitude), my actual B value remains lower than B_sat. When I increase the voltage amplitude well beyond the calculated saturation point, B still does not clamp at B_sat. Instead, it maintains a sine waveform with peaks greater than B_sat (for example, with B_sat = 0.5T, the peak B reaches 0.8T).
As expected, the magnetizing current increases rapidly as soon as B exceeds B_sat and follows the same waveform while B > B_sat, then returns to normal once B < B_sat again (since it’s a sine wave).
What could cause this issue? I am using a fixed-step solver. Any suggestions? Am I missing something in my setup?
P.S. The BH curve includes all the necessary points (remanence, coercive force) and flattens out at the saturation extremes.
Thanks in Advance!

Risposte (1)

Kautuk Raj
Kautuk Raj il 22 Lug 2025
I understand that the issue is occurring because your BH curve in Simscape is not flat enough at the saturation region. To ensure B clamps at B_sat, add several points with increasing H but the same B_sat value at both positive and negative extremes (e.g., H = 1400, 2000, 4000, 8000 A/m all with B = 0.5T). This prevents Simscape from interpolating or extrapolating B above B_sat.
Also, try reducing your solver step size or use a variable-step solver for better accuracy. Double-check your units and core geometry as well.
Refer to the following documentation page from MathWorks: https://www.mathworks.com/help/sps/ref/magneticcore.html

Prodotti


Release

R2024b

Community Treasure Hunt

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

Start Hunting!

Translated by