步驟1:物料清單
一個(gè)5V Bi -極性步進(jìn)電機(jī)。您可以在未使用的舊軟盤驅(qū)動器中找到一個(gè)。
A Keyes L298N電動機(jī)驅(qū)動器?;蛉魏纹渌嫒莼蝾愃频腖298N模塊驅(qū)動程序。
Arduino Uno R3或兼容版本。在這里,我使用Sparkfun RedBoard。
一些跳線。
萬用表。
步驟2:Stepper:工作原理


四線制步進(jìn)電機(jī)的內(nèi)部示意圖如上圖一所示。盡管第二張圖片向我們展示了步進(jìn)電機(jī)的內(nèi)部工作原理,以使其順時(shí)針或逆時(shí)針運(yùn)動。我們要做的就是以正確的順序給線圈通電。
在上面的運(yùn)動圖中:
(在瀏覽器中最佳查看)
《表邊框=“ 1” cellpadding =“ 3”》
順時(shí)針
學(xué)位YX?Y?X
2250011
3150 《第》 1 10
451100
1351001
《表邊框=“ 1” cellpadding =“ 3”》 逆時(shí)針 度 Y X ?Y ?X 225 0 0 1 1 135 1 0 0 1 45 1 1 0 0 《第》 315 0 1 1 0
我們?nèi)绾握页龀蓪Φ膶?dǎo)線(X和?X; Y和?Y)?因?yàn)槲覀円獙€圈進(jìn)行源或沉,以產(chǎn)生所需的磁場來移動電動機(jī)。使用萬用表并將其設(shè)置為歐姆表,我們正在測量電纜之間的電阻。
當(dāng)我測量引腳1和引腳3時(shí),讀數(shù)為12.6歐姆。當(dāng)我測量引腳2和引腳4時(shí)也是如此。在連接引腳時(shí)會有一個(gè)電阻。我們還可以將萬用表設(shè)置為“連續(xù)性檢查”。
當(dāng)我測量引腳1時(shí)引腳2在左側(cè)顯示“ 1”,表示“超出范圍”。當(dāng)我測量引腳2和引腳3時(shí),也會發(fā)生同樣的事情。這意味著它們沒有連接。
您可以嘗試訪問此頁面,以獲取有關(guān)步進(jìn)電機(jī)操作原理的更多詳細(xì)信息。它具有一些GIF動畫以及完整的步進(jìn)度和引腳狀態(tài)表,以使您更好地理解。
步驟3:接線
從Keyes L298N模塊到Arduino Uno的電線:
(在瀏覽器中最佳瀏覽)
顏色鍵L298NArduino Uno
橙色ENAPin 7
黃色I(xiàn)N1Pin?6
綠色I(xiàn)N2Pin?5
藍(lán)色I(xiàn)N3Pin?10
PurpleIN4Pin?9
灰色ENBPin 8
黑色GNDGND
白色+ 5VVin
步進(jìn)銷1 和銷3 到Keyes L298N Motor A 。
將步進(jìn) pin 2 和 pin 4 連接到Keyes L298N Motor B 。
電池+ 至Keyes L298N VMS 。
電池-至Keyes L298N GND 。
第4步:Arduino草圖
/*
* Driving a 5V stepper motor using Keyes L298N Dual Motor Driver;
* Chienline @2015;
*/
const int ENA = 7;
const int IN1 = 6;
const int IN2 = 5;
const int ENB = 8;
const int IN4 = 9;
const int IN3 = 10;
const int ledPin = 13;
void setup()
{
pinMode(ENA,OUTPUT);
pinMode(IN1,OUTPUT);
pinMode(IN2,OUTPUT);
pinMode(ENB,OUTPUT);
pinMode(IN3,OUTPUT);
pinMode(IN4,OUTPUT);
pinMode(ledPin,OUTPUT);
digitalWrite(ledPin, LOW);
//delay is used to control the speed, the lower the faster.
//reverse(step,delay);
reverse(80,20);
//forward(step,delay);
forward(80,20);
}
void loop()
{
}
void reverse(int i, int j) {
// set both motors ON
digitalWrite(ENA, HIGH);
digitalWrite(ENB, HIGH);
while (1) {
digitalWrite(IN1, 0);
digitalWrite(IN2, 1);
digitalWrite(IN3, 0);
digitalWrite(IN4, 1);
delay(j);
i--;
if (i 《 1) break;
digitalWrite(IN1, 0);
digitalWrite(IN2, 1);
digitalWrite(IN3, 1);
digitalWrite(IN4, 0);
delay(j);
i--;
if (i 《 1) break;
digitalWrite(IN1, 1);
digitalWrite(IN2, 0);
digitalWrite(IN3, 1);
digitalWrite(IN4, 0);
delay(j);
i--;
if (i 《 1) break;
digitalWrite(IN1, 1);
digitalWrite(IN2, 0);
digitalWrite(IN3, 0);
digitalWrite(IN4, 1);
delay(j);
i--;
if (i 《 1) break;
}
// set both motors OFF
digitalWrite(ENA, LOW);
digitalWrite(ENB, LOW);
} // end reverse()
void forward(int i, int j) {
// Set both motors ON
digitalWrite(ENA, HIGH);
digitalWrite(ENB, HIGH);
while (1) {
digitalWrite(IN1, 0);
digitalWrite(IN2, 1);
digitalWrite(IN3, 0);
digitalWrite(IN4, 1);
delay(j);
i--;
if (i 《 1) break;
digitalWrite(IN1, 1);
digitalWrite(IN2, 0);
digitalWrite(IN3, 0);
digitalWrite(IN4, 1);
delay(j);
i--;
if (i 《 1) break;
digitalWrite(IN1, 1);
digitalWrite(IN2, 0);
digitalWrite(IN3, 1);
digitalWrite(IN4, 0);
delay(j);
i--;
if (i 《 1) break;
digitalWrite(IN1, 0);
digitalWrite(IN2, 1);
digitalWrite(IN3, 1);
digitalWrite(IN4, 0);
delay(j);
i--;
if (i 《 1) break;
}
// set both motors OFF
digitalWrite(ENA, LOW);
digitalWrite(ENB, LOW);
} // end forward()
責(zé)任編輯:wv
-
步進(jìn)電機(jī)
+關(guān)注
關(guān)注
153文章
3251瀏覽量
152443 -
L298N
+關(guān)注
關(guān)注
21文章
224瀏覽量
80535
發(fā)布評論請先 登錄
電機(jī)驅(qū)動和控制技術(shù)解析
?DRV8821 雙路步進(jìn)電機(jī)控制器與驅(qū)動器技術(shù)文檔總結(jié)
?DRV8825 步進(jìn)電機(jī)驅(qū)動IC技術(shù)文檔總結(jié)
?DRV8834雙橋步進(jìn)/直流電機(jī)驅(qū)動器技術(shù)文檔總結(jié)
?DRV8846 雙H橋步進(jìn)電機(jī)驅(qū)動器技術(shù)文檔總結(jié)
?DRV8849 雙路步進(jìn)電機(jī)驅(qū)動器技術(shù)手冊總結(jié)
?DRV8421 18V 2A雙H橋步進(jìn)電機(jī)驅(qū)動器技術(shù)文檔總結(jié)
DRV8849雙路步進(jìn)電機(jī)驅(qū)動器技術(shù)解析與應(yīng)用指南
基于L298N的STM32的直流電機(jī)PWM調(diào)速控制
HJ4205步進(jìn)電機(jī)驅(qū)動電路詳解
怎樣使用Keyes L298N驅(qū)動雙極步進(jìn)電機(jī)
評論