Arduino/初級/7分で読める/
ArduinoでSG90サーボモーターを動かす配線とコード
SG90サーボは角度を指定して動かせる小型モーターです。信号線だけでなく、5V電源とGND共通が必要です。動作が不安定な場合は外部電源も検討します。
WIRING ORDER
配線順序プレビュー
Tsunagu IoT Learn / Arduino
- 1STEP 1SG90 赤線(VCC) から Arduino 5V へここからSG90 赤線(VCC)→ここへArduino 5V
確認: 小型サーボ1個の確認用です。負荷が大きい場合は外部電源を使います。
- 2STEP 2SG90 茶または黒線(GND) から Arduino GND へここからSG90 茶または黒線(GND)→ここへArduino GND
確認: 外部電源を使う場合もArduinoとGNDを共通にします。
- 3STEP 3SG90 橙または黄色線(SIGNAL) から Arduino D9 へここからSG90 橙または黄色線(SIGNAL)→ここへArduino D9
確認: コードではSERVO_PINを9にします。
用意するもの
- Arduino Uno
- SG90サーボモーター
- ジャンパーワイヤー
- 必要に応じて外部5V電源
配線
| 接続元 | 接続先 | 確認点 |
|---|---|---|
| SG90 赤線(VCC) | Arduino 5V | 小型サーボ1個の確認用です。負荷が大きい場合は外部電源を使います。 |
| SG90 茶または黒線(GND) | Arduino GND | 外部電源を使う場合もArduinoとGNDを共通にします。 |
| SG90 橙または黄色線(SIGNAL) | Arduino D9 | コードではSERVO_PINを9にします。 |
配線元、配線先、コードのピン番号を同じ画面で確認できます。
手順
- 1サーボの3本線の色と役割を確認します。
- 2VCCを5V、GNDをGNDへ接続します。
- 3信号線をD9へ接続します。
- 4Servoライブラリを使ったスケッチを書き込みます。
- 50度、90度、180度付近へゆっくり動くか確認します。
D9でSG90を動かすArduinoスケッチ
cpp#include <Servo.h>
const int SERVO_PIN = 9;
Servo servo;
void setup() {
servo.attach(SERVO_PIN);
}
void loop() {
servo.write(0);
delay(1000);
servo.write(90);
delay(1000);
servo.write(180);
delay(1000);
}動かないときの確認
- 信号線がD9につながっているか
- VCCとGNDを逆にしていないか
- 外部電源使用時にGNDを共通にしているか
- サーボに無理な負荷がかかっていないか
よくあるミス
- 信号線だけ接続して電源やGNDを忘れる
- 外部電源のGNDとArduinoのGNDを共通にしない
- サーボを機械的な限界まで押し付けたまま動かす
次に試すこと
サーボの角度制御ができたら、距離センサーやボタン入力と組み合わせて、条件に応じて角度を変える回路へ進めます。
デモで配線を確認する