VEX IQ (第 2 世代) Brain からの慣性センサー データの理解

VEX IQ (第 2 世代) Brain には慣性センサーが組み込まれています。 慣性センサーは、方位、回転、向き、加速度に関するデータをセンサー ダッシュボードと VEXcode IQ に報告します。 この記事では、センサー ダッシュボードに表示されるデータを確認します。

センサー ダッシュボードへのアクセスの詳細については、この記事を参照してください。 

デバイス メニューから慣性センサー ダッシュボードを開くと、Brain 画面が表示されます。 次の慣性センサー情報が表示されます: 方向、回転、ロール、ピッチ、ヨー、キャリブレーション、x、y、z 軸の加速度、x、y、z 軸の回転速度。


見出し

脳を上から見下ろした図。周囲に円と度単位が記されており、脳の方向が 0 度から 359.99 度までの範囲であることを示しています。

機首方位は脳が向いている方向であり、0 ~ 359.99 の度を使用してコンパス形式で報告されます。  0 点は、VEXcode IQ のコマンドを使用するか、VEX IQ (第 2 世代) Brain をキャリブレーションすることによって設定できます。 この情報は、ドライブトレインの使用時にロボットを特定の位置に向けるのに使用することもできます。

慣性センサー ダッシュボードが開かれ、方向の値が強調表示された Brain 画面が表示されます。

Brain の画面上のセンサー ダッシュボードでは、見出しが最初にリストされる値です。 この画面上で Brain を動かすと、値がリアルタイムで更新されるのがわかります。

Brain では、慣性センサー ダッシュボードが開かれ、チェック ボタンが強調表示されています。

Brain の電源がオンになり、慣性センサーが校正されると、これは 0 度に設定されます。 Brainの見出しをリセットしたい場合は、Brainのチェックボタンを選択してください。 これにより、機首方位と回転が 0 度にリセットされ、慣性センサー センサー ダッシュボード上のすべてのデータがこの新しい開始位置に基づくようになります。

VEXcode IQ ブロック VEXcode IQ Python
VEXcode IQ の「方向へ 90 度回転」ブロック。
drivetrain.turn_to_Heading(90, 度)
VEXcode IQ C++
int main()
{
Drivetrain.turnToHeading(90, 度);
}

VEXcode IQ では、[方向を向く] ブロック、 1turn_to_HeadingPython コマンド、および C++ コマンドを使用して、ロボットを特定の方向へ方向転換することできます。

VEXcode IQ ブロック VEXcode IQ Python
VEXcode IQ ドライブ方向設定ブロックは、ドライブ方向を 0 度に設定します。
drivetrain.set_Heading(0, 度)
VEXcode IQ C++
int main()
{
Drivetrain.setHeading(0, 度);
}

センサー ダッシュボードの調整オプションと同様に、プロジェクトの実行中に、[ドライブ ヘディングの設定] ブロック、 set_Heading Python コマンド、または setHeading C++ コマンドを使用してヘディングを設定できます。


回転

慣性センサー ダッシュボードが開かれ、回転値が強調表示された Brain 画面が表示されます。 回転値はマイナス 90.13 です。

回転は、ロボットが Brain の中心軸の周りを回転すると報告されます。 センサー ダッシュボードに報告される度数は、回転の方向と、キャリブレーション以降に Brain が完了した回転の度数の値を示します。 方位とは異なり、数値は 0 ~ 359.99 度に限定されません。 ロボットは、負の値の場合は反時計回りに、正の値の場合は時計回りに回転でき、ブレイン内の慣性センサーが報告する回転数に一致するように度の値を増加し続けます。 

慣性センサー ダッシュボードが開かれ、回転値が強調表示された Brain 画面が表示されます。 回転値は 0.47 です。

Brain の画面上のセンサー ダッシュボードでは、回転が 2 番目にリストされている値です。 この画面で Brain を回転すると、値がリアルタイムで更新されるのがわかります。 

Brain では、慣性センサー ダッシュボードが開かれ、チェック ボタンが強調表示されています。

Brain の電源がオンになり、慣性センサーが校正されると、これは 0 度に設定されます。 ロボットの回転をリセットしたい場合は、Brain のチェック ボタンを選択します。 これにより、機首方位と回転が 0 度にリセットされ、慣性センサー センサー ダッシュボード上のすべてのデータがこの新しい開始位置に基づくようになります。

VEXcode IQ ブロック VEXcode IQ Python
VEXcode IQ 回転ブロック。90 度回転します。
drivetrain.turn_to_rotation(90, 度)
VEXcode IQ C++
int main()
{
Drivetrain.turnToRotation(90, 度);
}

VEXcode IQ では、[回転に回転] ブロック、 Python コマンド、および C++ コマンドを使用して、ロボットを特定の角度だけ回転させることができます。

