Frequently Asked Question

Video 3.1: Model Mapping in Compiler Console [Japanese transcripts]
Last Updated 2 years ago


もし日本語字幕が自動で表示されない場合はブラウザのシークレットモードをお試しください。

キーワードの検索は "Ctrl + F" でブラウザの検索機能をご使用ください

ビデオのタイムスタンプに直接飛べるリンクが必要な場合 このガイドに従ってください

このビデオはお役に立てたでしょうか?HIL Academyの無料のHIL Specialistコースを受講してさらに理解を深めてみませんか?

もしこのビデオをあなたの母国語への翻訳するのに協力してくださる場合、我々までご連絡 ください

TRANSCRIPT

00:00:02

このビデオではモデルマッピングについて説明します

00:00:05

これは基本的なワークフローモジュール全体で使用しているモデルで実践的に説明します

00:00:12

特にHILデバイスを最適に使用するために必要なモデルコンパイルのさまざまな側面に焦点を当てます

00:00:20

実践的なデモンストレーションに加えより複雑なケースに適用するために必要な理論的な側面も説明します

00:00:30

まずHILシステムの基本的なシステム構成について説明します

00:00:34

リアルタイムでシミュレーションを行うには計算を高速に実行できるようなHILシステムを設計する必要がありました

00:00:42

このためモデルシミュレーションの特定の部分は

00:00:44

3つの別々のユニットのいずれかで実行されるようにあらかじめ設定されています

00:00:48

これらのユニットはユニット 間でリアルタイムにデータを交換します

00:00:51

スライドの右側にこれらのユニットが表示されています

00:00:56

Typhoon HILシミュレータはヘテロジニアス・マルチプロセッサ・アーキテクチャをベースにしています

00:01:01

HILデバイスはTyphoon FPGAソルバ SystemCPUおよびUserCPUの3つの要素で構成されています

00:01:08

HILアーキテクチャをより包括的に理解したい場合は

00:01:12

ビデオの説明に記載されているSystem architecture basicsのドキュメントページを見てください

00:01:19

Typhoon FPGAソルバはモデルの電気的ドメイン部分をリアルタイムでシミュレーションするために最適化されたマルチコアプロセッサです

00:01:27

つまりあらゆる電気回路と それを構成する受動素子 コンバータ電動機などのコンポーネントが

00:01:33

この回路ソルバによってシミュレーションされるのです

00:01:39

また汎用プロセッサとしてUser CPUとSystem CPUの2つがあります

00:01:46

HILデバイスに応じてそれらはシングルコアプロセッサまたはマルチコアプロセッサにすることができます

00:01:50

SystemCPUは通常特定の電気ドメインコンポーネントの低ダイナミクス現象をシミュレートするため

00:01:56

もしくは通信プロトコルスタックを処理するために使用されます

00:01:59

SystemCPUを利用するコンポーネントの例としては

00:02:03

電圧実効値 単相定電力負荷単極MPサーキットブレーカーなどがあります

00:02:08

ほとんどの場合SystemCPUのデフォルトパラメータを変更する必要はありません

00:02:16

対照的にUserCPUは直接ユーザの制御下にあります

00:02:20

ゲイン αβからdpへの変換 合計などの信号処理コンポーネントで構成されるサブモデルを実行します

00:02:32

それではこれが実際のモデルにとって何を意味するのかを見てみましょう

00:02:41

現在画面に表示されているモデルについても同じように区切ることができます

00:02:46

モデルの電気部分はFPGA回路ソルバによってシミュレートされます

00:02:50

この場合FPGA回路ソルバには 電圧源 三相インバータ コンタクタおよび電動機が含まれます

00:02:57

正弦波信号 定数 およびαβからabcコンポーネントで構成されるインバータの制御は

00:03:05

UserCPUでシミュレートされます

00:03:07

フェーズAのRMS電流測定はSystemCPUでシミュレートされます

00:03:13

なぜモデルがHILデバイス上にどのようにマッピングされているかを知っておく必要があるのでしょうか?

00:03:18

まずHILデバイスがモデルによって課せられるリアルタイム要件を満たしているかどうかを知る必要があります

00:03:22

実際には これは選択したHILデバイスに対してモデルを正常にコンパイルする必要があることを意味します

00:03:28

