2. 全方向移動

このプロジェクトでは、Zeus Carを0, 45, 90, 135, 180, 225, 270, 315度の方向に移動させる方法を学びます。

地面の摩擦や構造の許容差を無視すると、その移動経路は八角形となり、最終的には出発点に戻るはずです。

どのように実行するか?

  1. ESP32-CAMとArduinoボードは、同じRX(受信)およびTX(送信)ピンを共有しています。そのため、コードをアップロードする際は、ESP32-CAMの接続を一度切断して、衝突や潜在的な問題を避ける必要があります。

    ../_images/unplug_cam1.png
  2. zeus-car-main\examples\2_omni_move のパスの下にある 2_omni_move.ino ファイルを開きます。

  3. 正しいボードとポートを選択し、 アップロード ボタンをクリックします。

    注釈

    • "Compilation error: SoftPWM.h: No such file or directory"というプロンプトが表示される場合、 SoftPWM ライブラリがインストールされていないことを意味します。

    • 必要なライブラリ SoftPWMIRLremote のインストールについては、 ライブラリのインストール(Arduino IDE 2) を参照してください。

    ../_images/ar_board_upload.png
  4. 電源スイッチをONにしてZeus Carを起動します。

    ../_images/zeus_power.jpg
  5. この時点で、Zeus Carは0, 45, 90, 135, 180, 225, 270, 315度の方向に移動します。

動作原理は?

Zeus Carの動きは主にこの関数によって実現されています。

void carMove(int16_t angle, int8_t power)
  • angle: 車を移動させたい方向。車の前方を0度として、反時計回りに角度を増やします。

  • power: 移動のパワー、範囲は-100% ~ 100%です。 power が正の場合、車は前進し、その逆の場合は後退します。