Arduinoを使用してPWM信号を生成し、ESCを制御してモーターの正逆回転を実現する。

投稿者 :Fengyukun on

PWM信号を使用して双方向電子スピードコントローラ(ESC)を制御するには、通常、モータの速度と方向を制御するために特定のPWM値を送信する必要があります。 以下は、Arduinoを使用してPWM信号を生成し、双方向ESCを制御する簡単な制御コード例です。 双方向ESCがArduinoのPWMピンに接続され、正しく電源が入っていることを確認してください。



#インクルード <servo.h

Servo esc; // サーボオブジェクトを作成する。

無効セットアップ(){
esc.attach(9); // ESCをArduinoの9番ピンに接続する。
esc.writeMicroseconds(1500); // モータをニュートラル位置に初期化する。
delay(2000); // 2秒待つ
}

無効ループ
intthrottle = 1500; // ニュートラル位置、モーター回転なし
esc.writeMicroseconds(throttle); // モータを制御するためにPWM信号を送信する。

// 一定時間遅延させる
delay(1000);

// PWM信号を増加させることで、モーターを加速させる。
throttle = 1600;
esc.writeMicroseconds(throttle); // 一定時間遅延させる。

// 一定時間遅延させる
delay(1000);

// PWM信号を減少させることで、モーターを減速させる。
throttle=1400;
esc.writeMicroseconds(throttle); // 一定時間遅らせる; // PWM信号を減らしてモーターをスローダウンさせる。

// 一定時間遅らせる
delay(1000);
}

この例では、Arduino用のServoライブラリを使用してPWM信号を生成し、ESCに送信します。 まず、ESCをArduinoの9番ピンに接続し、PWMの初期値を1500マイクロ秒に設定します。

次にloop()関数で、スロットル変数を変化させてPWM信号のパルス幅を制御することで、モーターの動作を制御し、モーターの速度を調整します。

実際のPWM信号の範囲やニュートラルはESCのモデルによって異なる場合がありますので、お使いのESCの仕様に合わせて微調整が必要な場合があります。 また、これは単純な例であり、特定のアプリケーションのニーズを満たすために、より複雑な制御コードを記述することができます。 ESCとモーターの仕様に必ず従ってください。

この投稿をシェアする



← 投稿順 新着順 →


0件のコメント

コメントを残す