これを行うにはコンパイラエラーを効率的にトラブルシューティングするための

00:03:30

システムアーキテクチャの基本的な知識が必要です

00:03:35

またモデルの処理リソースを管理することでハードウェアリソースを経済的に活用し

00:03:39

HILデバイスの性能を最大限に引き出すことができます

00:03:43

これが明確になったのでTyphoon FPGAソルバのアーキテクチャとそれが直面する制約について さらに説明しましょう

00:03:54

TyphoonのFPGA回路ソルバは2.3.1コースのサブモジュールに示されているように

00:04:00

モデル設定で設定できるあらかじめ定義されたタイムステップで電気回路をシミュレートし ます

00:04:06

シミュレーションがリアルタイムで実行されるためいくつかの制約があります

00:04:12

1つ目はシミュレーションのタイムステップが離散的で固定されていることです

00:04:16

このシミュレーションのタイムステップは調整することができないので

00:04:20

より良いシミュレーション結果を得るために計算を繰り返そうとしてもすることができません

00:04:25

2つ目は計算時間が厳しく制限されていることです

00:04:29

これは次のシミュレーションステップを開始する前にすべての計算を終了する必要があることを意味します

00:04:37

このスライドにシステムアーキテクチャを示します

00:04:41

まずStandard Processing Core(以下、SPCまたは単にコアと呼ぶこともある)を分析します

00:04:48

これは回路ソルバーの基本的な構成要素であり

00:04:51

線形受動素子 コンバータ およびコンタクタで構成される電気回路のシミュレーションを担当します

00:04:59

モデルにSPCがいくつありそれらが何で構成されているかを確認しましょう

00:05:09

このモデルでは 抵抗 三相インバータ およびコンタクタで構成されるSPCが1つだけあります

00:05:16

これはモデルをコンパイルするときにメッセージログをチェックしてすべてのSPCのリストを見ることで確認できます

00:05:21

コンパイルしてみましょう

00:05:34

今SPCに対応するいくつかの要素を見ることができます

00:05:38

このリストは 後のモジュールで取り上げるモデルのパーティショニングを実行するときに役立ちます

00:05:45

デバイスの構成に応じてモデルにさまざまな数のSPCを含めることができます

00:05:50

現在configuration1(構成1)のHIL 404のモデルをコンパイルしているので

00:05:55

SPCがいくつ入るか確認してみましょう

00:05:58

ご覧のとおりこのconfigurtation(構成)では 最大3つのSPCがあります

00:06:03

モデル設定にあるデバイステーブルで 他のconfiguration(構成)で何台のSPCをサポートできるかを確認することができます

00:06:10

参考までにあるモデルのデバイステーブルはSchematic EditorのModelメニューにある

00:06:16

Model Settingsダイアログボックスで確認することができます

00:06:23

複数のコンバータをシミュレートするなどより多くのSPCが必要な場合は

00:06:28

4つのSPCに対応しているconfiguration(構成) 2に変更する必要があることがわかります

00:06:33

configuration(構成)3はSPCの数は少ないですが

00:06:37

電動機のシミュレーションに有用な他の利点があります

00:06:40

つまりデバイスの構成を変更して容量を増やすことで

00:06:44

FPGAソルバーのリソースをより有効に活用できるようになります

00:06:49

次にSPCの内部リソースについて説明します

00:06:54

スライドの左側にはSPCの内部リソースの概要が

00:07:00

右側にはHIL404のデバイス構成テーブルが表示されています

00:07:04

色の違いは  デバイステーブルのパラメータと特定のSPC内部リソースの関係を示しています

00:07:11

コンバータソルバを詳しく見る前にコンバータモデリングに対するTyphoonのアプローチについて

00:07:16

簡単に説明しましょう

00:07:20

コンバータは理想的なスイッチを使用してモデル化されています

00:07:23

より多くのスイッチを備えたコンバータはソルバーの計算負荷を増加させます

00:07:27

この計算負荷の大きさを表すために各コンバータにあらかじめ決められた重みを与えています

00:07:32

モデルの三相インバータなどのより複雑なコンバータの重みは3ですが

00:07:36

IGBTレグなどの単純なコンバータの重みはわずか1です

00:07:42

HIL for Power Electronicsサブモジュールではコンバータのモデリングについてより包括的に見ていきます

00:07:50

