Skip to main content

Grove - I2C モータードライバ V1.3

note

この文書は AI によって翻訳されています。内容に不正確な点や改善すべき点がございましたら、文書下部のコメント欄または以下の Issue ページにてご報告ください。
https://github.com/Seeed-Studio/wiki-documents/issues

Grove - I2C モータードライバ V1.3(最新バージョン)は、ステッピングモーターまたは DC モーターを直接制御できます。その中心には、デュアルチャネル H ブリッジドライバチップ(L298N)があり、各チャネルで最大 2A の電流を処理できます。これは Atmel ATmega8L によって制御され、Arduino などのプラットフォームとの I2C 通信を処理します。両方のモーターを同時に異なる速度と方向で駆動することができます。2 つのブラシ付き DC モーターまたは 1 つの 4 線式 2 相ステッピングモーターを駆動できます。モーターを駆動するには 6V から 15V の電源が必要で、オンボードの 5V 電圧レギュレータが I2C バスと Arduino に電力を供給できます(ジャンパーで選択可能)。すべてのドライバラインは、逆起電力からダイオードで保護されています。

Grove - I2C モータードライバ V1.2 と比較して、V1.3 はステッピングモーターの制御をより簡単にします。ステッピングモーターを常に制御する必要はなくなり、I2C モータードライバ V1.3 にコマンドを送信するだけで、ステッピングモーターがそのコマンドに従って動作します。これにより、Arduino のリソースを節約し、コードを簡素化できます。

バージョン

リビジョン説明リリース日
v1.0初回公開リリース2012年5月17日
v1.2ハードウェアによる I2C アドレス設定を変更2012年7月2日
v1.3オフラインステッピングモーターをサポートするファームウェアを変更2013年2月18日

特徴

  • Grove 互換
  • I2C インターフェース
  • モーター速度と回転方向の調整可能
  • ハードウェアによるスレーブアドレスの変更可能
