タイマー#

導入#

VEXcode VRには、プロジェクト開始からの経過時間を記録するタイマーが搭載されています。これを使って、処理にかかる時間を計測したり、一定時間後にイベントをトリガーしたり、新しいタイミング操作のためにリセットしたりすることができます。

以下は利用可能なブロックの一覧です。

タイマーをリセット#

タイマーリセットスタックブロックは、タイマーをゼロにリセットします。これを使用すると、プロジェクト全体を再起動することなく、プロジェクトの新しい部分の計測を開始できます。

リセットタイマースタックブロック。#
タイマーをリセット :: custom-orientation

パラメータ

説明

このブロックにはパラメータがありません。

例

開始時ブロックから始まるブロックのスタック。続いて、「画面に時刻を表示し、5秒後に時刻をリセットします」というコメントブロックが続きます。永久ループ内で、リセットタイマーブロックがサイクルを開始します。whileループは、タイマーが3秒以下の間実行され、1行目を繰り返しクリアし、カーソルを設定し、タイマー値を画面に表示します。#
開始したとき :: hat events
[Display the time the robot takes to turn right.]
[前進 v] へ (200) [mm v] 走行 ▶
タイマーをリセット :: custom-orientation
[右 v] へ (90) 度旋回 ▶
表示精度を [0.1 v] に設定
[Turn right took] を表示 ◀ カーソルを次の行へ移動する
(タイマー(秒)) を表示 ▶
[ seconds] を表示 ▶

タイマー(秒)#

タイマー(秒)レポーターブロックは、タイマーが最後にリセットされてからの時間を秒単位の小数で表示します。タイマーはプロジェクトの開始時に自動的にリセットされます。このブロックを使用すると、ロボットがさまざまな動作を完了するのにかかる時間を計測できます。

秒単位のタイマーを表示するレポーターブロック。#
(タイマー(秒))

パラメータ

説明

このブロックにはパラメータがありません。

例

開始時に実行されるブロックから始まり、続いて「2秒経過後に時刻を表示する」というコメントブロックが続くブロックのスタック。待機ブロックは、タイマーが2秒に達するかそれを超えるまで実行を一時停止します。この条件が満たされると、印刷ブロックがタイマーの値を画面に表示します。#
開始したとき :: hat events
[Display the time it takes to move in a square.]
(4) 回繰り返す
[前進 v] へ (100) [mm v] 走行 ▶
[右 v] へ (90) 度旋回 ▶
終わり
表示精度を [0.01 v] に設定
(タイマー(秒)) を表示 ▶

タイマーが#

when timerハットブロックは、指定された時間が経過すると、接続されているブロックのスタックを実行します。

タイマーハットブロック。#
タイマーが [1] 秒を超えたとき :: hat events

パラメータ

説明

時間

添付されたブロックのスタックが開始されるまでの秒数を指定します。整数と小数の両方を受け付けます。

例

「タイマーが2秒を超えると」ブロックから始まり、「2秒後に失敗音を再生する」というコメントブロックが続くブロックのスタック。タイマーが2秒を超えると、「音を再生」ブロックが失敗音を再生します。#
タイマーが [2] 秒を超えたとき :: hat events
[Drive after 2 seconds.]
[前進 v] へ (200) [mm v] 走行 ▶