VEXcode IQ ブロック VEXcode IQ Python
VEXcode IQ ドライブ回転設定ブロックは、ドライブ回転を 0 度に設定します。
drivetrain.set_rotation(0, 度)
VEXcode IQ C++
int main()
{
Drivetrain.setRotation(0, 度);
}

センサー ダッシュボードの調整オプションと同様に、回転値は、[ドライブ回転の設定] ブロック、 set_rotationPython コマンド、または setRotation C++ コマンドを使用して、プロジェクトの実行中に設定できます。


ピッチ、ロール、ヨー

ピッチを示す曲線矢印が付いた BaseBot の図。 ピッチ方向は、ロボットが上を向いたり下を向いたりする様子を想像することができます。

ピッチ、ロール、ヨーは、指定された軸に沿った Brain の方向角です。 ピッチは、Y 軸とロボットが前後に傾く角度を表します。 ピッチの値の範囲は -90 度から 90 度です。 

ロールを示す曲線矢印が付いた BaseBot の図。 ロール方向は、ロボットが横に転がる様子を想像することができます。

ロールは、X 軸とロボットが左右に傾く角度を表します。 ロールの値の範囲は -180 度から 180 度です。 

ヨーを示す曲線矢印が付いた BaseBot の図。 ヨー方向は、ロボットが左右を向いている様子を想像することができます。

ヨーは、ロボットの Z 軸と角回転を表します。 ヨーの値の範囲は -180 度から 180 度です。

慣性センサー ダッシュボードが開かれ、ロール、ピッチ、ヨーの値が強調表示された Brain 画面が表示されます。

ピッチ、ロール、ヨーは、センサー ダッシュボードの機首方位と回転の下に表示されます。

ピッチ、ロール、ヨーのサンプル プロジェクトのサムネイルのスクリーンショット。

VEXcode IQ のピッチ、ロール、ヨーのサンプル プロジェクトを使用すると、y、x、z 軸に沿った Brain の方向角度を検出する方法を示すことができます。 Touch LED は、Brain の向きの角度がどのように変化してピッチ、ロール、ヨーを示すかに応じて異なる色に設定されます。

VEXcode IQ でサンプル プロジェクトを開く方法については、次の記事のいずれかを参照してください。


x、y、z軸の加速度

慣性センサー ダッシュボードが開かれ、x、y、z 軸の加速度の値が強調表示された Brain 画面が表示されます。 これらの値はダッシュボードでは ax、ay、az としてラベル付けされます。

センサー ダッシュボード上のセクションの加速度は、指定された軸に沿った慣性センサーの加速度値を報告します。 x、y、z 軸に沿った加速度は、「ax」、「ay」、「az」の略語を使用して右側のセンサー ダッシュボードに表示されます。 これらはそれぞれ、-4.0 ~ 4.0 G の範囲を報告します。

Brain が表面に置かれている間、およそ -1.0 G の値が表示されます。これは、安静時に脳にかかる重力によるものです。

加速度検出サンプル プロジェクトのサムネイルのスクリーンショット。

VEXcode IQ の加速度の検出サンプル プロジェクトは、x、y、z 軸に沿った脳の加速度を検出する方法を示すために使用できます。 タッチ LED は、脳がどの軸を傾けているかに応じて異なる色を表示します。

VEXcode IQ でサンプル プロジェクトを開く方法については、次の記事のいずれかを参照してください。


x、y、z軸の回転速度

慣性センサー ダッシュボードが開かれ、x、y、z 軸の回転速度の値が強調表示された Brain 画面が表示されます。 これらの値はダッシュボードでは gx、gy、gz というラベルが付けられます。

センサー ダッシュボードのセクションのジャイロ レートは、指定された軸に沿った慣性センサーの回転速度値を報告します。 x、y、z 軸に沿った回転速度は、右側のセンサー ダッシュボードに「gx」、「gy」、「gz」という略語を使用して表示されます。 これらはそれぞれ、毎秒 -1000.0 ~ 1000.0 度の範囲を報告します。

VEXcode IQ ブロック VEXcode IQ Python
BrainInertial の x 軸のジャイロ レートを読み取る VEXcode IQ ジャイロ レート ブロック。
Brain_inertial.gyro_rate(AxisType.XAXIS、VelocityUnits.DPS)
VEXcode IQ C++
int main()
{
BrainInertial.gyroRate(xaxis, dps)
}

VEXcode IQ では、(Gyro rate) ブロック、 gyro_ratePython コマンド、および gyroRate C++ コマンドを使用して、プロジェクトの実行中に特定の軸の回転速度をレポートできます。

For more information, help, and tips, check out the many resources at VEX Professional Development Plus

Last Updated: