
Simulinkで得たscopeのデータをExcelに書き込む方法は?
조회 수: 21 (최근 30일)
이전 댓글 표시
Simulinkを使って、シミュレーションを行い、波形をscopeで表示しました。しかし、scopeの波形は細かく見れないので、シミュレーションのデータをexcelで読み込み、それをもとにexcelで波形を作ることにしました。ところが、Simulinkのデータをexcelに読み込もうとしましたが、excelに入れる方法が分かりません。simulinkのデータをexcelで読み込み、グラフを作成するにはどのような方法で行えばよいですか?
댓글 수: 0
채택된 답변
Aoi Midori
2018년 12월 19일
Simulink上で"To Workspace"に枝分かれさせてみてはいかがでしょうか?

そうすることで、(デフォルトでは)MATLABのワークスペース上に"simout"という変数ができ、その中に時間情報やデータなどが入っています。excelに波形を出力される際は、データだけでよければ、MATLABのコマンドウィンドウ上で下記の通り入力して頂けたらと思います。
xlswrite("file.xlsx", simout.Data);
もちろん、excelに出力しなくても、MATLAB上でのグラフ作成も可能です。
plot(simout);
댓글 수: 0
추가 답변 (6개)
mw51
2018년 12월 19일
댓글 수: 3
Aoi Midori
2018년 12월 19일
mw51さん、
写真の添付ありがとうございます。接続は問題なさそうですね。また、出力される変数名もsimoutという名前で良さそうです。一点だけ気になったのが、
simout.Data
こちら、上記の通り、大文字Dから書いて頂けますでしょうか?
mw51
2018년 12월 20일
편집: mw51
2018년 12월 20일
댓글 수: 1
Aoi Midori
2018년 12월 20일
편집: Aoi Midori
2018년 12월 20일
mw51さん、
a = sim('control1','SimulationMode','normal');
b = a.get('simout')
既に上記のように書かれているのであれば、
xlswrite("file.xlsx", b.Data);
こちらのソースでいかがでしょうか?
なお、
sim('control1')
だとsimout変数が見えましたが、mw51さんのコードだと確かに同じエラーになりました。
mw51
2018년 12월 20일
편집: mw51
2018년 12월 20일
댓글 수: 1
Aoi Midori
2018년 12월 20일
xlswriteは、もともとMATLABに備わっている関数なので、定義をする必要はありません。
help xlswrite とMATLABのコマンドウィンドウに入力すると何が出てきますか?
上で書いて頂いているSetParameter関数の中身は、まだsimout.dataのままになっていますが、b.Dataに書き直してエラーになられたということですよね?
SetParameter()実行後に、MATLABのコマンドウィンドウに表示される内容をコピペ頂くこと可能でしょうか?
mw51
2018년 12월 20일
편집: mw51
2018년 12월 20일
댓글 수: 1
Aoi Midori
2018년 12월 20일
粗いデバッグですみませんが、SetParameter()中の下記の1行、最後尾の";"を消して実行した際に、MATLABのコマンドウィンドウには何が表示されるでしょうか?
b = a.get('simout')
참고 항목
카테고리
Help Center 및 File Exchange에서 信号入力と信号出力에 대해 자세히 알아보기
제품
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!