この記事の結論
- サーボモーターはPWM信号のパルス幅で角度を指定できるモーター、0〜180度の範囲で止められるのが特徴
- 入門用の定番はSG90という小型サーボ、動作電圧は4.8〜6V(定格4.8V)、価格は300〜500円程度、消費電流は動作時に0.2〜0.7A程度
- 信号・電源・GNDの3本線で配線するが、複数動かす場合や負荷が大きい場合はArduino本体だけでなく外部電源を用意する
- 反応が鈍い・震える(ジッター)場合は、電源不足・配線・コードの3点を順番に切り分けると原因を特定しやすい
ロボットの腕や首を動かしたり、模型の舵を切ったりする工作で必ずと言っていいほど登場するのが「サーボモーター」です。
LEDを点滅させるだけのLチカから一歩進んで、「物を動かす」工作に挑戦したい人にとって、最初の1台として選ばれやすいモーターでもあります。
この記事では、サーボモーターの仕組み、配線の注意点、コードの書き方までを順番に整理します。
サーボモーターは何ができるのか
角度を指定して止められる仕組み
サーボモーターは、送られてきたPWM信号のパルス幅(ONにしている時間の長さ)に応じて、指定した角度でぴたりと止まるモーターです。
ぐるぐる回り続けるだけの一般的なDCモーターとは違い、「0度」「90度」のように角度を指定して制御できるのが最大の特徴です。
モーターの種類ごとの違いは、センサー・モーター選び早見表の記事で比較表にまとめています。
定番のSG90という選択肢
入門用として最もよく紹介されるのが、SG90という小型のマイクロサーボです。
価格の目安は300〜500円程度、回転角度は0〜180度、動作電圧は4.8〜6V(Arduinoの5Vで動作)という仕様のモデルが一般的です。
SG90は3.3Vでは規定のトルクが出ず動作が不安定になります。
動作電圧の記事で説明した「3.3V系と5V系を必ず揃える」の考え方どおり、電源には必ず5V(定格4.8V以上)を用意してください。
力は強くありませんが、その分軽量で扱いやすく、Arduino入門の最初の1個として十分な性能です。

紹介した商品:マイクロサーボモーター SG90
SG90 9g マイクロサーボモーター 4個セット(サーボテスター付属)
複数個入りなので、壊してしまっても予備で作業を続けられます。
Amazon ¥1,399(4個・サーボテスター付き)
※価格は記事執筆時点のものです。購入前に最新価格をご確認ください。
配線で気をつけたいこと
3本の線の役割
サーボモーターから伸びている線は、信号(オレンジまたは黄色)・電源(赤)・GND(茶色または黒)の3本です。
信号線をArduinoの任意のデジタルピンへ、電源線を5Vピンへ、GND線をGNDピンへつなぎます。
この記事ではこのあと9番ピンを使う例で説明しますが、Servoライブラリはタイマー割り込みで自前のパルス信号を生成する仕組みのため、他のデジタルピンでも構いません。
色の並びは製品によって多少異なることがあるため、購入したサーボの説明書で配線順を確認してください。
外部電源が必要になるケース
SG90は動作時に0.2〜0.7A程度の電流を必要とすることがあり、Arduino本体から供給できる電流には限りがあります。
サーボを1個だけ、軽い負荷で動かす程度であれば、Arduino本体からの給電でも動くことが多いです。
ただし複数のサーボを同時に動かしたり、重い部品を持ち上げさせたりする場合は、専用の外部電源を用意し、Arduinoと外部電源のGND同士を必ずつなぐ(共通GND)ようにしてください。
電源が不足した状態でサーボを動かすと、Arduino本体がリセットされたり誤作動したりすることがあります。
「動いていたのに急に止まる」「LEDがチカチカする」といった症状が出たら、電源不足を疑ってください。
電源まわりが正しく機能しているか不安なときは、テスターで電圧を測って確認すると安心です。

Servoライブラリでコードを書く
attach()とwrite()の使い方
サーボモーターは、Arduino IDEに標準で入っている「Servo」というライブラリを使えば、追加のインストールなしで扱えます。
「myservo.attach(9)」のように書くと、9番ピンに接続したサーボを制御の対象として登録します。
「myservo.write(90)」のようにカッコの中の数字を変えるだけで、サーボの角度を90度に指定できます。
この数字を0や180に変えて試してみると、パルス幅と角度の関係が体感として分かりやすくなります。
動かしすぎ・力をかけすぎに注意
サーボモーターの内部には、角度を保つための小さなギア(歯車)が使われています。
可動範囲を超えた角度を指定したり、手で無理に軸を回そうとしたりすると、このギアが破損する原因になります。
コードで指定する角度は、製品の説明書に書かれた可動範囲(多くは0〜180度)の中に収めるようにしてください。
よくあるつまずき
反応が鈍い・震える時の原因切り分け
サーボが小刻みに震え続ける「ジッター」という症状は、電源不足が原因になっていることが多くあります。
まずは外部電源を試し、それでも改善しない場合は信号線の配線を疑います。
配線に問題がなさそうであれば、コード側のピン番号や角度の指定値を見直します。

まとめ:サーボが動かないときの確認順
サーボモーターがうまく動かないときは、以下の順番で確認してみてください。
- 電源電圧が4.8〜6Vの範囲に収まっているか(3.3Vになっていないか)確認できている
- 複数のサーボや重い負荷を動かす場合、外部電源+共通GNDになっているか見当がついている
- 信号線がattach()で指定したピン番号と一致しているか確認できている
- ジッター(小刻みな震え)が出た場合は、電源不足を最初に疑う、という順番が身についている


コメント