コントローラ#
導入#
V5コントローラーには、ボタン、2つのジョイスティック、振動モーター、および画面が搭載されています。コントローラーブロックを使用すると、ボタンの押下をチェックしたり、ジョイスティックの動きを読み取ったり、コントローラーを振動させたり、設定済みのコントローラーアクションを有効または無効にしたり、コントローラーイベントが発生したときにブロックを実行したり、コントローラー画面にテキストを表示したりできます。
設定済みのコントローラーアクションは、[デバイス] メニューで設定されたコントローラーの動作です。コントローラーの有効化/無効化 ブロックを使用して、プロジェクト中にこれらの設定済みアクションを一時的に有効または無効にすることができます。
利用可能なブロックの一覧は以下のとおりです。
値 — コントローラーのボタンの状態を確認するか、ジョイスティックの位置を読み取ります。
コントローラーが押されましたか? — 選択されたコントローラーのボタンが押されているかどうかを返します。
コントローラー位置 — 選択した軸に沿ったジョイスティックの位置を返します。
アクション — コントローラーを振動させる、設定済みのコントローラーアクションを有効/無効にする、またはコントローラーの入力が変化したときにブロックを実行する。
コントローラーで振動を再生 — コントローラーで振動パターンを再生します。
コントローラーの有効化/無効化 — デバイス メニューで設定されている、接続されているすべてのコントローラーのコントローラー アクションを有効または無効にします。
コントローラーのボタンが押されたとき — 選択されたボタンが押されたり離されたりしたときに、添付されているスタックを実行します。
コントローラーの軸が変更されたとき — ジョイスティックの位置が選択された軸に沿って変化したときに、添付されているスタックを実行します。
画面 — コントローラー画面にテキストと数字を表示する。
コントローラーに印刷 — コントローラー画面にテキスト、数値、または変数値を表示します。
コントローラーの行と列にカーソルを設定 — コントローラー画面上の指定された行と列にカーソルを移動します。
コントローラーの次の行にカーソルを設定 — コントローラー画面でカーソルを次の行に移動します。
コントローラーで印刷精度を設定する — コントローラー画面に数値を印刷する際に表示される小数点以下の桁数を設定します。
clear controller — コントローラー画面上のすべての行をクリアします。
コントローラーの行をクリア — コントローラー画面の行を 1 つクリアします。
価値観#
コントローラーが押されましたか?#
Controller pressed? ブール値ブロックは、選択されたコントローラーボタンが押されているかどうかを返します。

<[Controller1 v] [▲ v] 押された?>
パラメータ |
説明 |
|---|---|
デバイス |
使用するコントローラーは、「デバイス」ウィンドウで設定します。 |
ボタン |
チェックするボタン:
|
例
開始したとき
[Drive forward while X is pressed.]
ずっと
もし <[Controller1 v] [X v] 押された?> なら
[前進 v] へ走行
でなければ
走行停止
終わり
終わり
コントローラーの位置#
コントローラー位置レポーターブロックは、選択された軸に沿ったジョイスティックの位置を-100から100までの数値として返します。

([Controller1 v] [1 v] position :: sensing)
パラメータ |
説明 |
|---|---|
デバイス |
使用するコントローラーは、「デバイス」ウィンドウで設定します。 |
軸 |
報告するジョイスティック軸:
|
例
開始したとき
[Drive forward while the left joystick is pushed up.]
ずっと
もし <([Controller1 v] [3 v] position :: sensing) [math_greater_than v] [0]> なら
[前進 v] へ走行
でなければ
走行停止
終わり
終わり
行動#
コントローラーで振動機能をプレイ#
コントローラーで振動を再生スタックブロックは、コントローラーで振動パターンを再生します。
[Controller1 v] で振動パターン [長い v] を再生
パラメータ |
説明 |
|---|---|
パターン |
コントローラーで再生する振動パターン:
|
デバイス |
使用するコントローラーは、「デバイス」ウィンドウで設定します。 |
例
[Controller1 v] ボタン [R1 v] が [押された v] されたとき :: hat events
[Controller1 v] で振動パターン [短い v] を再生
コントローラーの有効化/無効化#
コントローラーの有効化/無効化スタックブロックは、接続されているすべてのコントローラーに対して、[デバイス]メニューからコントローラーで設定されたアクションを有効または無効にします。
コントローラー [無効化 v]
パラメータ |
説明 |
|---|---|
州 |
コントローラーで設定されたアクション状態:無効または有効。 |
例
開始したとき
[Disable Controller configured actions until the drive movement is done.]
コントローラー [無効化 v]
[前進 v] へ (6) [インチ v] 走行 ▶
コントローラー [有効化 v]
コントローラーの軸が変更されたとき#
コントローラーの軸が変更されたときハットブロックは、ジョイスティックの位置が選択された軸に沿って変化したときに、アタッチされたスタックを実行します。

