【Arduino】ArduinoでGeekServo 9G Motor-Redを制御する方法(TA7291Pモータードライバ使用)

目次

概要

Arduinoを用いて GeekServo 9G Motor-Red を制御する方法を紹介します。モータードライバには TA7291P を使用し、PWM信号を活用した回転制御を行います。
初心者の方でも分かりやすいように、モーターとモータードライバの仕様、接続方法、Arduinoのサンプルコード まで詳しく解説します。


モーター(GeekServo 9G Motor-Red)の製品説明

GeekServo 9G Motor-Redとは?

GeekServo 9G Motor-Red は、小型DCモーターで、ロボット制御や電子工作に適したモーターです。PWM信号を用いることで、回転速度の制御が可能です。

主な仕様

  • 電圧範囲:5V
  • 動作方式:DCモーター(PWM制御対応)
  • 端子:2本(赤:+、黒:-)

モータードライバ(TA7291P)の製品説明

TA7291P は、東芝製のHブリッジモータードライバICで、DCモーターの正転・逆転を制御できます。Arduinoのデジタル信号でモーターを動作させるために使用します。

ピンの記号と意味

ピン番号記号意味
1GNDグランド(ArduinoのGNDに接続)
2OUT1モーター接続端子(GeekServoの赤)
3NC未使用
4VrefPWM制御用端子(ArduinoのPWM信号を入力)
5IN1モーターの回転方向制御(Arduinoのデジタル信号)
6IN2モーターの回転方向制御(Arduinoのデジタル信号)
7VCC電源供給端子(Arduinoの5Vに接続)
8Vsモーター駆動用電源端子(Arduinoの5Vに接続)
9NC未使用
10OUT2モーター接続端子(GeekServoの黒)

Arduinoとモータードライバの接続

接続図

Arduinoとモータードライバ、モーターの接続は以下のように行います。

モータードライバのピンArduinoの接続GeekServo 9G Motor-Red
GND(ピン1)Arduino GND
OUT1(ピン2)GeekServo 9G Motor-Red の
OUT2(ピン10)GeekServo 9G Motor-Red の
Vref(ピン4)Arduino の PWM 出力(例: D9
IN1(ピン5)Arduino のデジタル出力(例: D7
IN2(ピン6)Arduino のデジタル出力(例: D8
VCC(ピン7)Arduino の 5V
Vs(ピン8)Arduino の 5V

この接続により、Arduino からモーターの回転方向を制御 し、PWM信号を用いて速度の調整 も可能になります。


Arduinoのサンプルコード

以下のコードでは、モーターを2秒間正転 → 1秒停止 → 2秒間逆転 → 1秒停止 を繰り返します。

#define IN1 7   // IN1 ピン
#define IN2 8   // IN2 ピン
#define VREF 9  // Vref(PWM制御)

void setup() {
  pinMode(IN1, OUTPUT);
  pinMode(IN2, OUTPUT);
  pinMode(VREF, OUTPUT);
}

void loop() {
  // 正転(IN1 = HIGH, IN2 = LOW)
  digitalWrite(IN1, HIGH);
  digitalWrite(IN2, LOW);
  analogWrite(VREF, 150); // 速度 150(0~255)
  delay(2000);  // 2秒間回転

  // 停止
  digitalWrite(IN1, LOW);
  digitalWrite(IN2, LOW);
  analogWrite(VREF, 0);
  delay(1000);  // 1秒間停止

  // 逆転(IN1 = LOW, IN2 = HIGH)
  digitalWrite(IN1, LOW);
  digitalWrite(IN2, HIGH);
  analogWrite(VREF, 150);
  delay(2000);  // 2秒間回転

  // 停止
  digitalWrite(IN1, LOW);
  digitalWrite(IN2, LOW);
  analogWrite(VREF, 0);
  delay(1000);
}

のコードをArduinoに書き込むと、モーターが一定の間隔で正転・逆転を繰り返します。


まとめ

本記事では、Arduino を用いて GeekServo 9G Motor-Red を TA7291P モータードライバで制御する方法 を解説しました。
Arduino の 5V を使用して簡単に制御できるため、特別な外部電源は不要 です。

今回のポイント

  • GeekServo 9G Motor-Red はDCモーターで、PWM制御が可能
  • TA7291P モータードライバ を使用して正転・逆転を制御
  • Arduino の PWM 信号で速度調整 も可能
  • 外部電源を使わず、Arduino の 5V だけで動作

Arduino を使った DC モーター制御を学ぶ上で、基本的な回路構成やPWM制御の概念を理解できる内容 となっています。
本記事を参考に、モーター制御の応用にもチャレンジしてみてください。

IT・ガジェット・電子工作の知識をこれひとつで

画像に alt 属性が指定されていません。ファイル名: KU-Assocb-2017810-640x100._V518059506_.jpg

ここまで読んでいただきありがとうございます。最後に宣伝をさせてください。

PCアプリの操作解説、最新のガジェット情報、そして電子工作の専門書まで。 Kindle Unlimitedなら、あらゆるジャンルのIT・デジタル関連書籍が読み放題です。

「仕事の効率化」から「趣味の深掘り」まで、高価な専門書をわざわざ買わずに、必要な情報をその場で引き出せるのが最大のメリット。 現在は30日間の無料体験や、対象者限定の「3ヶ月499円」プランなどが用意されています。まずはご自身のアカウントでお得なオファーが表示されるかご確認ください。

[Kindle Unlimited 読み放題プランをチェックする]

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

私が勉強したこと、実践したこと、してることを書いているブログです。
主に資産運用について書いていたのですが、
最近はプログラミングに興味があるので、今はそればっかりです。

目次