モーターの種類と使い分け(サーボ・ステッピング・DCモーター)

「ロボットを動かすためにモーターを買おうと思ったけれど、種類が多すぎてどれを選べばいいかわからない……」

「タイヤを回すモーターと、ロボットの手足を曲げるモーターって何が違うの?」

ロボット開発を進める中で、誰もが直面するのが「モーター選びの壁」です。

ロボットにとってモーターは、人間でいう「筋肉」にあたる最も重要なパーツです。どれだけ優れたプログラムや電子回路を作っても、用途に合っていないモーターを選んでしまうと、「スピードが遅すぎる」「パワーが足りなくて持ち上がらない」「思い通りの角度で止まらない」といった問題が発生してしまいます。

この記事では、ロボット開発で使われる代表的な3大モーター「DCモーター」「サーボモーター」「ステッピングモーター」の特徴・仕組み・得意分野、そして実践的な使い分けのポイントを徹底解説します!

1. 一目でわかる!3大モーターの比較表

まずは3つのモーターの特徴と違いをざっくり掴みましょう。

項目 DCモーター サーボモーター ステッピングモーター
主な用途 車輪(タイヤ)、ファン、高速回転 ロボットの関節、アーム、ステアリング 3Dプリンター、CNC、精密な位置決め
回転の仕方 ぐるぐる連続回転する 指定した「角度(例: 90度)」で止まる パルス数に応じて「指定ステップ」動く
制御の難易度 ★☆☆(超かんたん) ★★☆(かんたん〜中級) ★★★(少し複雑)
位置の保持力 なし(電源を切ると手で回る) 強い(指定角度をキープし続ける) 非常に強い(停止時に位置を固定)
価格帯 100円〜数百円(超安価) 300円〜数千円 1,000円〜3,000円

2. DCモーター:スピード&パワーの「ぐるぐる回転」担当

最もシンプルで、私たちが子供の頃からプラモデルやミニ四駆などで親しんできたのが「DC(Direct Current:直流)モーター」です。

【DCモーターの動きのイメージ】
 電圧をかける(ON) ──► ぐるぐる高速回転!
 電圧を切る(OFF)   ──► 慣性で少し回ってから停止

① 仕組みと特徴

プラスとマイナスの2本の線に電池を繋ぐだけで、勢いよく回転します。

  • 速度調整(PWM): 電圧(またはPWM信号)を変えることで、回転スピードを調整できます。

  • 逆転操作: プラスとマイナスの接続を逆にすると、逆方向に回転します。

② メリットとデメリット

  • メリット: 構造がシンプルで非常に安価。高速回転が得意。

  • デメリット: 「ぴったり90度で止める」といった精密な角度制御ができない。単体ではトルク(回転させる力)が弱いため、ギヤボックス(減速機)と組み合わせて使うのが一般的です。

💡 補足:ロータリーエンコーダ付きDCモーターとは?

DCモーターの軸に「何回転したか」を計測するセンサー(エンコーダ)を取り付けたものです。マイコンで回転数をカウントすることで、DCモーターでありながら「指定した距離だけ走って止まる」という高度な車輪制御が可能になります(競技用ロボコンなどでよく使われます)。

3. サーボモーター:角度をカチッと止める「関節」担当

ロボットのアーム(腕)や脚の関節、アールディゥイーノの電子工作で大活躍するのが「サーボモーター」です。

【サーボモーターの構造】
 [ 小型DCモーター ] + [ 減速ギヤ ] + [ 角度センサー(ポテンショメータ) ] + [ 制御基板 ]
  ⇒ これらがすべて1つの小さなケースに詰まった「オールインワンパッケージ」!

① 仕組みと特徴

サーボモーターには配線が「3本(VCC/GND/信号線)」あります。

信号線にマイコンから「1500マイクロ秒のパルス信号(PWM)」を送ると、内部の基板が「あ、90度の位置に行けばいいんだな」と判断し、内蔵モーターとギヤを動かして自動的にその角度まで回転してピタッと止まります。

  • 可動範囲: 一般的なホビー用サーボは「0度〜180度」(または270度)の範囲で動きます。

  • 保持力: 指定した角度に達したあと、外から手で押し戻そうとしても、内蔵基板が抵抗してその角度を維持しようと力を入れ続けます。

② 初心者におすすめのサーボモーター

  • SG90(およびその互換品): 1個300円〜500円程度で買える超小型・軽量サーボ。プラスチックギヤですが、軽量なパーツを動かす実験には最適です。

  • MG996R(メタルギヤサーボ): 1,000円前後で買えるハイパワーサーボ。内部のギヤが金属製(メタル)になっており、重いロボットアームや二足歩行ロボットの関節に耐えられる力を持っています。

4. ステッピングモーター:1ステップ刻みで動く「超精密」担当

