From Workspaceブロックの使い方について

11 views (last 30 days)
松
on 4 Aug 2024
Answered: Atsushi Ueno on 4 Aug 2024
以前エディターで宣言した変数を,Simscape内でも使用できるブロックとしてFrom Workspaceブロックを紹介していただきました.そのブロックを使用してシミュレーションを実行しようとしたところ,どうしてもエラーが出てしまいます.改善方法が分かる方がいれば教えていただきたいです.よろしくお願いします.
私が作成したコード,Simscapeモデルを添付します.このコード内の「i」をSimscapeに渡して使用したいのですが,次のエラーが毎回出てしまいます.
「エラー:From Workspace ブロック 'model/From Workspace' でサポートされていない入力形式です。入力データは、timeseries や timetable などのサポートされている形式を使用する必要があり、Inf 値または NaN 値を含んでいてはなりません。」

Accepted Answer

Atsushi Ueno
Atsushi Ueno on 4 Aug 2024
From Workspace ブロックの出力は「信号」なので、時系列データが必要です。
入力データを n 行 2 列の行列にすれば入力可能になります。
  • n:Simulinkモデルのシミュレーションステップ数
  • 1列目:時間 (Simulinkモデルの時間と一致する事)
  • 2列目:データ (定数ならすべて同一データ)
【参考】下記コードは、Simulinkファイルである”LoadDataUsingTheFromWorkspaceBlockExample”の”Create **** data to load”ボタン内に書いてあるコードで、From Workspace ブロックによりワークスペースから各種データ型の正弦波信号データを取り込みます。
sampleTime = 0.01;
numSteps = 1001;
time = sampleTime*[0:(numSteps-1)];
time = time';
data = sin(2*pi/3*time);
timeseries 型のデータを用意するなら
simin = timeseries(data,time);
時間付き構造体のデータを用意するなら
simin.time = time;
simin.signals.values = data;
timetable 型のデータを用意するなら
secs = seconds(time);
simin = timetable(secs,data);
行列(2次元配列)データを用意するなら
simin = [time,data];

More Answers (0)

Categories

Find more on ビッグ データの処理 in Help Center and File Exchange

Tags

Products


Release

R2024a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!