複数信号が一定時間以​上正であることがsu​bsystem実行の​トリガーとしたい

2 views (last 30 days)
拓 高橋
拓 高橋 on 19 Oct 2020
Commented: Toshinobu Shintai on 23 Dec 2020
入力される複数信号の値と閾値とする値の差分を取り、一定時間以上正の場合subsystemブロックを実行させるシステムを作りたいのですが、使えそうなブロックが見当たらず困っています。やり方をご教示いただけないでしょうか?

Answers (1)

Toshinobu Shintai
Toshinobu Shintai on 19 Oct 2020
Stateflowの状態遷移で、一定時間後に遷移するコマンドを簡単に記述できます。
こちらを活用してみてはいかがでしょうか。
  2 Comments
拓 高橋
拓 高橋 on 23 Dec 2020
ご回答ありがとうございます。お礼が遅くなってしまい申し訳ありません。
ご教示いただいた方法の場合、Simulink subsystemとStateflowをどのようにつなげればよいのでしょうか?
試しに添付ファイルのようなモデルを作成してみました。
2secごとに0/1の出力が切り替わることを想定していましたが上手く動きません。。。
Toshinobu Shintai
Toshinobu Shintai on 23 Dec 2020
一番簡単なのは、Stateflow内でSimulink関数を使うことです。添付のモデルをご確認ください。
Stateflowにはいろいろな使い方がありますが、もし基本の使い方が分からないことがありましたら、無料の「Stateflow入門」を受講してみてはどうでしょうか。

Sign in to comment.

Categories

Find more on プログラムによるモデル編集 in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!