VEX IQ バンパー スイッチの使用

このセンサーはスイッチです。 これは、バンパーが押されているか (センサー値 1)、解放されているか (センサー値 0) をロボットに伝えます。

VEX IQ バンパースイッチピース。


バンパースイッチの仕組み:回路の完成

VEX IQ バンパー スイッチは、おそらく最も一般的に使用される電気デバイスであるスイッチをベースにしています。 スイッチは 2 つの端子 (ワイヤを接続する場所) と、スイッチが押されたときに接続を「確立」するワイヤ ブリッジで構成されます。 このアニメーションに示されているように、接続ワイヤを押すと回路が「完成」し、ロボット ブレインがそれをプログラムに登録します。

基本的に、バンパー スイッチは、接続されていない、または壊れている回路の一部です。 バンパースイッチを押すと接続され、電気が流れます。


バンパースイッチの一般的な用途

  • このセンサーは、押したり放したりするとロボットの動作をトリガーできます。
  • このセンサーは、下のアニメーションに示すように、押すとモーターのオン/オフを切り替えるトグルとして使用できます。

  • このセンサーは、下のアニメーションに示すように、バンパーが壁や物体に衝突したときにそれを検出できます。

  • センサーは、ロボットがバンパーを押すと、アームなどのロボットの他の部分を検知できます。

競技用ロボットにおけるバンパースイッチの用途

  • 自律モードでは、バンパー スイッチを使用して、ロボットが何らかのオブジェクトによって押されるまで特定のアクションの実行を待機させることができます。
  • バンパー スイッチは、周囲の壁などの表面やゲームの駒などの物体との接触を検出できます。
  • たとえばロボットの前面と側面で 2 つのバンパー スイッチを使用すると、ロボットが隅に位置することができます。 そうすれば、ロボットはそのコーナーから競技フィールド上の他の位置までより正確に移動できるようになります。 
  • バンパー スイッチを使用すると、ロボットの一部 (アームなど) が別の部分 (シャーシなど) に接触したことをロボットに検出させることができます。

VEXcode IQでバンパースイッチを使用する

VEXcode IQでバンパースイッチをデバイスとして追加する

デバイスの追加ボタンを選択した後の VEXcode IQ デバイス メニュー。 バンパー オプションが強調表示されます。

VEXcode IQ でバンパー スイッチをコーディングするには、まずバンパー スイッチを設定する必要があります。 VEXcode IQ でのセンサーの設定の詳細については、この記事を参照してください。

バンパー スイッチを構成すると、プロジェクトで使用できるコマンドがツールボックスに表示されます。

バンパースイッチをブロックでコーディングする

VEXcode IQ バンパーブロックを押すと、バンパー1が押されたと表示されますか?

<Pressing bumper> ブロックは、条件を true または false としてレポートするブール レポーター ブロックです。 <Pressing bumper> ブロックのようなブール ブロックは、他のブロックの六角形 (6 面) 入力を持つブロックの内側に収まります。

<Pressing bumper> ブール値ブロックは、バンパーが押されている場合は「true」を報告し、バンパーが放されているか押されていない場合は「false」を報告します。 ブール ブロックの詳細については、 ヘルプ または ブロックの形状と意味 記事を参照してください。

 

バンパー スイッチを使用して、オブジェクトまたは壁に触れるまで前進する VEXcode IQ ブロック プロジェクト。 このプロジェクトでは、開始すると前進し、バンパー 1 が押されるまで待機してから、走行を停止します。

この例では、上のビデオに示されているように、 <Pressing bumper> ブロックを [Wait until] ブロックとともに使用して、バンパー スイッチが押されるまでロボットを前進させます。 

Python でバンパー スイッチをコーディングする

注:VEX IQ (第 1 世代) バンパー スイッチを Python でコーディングするには、VEX IQ (第 2 世代) Brain に接続する必要があります。 VEX IQ (第 1 世代) Brain は Python をサポートしていません。

バンパー_1.pressing()

バンパー.プレスコマンドは、バンパー スイッチに関する true または false のブール値を報告します。 

amper.pressing コマンドは、バンパーが押されている場合は「true」を報告し、バンパーが放されているか押されていない場合は「false」を報告します。

注:コマンドに表示されるバンパー スイッチの名前は、設定で指定された名前に対応します。 

drivetrain.drive(FORWARD)
非バンパー_1.pressing():
wait(20, MSEC)
drivetrain.stop()

この例では、上のビデオに示すように、 not 条件のWhile ループが バンパーで使用されています押すと、バンパー スイッチが押されるまでロボットが前進します。 。 

Python でのバンパー スイッチのコーディングの詳細については、コンピューター サイエンス レベル 1 - Python コースのユニット 4 を参照してください。 

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

Last Updated: