Simulinkで得たscopeのデータをExcelに書き込む方法は?
Afficher commentaires plus anciens
Simulinkを使って、シミュレーションを行い、波形をscopeで表示しました。しかし、scopeの波形は細かく見れないので、シミュレーションのデータをexcelで読み込み、それをもとにexcelで波形を作ることにしました。ところが、Simulinkのデータをexcelに読み込もうとしましたが、excelに入れる方法が分かりません。simulinkのデータをexcelで読み込み、グラフを作成するにはどのような方法で行えばよいですか?
Réponse acceptée
Plus de réponses (6)
mw51
le 19 Déc 2018
0 votes
3 commentaires
Aoi Midori
le 19 Déc 2018
Simulink上で実行した後、MATLABのワークスペースに新しい変数はできましたか?変数名は、デフォルトではsimoutですが、設定を変えれば違う名前になります。もしよくわからなければ、スクリーンショットを添付頂ければ確認いたします。
Aoi Midori
le 19 Déc 2018
mw51さん、
写真の添付ありがとうございます。接続は問題なさそうですね。また、出力される変数名もsimoutという名前で良さそうです。一点だけ気になったのが、
simout.Data
こちら、上記の通り、大文字Dから書いて頂けますでしょうか?
1 commentaire
Aoi Midori
le 20 Déc 2018
Modifié(e) : Aoi Midori
le 20 Déc 2018
mw51さん、
a = sim('control1','SimulationMode','normal');
b = a.get('simout')
既に上記のように書かれているのであれば、
xlswrite("file.xlsx", b.Data);
こちらのソースでいかがでしょうか?
なお、
sim('control1')
だとsimout変数が見えましたが、mw51さんのコードだと確かに同じエラーになりました。
1 commentaire
Aoi Midori
le 20 Déc 2018
xlswriteは、もともとMATLABに備わっている関数なので、定義をする必要はありません。
help xlswrite とMATLABのコマンドウィンドウに入力すると何が出てきますか?
上で書いて頂いているSetParameter関数の中身は、まだsimout.dataのままになっていますが、b.Dataに書き直してエラーになられたということですよね?
SetParameter()実行後に、MATLABのコマンドウィンドウに表示される内容をコピペ頂くこと可能でしょうか?
1 commentaire
Aoi Midori
le 20 Déc 2018
粗いデバッグですみませんが、SetParameter()中の下記の1行、最後尾の";"を消して実行した際に、MATLABのコマンドウィンドウには何が表示されるでしょうか?
b = a.get('simout')
mw51
le 20 Déc 2018
0 votes
1 commentaire
Aoi Midori
le 20 Déc 2018
ありがとうございます。では下記でどうでしょう?
xlswrite("control1.xlsx", b);
mw51
le 20 Déc 2018
0 votes
1 commentaire
Aoi Midori
le 20 Déc 2018
エクセルのファイルを一度消してからやり直してみてはいかがでしょうか?
Catégories
En savoir plus sur スプレッドシート dans Centre d'aide et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
