Main Content

カスタム変圧器 (B-H 曲線)

この例では、非線形変圧器のコアにおける磁化特性の計算を説明し、確認します。基本パラメーター値から開始して、コア特性を導出します。次に、これをテスト回路例の Simscape™ モデルで使用します。このモデルを使用して、オシロスコープ上でコアの磁化特性をプロットできます。次に、モデルの出力を既知の値と比較します。

モデルを開く

modelName = 'ee_custom_transformer';
open_system( modelName );

パラメーターの指定

以下の計算の基礎として使用される基本パラメーター値は次のとおりです。

  • 自由空間の透磁率: $\mu_0, \rm{H/m}$

  • コアの相対透磁率: $\mu_r$

  • 一次巻数: $N_1$

  • 二次巻数: $N_2$

  • 磁心の有効長: $l_e, \rm{m}$

  • 磁心の有効断面積: $A_e, \rm{m^2}$

  • コアの飽和開始: $B_{sat_{begin}}, \rm{T}$

  • コアの完全飽和: $B_{sat}, \rm{T}$

mu_0 = pi*4e-7;
mu_r = 3000;
N1 = 100;
N2 = 200;
le = 0.1;
Ae = 1e-4;
B_sat_begin = 0.6;
B_sat = 1.2;

磁束密度と磁場の強さの特性を計算

パラメーターは次のとおりです。

  • 磁束密度: $B, \rm{T}$

  • 磁場の強さ: $H, \rm{A/m}$

線形表現は次のとおりです。

  • $B = \mu_0 \mu_r H$

非線形表現 (係数 a を含む) は次のとおりです。

  • $B = B_{sat} \tanh(a.H)$

% 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;

% Nonlinear representation
H_nonlinear = -750:25:750;
B_nonlinear = B_sat*tanh(a*H_nonlinear);

Simscape モデルでのパラメーターの使用

これで、計算したパラメーターを Simscape モデルで使用できます。シミュレーションを実行すると、Simscape のログ変数 simlog_ee_custom_transformer を出力し、出力端子 yout を使用して一部の信号を出力するようにモデルが設定されます。回路のパラメーターは以下のとおりです。

  • 電圧源の大きさ: $V_s=10 \rm{V}$

  • 電圧源の周波数: $Freq_{Hz}=60 \rm{Hz}$

  • 電圧源の抵抗: $R_{Vs}=10 \rm{\Omega}$

  • オペ アンプの入力抵抗: $R_1=1 \rm{k\Omega}$

  • オペ アンプのフィードバック抵抗: $R_2=1 \rm{M\Omega}$

  • オペ アンプのフィードバックの静電容量: $C_2=1 \rm{\mu F}$

% Circuit parameters
Vs = 10;
Freq_Hz = 60;
R_Vs = 10;
R_1 = 1e3;
R_2 = 1e6;
C_2 = 1e-6;

% Simulate model
simOut = sim( modelName );
yout = get(simOut, 'yout');
simlog = get(simOut, 'simlog_ee_custom_transformer');

% Collect internal Simscape logging data for comparison
I_simscape = simlog.Transformer_B_H_curve.L_m.i.series.values;
phi_simscape = simlog.Transformer_B_H_curve.L_m.phi.series.values;

% Collect model output data for comparison (as used for oscilloscope)
I_primary = yout(:,1);
int_V_secondary = yout(:,2);

ログ記録と出力データの計算

磁場の強さと磁束密度の比較用データを提供するには、このデータを処理する必要があります。パラメーターは次のとおりです。

  • 起磁力: $F_m, \rm{A}$

  • 磁束: $\phi, \rm{Wb}$

  • オペ アンプの入力電圧: $V_{in}, \rm{V}$

  • オペ アンプの出力電圧: $V_{out}, \rm{V}$

使用する方程式は以下のとおりです。

  • $F_m = I.N_1$

  • $H = F_m/l_e$

  • $B = \phi/A_e$

  • $V_{out}=\frac{1}{R_1C_2}\int V_{in}.dt+c$

  • $\phi =\frac{1}{N_2}\int v.dt$

% Internal logging data
H_simscape = I_simscape.*N1./le;
B_simscape = phi_simscape./Ae;

% Oscilloscope scaling and model output data
H_measured = I_primary.*N1./le;
phi_measured = (int_V_secondary.*R_1.*C_2)./N2;
B_measured = phi_measured./Ae;

まとめ

これで、3 つの特性を重ね合わせることができます。

  • 定義済み特性: 基本パラメーターから計算

  • ログからの特性: Simscape 内部ログ データから計算

  • 測定からの特性: テスト用電子回路を使用した測定と計算によって取得

漏れおよび寄生のパラメーターのため、テスト用電子回路から得られた特性は、定義済み特性と異なります。ただし、与えられた変圧器の特性が適切な許容誤差範囲内で見つかるようにテスト回路とそのパラメーター化が示されます。

if ~exist('h1_ee_custom_transformer', 'var') || ...
        ~isgraphics(h1_ee_custom_transformer, 'figure')
    h1_ee_custom_transformer = figure('Name', 'ee_custom_transformer');
end
figure(h1_ee_custom_transformer)
clf(h1_ee_custom_transformer)

plot( ...
    H_nonlinear,...
    B_nonlinear,...
    'o',...
    H_simscape,...
    B_simscape,...
    H_measured,...
    B_measured,...
    '-',...
    'LineWidth',2);
grid( 'on' );
title( 'Transformer B-H Curve' );
xlabel( 'Magnetic Field Strength, H (A/m)' );
ylabel( 'Magnetic Flux Density, B (T)' );
legend( 'Calculated', 'Simulated',...
    'From Sensor', 'Location', 'NorthWest' );

リアルタイム シミュレーションの結果

この例は、Intel® 3.5 GHz i7 マルチコア CPU を搭載した Speedgoat Performance リアルタイム ターゲット マシンでテストされました。このモデルは、50 マイクロ秒のステップ サイズでリアル タイム実行できます。