Frequently Asked Question
もし日本語字幕が自動で表示されない場合はブラウザのシークレットモードをお試しください。
キーワードの検索は "Ctrl + F" でブラウザの検索機能をご使用ください
ビデオのタイムスタンプに直接飛べるリンクが必要な場合 このガイドに従ってください
このビデオはお役に立てたでしょうか?HIL Academyの無料のHIL Specialistコースを受講してさらに理解を深めてみませんか?
もしこのビデオをあなたの母国語への翻訳するのに協力してくださる場合、我々までご連絡 ください
TRANSCRIPT
前のレッスンでは電気回路の分割について説明しました
Core couplings Snubberの設定方法 および電気回路コンポーネントが
モデルに与える影響について説明しました
このレッスンでは回路の信号処理部分に焦点を当てます
前のモジュールの
「Problems & solutions of real-time modeling」で説明したように回路の信号処理部分を
一般的なアプリケーションで 使用されるよりも低い実行速度で
実行する必要がある場合があります
CPUが指定されたタイムスロットでコードを実行できない場合HIL SCADAは
計算間隔のオーバーランまたはCIOフラグで警告します
第4世代のHIL404およびHIL606は前世代のデバイスよりもさらに高速な実行速度を実現します
またコア間の信号処理分割をサポートしているため
信号処理コードの並列計算が可能です
信号処理のパーティショニングにより複数の
コア間でデータを交換することもできます
信号処理のパーティショニングを管理するためにCPU markerとCPU transitionの2つのコンポーネントがあります
CPU markerは信号処理モデルを指定されたCPUコアにマッピングするために使用されます
これらは複数のユーザーCPUコアを搭載したデバイスでのみ利用可能です
マスクをダブルクリックするとmarker's identification labelが表示され
マークされた部分の回路がどのCPUコアで実行されるかが分かります
CPU transition は同一デバイスの 異なるCPUコアで動作するコンポーネント間のデータ転送を管理します
同じデバイスの異なるユーザーCPUで動作する2つの信号処理回路が
データを交換するためにはCPU transitionコンポーネントを使用して接続する必要があります
CPU transitionコンポーネントは1タイムステップ分の通信遅延があります
このコンポーネントの詳細については[Materials]タブをご覧ください
コア間の信号処理のパーティショニングに関しては2つの動作モードがあります
[Model settings]--> [signal processing setting]-->[CPU mapping option]の順にクリックすると
defaultかexecution rate-basedかどちらの動作モードか確認できます
動作モードをdefaultにするとCPU markerコンポーネントは
接続されたsignal Processing componentグループに適用されます
CPU markerのないコンポーネントグループはCPUコア0にマップされます
CPUトtransitionコンポーネントはCPUパーティショニングのセパレーターとして使用されます
もう1つのオプションはexecution rate-basedの動作モード です
これによりCPU transitionおよびCPU markerコンポーネントを使用せずに複数のCPUコアでモデルマッピングを行うことができます
CPUパーティショニングはモデルに存在する実行レートに基づいて行われます
このように[Materials]タブのドキュメントリンクで詳細に説明されているrate transitionコンポーネントは
CPUパーティショニングのセパレータとしても機能します
CPU markerを使用すると同じ実行レートを持つすべてのコンポーネントに適用されます
CPU markerを使用しない場合コンパイラは実行レートを
利用可能なCPUコアに自動的にマッピングします
次に信号処理パーティショニングコンポーネントを使用する必要がある場合と
その方法の例を見てみましょう
この例ではHIL 404を使用しています
ご覧のとおりこの例は信号処理部分のみの非常にシンプルなものです
異なる高調波に対して高調波解析を行うことを想像してみましょう
1つめの高調波アナライザーは1次 3次 5次 7次高調波に使用され
2つめの高調波アナライザーは9次 11次 13次 15次高調波に使用されます
信号処理の実行速度は6μsです
次にこのモデルをコンパイルしてシミュレーションを実行します
ご覧のとおりコンパイルは正常に終了していますがシミュレーションを実行するとCIOフラグが現れ
信号処理コードが与えられた6μsの時間スロットで実行できないことを警告しています
CIOフラグをクリックするとユーザーCPUが100%使用されていることがわかります
トラブルシューティングのプロセスは信号処理のパーティショニングが解決策になり得ることを示唆しています
次にモデルに戻ってこの回路を2つのコアに分割します
1つの高調波アナライザを1つのコアに配置しもう1つを別のコアに配置します
CPU transitionを選択しexecution rateをTsにしてみましょう
最後にどの部分がどのコアで実行されるかをマークしましょう
予想どおりモデルをコンパイルして再度実行するとCIOフラグは立ちません
そのウィンドウをクリックするとユーザーのCPU使用率が
コア間で均等に分割されていることがわかります
ここで重要なのは信号処理設定のCPUマッピングが
デフォルトに設定されていることです
次にexecution rate-basedのCPUマッピングをどのように使うか見てみましょう
まずCPU transitionの代わりにRate transitionを使用しましょう
そのコンポーネントの後の回路のexecution rateはレート遷移前のexecution rateの2倍になります
デフォルトのCPUマッピングでモデルをコンパイルするとmessage consoleでこのモデルが
予想どおり1つのCPUコアになっていることがわかります
シミュレーションを実行するとCIOエラーが発生します
CPU mapping optionをExecution rate basedに変更してモデルを再実行しましょう
message consoleを見るとモデルが2つのCPUコアに分割されていることがわかります
シミュレーションを実行すると演算間隔オーバーの問題が解決されたことがわかります
信号処理コアパーティショニングは信号処理ベースの
(汎用)コンポーネントを含むマイクログリッド・システムで特に有効です
これらのコンポーネントについてはモジュール5マイクログリッド用HILで詳しく説明します
このレッスンではコアパーティショニングのすべての重要な側面について説明しました
次のレッスンではデバイスの分割化について詳しく説明します
ではまた
お会いしましょう!