"PS-Simulink Converter" ブロックの出力をログに記録すると 3 次元で表示されるのはなぜですか?
3 views (last 30 days)
Show older comments
MathWorks Support Team
on 25 Oct 2023
Edited: MathWorks Support Team
on 29 Nov 2023
Simscpe R2023a の "PS-Simulink Converter"ブロックを使用して、Simscapeセンサーからの信号を "To Workspace"ブロックに出力しています。
センシングしている物理的値はスカラーですが、ベースワークスペースに表示されるログデータの寸法は1x1xNであり、「N」はモデル内の時間ステップの数です。
ログに記録された信号サイズは、「Nx1」になると思いますが、なぜならないのでしょうか?
Accepted Answer
MathWorks Support Team
on 29 Nov 2023
Edited: MathWorks Support Team
on 29 Nov 2023
Simulink のロギングは、信号の次元数が正確に 1 の場合、時間が最初の次元になるという "時間優先" ルールに従います。
次元の数が 2 以上の場合、時間は最後の次元です。次元 [1] の Simulink のスカラー信号、または、次元 [3] などの次元の "ワイド" 信号は、それぞれ次元[T 1] と [T 3] でログに記録されます("T" は時間を表します)。
また、2次元ベクトルである Simulink 信号を使用することもできます。
たとえば、[1 3] または [3 1] は [3] とは異なります。これらはそれぞれ [1 3 T] と [3 1 T] としてログに記録されます。同じことが次元[1 1]の信号にも当てはまります。これは [1] とは異なり、[1 1 T] としてログに記録されます。
ご質問の「PS-Simulinkコンバータ」ブロックは、次元[1 1]の信号を生成しています。この信号を「時間付き構造」形式でログに記録すると、これまで見てきたように、ログに記録された信号の次元は[1 1 T]になります。
対策としましては、"PS-Simulink Converter" ブロックの [ベクトル形式] パラメータを「1次元配列」に変更するか、"Reshape" ブロックを使用して、「出力次元」パラメータを「1次元配列」に設定し、Simulink信号を渡すことで、信号を[T 1] の所望の次元に変更できます。
0 Comments
More Answers (0)
See Also
Categories
Find more on データ ログ in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!