各スイッチの状態の順列について回路モデルは線形かつ時不変であると見なされます

00:07:56

これらの順列を 回路のモードと呼びます

00:07:59

回路の各モードについて 離散化され状態空間行列によって表される線形の時不変モデルを指定しました

00:08:09

コンバータの重みはコンバータソルバのコンテキストで重要な役割を果たします

00:08:14

コンバータ内のすべてのスイッチの組み合わせが回路モード変更のトリガーとなるため

00:08:18

次の回路モードを決定するためのユニットが必要ですこのユニットがコンバータソルバです

00:08:24

ただしコンバータの重みが増えると回路モードの数も増えコンバータソルバの負荷が増加します

00:08:31

したがって各構成にはSPCあたりのコンバータの重みの総数に制限があります

00:08:37

これが私たちのモデルにとって何を意味するのかを見てみましょう

00:08:45

まず三相インバータのプロパティを確認しましょう

00:08:49

コンポーネントの説明では その重みが3であることがわかります

00:08:54

Message Logを確認するとパワーエレクトロニクスコンバータの使用率の行で

00:08:59

この構成で可能な最大の重みに達していることがわかります

00:09:03

次にコンタクタソルバに移動しましょう

00:09:07

コンタクタの状態はコンタクタソルバによって決定されます

00:09:10

これらはターンオン ターンオフの遅延 ゼロ電流ターンオフおよびフィードバック信号の生成にも使用されます

00:09:17

同様にコアごとに特定の重みを使用できるようにするためにコアごとに特定の数のコンタクタも使用できます

00:09:25

この情報はデバイステーブルにもあります

00:09:30

ではこのモデルに何個のコンタクタを搭載できるかを見てみましょう

00:09:38

ご覧のとおりこのモデルには単相コンタクタが1つしかありません

00:09:43

Message Logを見ると このSPCには最大6つのコンタクタを配置できることがわかります

00:09:49

コンタクタの 3つのスイッチはすべて同期して動作するため

00:09:54

三相コンタクタは1つのコンタクタとしてカウントされることに注意してください

00:09:59

それでは非理想的なスイッチソルバに移りましょう

00:10:03

非理想的なコンタクタは 導通しているときは小さなインダクタンスとしてモデル化され

00:10:07

開いているときは小さなキャパシタンスとしてモデル化されます

00:10:10

これらを含めることの最大の利点は

00:10:12

特定の構成で理想的なコンタクタよりも多くの非理想的なコンタクタを取り付けることができることですが

00:10:18

モデル化の方法によってタイムスロットの使用率に余分な負荷がかかるため慎重に使用する必要があります

00:10:25

現在モデルに非理想的なコンタクタはありません

00:10:29

Message Logを見ると現在の構成では利用可能な非理想的なスイッチの使用がないことがわかります

00:10:36

このため非理想的なスイッチを追加する必要がある場合は別の構成に切り替える必要があります

00:10:44

次に時間で変化するエレメンツソルバについて説明します

00:10:48

可変インダクタ キャパシタ 抵抗など 値をリアルタイムで変更できる時間変化要素をシミュレートする場合は

00:10:56

時間で変化するエレメンツソルバを使用する必要があります

00:11:04

モデルからわかるように時間変数要素は含まれていません

00:11:08

Message Logでは最大16の時間変数要素を収めることができることがわかります

00:11:14

次に残りのSPC使用率パラメータを見てみましょう

00:11:23

現在使用していませんが 信号処理制御ソースの総数はコアあたり16に制限されています

00:11:28

遅延制御されたソースは スーパーキャパシタなどの一部のコンポーネントの埋め込み部分として表示される場合があります

00:11:38

この特定の構成では 遅延制御ソースを使用する最大12のコンポーネントを使用できます

00:11:47

あとはSPCの性能を表すパラメータとして

00:11:52

マトリクス乗算器とマトリクスメモリの2つが残されています

00:11:57

マトリクス乗算器の処理能力は与えられたモデルの最小シミュレーションステップを定義します

00:12:04

マトリクスのメモリサイズは 受動部品と理想的なスイッチ の数から見てSPCの最大サイズを定義し ます

00:12:12

受動部品の数を増やすとマトリクスサイズが大きくなり理想的なスイッチの数を増やすとマトリクスが追加されます

00:12:22

