Skip to Main Content

IQ (第 1 世代) センサーのトラブルシューティング

センサー フィードバックの使用中にロボットが意図したとおりに動作しない場合は、段階的なトラブルシューティング手順に従って問題を見つけて修正できます。 この記事では、トラブルシューティング プロセスの手順を説明し、これらの手順の使用方法に関するヒントを提供します。 

このプロセスの手順は次のとおりです。

  • 問題を特定する
  • ハードウェアをチェックする
  • ソフトウェアをチェックする
  • データの分析と適用

問題を特定する

センサーのトラブルシューティングの最初のステップは、問題の原因となっているセンサーを特定することです。 観察されたロボットの動作と意図されたロボットの動作を比較します。 問題のある動作はセンサーによって引き起こされていますか? もしそうなら、どのセンサーですか? どのセンサーに問題があるかを判断するための詳細情報が必要な場合は、ロボットのセンサーに関連する以下の記事をお読みください。

VEX IQ (第 1 世代) センサー:

どのセンサーが意図しない動作を引き起こしているかを特定したら、プロセスを進めることができます。


ハードウェアのチェック

2 番目のステップは、ロボットのハードウェアをチェックして、センサーが意図したとおりに機能することを確認することです。 次のハードウェアに関する考慮事項はそれぞれ、センサーの機能に影響を与えている可能性があります。

センサーの配置を確認する

Screen_Shot_2023-04-14_at_11.23.48_AM.png

まず、ロボットのどこにセンサーが配置されているかを確認します。 センサーはロボットの別の部分など、何かによってブロックされていますか? センサーが意図したとおりに動作するために必要なスペースがあることを確認してください。

ここに示されているように、カラー センサーは、検出対象のオブジェクトに対して明確な視線を持っています。

センサーの接続を確認してください

設定開始.png

VEX IQ (第 1 世代) Brain のデバイス メニューにレポートされるデータを確認して、センサーの機能をテストします。 これは、センサーが接続されていて動作していることを検証するのに役立ちます。

デバイス メニューにアクセスするには、この記事の手順に従って

5dc33b0a1db5c.png

[デバイス] 画面が開いたら、センサーがデータを報告しているかどうかを確認します。

そうでない場合は、センサーが正しく接続されていることを確認してください。 センサーを接続するとき、センサーのロック タブがポートに完全にはめ込まれると、「カチッ」という音が聞こえます。

使用しているセンサーを別のセンサーと交換して、問題が解決するかどうかを確認することもできます。

センサーの配置またはセンサーの接続で何かを変更した場合は、プロジェクトを再度テストして、問題が解決したかどうかを確認してください。 センサーの配置と接続が変更されない場合は、次のステップに進んでトラブルシューティング プロセスを続けてください。


ソフトウェアをチェックする

センサーがロボット上に配置され、正常に接続されていることを確認したら、次に VEXcode IQ プロジェクトに注目します。 プロジェクトを反復処理すると、センサーからのデータがプロジェクト内で効果的に使用されていることを確認できます。 次の戦略は、センサーのコーディングに役立ちます。

これらの戦略のいずれかを VEXcode IQ プロジェクトに適用する場合は、プロジェクトを再度テストして、問題が解決したかどうかを確認してください。

ファームウェアと構成を確認する

Screen_Shot_2023-04-14_at_10.15.06_AM.png

まず、IQ Brain のファームウェアが最新であることを確認します。

VEX IQ (第 1 世代) Brain のファームウェアを更新する方法については、この記事を参照してください。

Screen_Shot_2023-04-14_at_11.15.40_AM.png

すべてのデバイスが Brain に正しく接続されていることを確認したので、VEXcode IQ でデバイス構成を確認します。

すべてのセンサーが構成に存在することを確認してください。 次に、それぞれが正しいポートに接続されていることを確認します。

間違ったデバイス構成を変更します。

サンプルプロジェクトを実行する

スクリーンショット_2023-04-20_at_9.18.54_AM.png

トラブルシューティングしているセンサーを使用するサンプル プロジェクトを開きます。 「センシング」カテゴリを選択して、サンプル プロジェクトをフィルタリングできます。

IQ ブロックのサンプル プロジェクトとテンプレートの詳細について

IQ C++ サンプル プロジェクトとテンプレートの詳細について

スクリーンショット_2023-04-20_at_9.37.21_AM.png

開いたら、メモを読んで、サンプル プロジェクトの機能がセンサーで実行しようとしている内容と一致しているかどうかを判断してください。

ここに示されているサンプル プロジェクトでは、このプロジェクトが、利用可能なすべての距離センサー コマンドをロボットで使用する方法の例を提供していることを注記しています。

サンプル プロジェクトを実行し、ロボットの動作を観察します。 次に、プロジェクトを調べて、観察された動作を引き起こすためにセンサー データがどのように使用されているかを確認します。 これを解決するには、サンプル プロジェクトを複数回実行するとよいでしょう。

サンプル プロジェクトから学んだことを自分のタスクに適用するために、独自の単純化されたプロジェクトを作成してみることもできます。

他の VEXcode IQ ツールを使用する

