MATLAB/Simulinkを使用したLCL三相グリッド接続インバータのシミュレーション

制御戦略:PR制御とSVPWM

交流電流内環にはPR(比例共振)制御を採用します。これは、従来のPI制御が交流信号の追従時に定常誤差を生じるのに対し、PR制御は特定の周波数で無限大のゲインを提供し、交流信号の無誤差追従を実現できるためです。

MATLABにおけるPRコントローラの簡単な実装例(単一ループの場合)を以下に示します。

% PRコントローラのパラメータ定義
Kp = 0.5; % 比例ゲイン
Kr = 100; % 共振ゲイン
omega0 = 2*pi*50; % 共振周波数(50Hz)
s = tf('s');
PR = Kp + Kr * s / (s^2 + omega0 * s + omega0^2);

このコードは単純なPRコントローラを構築します。`Kp`は比例ゲイン、`Kr`は共振ゲイン、`omega0`は共振周波数を設定します。`s`はラプラス演算子であり、伝達関数の形式でPRコントローラを構築しています。実際の応用では、このPRコントローラに交流電流信号を入力し、設定されたパラメータに基づいて電流を調整し、出力が目標値に追従するようにします。

SVPWM制御(Space Vector Pulse Width Modulation)

PWM波形の生成にはSVPWM制御を使用します。これは、従来の正弦波PWM(SPWM)と比較して、直流電圧利用率が高く、高調波含有量が低いという利点があります。

SVPWM制御の核心思想は、インバータの8つのスイッチ状態を六角形の空間ベクトル図にマッピングし、異なるベクトルの作用時間を合理的に分配することで、望ましい出力電圧ベクトルを合成することにあります。

コードによる簡単な例(完全な三相出力を含まない簡易版)を以下に示します。

% 参照電圧ベクトルVref_vecが既知と仮定
% 扇区の計算
theta = atan2(imag(Vref_vec), real(Vref_vec));
sector_num = floor(theta / (pi/3)) + 1;
% ベクトル作用時間の計算
% ここでは複雑な計算は省略し、簡易的な例を示します
T_a = 0.1; % ベクトル1の作用時間(仮定)
T_b = 0.2; % ベクトル2の作用時間(仮定)
T_zero = 1 - T_a - T_b; % ゼロベクトルの作用時間

ここでは、参照電圧ベクトルの角度を計算して属する扇区を特定し、その扇区に基づいて基本ベクトルの作用時間を計算します。これらの時間の分配を通じてSVPWM波を生成します。実際のコードはもっと複雑で、三相出力、スイッチング周波数など多くの要因を考慮する必要があります。

シミュレーションモデルの構築と条件

本シミュレーションモデルはMATLAB/Simulink R2015bを基に構築されています。低バージョン形式への変換が必要な場合は、事前にご連絡ください。このモデルでは、LCLフィルタモジュール、三相インバータモジュール、電流内環のPR制御モジュール、およびSVPWM波形生成モジュールなどを組み合わせ、完全なLCL三相グリッド接続インバータシミュレーションシステムを構成しています。

タグ: MATLAB Simulink LCLフィルタ インバータ PR制御

8月13日 19:34 投稿