これでこの2つのパフォーマンスパラメータがモデルにどのように適用されるかを分析できます

00:12:26

回路に必要なメモリはコンパイル中に推定されます

00:12:31

各コアには特定の数のメモリが割り当てられています

00:12:35

ご覧のとおりコアは指定されたメモリの約3分の1しか使用しません

00:12:45

マトリクスメモリの使用率は

00:12:47

デバイス構成テーブルの2つのパラメータ SPC Matrix MemoryとSPC Output Memory Sizeに直接関連しています

00:12:54

コアのメモリ使用量が多すぎる場合は これらのパラメータを比較的大きな値に設定する必要があります

00:13:06

次にマトリックス乗算器の処理能力について説明します

00:13:11

マトリクス乗算器の処理能力パラメータの値は

00:13:15

1つのタイムステップ内ですべての計算を終了するSPCの能力を直接反映しています

00:13:25

Message Logにあるようにこのモデルは1μsのシミュレーションステップがあらかじめ定義されています

00:13:31

このタイムステップで行列を離散化した後タイミング制約の解析を開始します

00:13:37

この部分ではすべてのSPCと他の機能ユニットが

00:13:41

この時間ステップで実行できるかどうかをコンパイラが分析しタイムスロットの使用率を相対的な単位で表します

00:13:49

Message Logのタイミング制約分析の部分でわかるように

00:13:53

どの機能ユニットも 可能な最大タイムスロットである100%を超えていません

00:13:58

これはタイミングの 制約が満たされていること

00:14:00

およびこのモデルがHIL404またはVertual HILの両方で正常に実行されることを意味します

00:14:09

これで標準処理コアを構成するすべてのリソースを分析しました

00:14:13

次にTyphoonFPGAソルバを構成する他のリソースを分析してみましょう

00:14:21

FPGA内の次の機能ユニットは信号発生器です

00:14:25

このユニットは 電圧源 電流源 定電力負荷などの独立したソースをシミュレートするために使用されます

00:14:33

シグナル・ジェネレータはテーブルベースで実装されているため任意の波形をサポートします

00:14:39

これらの波形はSCADA内または波形ジェネレータツールで作成された高調波が豊富な波形である可能性があります

00:14:46

これがモデルにどのように実装されているか見てみましょう

00:14:53

現在電圧源は1つだけです Message Logを見ると

00:14:57

この構成では12台のシグナル・ジェネレータのうち1台だけを使用していることがわかります

00:15:02

この使用は三相または単相コンポーネント内にあるかどうかに関係なく

00:15:06

すべての信号源をカウントすることに注意して ください

00:15:10

たとえば三相電圧源は単一のコンポーネントであってもシグナル・ジェネレータ内で3ユニットを使用します

00:15:20

ここではさまざまな種類のソースを区別する必要があります

00:15:24

信号処理ソースの使用をコアリソースとして前述しましたが

00:15:29

これらのソースの名前にはSignal Controlledという接頭語がついておりSPCリソースを利用しています

00:15:34

特別な接頭語がない電圧源や電流源などの基本的な信号源はFPGAリソースです

00:15:42

電圧または電流制御のソースには他のコンポーネントの測定によって制御されるソース

00:15:46

またはHILアナログ入力から制御される外部制御のソースの2種類があります

00:15:53

これらのソースはマトリクスメモリのみを使用します

00:16:02

ルックアップテーブルはFPGAリソースのもう1つのタイプです

00:16:05

これらは非線形特性を持つ電気回路内の素子をシミュレートするために使用します

00:16:11

ルックアップテーブルが含まれている要素には非線形インダクタ PVパネル バッテリーなどがあります

00:16:17

すべての構成にはサポートできる特定の数のルックアップテーブルがあります

00:16:27

モデルではルックアップテーブルを含む要素を使用していないので

00:16:30

MessageLogではこれらの要素に使用できる8つのうちひとつも使用していないことがわかります

00:16:37

ルックアップテーブルの容量はルックアップテーブルを必要とするコンポーネントの任意の組み合わせで利用できます

00:16:42

たとえば最大8つのルックアップテーブルがあるため

00:16:46

3つのバッテリーと 5つの非線形インダクタを追加できます

00:16:52

次にマシンソルバについて説明します

00:16:54

