Simlinkブロッ​クの優先度を変更する​際、即値ではなく”で​きる限り最後”のよう​に指定する方法はあり​ますか

2 views (last 30 days)
ryosuke nakatsuka
ryosuke nakatsuka on 13 Sep 2019
Commented: ryosuke nakatsuka on 17 Sep 2019
現在作っているモデルは、Simlink上で線を繋げておらず、DataStoreMemoryを使ったグローバルアクセスをしている構造です。
また、以下のような制約があります。
 ・入力と出力処理は自前で用意するので、優先度を指定できる。
 ・内部の処理は明確になっておらず、優先度を指定できない。
このような事情の中で、出力処理の実行順序が必ず最後になるようにする方法はありますか。
以下を試してみましたが、うまくいきませんでした。
 入力処理(DataStoreWriteとInputブロックを接続したもの)に優先度"1"を設定し、
 出力処理(DataStoreReadとOutPutブロックを接続)に優先度"99" を設定し、
 内部処理は優先度を指定をしない
 →上記の結果、入力処理→出力処理(一部)→内部の処理→出力処理(一部) という順番になりました。

Accepted Answer

Toshinobu Shintai
Toshinobu Shintai on 14 Sep 2019
Simulinkの実行順序を制御するには、例えばFunction callを使う方法があります。添付ファイルの「webview.html」を確認してください。
このように構成すると、「Input」「Calc」「Output」の順番で処理が行われます。
(R2015aではないバージョンでWeb Viewを作成しています。R2015aでも同様に作成可能かと思います。)
  3 Comments
Toshinobu Shintai
Toshinobu Shintai on 16 Sep 2019
ご不便をおかけして申し訳ありませんが、Microsoft Edge、Firefox、Chrome等で開いていただけませんでしょうか。また、zip内のファイルはフォルダ階層そのままで全て解凍しておく必要があります。
もし上記ブラウザで見れないときは不具合報告したいので、見れない時は症状を教えていただきたく思います。
またどうしても見れないのであれば、私のモデルは一旦諦めて以下のリンク先から調べていただけますでしょうか。
ryosuke nakatsuka
ryosuke nakatsuka on 17 Sep 2019
ご回答ありがとうございます。
リンク先をみたところ、やりたい事とは違うようでした。
ひとまずは、モデル内のIn/Out以外の全てのブロックの優先度を固定で書き換えるスクリプトで対策することにします。

Sign in to comment.

More Answers (0)

Products


Release

R2015a

Community Treasure Hunt

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

Start Hunting!