
if文から取得した回数だけパルスを発生させたいが初回以外出力が1のままになってしまう
4 views (last 30 days)
Show older comments
ifで取得した回数だけパルスを発生させたいが初回以外出力が1のままになってしまいます.
欲しいパルスの個数をifの前に計算させ,その個数分パルスが発生したら0のままにし,
その後再びパルスが必要になったら欲しい個数を計算し現在発生したパルスの差分だけ再びパルスを発生させたいと考えています,
全体

右下のブロックは今まで発生したパルスの個数を数えるためのものです.
if内部

しかし,一回目のパルス発生は上手くいくのですが二回目のパルス発生ができません
if内部のscopeの出力

システム全体の出力

どのようにすれば二回目以降もパルスが発生できますか?
0 Comments
Accepted Answer
Toshinobu Shintai
on 18 Jan 2022
添付のモデルのように、Stateflowで構成してはどうでしょうか。
入力されたパルス数分だけ「パルスを出力する状態」を維持し、その間、パルスを出します。終わったら計測し直し、次のパルス数分を出力します。

0 Comments
More Answers (1)
See Also
Categories
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!