L298N:Arduinoのモーターを制御するモジュール

1298n

Arduino用またはメーカーによるDIYプロジェクトで使用するための多くのモジュールがあります。 の場合 L298Nはモーターを制御するモジュールです。 それらを使用すると、簡単なコードを使用して Arduinoボードをプログラムする シンプルで制御された方法でDCモーターを制御することができます。 一般に、このタイプのモジュールは、ロボット工学や電動アクチュエータでより多く使用されますが、さまざまなアプリケーションに使用できます。

私たちはあなたが必要とするすべてをすでに入力しました ESP8266チップを搭載したESPモジュール容量を拡張できるモジュール Arduinoボードやその他のプロジェクトでWiFi接続が可能になります。 これらのモジュールは、単独で使用できるだけでなく、組み合わせて使用​​できるのも良い点です。 たとえば、ESP8266はプロトタイプとL298Nに使用できます。これを使用すると、インターネットまたはワイヤレスを介して制御可能なモーターを取得できます。

L298Nとデータシートの概要:

l298nピン配置

Arduinoを使用すると、ロボット工学でよく知られているステッピングモーターを使用することもできますが、この場合、通常はコントローラーまたは DCモーター用ドライバー。 L298チップとモジュールに関する情報は、次のようなメーカーのデータシートで入手できます。 このリンクからのSTMicroelectronics。 チップだけでなく、特定のモジュールのデータシートを見たい場合は、この他のPDFをダウンロードできます。 ハンドソンテック L298N.

しかし、大まかに言えば、L298Nは、DCモーターの回転速度と回転方向を制御できるHブリッジタイプのドライバーです。 2のおかげでステッピングモーターにも簡単に使用できます Hブリッジ それを実装します。 つまり、Hのブリッジは、モーターのローターが必要に応じて一方向または別の方向に回転できるように、電流の方向を反転できる4つのトランジスタで形成されていることを意味します。 これは、供給電圧の値のみを制御することによってのみ回転速度(RPM)を制御できるコントローラーよりも優れています。

L298Nはさまざまなもので動作します 電圧、3vから35v、 そして2Aの強度で。 これが、モーターの性能または回転速度を実際に決定するものです。 モジュールが消費する電子機器は通常約3vを消費することを考慮に入れる必要があります。そのため、モーターは、供給している電力から常に3v少なくなります。 それはやや高い消費量です、実際、それはあなたが画像で見ることができるようにヒートシンクを必要とする高出力要素を持っています。

速度を制御するには、LM35で行ったのとは逆のことを行うことができます。この場合、出力で特定の電圧を取得して度に変換する代わりに、ここでは逆になります。 ドライバーに低電圧または高電圧を供給して、 より速いまたはより遅いターン。 さらに、L298Nモジュールでは、ドライバーに少なくとも5vの電圧を供給している限り、Arduinoボードに12vで電力を供給することもできます。

Arduinoとの統合

Arduinoを使用したl298nの回路図

そこに このモジュールL298Nを使用できる多数のプロジェクト。 実際、それを使ってできることはすべて想像して、仕事に取り掛かることができます。 たとえば、簡単な例は、Fritzingで作成された前の図に見られるように、XNUMXつの直流モーターの制御です。

L298Nを使用する前に、モジュールまたはVinの入力を考慮する必要があります。 3vと35vの間の電圧をサポートします また、赤と黒のケーブルをそれぞれ使用した画像に示されているように、アースまたはGNDに接続する必要があります。 電源に接続したら、次は、同時に制御するために受け入れるXNUMXつまたはXNUMXつのモーターを接続します。 これは簡単です。モーターのXNUMXつの端子を、両側にモジュールがある接続タブに接続するだけです。

そして今、おそらく最も複雑になり、モジュール接続を接続するか、 Arduinoに正しくピン留めする。 モジュールのジャンパーまたはレギュレーターブリッジが閉じている場合、つまりオンになっている場合、モジュールの電圧レギュレーターがアクティブになり、Arduinoボードに電力を供給するために使用できる5V出力があることに注意してください。 一方、ジャンパーを取り外すと、レギュレーターが非アクティブになり、Arduinoに個別に電力を供給する必要があります。 眼! ジャンパーは12vの電圧までしか設定できないため、それ以上の場合は、モジュールを損傷しないようにジャンパーを取り外す必要があります...

あなたはそれを感謝することができます 各モーターには3つの接続があります。 IN1からIN4のマークが付いているのは、モーターAとBを制御するものです。必要なモーターがXNUMXつしかないためにモーターを接続していない場合は、すべてを配置する必要はありません。 各モーターのこれらの接続の両側にあるジャンパーは、ENAとENBです。つまり、モーターAとBをアクティブにします。これらは、両方のモーターを動作させる場合に存在する必要があります。

モーターA (Bについても同じです)、回転方向を制御するIN1とIN2を接続する必要があります。 IN1がHIGHでIN2がLOWの場合、モーターは一方向に回転し、LOWとHIGHの場合、モーターは他の方向に回転します。 回転速度を制御するには、INAまたはINBジャンパーを取り外し、Arduino PWMに接続しているように見えるピンを使用する必要があります。これにより、0〜255の値を指定すると、それぞれ低速または高速になります。

に対する ArduinoIDEではプログラミングも簡単です。 たとえば、コードは次のようになります。

<pre>// Motor A
int ENA = 10;
int IN1 = 9;
int IN2 = 8;

// Motor B
int ENB = 5;
int IN3 = 7;
int IN4 = 6;

void setup ()
{
 // Declaramos todos los pines como salidas
 pinMode (ENA, OUTPUT);
 pinMode (ENB, OUTPUT);
 pinMode (IN1, OUTPUT);
 pinMode (IN2, OUTPUT);
 pinMode (IN3, OUTPUT);
 pinMode (IN4, OUTPUT);
}
//Mover los motores a pleno rendimiento (255), si quieres bajar la velocidad puedes reducir el valor hasta la mínima que son 0 (parados)</pre>
<pre>//Para mover los motores en sentido de giro contrario, cambia IN1 a LOW e IN2 a HIGH

void Adelante ()
{
 //Direccion motor A
 digitalWrite (IN1, HIGH);
 digitalWrite (IN2, LOW);
 analogWrite (ENA, 255); //Velocidad motor A
 //Direccion motor B
 digitalWrite (IN3, HIGH);
 digitalWrite (IN4, LOW);
 analogWrite (ENB, 255); //Velocidad motor B
}</pre>

コメントを最初に

コメントを残す

あなたのメールアドレスが公開されることはありません。 必須フィールドには付いています *

*

*

  1. データの責任者:MiguelÁngelGatón
  2. データの目的:SPAMの制御、コメント管理。
  3. 正当化:あなたの同意
  4. データの伝達:法的義務がある場合を除き、データが第三者に伝達されることはありません。
  5. データストレージ:Occentus Networks(EU)がホストするデータベース
  6. 権利:いつでも情報を制限、回復、削除できます。