if文から取得した回​数だけパルスを発生さ​せたいが初回以外出力​が1のままになってし​まう

ifで取得した回数だけパルスを発生させたいが初回以外出力が1のままになってしまいます.
欲しいパルスの個数をifの前に計算させ,その個数分パルスが発生したら0のままにし,
その後再びパルスが必要になったら欲しい個数を計算し現在発生したパルスの差分だけ再びパルスを発生させたいと考えています,
全体
右下のブロックは今まで発生したパルスの個数を数えるためのものです.
if内部
しかし,一回目のパルス発生は上手くいくのですが二回目のパルス発生ができません
if内部のscopeの出力
システム全体の出力
どのようにすれば二回目以降もパルスが発生できますか?

 采纳的回答

Toshinobu Shintai
Toshinobu Shintai 2022-1-18

1 个投票

添付のモデルのように、Stateflowで構成してはどうでしょうか。
入力されたパルス数分だけ「パルスを出力する状態」を維持し、その間、パルスを出します。終わったら計測し直し、次のパルス数分を出力します。

更多回答(1 个)

mochi
mochi 2022-1-18

0 个投票

本当に申し訳ないのですが私のバージョンがR2019aでしたためモデルを開くことができません,
変換していただくことは可能でしょうか?

2 个评论

R2019aのバージョンに変換しました。添付ファイルをご確認ください。
mochi
mochi 2022-1-18
開けました.ありがとうございます.
stateflowは使ったことがないので勉強してモデルを理解できるようがんばります.

请先登录,再进行评论。

类别

帮助中心File Exchange 中查找有关 Simulink 的更多信息

产品

版本

R2019b

Community Treasure Hunt

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

Start Hunting!