1

MATLAB timeseries オブジェクトを含む階層構造の形式で保存されている測定データがあります。例えば:

MyData
  - TimeSeries1
  - TimeSeries2
  - MyHierarchicalData
     -- TimeSeries3

これらを Simulink で使用するには、単一のファイルからこれらの構造を読み取る from file ブロックを使用します。ただし、これらの信号を選択するには、バス セレクター ブロックに対応するバス オブジェクトが必要です。バス オブジェクトは多かれ少なかれ構造に対応しているため、構造化された時系列データからバス オブジェクトを生成できるかどうかを知りたいです。バスに少数の変数しか含まれていない場合、手動でこれを行うことは問題になりませんが、バスには約 250 の要素が含まれています。

私の最初の推測は Simulink API ですが、この問題はより頻繁に発生し、より簡単な解決策があると思いました。何もなく、間違った道を進んでいる場合は、フィードバックもいただければ幸いです。

前もって感謝します!

4

1 に答える 1

1

私が自分の(やや似た)質問に投稿した回答を参照できます: https://stackoverflow.com/a/17152383/1710688

timeseries オブジェクトの構造が既にあるため、関数fieldnames( MATLAB ドキュメント を参照) を使用して各 timeseries オブジェクトの値を取得する必要があります。階層構造があるため、関数class( MATLAB ドキュメント を参照) を使用して、それが timeseries オブジェクトか struct オブジェクトかを確認する必要があります。その場合は、そのフィールド名を再度確認する必要があります。階層信号バス オブジェクトを作成する方法については正確にはわかりませんが、バス オブジェクトの使用に関するこのリンクが役立つことを願っています。

それが役立つことを願っています。

于 2013-06-17T16:45:13.380 に答える