概要
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のデジタル信号でモーターを動作させるために使用します。
ピンの記号と意味
ピン番号 | 記号 | 意味 |
---|---|---|
1 | GND | グランド(ArduinoのGNDに接続) |
2 | OUT1 | モーター接続端子(GeekServoの赤) |
3 | NC | 未使用 |
4 | Vref | PWM制御用端子(ArduinoのPWM信号を入力) |
5 | IN1 | モーターの回転方向制御(Arduinoのデジタル信号) |
6 | IN2 | モーターの回転方向制御(Arduinoのデジタル信号) |
7 | VCC | 電源供給端子(Arduinoの5Vに接続) |
8 | Vs | モーター駆動用電源端子(Arduinoの5Vに接続) |
9 | NC | 未使用 |
10 | OUT2 | モーター接続端子(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制御の概念を理解できる内容 となっています。
本記事を参考に、モーター制御の応用にもチャレンジしてみてください。
ここまで読んでいただきありがとうございました。
スクールの紹介
最後に宣伝をさせてください。
技術で未来を切り拓く―あなたの夢を現実にするプログラミングスクール
Webデザインやプログラミングで成功を目指している方々にとって、このオンラインスクールは夢を叶えるための最適な場所です。皆さんのキャリアを次の段階へと引き上げるためにデザインされたこのスクールは、一人ひとりの成功を心から願い、それを実現するための全てを提供しています。ここでは、このスクールの魅力について詳しくご紹介します。
◆圧倒的な費用対効果
このオンラインプログラミングスクールは、Web系教育において最高の費用対効果を提供しています。多くの高額スクールが存在する中で、ここではリーズナブルな価格で、質の高い教材、無限のサポート、そして実際に市場で求められるスキルの習得機会を提供しています。
◆現役フリーランスの講師陣
講師たちは全員、現役のフリーランスプロフェッショナルです。市場で活躍している講師から直接、最新のトレンドや実践的なスキルを学べるのは、このスクールの大きな特徴です。
◆柔軟な学習コース
固定のコースがなく、学習者の興味やニーズに応じて自由に学習できます。進路変更も自由で、最低契約期間は1ヶ月という柔軟性を持っています。自分のペースで、自分に合った学習が可能です。
◆無制限の添削とサポート
理解できるまで、そして満足するまで、無制限に添削と質問への回答を提供しています。進路相談や技術面以外の相談にも対応しており、全面的にサポートします。
◆社長から学べる貴重な機会
デザイナー、プログラマー、ディレクター、マーケターとして豊富な経験を持つ社長から直接学べるのも、このスクールの特別な点です。他のスクールでは得られない、貴重な機会です。
◆実績作りへの徹底的なサポート
就職、転職、フリーランスとして成功するためには、高品質な実績が必要です。生徒の作品レベルを最大限に高め、市場で求められる実績を作り上げることに力を入れています。案件を取得できない生徒には、直接案件を提供することもあります。
◆メッセージからの約束
高額な授業料を支払わせて結果を出せないスクールとは違い、物理的なサポートは提供できないかもしれませんが、継続的な努力を通じて最高の結果を出せるようにサポートします。一緒に不正なスクールを撲滅し、あなたの夢を実現しましょう。
このプログラミングスクールは、Webデザインやプログラミングでの成功を目指す方々に必要な全てを備えています。今こそ、このコミュニティに参加し、あなたのキャリアを加速させる時です。
詳しくはこちら↓