VEXcode IQ でのセンサーのコーディングについて詳しく学ぶ際に役立つツールや戦略もあります。 ヘルプを使用すると、ツールボックス内のブロックまたはコマンドについて個別に学習できます。 プロジェクトの実行中にセンサー データを表示して、センサーが報告している内容について詳しく知ることもできます。

データの印刷

サンプル プロジェクトまたはプロジェクトの実行中にセンサーからのデータを印刷して、センサーがリアルタイムで報告している内容をより深く理解することもできます。 これは、プロジェクトでパラメーターとして使用するセンサーからの報告値を決定するのに役立ちます。 

Blocks プロジェクトでは、個別の {When started} ハット ブロックを使用して、すべての印刷コマンドを独自のスタック内に整理しておくことができることに注意してください。

VEXcode IQ ブロック

Screen_Shot_2023-04-14_at_11.54.35_AM.png

VEXcode IQ C++

スクリーンショット_2023-04-20_at_9.51.47_AM.png

上の各画像を選択すると拡大表示されます。

IQ Brain への出力は、VEXcode IQ プロジェクトの実行中に変化する値を確認したい場合に役立ちます。 これは、プロジェクトでパラメーターとして使用するセンサーからの報告値を決定するのに役立ちます。 これらの印刷コマンドは、すでに作成した VEXcode IQ プロジェクトに組み込むことができるため、ロボットの移動中の特定の時間にセンサー値が変化するのを確認できます。 

上記のサンプル プロジェクトは、距離センサーから IQ Brain に値を出力する方法を示しています。 各プロジェクトのコメントでは、プロジェクトの流れや各コマンドの使用方法が説明されています。

IQ Brain のデバイス メニューを使用すると、ロボットを手動で操作しながらセンサー値を確認する場合に便利です。 VEXcode IQ プロジェクトを実行せずにデバイス メニューにアクセスし、センサーによって検出された値を確認できます。 

設定開始.png

X ボタンを選択して Brain 設定にアクセスし、デバイス情報まで下にスクロールし、チェックマーク ボタンを押してデバイス メニューを開きます。

color_green.png

デバイス メニュー内で、矢印ボタンを使用して、詳細情報を表示するデバイスを選択します。 この画像ではカラー センサーが選択されています。 (第 1 世代) Brain でのデバイス情報の表示の詳細については、この記事を参照して


データの分析と適用

次に、前の手順で学んだことを使用して、元のプロジェクトを調整します。 ヘルプやデータの印刷などのツールを引き続き使用して、センサーを効果的に使用して目的を達成できます。

プロジェクトを進めるために、プロジェクトについて質問することもできます。 次のようなことを考えてください。

  • プロジェクトで < より大きい、または > 未満を使用していますか? 記号は正しい方向を向いていますか? 「equal to =」を使用している場合は、値の範囲を使用するために、「より大きい」または「より小さい」に置き換えてみてください。
  • パラメータは正しいですか? センサーからのデータを使用してパラメータを設定していますか? 必要なドロップダウン オプションを選択しましたか?
  • 条件を複数回確認していませんか? プロジェクトの実行時に条件が繰り返しチェックされるように、プロジェクトに Forever ループを追加してみます。
  • プロジェクトが行き詰まっていませんか? 条件は正しく設定されていますか? ネストされたループを使用している場合は、プロジェクトを単純化して個々の動作を分離してみてください。
  • 環境条件がセンサーに影響を与えていますか? 明るすぎませんか、暗すぎませんか? 邪魔な物や人はいませんか? 別の場所でプロジェクトを実行して、問題が解決するかどうかを確認してください。
  • プロジェクトの最新バージョンを実行していますか? 更新されたプロジェクトを Brain にダウンロードしましたか? 変更を加えるたびに、必ずプロジェクトを再ダウンロードしてください。
  • 正しい色を検出していますか? センサーはプロジェクト内の色とは異なる色を報告していますか? カラーパラメータを変更してみてください。
  • センサーの視野内に物体を検出していますか? ロボットの動きに連動して視野も移動することに注意してください。
  • 状態確認時に待機ブロックを使用していませんか? 条件をチェックするときは、プロジェクト内の非待機ブロックを必ず使用してください。 VEXcode IQ の待機ブロックと非待機ブロックの詳細については、この記事を参照してください。
  • ブロック単位でコーディングしている場合、スタック全体が {When started} ハット ブロックに接続されていますか? ブロックは接続されている場合にのみ実行されます。 ブロックをドラッグして接続すると、クリック音が聞こえます。

これらの質問に答えるときは、必ずプロジェクト内の項目を一度に 1 つずつ変更し、テストして、その変更が効果的かどうかを評価してください。 プロジェクトを頻繁にテストすると、コードがロボットの動作にどのように関連しているかをより簡単に確認できるようになります。  問題を解決するには、トラブルシューティング プロセスの手順を複数回繰り返す必要がある場合がありますが、それでも問題ありません。 各反復は、使用しているセンサーと、それを VEXcode IQ でコーディングする方法について詳しく学ぶのに役立ちます。

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

Last Updated: