ULN2003ドライバーとArduinoを備えた28BYJ-48ステッパーモーターの使用方法

How to Use the 28BYJ-48 Stepper Motor with ULN2003 Driver and Arduino

28BYJ-48ステッパーモーターは、DIYエレクトロニクスプロジェクトでよく使用される人気のある手頃な価格のステッピングモーターです。 ULN2003ドライバーボードと組み合わせて、ロボット工学、カメラスライダー、ホームオートメーションなど、正確な動きを必要とするアプリケーションに最適です。このチュートリアルでは、28BYJ-48ステッピングモーターをArduinoでセットアップして制御することをガイドします。

あなたが必要とするもの

  1. 28BYJ-48ステッパーモーター
  2. ULN2003ドライバーボード
  3. Arduino委員会(例:UNO、MEGA、NANO)
  4. ジャンパーワイヤ
  5. ブレッドボード(オプション)
  6. Arduino IDEがインストールされたコンピューター

ステップ1:コンポーネントの理解

28BYJ-48ステッパーモーター

  • 28BYJ-48は、ギア縮小比が約1:64の4相、5線ステッパーモーターであり、正確で信頼性が高くなっています。

ULN2003ドライバーボード

  • ULN2003は、28BYJ-48モーター専用に設計されたドライバーボードです。モーターのアクティブフェーズを示すLEDが含まれ、Arduinoへの接続を簡素化します。

ステップ2:ULN2003をArduinoに配線します

  1. 28BYJ-48モーターをULN2003ドライバーボードに接続します。モーターのコネクタは、ボード上に「in」というラベルが付いたヘッダーに直接収まります。

  2. ジャンパーワイヤを使用して、ULN2003ドライバーボードを次のようにArduinoに接続します。

ULN2003ピン Arduino Pin
in1 ピン8
in2 ピン9
IN3 ピン10
IN4 ピン11
VCC 5V
GND GND

ステップ3:ステッピングライブラリをインストールします

Arduino IDEには、ステッパーモーターコントロール用のビルトインライブラリが含まれています。

  1. Arduino IDEを開きます。
  2. 行きます スケッチ > ライブラリを含めます > ステッパー.

ステップ4:コードをアップロードします

ステッピングモーターを制御するための基本的な例コードは次のとおりです。

#include <Stepper.h>

// Define the number of steps per revolution for the 28BYJ-48 motor
#define STEPS_PER_REV 2048

// Initialize the Stepper library on pins 8, 9, 10, and 11
Stepper stepper(STEPS_PER_REV, 8, 10, 9, 11);

void setup() {
  stepper.setSpeed(15); // Set motor speed (in RPM)
  Serial.begin(9600);
  Serial.println("28BYJ-48 Stepper Motor Test");
}

void loop() {
  Serial.println("Moving Forward");
  stepper.step(STEPS_PER_REV); // Move one full revolution forward
  delay(1000);

  Serial.println("Moving Backward");
  stepper.step(-STEPS_PER_REV); // Move one full revolution backward
  delay(1000);
}

ステップ5:セットアップをテストします

  1. USBを介してArduinoをコンピューターに接続します。
  2. Arduino IDEを開き、正しいものを選択します ボード そして ポート の下 ツール メニュー。
  3. クリックしてコードをArduinoにアップロードします アップロード.
  4. コードがアップロードされると、ステッピングモーターは1つの完全な革命を前方に回転させ、その後繰り返し後方に回転させる必要があります。

加速による高度な制御

よりスムーズでより正確なコントロールのために、あなたは Accelstepper 組み込みのステッピングライブラリの代わりにライブラリ。これが例です:

#include <AccelStepper.h>

// Define the motor interface type
#define HALFSTEP 8

// Initialize the AccelStepper library
AccelStepper stepper(HALFSTEP, 8, 10, 9, 11);

void setup() {
  stepper.setMaxSpeed(1000); // Set maximum speed
  stepper.setAcceleration(500); // Set acceleration
  stepper.setSpeed(200); // Set initial speed
}

void loop() {
  stepper.runSpeed(); // Continuous rotation
}

トラブルシューティング

  • モーターが動いていない: すべての接続を確認し、コードで正しいピンが定義されていることを確認してください。
  • 不安定な動き: モーターの電源が十分であり、コードがセットアップと一致することを確認します。
  • 低トルク: 28BYJ-48は高トルクモーターではありません。過負荷にならないようにしてください。

28BYJ-48ステッパーモーターのアプリケーション

  1. カメラスライダー
  2. ロボットアーム
  3. 自動ブラインド
  4. 3Dプリンターメカニズム

結論

ULN2003ドライバーとArduinoを使用して、28BYJ-48ステッパーモーターを正常にセットアップして制御しました。この手頃な価格で信頼性の高いモーターは、さまざまなDIYプロジェクトに最適です。さまざまな速度、ステップ、および制御方法を試して、プロジェクトをよりダイナミックにします!

コメントを残す

Notice an Issue? Have a Suggestion?
If you encounter a problem or have an idea for a new feature, let us know! Report a problem or request a feature here.