when [Controller1 v] axis [1 v] is changed :: hat events
パラメータ |
説明 |
|---|---|
デバイス |
使用するコントローラーは、「デバイス」ウィンドウで設定します。 |
軸 |
確認するジョイスティック軸:
|
例
when [Controller1 v] axis [3 v] is changed :: hat events
[Drive forward when the joystick's position changes along axis 3.]
[前進 v] へ (200) [mm v] 走行 ▶
画面#
コントローラーに印刷する#
コントローラーへの印刷スタックブロックは、現在のカーソル位置にテキスト、数値、または変数値をコントローラー画面に表示します。
[VEXcode] を [Controller1 v] に表示 ▶ :: custom-controller-inertial-timer
パラメータ |
説明 |
|---|---|
価値 |
コントローラー画面に表示するテキスト、数値、または変数値。 |
デバイス |
使用するコントローラーは、「デバイス」ウィンドウで設定します。 |
展開する矢印 |
このオプションを追加すると、カーソルを次の行に移動する機能が追加されます。このオプションを使用すると、値が印刷された後にカーソルが次の行に移動します。このオプションを使用しない場合、次の印刷値は同じ行の前の値の直後に表示されます。 |
例
開始したとき
[Display a message on the Controller screen.]
[Hello, robot!] を [Controller1 v] に表示 ▶ :: custom-controller-inertial-timer
コントローラの行列にカーソルを設定します#
コントローラーの行と列にカーソルを設定するスタックブロックは、コントローラー画面上の指定された行と列にカーソルを移動します。次に出力される値は、その位置に表示されます。
[Controller1 v] のカーソルを行 [1] 列 [1] に設定 :: custom-controller-inertial-timer
パラメータ |
説明 |
|---|---|
行 |
コントローラー画面上でカーソルを移動させる行。 |
カラム |
コントローラー画面でカーソルを移動させる列。 |
デバイス |
使用するコントローラーは、「デバイス」ウィンドウで設定します。 |
例
開始したとき
[Display a message on row 2.]
[Controller1 v] のカーソルを行 [2] 列 [1] に設定 :: custom-controller-inertial-timer
[Ready] を [Controller1 v] に表示 ▶ :: custom-controller-inertial-timer
コントローラの次の行にカーソルを移動します#
コントローラーの次の行にカーソルを移動スタックブロックは、カーソルをコントローラー画面の次の行の1列目に移動します。次に印刷される値はその行に表示されます。
[Controller1 v] のカーソルを次の行へ移動 :: custom-controller-inertial-timer
パラメータ |
説明 |
|---|---|
デバイス |
使用するコントローラーは、「デバイス」ウィンドウで設定します。 |
例
開始したとき
[Display two rows of text.]
[Row 1] を [Controller1 v] に表示 ▶ :: custom-controller-inertial-timer
[Controller1 v] のカーソルを次の行へ移動 :: custom-controller-inertial-timer
[Row 2] を [Controller1 v] に表示 ▶ :: custom-controller-inertial-timer
コントローラーの印刷精度を設定する#
コントローラーの印刷精度を設定するスタックブロックは、コントローラー画面に数値を印刷する際に表示される小数点以下の桁数を設定します。この設定は、このブロックが使用された後に印刷される数値に適用されます。
[Controller1 v] の表示精度を [0.1 v] に設定 :: custom-controller-inertial-timer
パラメータ |
説明 |
|---|---|
精度 |
使用する印刷精度:
|
デバイス |
使用するコントローラーは、「デバイス」ウィンドウで設定します。 |
例
開始したとき
[Display 1/3 with two decimals.]
[Controller1 v] の表示精度を [0.01 v] に設定 :: custom-controller-inertial-timer
([1] [math_division v] [3]) を [Controller1 v] に表示 ▶ :: custom-controller-inertial-timer
クリアコントローラー#
clear controllerスタックブロックは、コントローラー画面上のすべての行をクリアし、カーソルを最初の行に戻します。
[Controller1 v] をクリア :: custom-controller-inertial-timer
パラメータ |
説明 |
|---|---|
デバイス |
使用するコントローラーは、「デバイス」ウィンドウで設定します。 |
例
開始したとき
[Clear the Controller screen after printing.]
[This will disappear...] を [Controller1 v] に表示 ▶ :: custom-controller-inertial-timer
[2] 秒待つ
[Controller1 v] をクリア :: custom-controller-inertial-timer
コントローラーのクリア行#
コントローラーの行をクリアスタックブロックは、コントローラー画面上の単一の行をクリアします。
[Controller1 v] の行 [1] をクリア :: custom-controller-inertial-timer
パラメータ |
説明 |
|---|---|
行 |
コントローラー画面でクリアする行。 |
デバイス |
使用するコントローラーは、「デバイス」ウィンドウで設定します。 |
例
開始したとき
[Clear one row on the Controller screen.]
[Row 1] を [Controller1 v] に表示 ▶ :: custom-controller-inertial-timer
[Controller1 v] のカーソルを次の行へ移動 :: custom-controller-inertial-timer
[Row 2] を [Controller1 v] に表示 ▶ :: custom-controller-inertial-timer
[2] 秒待つ
[Controller1 v] の行 [1] をクリア :: custom-controller-inertial-timer