このチュートリアルでは、MSP430を使用してステッピングモーターをインターフェースします。 MSP-EXP430G2は、開発ツールである LaunchPadの別名はによって提供 テキサス・インスツルメンツ 彼らのマイクロコントローラを使用する方法について学び、実践します。このボードは、すべてのMSP430シリーズマイクロコントローラーをプログラムできるMSP430バリューラインカテゴリに分類されます。MSPを初めて使用する場合は、MSP430チュートリアルの開始を確認してください。
ステッピングモーター:
ステッピングモーターは、電気パルスを別個の機械的動きに変換するブラシレスDCモーターの一種です。ステッピングモーターのシャフトは離散的なステップで回転します。必要に応じて正確なステップとスピードを得ることができます。
私たちは、使用する35BYJ46バイポーラステッピングモータ市場で安く提供されています。6本のワイヤーがありますが、5本のワイヤーも付属しています。私たちのステッピングモーターには2つのコイルがあります。それぞれに3本のワイヤーが出ています。3本のワイヤーのうち、1本は中央にタップされているので、残りの2本はコイルに直接接続されています。合計で、5〜12V電源に接続された4本の信号線と2本の中央タップ線があります。
モーターから合計5本のワイヤーが出ている場合、4本のワイヤーは信号線で、1本は両方のコイルの中央にタップされています。このような。
どの線が中央タップされているか、またはどちらが信号線であるかを確認するには、モーターから出ている線の抵抗を確認する必要があります。そのため、同じコイルで接続されているこれらのワイヤは、中央のタップの抵抗と比較して高い抵抗値を持っています。
上の図で、青と黄色のワイヤの抵抗値を確認し、それらの間の抵抗が黄色と赤の間、または青と赤の間の値よりも大きい場合。つまり、赤は中央のタップ付きワイヤーです。
以前、 ステッピングモーターを他のマイクロコントローラーと接続しました。
- ステッピングモーターとArduinoUnoのインターフェース
- RaspberryPiによるステッピングモーター制御
- 8051マイクロコントローラーとインターフェースするステッピングモーター
- ステッピングモーターとPICマイクロコントローラーのインターフェース
ステッピングモーターは、マイクロコントローラーなしで制御することもできます。このステッピングモータードライバー回路を参照してください。
ULN2003ステッピングモータードライバー:
ほとんどの ステッピングモーター は、ドライバーモジュールの助けを借りてのみ動作します。これは、コントローラーモジュール(この場合はMSP)が、モーターが動作するのに十分な電流をI / Oピンから供給できないためです。そのため、ULN2003 モジュールなどの外部モジュールをステッピングモータードライバーとして 使用します 。ドライバーモジュールには多くの種類があり、使用するモーターの種類によって定格が異なります。すべてのドライバモジュールの主な原理は、モーターが動作するのに十分な電流をソース/シンクすることです。
このプロジェクトでは、ULN2003モータードライバーICを使用します。ICのピン配列を以下に示します。
ICの場合は4入力ポートと4出力ポートを使用します。
必要な材料:
- MSP430
- 35BYJ46または28-BYJ48ステッピングモーター
- ULN2003 IC
- ワイヤー
- ブレッドボード
回路図:
上の図では、ステッパーの赤線はICのPIN5に接続されていません。5Vに接続する必要があります。ステッピングモーターのカラーコードは、回路図に示されている色と異なる場合があります。そのため、正しい信号線を確認してから接続してください。
EnergiaIDEを使用してコードを記述します。Arduino IDEと同じで、使いやすいです。ステッパーを駆動するためのサンプルコードは、ArduinoIDEのサンプルメニューにもあります。
コードと動作の説明:
MSP430でプログラミングを開始する前に、プログラム内で実際に何が起こるかを理解しましょう。4ステップのシーケンス方式を使用するため、1回転するために4つのステップを実行します。A、B、C、Dを4つのコイルと考えてください。
ステップ |
ピン通電 |
通電されたコイル |
ステップ1 |
6と7 |
AとB |
ステップ2 |
7と8 |
BとC |
ステップ3 |
8と9 |
CとD |
ステップ4 |
9と6 |
DとA |
このチュートリアルでは、 MSP430ステッピングモーターコードを記述します 。完全なプログラムはチュートリアルの最後にあります。いくつかの重要な行を以下に説明します。
ステッピングモーターの1回転あたりのステップ数は32と計算されました。したがって、以下の行に示すように入力します
const int STEPS = 32;
次に、ステッピングモーターを接続したピンを指定するインスタンスを作成する必要があります。
ステッパーmyStepper (STEPS、6、7、8、9 );
ステッピングライブラリを使用しているので、以下の行でモーターの速度を設定できます。35BYJ46ステッピングモーターの速度は0〜200の範囲です。
Mystepper.setSpeed(200);
ここで、モーターを1ステップ動かすために、次の行を使用できます。
myStepper.step(STEPS);
32ステップとギア比として64があるので、1回転するために2048(32 * 64 = 2048)を移動する必要があります。次に、以下のコードをアップロードして、番号を変更します。あなたの必要に応じてステップの。
これは、ステッピングモーターをPICマイクロコントローラーとインターフェースする方法です。これで、独自の創造性を使用して、このためのアプリケーションを見つけることができます。ステッピングモーターを使用するプロジェクトはたくさんあります。