在本篇文章中,我們將學習如何使用搖桿和Arduino開發板控制步進電機的知識。在這里,我們將使用Arduino UNO開發板和PS2游戲桿控制步進電機的速度和旋轉方向。
我們使用帶有內部驅動器的單極5V DC步進電機28BYJ-48。因此,不需要任何步進電機驅動。相反,我們將使用ULN2003A達林頓雙電機驅動器IC。 PS2游戲桿由兩個10k歐姆的電位器組成,即一個用于X軸,另一個用于Y軸。它還包括一個按鈕。但是我們將僅使用X軸來控制步進電機的運動。
所需的組件
● Arduino UNO開發板
● 28BYJ-48 5V DC步進電機
● ULN2003芯片
● PS2游戲桿
● 5V DC電源
什么是步進電機
步進電動機(stepper motor)是一種無刷直流電動機,它將完整的全周長分為多個相等的步長。然后可以命令電機的位置移動并保持在其中一個步進,而無需任何位置傳感器進行反饋(開環控制器),只要在轉矩和速度方面仔細選擇適合電動機尺寸的電動機即可。
步進電機28-BYJ48的連接方式
步進電動機28-BYJ48是一個具有5引線線圈布置的單極電動機。必須按特定順序為四個線圈通電。紅線連接到+ 5V電壓,其余四根線將被拉到接地以觸發相應的線圈。我們使用Arduino開發板以特定順序為這些線圈通電,并使電動機執行所需的步數。
步進電機需要借助驅動器芯片才能進行操作。原因是控制器需要較高的電流才能運行,但是僅步進電機將無法從其I / O引腳提供足夠的電流來使電機運行。因此使用ULN2003作為驅動模塊,電流被放大了。
連接電路圖
要使用搖桿和Arduino控制步進電機,請如下圖所示組裝電路。
步數計算
在將代碼上傳到Arduino板上之前需要進行步數計算
在Arduino中,我們將以4步順序操作電機,因此需要計算步幅角(Stride Angle)。
步幅角= 5.625°
Arduino步驟順序= 4
所需步驟順序= 8
步數角度= 5.625 * 2 = 11.25
每轉的步數= 360 /步角= 360 / 11.25 =每轉32步。
源代碼/程序:
#include 《Stepper.h》
#define STEPS 32
// define stepper motor control pins
#define IN1 7
#define IN2 6
#define IN3 5
#define IN4 4
// initialize stepper library
Stepper stepper(STEPS, IN4, IN2, IN3, IN1);
// joystick pot output is connected to Arduino A0
#define joystick A0
void setup()
{
}
void loop()
{
// read analog value from the potentiometer
int val = analogRead(joystick);
// if the joystic is in the middle ===》 stop the motor
if( (val 》 500) && (val 《 523) )
{
digitalWrite(IN1, LOW);
digitalWrite(IN2, LOW);
digitalWrite(IN3, LOW);
digitalWrite(IN4, LOW);
}
else
{
// move the motor in the first direction
while (val 》= 523)
{
// map the speed between 5 and 500 rpm
int speed_ = map(val, 523, 1023, 5, 500);
// set motor speed
stepper.setSpeed(speed_);
// move the motor (1 step)
stepper.step(1);
val = analogRead(joystick);
}
// move the motor in the other direction
while (val 《= 500)
{
// map the speed between 5 and 500 rpm
int speed_ = map(val, 500, 0, 5, 500);
// set motor speed
stepper.setSpeed(speed_);
// move the motor (1 step)
stepper.step(-1);
val = analogRead(joystick);
}
}
}
編輯:hfy
-
驅動器
+關注
關注
53文章
8256瀏覽量
146581 -
電位器
+關注
關注
14文章
1012瀏覽量
66858 -
步進電機
+關注
關注
150文章
3113瀏覽量
147581 -
步進電動機
+關注
關注
0文章
60瀏覽量
12790
發布評論請先 登錄
相關推薦
評論