MATLAB Functionを使​用せずsimで実行し​ているシミュレーショ​ンの進捗を表示する方​法を教えてください

Simulinkで作成したモデルを自作のシミュレーション実行関数を用いてシミュレーションしています(シミュレーションの実行にsimを使用)。
シミュレーションの進捗状況をwaitbarで表示しようとしているのですが、現在のシミュレーション時間を取得するにはどうすればよいでしょうか? 目的は「シミュレーションの進捗状況を表示する」ことなのでより簡易な手段があればそちらでもかまいません。
モデルの都合上以下の手段は使用できません。
set_paramを用いてシミュレーションを実行する。
MATLAB Fucntionを用いてシミュレーション時間をワークスペースに出力する

 채택된 답변

Naoya
Naoya 2018년 8월 7일

2 개 추천

現在のシミュレーション時間を取得するコマンドとしては、
get_param(bdroot,'SimulationTime')
で取得できます。
ただ、sim関数での実行は、そのシミュレーションが終了しない限りMATLAB上のコマンドプロンプトを返さない(シミュレーションが終了しない限り次のコマンドを実行できない)ので、sim関数によるシミュレーション中に上記コマンドを実行することはできません。
※ set_param を用いてシミュレーションを実行する方法であれば上記コマンドは利用できます。waitbarを使って進捗を表示する目的であれば、こちらの方法になると思います。

댓글 수: 1

seiji fukui
seiji fukui 2018년 8월 7일
回答ありがとうございます。
以下のように理解しました。
Sim関数での実行中は他のコマンドを実行できない、且つSimulinkのウィンドウも更新されないためwaitbar等を用いたシミュレーションの進捗確認は不可。
適当なScopeをStartFcnで起動して進捗を確認できるようにしてみます。

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 プログラムによるモデル編集에 대해 자세히 알아보기

질문:

2018년 8월 1일

댓글:

2018년 8월 7일

Community Treasure Hunt

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

Start Hunting!