このFPGAリソースはd-qまたはα-βドメインの電磁気方程式と機械方程式を解くプロセッサの専用部分です

00:17:05

さらにマシンソルバには

00:17:08

インクリメンタルエンコーダやレゾルバなどの速度および位置測定デバイスのサポートが内蔵されています

00:17:18

現在このモデルではかご形誘導電動機を 1台使用していることがわかります

00:17:24

マシンソルバの 使用率を見るとマシンソルバのリソースが完全に占有されていることがわかります

00:17:33

PWM変調器はPWM信号を生成するために使用されるFPGAリソースです

00:17:40

モデルで 行ったように内部制御アルゴリズムを使用してモデルを制御する場合は

00:17:45

PWM変調器を利用すると非常に便利です

00:17:48

PWM変調器については パワーエレクトロニクスモジュールでより包括的に説明します

00:17:54

ここではそれらが占めるリソースについて説明します

00:18:02

ご覧のとおり PWM変調器に3つの変調信号を提供することによりこの三相インバータを制御します

00:18:09

また可能な12個のうち3個のPWMチャネルを使用しています

00:18:14

これは三相インバータがあり各レグがPWMチャネルの1つを使用しているためです

00:18:24

コンパイルの最後のステップはタイミングの検証です

00:18:27

タイミングの検証は FPGAソルバが必要なシミュレーションステップでモデルを実行できるかどうかをチェックします

00:18:33

コンパイルのこの部分が正常に終了した場合はタイミング検証が通過したことが確認できます

00:18:43

この検証ではモデルに定義したデバイス設定を使用して制約を定義し

00:18:48

それを物理デバイスと仮想デバイスの両方に適用します

00:18:51

これはモデルの電気部分のコンパイルが正常に完了しそれを仮想HILで非リアルタイムで実行すると

00:18:57

同じモデルが選択したHILデバイスでリアルタイムに実行されることを意味します

00:19:02

したがってモデルに物理的にアクセスしなくてもモデルが実際のHILデバイスで動作することを検証できます

00:19:09

これでモデルの電気部分のコンパイルは完了です

00:19:15

FPGAソルバの詳細については

00:19:18

ビデオの説明に記載されているFPGAソルバの基本的なドキュメントページをご覧ください

00:19:25

コンパイルプロセスの次の部分は信号処理のコンパイルです

00:19:30

これはコンパイラがUserCPUとSystemCPUの両方のコードを生成することを意味します

00:19:37

CPUは使用可能な最大メモリと

00:19:40

デジタルおよびアナログプローブ 可変素子 SCADA入出力などの特定の信号処理要素の最大数という

00:19:49

2つの境界を信号処理に課しています

00:19:55

前に述べたようにモデルのSystemCPUで実行されるコンポーネントがあります

00:20:00

フェーズAのRMS電流メータですRMSメータの内部には1つのプローブ要素があり

00:20:05

Message Logで確認できるようになりますそれはプローブ使用ラインでカウントされます

00:20:10

信号処理のコンパイル の2番目の部分ではメモリ使用率がかなり低いことがわかります

00:20:18

次にUserCPUのコンパイルを検査できます

00:20:24

Message Logのこの段落はCPUがどのように使用されているかを示しています

00:20:28

2つのSCADA入力があり これはラインIO変数の使用率に反映されますまたプローブの使用率に反映される2つのプローブがあります

00:20:38

プローブの1つはストリーミングです

00:20:40

これは ラインストリーミング帯域幅に反映され最大容量に送信される1秒あたりのkサンプル数を比較します

00:20:48

最後にコンパイルされたモデルコードのメモリ使用率が表示されます

00:20:54

これで信号処理のコンパイルとコンパイルプロセス全体が終了します

00:21:00

これはコンパイルされたモデルをSCADAにロードしシミュレーションを開始する準備ができたことを意味します

00:21:06

これでモデルコンパイルが成功した背景を詳しく理解できたはずです

00:21:11

信号処理モデリングの原理に興味がある場合は

00:21:15

ビデオの説明の中にリストされている信号処理モデリングの ドキュメントページをご覧ください

00:21:21

次のビデオでは新しいユーザがコンパイルプロセス中に遭遇するいくつかの一般的な問題と

00:21:25

それらを解決する方法について説明します

Please Wait!

Please wait... it will take a second!