StateFlow: Temporal Logic After

8 ビュー (過去 30 日間)
Joan Sanz
Joan Sanz 2015 年 7 月 7 日
回答済み: Sebastian Castro 2015 年 7 月 7 日
Hello,
Under demanding of our Customer, we need implement between 2 states; first of all, check if X condition is true, when is confirmed, then launch a timer of X seconds and finally the states will be reached. I've attached an example.
The condition is a==1 and then after(2,sec) on the same tick.
But we have observed Timer(After) is launched even a!=1. Could you give some solution for this?.

回答 (1 件)

Sebastian Castro
Sebastian Castro 2015 年 7 月 7 日
If you use transitions and nodes, you don't get the benefits of states "remembering" their previous location.
Like you described, that "after(2,sec)" starts being tested as soon as you enter the "ON" state, and not as soon as "a" becomes 1.
I would recommend using substates inside "ON" to do this logic. For example, try the following:
- Sebastian

カテゴリ

Help Center および File ExchangeDecision Logic についてさらに検索

タグ

製品

Community Treasure Hunt

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

Start Hunting!

Translated by