tip
Grove モジュールの詳細については、[Grove System](https://wiki.seeedstudio.com/ja/Grove_System/) を参照してください。

仕様

項目最小標準最大単位
動作電圧6-15VDC
チャネルごとの最大出力電流0.5A
最大合計電流1.0A
I2C バスの入出力電圧5V
通信プロトコルI2C/
note
複数の I2C デバイスを使用したい場合は、[Software I2C](https://wiki.seeedstudio.com/ja/Arduino_Software_I2C_user_guide/) を参照してください。

対応プラットフォーム

ArduinoRaspberry Pi
caution
上記で対応プラットフォームとして挙げられているものは、モジュールのソフトウェアまたは理論的な互換性を示しています。ほとんどの場合、Arduinoプラットフォーム用のソフトウェアライブラリやコード例のみを提供しています。すべての可能なMCUプラットフォーム用のソフトウェアライブラリやデモコードを提供することはできません。そのため、ユーザー自身でソフトウェアライブラリを作成する必要があります。

ハードウェア概要

78M05 IC: 5V電圧レギュレータ

L298 IC: デュアルフルブリッジドライバ

ATmega8 IC: モーター回転を制御

注意

ネジ端子の入力電圧は5Vに調整され、ジャンパー(J4)を介してI2C +5Vに接続されます。ネジ端子を介した外部電源とI2Cヘッダーを介した電源の両方を使用する場合は、ジャンパーを取り外してください。I2Cバスに5Vを供給する場合はジャンパーを使用してください。

応用アイデア

  • ロボット
  • 自作RCカー
  • ケースファン
  • 高出力LED照明

注意

1アンペアを超える動作中、基板は非常に熱くなります。手を触れないようにしてください!

はじめに

note
Arduinoを初めて使用する場合は、開始前に[Arduinoの使い方](https://wiki.seeedstudio.com/ja/Getting_Started_with_Arduino/)をご覧になることを強くお勧めします。

Arduinoで遊ぶ

デモンストレーション

I2Cモータードライバは、L298チップをベースにしたモーターを制御できます。L298は単なるデュアルモータードライバではなく、デュアルHブリッジです。Hブリッジは、電流の方向を切り替えるための特定のトランジスタ構成です。モーターに接続すると、両方向に回転させることができ、PWM入力を使用してArduinoで任意の速度で回転させることができます。L298には2つのHブリッジがあるため、各車輪を異なる方向に回転させてロボットを回転させたり、前進・後退させたりすることができます。

ハードウェア

  • ステップ1. 以下のものを準備してください:
Seeeduino V4.2ベースシールドGrove - I2C Motor Driver V1.3
enter image description hereenter image description hereenter image description here
今すぐ購入今すぐ購入今すぐ購入
  • ステップ2. I2Cモータードライバのアドレスを設定します。

  • ダイヤルスイッチでアドレスを設定するのは、新しいI2Cモータードライバに追加された新機能です。

  • 次に、プログラム内のアドレス設定をI2Cモータードライバ上のアドレス設定と同じに保ちます。プログラム内のデフォルトアドレス設定は0x0fです。
  • ステップ3. Grove - I2C Motor Driver V1.3をGrove-Base ShieldのI2Cポートに接続します。
  • ステップ4. Grove - Base ShieldをSeeeduinoに差し込みます。
  • ステップ5. USBケーブルを使用してSeeeduinoをPCに接続します。

note

Grove Base Shieldがない場合は、以下のようにGrove - I2C Motor Driver V1.3をSeeeduinoに直接接続することもできます。

SeeeduinoGrove - I2C Motor Driver V1.3
5V
GND
SDA
SCL

ソフトウェア

// デフォルトのI2Cアドレスは0x0f
#define I2C_ADDRESS 0x0f

void setup()
{
Motor.begin(I2C_ADDRESS);
}

注意

最初に注意すべき点は、DCモーターには外部電源が必要であるということです。Arduinoの5Vピンでは2つのモーターを駆動するのに十分な電力を供給できません。そのような場合、Arduinoが損傷する可能性があります。
  • DCモーターを制御するための関数が2つあります:
// モーターの速度を設定します。速度はここではデューティサイクルに相当します。
void speed(unsigned char motor_id, int _speed);

// モーターを停止します。
void stop(unsigned char motor_id);

speed()関数を使用すると、任意の速度でモーターを駆動することができます。

  • motor_id は使用するモーターを表します。MOTOR1 または MOTOR2 を指定できます。

  • _speed はモーターに設定する速度を表します。-100~100の範囲で指定できます。_speed > 0 の場合、DCモーターは時計回りに回転し、_speed < 0 の場合、DCモーターは反時計回りに回転します。また、_speed の絶対値が大きいほど、DCモーターの速度は速くなります。

stop()関数を使用すると、動作中のDCモーターを停止することができます。

  • motor_id は使用するモーターを表します。MOTOR1 または MOTOR2 を指定できます。

ステッピングモーターを駆動する

24BYJ48ステッピングモーターを例に取ります。ハードウェアの接続は以下の通りです:

24BYJ48ステッピングモーターとI2Cモータードライバーの接続は以下の通りです:

  • ステッピングモーターを駆動するための関数を1つ提供しています。
// ステッピングモーターを駆動します。
void StepperRun(int _step);
  • _step はステッピングモーターに設定するステップ数を表します。-1024~1024の範囲で指定できます。_step > 0 の場合、ステッピングモーターは時計回りに回転し、_step < 0 の場合、反時計回りに回転します。_step が 512/-512 の場合、ステッピングモーターは1回転し、_step が 1024/-1024 の場合、ステッピングモーターは2回転します。ステッピングモーターは設定されたステップ数を完了すると自動的に停止します。

Codecraftで遊ぶ

ハードウェア

ステップ1. Groveケーブルを使用してGrove - I2C Motor DriverをSeeeduinoのI2Cポートに接続します。Arduinoを使用している場合は、Base Shieldを利用してください。

ステップ2. USBケーブルを使用してSeeeduino/ArduinoをPCに接続します。

ソフトウェア

ステップ1. Codecraftを開き、Arduinoサポートを追加し、メインプロシージャを作業エリアにドラッグします。

note
初めてCodecraftを使用する場合は、[Codecraftを使用したArduinoのガイド](https://wiki.seeedstudio.com/ja/Guide_for_Codecraft_using_Arduino/)も参照してください。

ステップ2. 以下の画像のようにブロックをドラッグするか、このページの最後でダウンロードできるcdcファイルを開きます。

cc

プログラムをArduino/Seeeduinoにアップロードします。

tip
コードのアップロードが完了すると、Motor Driverに接続されたDCモーターが動作するのが確認できます。

オンライン回路図ビューア

リソース

技術サポートと製品ディスカッション

弊社製品をお選びいただきありがとうございます!製品の使用体験がスムーズになるよう、さまざまなサポートを提供しております。異なる好みやニーズに対応するため、いくつかのコミュニケーションチャネルをご用意しています。

Loading Comments...