Nonlinear Inductor Characteristics
This example shows a comparison of nonlinear inductor behavior for different parameterizations. Starting with fundamental parameter values, the parameters for linear and nonlinear representations are derived. These parameters are then used in a Simscape™ model and the simulation outputs compared.
Specification of Parameters
Fundamental parameter values used as the basis for subsequent calculations:
Permeability of free space,
Relative permeability of core,
Number of winding turns,
Effective magnetic core length,
Effective magnetic core cross-sectional area,
Core saturation begins,
Core fully saturated,
mu_0 = pi*4e-7; mu_r = 3000; Nw = 10; le = 0.032; Ae = 1.6e-5; B_sat_begin = 0.75; B_sat = 1.5;
Calculate Magnetic Flux Density and Magnetic Field Strength Data
Where:
Magnetic flux density,
Magnetic field strength,
Linear representation:
Nonlinear representation (including coefficient, a):
% Use linear representation to find value of H corresponding to B_sat_begin H_sat_begin = B_sat_begin/(mu_0*mu_r); % Rearrange nonlinear representation to calculate coefficient, a a = atanh( B_sat_begin/B_sat )/H_sat_begin; % Linear representation H_linear = [-500 500]; B_linear = mu_0*mu_r*H_linear; % Nonlinear representation H_nonlinear = -5*H_sat_begin:H_sat_begin:5*H_sat_begin; B_nonlinear = B_sat*tanh(a*H_nonlinear);
Display Magnetic Flux Density Versus Magnetic Field Strength
The linear and nonlinear representations can be overlaid.
figure,plot( H_linear, B_linear, H_nonlinear, B_nonlinear ); grid( 'on' ); title( 'Magnetic flux density, B, versus Magnetic field strength, H' ); xlabel( 'Magnetic field strength, H (A/m)' ); ylabel( 'Magnetic flux density, B (T)' ); legend( 'B=\mu_0 \mu_r H', 'B-H curve', 'Location', 'NorthWest' )
Calculate Magnetic Flux and Current Data
Where:
Magnetic flux,
Current,
Linear representation:
Nonlinear representation:
% Linear inductance L_linear = mu_0*mu_r*Ae*Nw^2/le; % Linear representation I_linear = [-1.5 1.5]; phi_linear = I_linear.*L_linear/Nw; % Nonlinear representation I_nonlinear = le.*H_nonlinear./Nw; phi_nonlinear = B_nonlinear.*Ae;
Display Magnetic Flux Versus Current
The linear and nonlinear representations can be overlaid.
figure, plot( I_linear, phi_linear, I_nonlinear, phi_nonlinear ); grid( 'on' ); title( 'Magnetic flux, \phi, versus current, I' ); xlabel( 'Current, I (A)' ); ylabel( 'Magnetic flux, \phi (Wb)' ); legend( '\phi=I L/N_w', '\phi-I curve', 'Location', 'NorthWest' );
Use Parameters in Simscape Model
The parameters calculated can now be used in a Simscape model. Once simulated, the model is set to create a Simscape logging variable, simlog.
modelName = 'ee_nonlinear_inductor';
open_system( modelName );
sim( modelName );
Conclusion
The state variable for all representations is magnetic flux, . Current, I, and magnetic flux,
, can be obtained from the Simscape logging variable, simlog, for each representation. Overlaying the simulation results from the representations permits direct comparison.
figure, plot( ... simlog.Linear_Inductor.inductor.i.series.values,... simlog.Linear_Inductor.inductor.phi.series.values,... simlog.B_vs_H.inductor.i.series.values,... simlog.B_vs_H.inductor.phi.series.values,... simlog.phi_vs_I.inductor.i.series.values,... simlog.phi_vs_I.inductor.phi.series.values,... 'o'... ); grid( 'on' ); title( 'Magnetic flux, \phi, versus current, I' ); xlabel( 'Current, I (A)' ); ylabel( 'Magnetic flux, \phi (Wb)' ); legend( 'Linear (single inductance)', 'B-H characteristic', '\phi-I characteristic', 'Location', 'NorthWest' );