Arduino SG-90サーボ実戦:配線コードとピット回避ガイド_Servo_Industry Insights_Kpower
> 業界の洞察 >サーボ
テクニカルサポート

製品サポート

Arduino SG-90サーボ実戦:配線コードとピット回避ガイド

発行済み 2026-05-11

初めに事実について話しましょう。Arduino の車で遊んでいるとき、Arduino のロボット アームで遊んでいるとき、または Arduino の小さなアクセス コントロールで遊んでいるとき、十中八九、青い 9g マイクロ サーボ、または透明な 9g マイクロ サーボ、つまり SG-90 に遭遇するでしょう。。小さいサイズにもかかわらず、角度をひねったり、スイッチを制御したり、うなずいたり首を振ったりしますが、これらはすべてパルス幅信号に依存しています。しかし、多くの人は最初のステップで困難に遭遇します。つまり、線をどうやって接続するかということです。コードを書いた後にコードがジッターするのはなぜですか?今日はそれを詳しく整理し、圧倒的な経験から本質的なものをピックアップします。

01最初に電源を入れるのではなく、三本線を認識してください

茶線:GND(アース)

赤線:VCC(5V電源)

オレンジ線: PWM 信号ピン (D9/D10 はオプション)

以下は一般的なロールオーバー状況です。赤い線を 3.3V に押しても、サーボが回転しません。バッテリーのプラス端子に差し込むと、内蔵ドライブが焼損します。

安全地帯は5Vで、USB電源に頼って駆動するには十分です。 2 台以上を運転する場合は、外部バッテリー パックを使用するとより安定します。

02実際にはコードには 2 つのセクションがあります

PWM デューティ サイクルを自分で作成しないで、Servo ライブラリを使用してください。

#含むサーボmyServo; void setup() { myServo.attach(9); // 信号線はピン 9 に接続されています } void loop() { myServo.write(0); // 0 度の遅延(1000); myServo.write(90); // 90 度遅延(1000); myServo.write(180); // 180 度の遅延(1000); }

このセクションは前後に回転します。なぜそれが 0、90、180 の状況に属するのかを尋ねる必要はありません。物理的な限界はここにあります。

03SG-90 を真に従順にする基礎となるロジック

中にはポテンショメータと減速機が入っています。 1msのパルス幅を与えると0度回転、1.5msのパルス幅を与えると90度回転、2msのパルス幅を与えると180度回転します。

arduino Micro Servos SG-90_arduino Micro Servos SG-90_arduino Micro Servos SG-90

サーボ ライブラリは、書き込み時の角度を対応するパルス幅に自動的に変換します。

ただし、SG-90 はメーカーが異なると数度の誤差が生じる場合があるため、校正プロセスを省略することはできません。

まずアーム部分が垂直かどうかを確認するために(90)を書き込みます。

そうでない場合は、手動で垂直位置まで曲げて、アームを再度取り付けます。

04以前に遭遇したはずの一般的な障害シーン

Q/Aセクション

Q: 接続時にサーボが激しく振動するのですが、どうすれば解決しますか?

A: 電源が不安定な状態です。 5V電源供給動作は赤ラインのみで行われます。 Arduino の 5V ピンは信号基準としてのみ使用されます。

Q: write(180) が 120 度までしか到達できない場合はどうすればよいですか?

A: まずwrite(180)操作を行ってから電源を切り、手動でアームを最大角度まで曲げてから再度電源を入れてください。

Q: サーボを数分間回し続けると熱くなるのは正常ですか?

答:異常です。 SG-90は位置サーボですので、連続回転モーターとしては使用しないでください。

Q: 信号ケーブルは正しく接続されており、コードも正しいのに、動かないのですか?

arduino Micro Servos SG-90_arduino Micro Servos SG-90_arduino Micro Servos SG-90

A: 共通点を確認してください。 ArduinoのGNDとサーボのGNDを接続する必要があります。

Q: サーボライブラリではなく直接PWM信号を与えることはできますか?

A: はい、ただし必須ではありません。ライブラリは 20ms サイクルをカプセル化しており、自分で作成するとサーボを焼き付けるのが簡単です。

05「能動的」から「正確」へ飛躍する練習

6本足のロボットを一度に作ろうと考えないでください。まず小さなデバイスを作成します。

段ボールでできたバリア

ボタンをトリガーし、一度押してレバーを上げ、次に下のレバーを押します

コードの重要な点は、write(0) または write(90) が呼び出されるたびに現在の状態を記録することです。

状況を検知できます。 0から90まで素早く変化すると、サーボが「前に飛んでいる」ように見えます。遅延を追加しますか?そうではありませんが、イージングを追加します。

void throwMove(int from, int to, int stepDelay) { if (from = to; i--) { myServo.write(i);遅延(ステップ遅延); } }

これにより、本物のアームのようにゆっくりと動き、ギアが崩れにくくなります。

06注意点:SG-90のトルクはわずか1.6kg・cmです。

どういう意味ですか?単三電池を持ち上げるのには問題ありませんが、本を押したいですか?行き詰まっているはずです。

ロボットアームを製作する過程で、大きなアーム部分にはMG995などの金属歯サーボを使用する必要があります。ただし、SG-90は手首や爪の製作のみに適しています。

類推論: SG-90 は自転車のチェーンのようなものです。車を引っ張るのに使ったら確実に壊れます。

07最後にマインドマップ(テキスト版)をお渡しします

SG-90 デバッグ デシジョン ツリー §─ 接続しても応答なし │ §─ チェック: GND が同一グランドにありますか? │ └─ 確認:5V電源で1Aで十分ですか? §─ 目標位置移動後のジッタ │ §─ コンデンサ追加:赤線とGND間に100uF電解 │ └─ コード書き込み後の遅延(15) │ §─ 角度がずれている │ §─ ソフトキャリブレーション: myServo.write (実際の角度+オフセット) │ └─ ハードキャリブレーション: アームピースを取り外し、再度取り付ける 肯定 ─ コードを全く守らない └─ デジタルキャリブレーションに変更し、他のライブラリが Timer1 を占有しているかどうかを確認します

08行動の提案: 今すぐ行動を起こしてください

1. ブレッドボード、SG-90、および DuPont ワイヤ 3 本を用意します。

2. 上記の最初の段落を反転するコードを書き込みます。

3. 0度、90度、180度の位置を確認します。

4. 45 度で停止し、10 秒間保持するようにコードを変更します。

5. 成功すると、小型サーボのアプリケーション シナリオの 80% をマスターしたことになります。

残りの20%は何でしょうか?複数のサーボを直列に接続し、ポテンショメータを読み取って閉ループを実現し、アクショングループを設定します。ただし、これについては最初に実行する必要があるため、今日は説明しません。

覚えておいてください: すべての複雑なロボット プロジェクトは、準拠して 30 度回転できる SG-90 から始まります。様子見するだけではなく、ぜひ試してみてください。

更新時間:2026-05-11

未来に力を与える

お客様の製品に適したモーターまたはギアボックスを推奨するには、Kpower の製品スペシャリストにお問い合わせください。

Kpowerにメールする
お問い合わせを送信
WhatsApp メッセージ
+86 0769 8399 3238
 
kpowerMap