発行済み 2026-04-19
このガイドでは、テスト済みの実践的な方法を提供します。サーボモーターは標準のマイクロコントローラーボードを使用して時計回り (CW) と反時計回り (CCW) の両方に回転します。ロボット アーム、カメラのパンチルト システム、または単純な回転ディスプレイを構築している場合でも、双方向制御を実現する方法を正確に学習できます。小さなゲートの開閉やセンサーの左右の回転など、一般的な実際の例を使用して、検証済みの配線、コード構造、トラブルシューティングの手順を示します。ブランド固有の製品は必要ありません。原則はどの規格でも機能しますサーボと互換性のあるコントロールボード。
コードを記述する前に、使用しているサーボのタイプを知っておく必要があります。一般的なタイプは 2 つあります。
標準180°サーボ– 0° ~ 180° の間でのみ回転します。 「前方」とは、角度が増加することを意味します (例: 0° → 180°)。 「リバース」とは、角度が減少する(180°→0°)ことを意味します。
連続回転サーボ– どちらの方向にも完全に回転します。 「順方向」は 1 つの回転方向 (CW など)、「逆方向」はその逆 (CCW) です。速度のコントロールも可能です。
> 検証(出典: 標準サーボ データシートと業界慣行): 連続サーボの場合、1.5 ms のパルス幅でモーターが停止します。 1.3 ミリ秒で片道フルスピードで走行します。 1.7 ミリ秒では、逆にフルスピードで駆動します。標準サーボの場合、0° = 0.5 ms パルス、180° = 2.5 ms パルス (一般的な値、サーボの仕様を確認してください)。
次の手順では、次の知識があることを前提としています。
1 マイクロコントローラー ボード (一般的な開発ボード)
サーボモーター 1 台 (標準 180° または連続 – 両方をカバーします)
ジャンパー線 3 本 (オス-メス)
外部電源 1 つ (ほとんどの小型サーボの場合は 4.8V ~ 6V。200 mA を超える電流が流れる場合は、ボードの 5V ピンから直接サーボに電力を供給しないでください)
ブレッドボード 1 枚 (きちんと接続するためのオプション)
このガイドで使用される現実世界のシナリオ: あなたは、スイングして開いたり (CW)、閉じたり (CCW) する小さな自動ゲートを構築しています。サーボはゲートヒンジに取り付けられています。
これらの検証済みのピン配置を使用してサーボをボードに接続します。
重要なルール: 外部電源を使用する場合でも、サーボのグランドは必ず基板のグランドに接続してください。共通のグランドがないと信号が不安定になります。
標準サーボライブラリはほとんどのマイクロコントローラー IDE に含まれています。使用するには:
1. IDE を開きます。
2. に移動しますスケッチ → ライブラリをインクルード → サーボ(またはお使いの環境では同等のもの)。
3. プリインストールされていない場合は、ライブラリ マネージャーで「Servo」を検索し、公式のもの (通常はプラットフォーム開発者によって保守されています) をインストールします。
![]()
このコードは、サーボを 0° から 180° (一方向) までスイープし、0° (反対方向) に戻ります。正確な位置決めが必要なアーム、レバー、ゲートなどに使用します。
#含むサーボmyServo; // サーボオブジェクトを作成 int pos = 0; // 角度を格納する変数 void setup() { myServo.attach(9); // 信号ピン 9 } void loop() { // 順方向: 0° -> 180° (ほとんどのサーボでは時計回り) for (pos = 0; pos 0° (反時計回り) for (pos = 180; pos >= 0; pos -= 1) { myServo.write(pos); late(15); } }
1 回だけ前進して停止することをテストするには: 逆ループを削除するか、while(1);順ループの後。
連続サーボは角度を使用せず、速度と方向を使用します。このコードは、ホイール、コンベア ベルト、または連続回転プラットフォームに使用します。
#含むサーボmyServo; void setup() { myServo.attach(9); } void loop() { // 全速時計回り (順方向) myServo.write(0); // または値 90 (例: 135 または 180) 遅延(2000); // 再度停止します myServo.write(90);遅延(1000); }
> 重要な校正: 正確な「停止」値はサーボによって異なります。 85 ~ 95 の値をテストして、サーボのニュートラル ポイントを見つけます。少し遅延させて観察してください。
実際のユーザーレポートと当社独自のテストに基づいて、最も頻繁に発生する問題と検証済みの解決策を次に示します。
サーボの正転と逆転を適切に制御するには:
1. サーボの種類を特定する(180°または連続)。
2. 電源を接続する– 外部電源 + 共通グランド。
3. 信号線を取り付けるPWM ピン (ピン 9 など) に接続します。
4. サーボライブラリをロードする上記の適切なコードをアップロードします。
5. テストの方向性– 標準サーボの場合、0→180 = 前方。連続の場合は、90 = 逆と書き込みます。
6. 停止の校正必要に応じて、(連続)または速度遅延(標準)を選択します。
> 重要なポイント: 同じハードウェア設定が両方のサーボタイプで機能し、制御値のみが変わります。標準的なサーボの場合、次のように考えてください。角度。連続サーボの場合、次のように考えてください。速度と方向ニュートラル90°パルスを基準にしています。
常にサーボを機械的負荷 (ゲートやホイールなど) から切り離した状態でテストを開始してください。最初に自由回転を確認します。
マルチメータを使用して、DC 4.8V ~ 6V の間の電源出力を確認します。
すべての中間角度を移動せずに標準サーボの方向を反転する必要がある場合は、次のようにします。書き込み(新しい角度)– 最短経路を介してその位置に直接移動します。
このガイドに従うことで、一般的なコンポーネントと検証済みのコードを使用して、回転カメラ マウントから二輪ロボットに至るまで、あらゆるプロジェクトにサーボの順方向/逆方向制御を実装できるようになります。
更新時間:2026-04-19