12-02-2014 11:54 AM
こんにちは。
複数のループをケースストラクチャを用いて任意のタイミングでコントロールしたいと考えています。
1、【ケースストラクチャFalse】False内の①ループ(フラットシーケンスストラクチャ)を60秒実行。
2、①ループ実行の後、スタートボタンを押されるまで待機。
3、スタートボタンで開始。【ケースストラクチャTrue】True内の②ループを実行
できますでしょうか。。。
もしくは、他の手法はありますでしょうか、よろしくお願い致します。
解決済! 解決策の投稿を見る。
12-03-2014 06:28 AM
>> 1、【ケースストラクチャFalse】False内の①ループ(フラットシーケンスストラクチャ)を60秒実行。
>> 2、①ループ実行の後、スタートボタンを押されるまで待機。
>> 3、スタートボタンで開始。【ケースストラクチャTrue】True内の②ループを実行
スタートボタンは、viの「白い⇒」のことではなくて、フロントパネルに配置された制御器のボタンですよね。
上記1、2、3の通りに書けば、そのように実行できます。
ただ、気になるのは、1と3でわざわざcaseストラクチャのFalseとTrueにする意味は何でしょうか。
1と3でcaseストラクチャで分けるということは、3の実行時にはダイアグラム的には1に戻るような
(そしてcaseに入るbooleanをFalseからTrueに切り替えるような)書き方になりますが、
1と3でやることが違うわけですから、そもそもcaseストラクチャのFalseとTrueに分けるのでなく、
上記の「1の①」、「2」、「3の②」を、フラットシーケンスストラクチャに入れれば良いように思います。
大きいフラットシーケンスストラクチャで、
1番目に、①ループ(小さいフラットシーケンスストラクチャ)を60秒実行、
2番目に、Whileループを置いて、スタートボタンが押されるまでWhileループ
3番目に、②ループを実行
で良さそうですが、如何でしょうか。
(もちろん、お書きになったようにcaseストラクチャを使って1、2、3のような動作になるように書くことも可能ですが)
12-03-2014 09:08 AM