簡単な回答
L293D モータードライバーシールドを Arduino Uno に重ねて取り付け、シールドのネジ端子に別のモーター電源を供給する場合のみ電源ジャンパーを外し、サーボを 2 つの 5V サーボヘッダーのいずれかに接続します。ベンチ電源から 2 つの DC モーターを駆動し、代わりに I2C 制御が必要な場合は、mLink L9110 コントローラーの方がすっきりとした代替手段です。以下の手順は、標準的なシールドの組み立てを説明しています。
L293D シールドが実際に提供するもの
Arduino用モータードライブシールドL293Dは、プロジェクトにモーター制御を追加するために設計されています。Arduinoの高解像度専用タイマーに接続された5Vサーボ用の2つのインターフェースを提供し、正確なサーボ動作を可能にします。Arduino Unoボードと互換性がありますが、ボード自体は含まれていません。
この組み合わせがこのシールドの人気の理由です。1枚のボードに2つのDCモーターチャンネルと2つのサーボヘッダーを搭載し、サーボのタイミングはメインループをブロックするのではなく、専用タイマーで処理されます。トレードオフとして、L293Dはバイポーラドライバーで実際の電圧降下があるため、高電流または非常に低い電圧を必要とするモーターはうまく動作しない可能性があります。コミットする前にモーターのストール電流を確認してください。
配線する前にモーターと電源を確認してください
このビルドが機能するかどうかは、モーターのストール電流と供給電圧の2つの数値で決まります。L293Dは内部トランジスタで約1.4Vから2Vの電圧降下が発生するため、6Vのモーターを6Vの電源で使用すると動作が鈍くなります。モーターの定格電圧より数ボルト高い電源を計画し、各チャンネルの電流がドライバーの処理能力内であることを確認してください。
モーターがシールドから十分に供給できる以上の電流を消費する場合、または単純なI2Cリンクを介して各方向に255ステップの速度制御が必要な場合は、mLink L9110 DCモーターコントローラーを検討する価値があります。これはシリアル(I2C)2チャンネルのDCモータードライバーで、最大800mAの電流で最大2台のDCモーターを独立した方向と速度制御で駆動できます。
電源ジャンパー:人々が間違えがちな唯一のもの
シールドのパワージャンパーは、Arduinoの5Vレールをモータードライバーのロジック電源に接続します。ジャンパーを装着した状態では、シールドはUnoからロジック電源を供給され、モーター自体にはねじ端子を介して別途電源が必要です。
ジャンパーを取り外すのは、シールド自身の5Vロジックピンに外部の安定化された5V電源を供給する場合のみです。取り外してそのピンへの電源供給を忘れると、ロジック側が停止し、何も動作しなくなります。これは最も一般的な「シールドが動かない」という報告の原因です。通常のUno構成では、ジャンパーを装着したままにしてください。
- ジャンパー装着時:ロジックはArduinoの5Vレールから、モーターはねじ端子から。
- ジャンパー取り外し時:シールドのロジックピンに、ご自身で安定化された5Vを供給する必要があります。
- モーター電圧を 5V ロジックピンに決して供給しないでください。
サーボヘッダーと専用タイマー
2つの 5V サーボインターフェースはArduinoの高解像度専用タイマーに配線されています。そのため、スケッチが他のタスクでビジー状態でもサーボパルスは正確に保たれます。これは、ジッターが震えとして現れるソフトウェアでのビットバン方式のサーボパルス生成に比べて、真の利点です。
電源が鍵です。サーボは動き始めると驚くほどの突入電流を消費することがあり、それをUnoの 5V レギュレーターから引き出すとボードがブラウンアウトする可能性があります。小さなマイクロサーボを超えるものには、外部の 5V 電源からサーボレールに電力を供給し、Arduinoとグランドを共有してください。
ビルドをきれいに仕上げる
モーターと電源の配線には、2.1mmのDC電源オスプラグコネクタを使用します。これは、内径2.1mmの半田付け可能なオスプラグで、プラスチックと金属で構成されており、実験用電源リードやバッテリーパックをシールドのねじ端子に終端する場合に便利です。半田接続は振動下でも接合部を確実に保持するため、動くものには重要です。
モーター線はより合わせて短く保ち、サーボ信号線から離して配線し、Arduinoと外部電源の間に共通グランドを追加してください。モーターがピクピク動くが回転しない場合は、コードを書き直す前に電源またはジャンパーを疑ってください。
ステップバイステップ: L293Dシールドの組み立て
- 1. モーターをドライバーに合わせる: モーターの定格電圧とストール電流を確認してください。L293Dは内部で約1.4~2V低下するため、モーター定格より数ボルト高い電源を選び、チャンネルあたりの電流をドライバーの制限内に保ってください。数値が合わない場合は、モーターあたり800mA定格のmLink L9110に切り替えてください。 チェックポイント: ストール電流の値が見つからない場合は、測定するか、公表された上限のあるドライバーを選んでください。
- 2. シールドをUnoに装着する: Arduinoの電源を切り、シールドのヘッダーをUnoのピンに合わせて、完全に押し込みます。このシールドはArduino Unoボードと互換性があります。ボードは付属していないため、Unoをお持ちであることを確認してください(ピン配置が異なるボードではありません)。 チェックポイント:シールドが1ピン列ずれて取り付けられていると、電源は入っても動作が不安定になることがよくあります。
- 3. 電源ジャンパーの状態を決定します: 通常の組み立てではジャンパーをそのままにして、シールドがArduinoの5Vレールからロジック電源を取るようにします。自分でシールドのロジックピンに安定化された5Vを供給する場合のみ、ジャンパーを取り外します。どちらの場合でも、モーターはねじ端子を介して独自の電源を得ます。 よくある間違い:ジャンパーを抜いて、なぜボードが動かないのかと疑問に思うこと。何も点灯しない場合は、まずジャンパーを戻してください。
- 4. 外部モーター電源を配線します: モーター電源をシールドのねじ端子に極性に注意して接続します。ベンチ電源やバッテリーリードを終端する場合は、はんだ付けされた2.1mm DC電源オスプラグコネクタを使用し、電源のグランドをArduinoのグランドに接続します。 チェックポイント:モーターを接続する前に端子電圧を測定し、モーター電圧を5Vロジックピンに決して供給しないでください。
- 5. 2つのDCモーターを接続します: モーターAを最初の出力ペアに、モーターBを2番目の出力ペアに配置します。モーターが逆方向に回転する場合は、コードを変更するのではなく、2本のリード線を入れ替えてください。リード線は短く、より合わせてください。 チェックポイント:一度に1つのモーターだけをテストし、一方のチャンネルの配線不良が他方を隠さないようにします。
- 6. サーボを追加します: 5Vサーボを2つのサーボヘッダーのいずれかに接続します。これらのヘッダーは、Arduinoの高分解能専用タイマーに接続されており、正確な動作を実現します。マイクロサーボより大きいものには、Unoのレギュレーターではなく、外部の5V電源からサーボレールに電力を供給してください。 よくある間違い:負荷のかかったサーボをArduinoの5Vピンから動作させ、動いたときにランダムにリセットが発生する。
- 7。アップロードして確認: 各モーターを前進、後退させ、サーボをスイープするスケッチを読み込みます。モーターが動作中のメーターの電圧降下を監視し、サーボがジッターなく位置を保持することを確認します。 次のステップ:負荷がかかった状態でチャンネルが停止した場合は、コードに手を加える前に、電源電圧と電流マージンを見直してください。
このビルドで使用した部品
- Arduino用モータードライブシールド L293D: Arduino用モータードライブシールド L293D:Arduinoの高分解能専用タイマーに接続された2つの5Vサーボインターフェースを搭載。Arduino Unoボード(ボードは別売)と互換性があります。1枚のスタッカブルボードに2つのモーターチャンネルと2つのサーボヘッダーを備え、サーボのタイミングはスケッチではなくハードウェアで処理されます。
- mLink L9110 DCモーターコントローラー: mLink L9110 モーターコントローラー:シリアル(I2C)2チャンネルDCモータードライバー、最大2台のDCモーターに対応、各モーター最大800mA、各方向255ステップで独立した方向と速度制御を実現。I2C制御が必要な場合や、モーターごとの電流上限を事前に正確に把握したい場合に最適です。
- 2.1mm DC電源オスプラグコネクター: 2.1mm DC電源オスプラグコネクタ:内径2.1mmのオスプラグ、プラスチックと金属製の構造、確実な取り付けのためのはんだ接続、DC電源アプリケーション向けに設計。はんだ付けされた耐振動ジョイントで、ベンチ電源やバッテリーリードをシールドのネジ端子に終端できます。





