ジョイスティックで28BYJ-48ステッピングモーター制御を駆動
コンポーネントと消耗品
> |
| × | 1 | |||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
このプロジェクトについて
<図>
必要なハードウェア:
- ArduinoUNOボード
- 28BYJ-48ステッピングモーター(ULN2003Aドライバーボード付き)
- ジョイスティック
- 5V電源
- ブレッドボード
- ジャンパー線
Arduinoとジョイスティック回路を使用したステッピングモーター制御:プロジェクト回路の概略図を以下に示します(すべての接地端子は相互に接続されています)。
<図>次の画像はフリッツ回路を示しています:
<図>ステッピングモーターは、5Vの外部電源が供給されるULN2003Aボードに接続されています。このボードの制御ライン(IN1、IN2、IN3、IN4)は次のようにArduinoに接続されています:IN1からArduinoピン11IN2からArduinoピン10IN3からArduinoピン9IN4からArduinoピン8
ジョイスティックボードには、GND、+ 5V、VRX、VRY、SWの5つのピンがあります。GNDと+ 5Vは電源ピンです。VRXはX軸ポテンショメータ出力です。VRYはY軸ポテンショメータ出力です。SWは押しボタン端子(もう一方の端子)です。 X軸ポテンショメータ(VRX)の出力はArduinoアナログピンA0に接続され、Y軸ポテンショメータ出力(VRY)も使用できます。この例では、スイッチピン(SW)は使用されていません.X軸とY軸のポテンショメータを使用して、2つのステッピングモーターを個別に制御できます。
「だから みんな if あなた いいね プロジェクトなので、フォローして気に入ってもらうことを忘れないでください」
コード
- コード:
コード: C / C ++
このコードに含まれるすべてのライブラリを追加してください//このプロジェクトはBEASTIDREES62によって作成されていますhttps://id.arduino.cc/?code=MTxqeHweG6vL2cur&state=amxEcTB2bnNiYjluTUxmRExWaWZnOXIzUk1BLWRqZTZYUGtJNGtxステッピングモーターライブラリ#include// 1回転あたりのステップ数を定義#defineSTEPS 32 //ステッピングモーター制御ピンを定義#defineIN1 11#define IN2 10#define IN3 9#define IN4 8 //ステッピングライブラリStepperを初期化ステッパー(STEPS、IN4、IN2、IN3、IN1); //ジョイスティックポットの出力はArduinoに接続されていますA0#define joystick A0 void setup(){} void loop(){//ポテンショメータからアナログ値を読み取りますint val =analogRead(joystick); //ジョイスティックが真ん中にある場合===>モーターを停止しますif((val> 500)&&(val <523)){digitalWrite(IN1、LOW); digitalWrite(IN2、LOW); digitalWrite(IN3、LOW); digitalWrite(IN4、LOW); } else {//モーターを最初の方向に移動while(val> =523){//速度を5〜500rpmにマッピングintspeed_ =map(val、523、1023、5、500); //モーター速度を設定しますstepper.setSpeed(speed_); //モーターを移動します(1ステップ)stepper.step(1); val =analogRead(ジョイスティック); } //モーターを反対方向に移動しますwhile(val <=500){//速度を5〜500rpmにマップしますintspeed_ =map(val、500、0、5、500); //モーター速度を設定しますstepper.setSpeed(speed_); //モーターを移動します(1ステップ)stepper.step(-1); val =analogRead(ジョイスティック); }}}
回路図
製造プロセス