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

1 view (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.

Products

Community Treasure Hunt

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

Start Hunting!