概要

DCモータを制御する際にモータコントローラを使用すると思いますが、複数のモータを制御する際は配線が複雑になってしまいがちです。

 

DCモータを制御したい時に、1から制御回路を作るのは面倒ですので、DCモータコントローラを用いることが多いと思います。しかし、通常のモータコントローラでは、配線数が多くなってしまいがちなので、配線数を減らしてすっきりコンパクトにしたい場合は、L298P使用のシールド型DCモータコントローラを使用することがおすすめです。
 

そこで別記事ではL298Pという、Arduino対応のシールド型モータコントローラを紹介しました。L298Pは2チャンネルでしたが、さらにチャンネル数の多い、4チャンネルに対応可能なDCモータコントローラL293Dモータシールドについて紹介します。

 

L293D使用のシールド型DCモータコントローラです。Arduino対応のシールドになっており、マイコンに挿して、モータ電源とモータ線を繋げるだけですぐにモータ制御をすることが可能です。4チャンネルまで対応しているため、4つのDCモータの制御を1つの基盤で行うことができます。 接続するリード線が少なくなるので、ロボットに積む時など、配線をコンパクトにしたい場合に最適です。

接続の仕方

L293D接続方法

下の接続口にはモータ電源を接続します。(6V〜15V)

左右についているA/Bそれぞれの接続口に4つまでDCモータを接続することが可能です。

このように、Arduinoの上に差し込む形で上にL293Dモータシールドを接続します。給電はシールドに繋げたモータ用の電源から行われるのでArduino自身への給電は不要です。

 L293D

DCモータを4つ繋げても配線はとてもシンプルになります。

制御コード例

AFMotorというライブラリを使用しています。

上記URLからzipダウンロードをして、Arduino IDEでZIPファイルをインクルードしましょう。

 

#include <AFMotor.h>
AF_DCMotor motor1(1);
AF_DCMotor motor2(2);
AF_DCMotor motor3(3);
AF_DCMotor motor4(4);

void setup() {
  motor1.run(RELEASE);
  motor2.run(RELEASE);
  motor3.run(RELEASE);
  motor4.run(RELEASE);
}

void loop() {
  motor1.run(FORWARD);
  motor2.run(FORWARD);
  motor3.run(FORWARD);
  motor4.run(FORWARD);
  motor1.setSpeed(200);
  motor2.setSpeed(200);
  motor3.setSpeed(200);
  motor4.setSpeed(200);

  delay(2000);

  motor1.run(BACKWARD);
  motor2.run(BACKWARD);
  motor3.run(BACKWARD);
  motor4.run(BACKWARD);
  motor1.setSpeed(200);
  motor2.setSpeed(200);
  motor3.setSpeed(200);
  motor4.setSpeed(200);

  delay(2000);

}
モータコントロール

Related Posts

Arduinoのコードでキュー(Queue)を使う
Arduinoのコードでキュー(Queue)を使う
概要 Arduinoのコードを書く際に、処理をキューイングして順番に処理をしていきたい時がありました。Arduinoにはarrayはありますが、FIFO(後述)型のキューはデフォルトでは無いため、外部ライブラリをインクルードする必要が...
Read More
2輪駆動 ロボット台車・カーシャーシの組み立て方
2輪駆動 ロボット台車・カーシャーシの組み立て方
RoboStationで販売しているロボット台車・「積載重量4kg/3kg 2輪駆動 ロボット台車・カーシャーシ」の組み立て方について解説をします。   RoboStation https://rb-station.com/prod...
Read More
L298PモータシールドとArduinoを使ってシンプルな配線でDCモータを制御しよう
L298PモータシールドとArduinoを使ってシンプルな配線でDCモータを制御しよう
DCモータコントローラについて DCモータを制御したい時に、1から制御回路を作るのは面倒ですので、DCモータコントローラを用いることが多いと思います。しかし、通常のモータコントローラでは、配線数が多くなってしまいがちなので、配線数を減...
Read More