3Dプリンターのノズル移動や、自作のCNC彫刻機、高精度な搬送ロボットに使われているのが「ステッピングモーター(パルスモーター)」です。

【ステッピングモーターの動きのイメージ】
 「1パルス送る」 ──► カチッ(1.8度回転)
 「2パルス送る」 ──► カチッ(さらに1.8度回転)
  ⇒ パルスをあげた分だけ、ミリ単位・0.1度単位で正確に移動!

① 仕組みと特徴

内部に多数の歯(磁極)が刻まれており、電気の信号(パルス)を1個送るたびに、あらかじめ決められた一定の角度(例:1.8度)だけ正確に回転します。

  • オープンループ制御: 「センサーで位置を確かめる」という処理をしなくても、「100パルス送ったから確実に180度回っているはずだ」という前提で超精密な操作ができます。

  • 高い保持トルク: 停止している間もコイルに電流を流し続けるため、強い力でその場に固定(ロック)されます。

② メリットとデメリット

  • メリット: 角度のズレが極めて少なく、回転速度も正確にコントロールできる。

  • デメリット: 制御するために専用の「ステッピングモータードライバー回路(A4988やTMC2209など)」が必要。停止中も電気を消費するため熱を持ちやすい。

5. ロボット開発での「失敗しない使い分け・選び方」ガイド

「自分の作りたいメカにはどのモーターを使えばいいの?」という疑問を解決するシーン別選び方ガイドです。

場面1:ロボットカー(車輪・タイヤ)を走らせたい

  • 最適解:ギヤ付きDCモーター

  • 理由: 車輪は360度ずっと連続して回転し続ける必要があるため、DCモーターが最適です。トルクを稼ぐためにギヤヘッドが最初からついた「黄色いギヤ付きDCモーターセット(1個200円程度)」を選ぶのが定番です。

場面2:ロボットアーム、ハンド(手)、アームの関節を作りたい

  • 最適解:サーボモーター

  • 理由: 「指を45度曲げて物を掴む」「腕を90度上げてキープする」といった動きには、角度を直接指定できて保持力のあるサーボモーターが一択となります。

場面3:3Dプリンターのような「高精度な直線移動」をさせたい

  • 最適解:ステッピングモーター+タイミングベルト

  • 理由: 0.1mm単位で正確にカメラやセンサーの位置を動かしたい場合は、ステッピングモーターの精度が必須になります。

場面4:防犯カメラのように「首振り(パン・チルト)」をさせたい

  • 最適解:小型サーボモーター(2個組み合わせ)

  • 理由: 上下左右の2軸(2D0F)で角度をコントロールする場合、小型サーボを2個L字型の金具で繋ぐ「パンチルトキット」を使うと、数分で首振り機構が完成します。

6. Arduinoでの制御コード比較(プログラムはどう書く?)

それぞれのモーターをArduinoで動かす時のプログラム(コード)の難易度や書き方の違いをチェックしてみましょう。

① サーボモーターのコード(標準ライブラリで超かんたん!)

Arduinoには最初から「Servo.h」というライブラリが用意されているため、数行で動かせます。

C++

#include <Servo.h>

Servo myServo;  // サーボオブジェクトを作成

void setup() {
  myServo.attach(9);  // 9番ピンにサーボの信号線を接続
}

void loop() {
  myServo.write(0);    // 0度の位置へ動かす
  delay(1000);
  myServo.write(90);   // 90度の位置へ動かす
  delay(1000);
  myServo.write(180);  // 180度の位置へ動かす
  delay(1000);
}

② DCモーターのコード(PWMでスピード調整)

モータードライバー(L298N等)を経由して、PWMピン(AnalogWrite)で速さをコントロールします。

C++

const int MOTOR_PIN = 3; // PWM対応ピン

void setup() {
  pinMode(MOTOR_PIN, OUTPUT);
}

void loop() {
  analogWrite(MOTOR_PIN, 128); // 半分のスピード(0〜255)で回転
  delay(2000);
  analogWrite(MOTOR_PIN, 255); // 最高速で回転
  delay(2000);
}

7. まとめ:適切なモーターを選んで理想の動きを実現しよう!

今回のまとめです。

  1. 連続でぐるぐる回すタイヤやファンには「DCモーター」!

  2. 指定した角度でピタッと止める関節や首振りには「サーボモーター」!

  3. ミリ単位の精密な位置決めや固定には「ステッピングモーター」!

  4. モーターを動かす時は、必ず電源とモータードライバー(または専用回路)を用意する!

作りたいロボットの「動き」を想像してみてください。

「この動きにはどのモーターがぴったりかな?」と考えながら秋葉原のショップやネット通販のパーツリストを眺めるのも、ロボット開発の大きな楽しみの一つです。

用途に合った最高のモーターを手に入れて、理想のロボットに命を吹き込んでいきましょう!