電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>使用Arduino來控制直流電機(jī)

使用Arduino來控制直流電機(jī)

2023-07-03 | zip | 0.25 MB | 次下載 | 免費(fèi)

資料介紹

描述

L298N模塊有一個(gè)非常有名的L298電機(jī)驅(qū)動(dòng)IC,它是這個(gè)模塊的主要部分。本模塊采用PWM方式控制直流電機(jī)的轉(zhuǎn)速。

L298N電機(jī)驅(qū)動(dòng)器規(guī)格

該模塊將允許您控制兩個(gè)直流電機(jī)的速度和方向。它可以控制在 5 至 35V 和高達(dá) 2A 之間運(yùn)行的電機(jī)。該模塊有一個(gè)板載穩(wěn)壓器,有助于提供 5V 的輸出。該模塊可以從 Arduino 或外部電源從 5 到 35V 供電。建議始終使用外部電源。它還可以控制步進(jìn)電機(jī)它價(jià)格低廉,非常適合機(jī)器人項(xiàng)目。

L298N 電機(jī)驅(qū)動(dòng)器的引腳輸出

電機(jī) A:接線端子將為第一個(gè)電機(jī)提供輸出。

12V 跳線:如果您的電源電壓低于 12V,請(qǐng)保留此跳線,并且 5V 電源引腳將為您提供 5V 的輸出。如果電源電壓大于 12V,則去掉這個(gè)跳線,給 5V 電源引腳提供 5V 電源,這樣 L298 雙 H 橋 IC 才能正常工作。

電源引腳:在 12V 引腳和接地端提供 5 至 35V 的電源電壓。如果您的電源電壓大于 12,請(qǐng)確保移除 12V 跳線。如果 Vs 小于 12V,5V 引腳將用作輸出,如果 Vs 大于 12V,5V 引腳將用作輸入。

啟用引腳:如果您想控制直流電機(jī)的速度并將它們連接到 Arduino 的 PWM 引腳,請(qǐng)移除啟用 A 和啟用 B 上的跳線。如果要使用 L298N 控制步進(jìn)電機(jī),則將跳線保持在 Enable A 和 Enable B 上。將跳線保持在這些引腳上意味著這些引腳將為高電平。

邏輯引腳:將邏輯引腳連接到 Arduino 的任何數(shù)字引腳。這些將有助于控制直流電機(jī)的旋轉(zhuǎn)和速度。

電機(jī) B:此接線端子將為第二個(gè)電機(jī)提供輸出。

5V 線性穩(wěn)壓器這會(huì)將電源電壓降至 5V,并在 5V 引腳上提供輸出。

?
pYYBAGOX0FWAQYjRAAChHpEpg5o934.png
?

教程所需的組件

本教程所需的組件如下

  • 阿杜諾
  • L298N 電機(jī)驅(qū)動(dòng)模塊
  • 2 X 直流電機(jī)
  • 操縱桿模塊
  • 12V電池

使用 L298N 電機(jī)驅(qū)動(dòng)器控制直流電機(jī)

L298N電機(jī)驅(qū)動(dòng)模塊與Arduino的連接電路圖如下所示。進(jìn)行如下連接

L298N

阿杜諾

5至12V電池/電源

ENA Pin 11 IN1 Pin 9 IN2 Pin 8 IN3 Pin 7 IN4 Pin 6 ENB Pin 10 12V 5轉(zhuǎn)12V電源或電池 GND GND 電源或電池負(fù)極 最后,連接L298N兩側(cè)的兩個(gè)直流電機(jī)

為了給 L298N 供電,我使用了 2 節(jié) 3.7V 的可充電電池。

然后將操縱桿模塊與 Arduino 連接如下

操縱桿模塊

阿杜諾

VCC 5V VER A1 HOR A0 GND GND

?
poYBAGOX0FiAFbuoAAFwW-npw2o450.png
?

代碼

//Joystick Pins
int x_key = A0;
int y_key = A1;
int x_pos;
int y_pos;
//Motor Pins
int EN_A = 11;      //Enable pin for first motor
int IN1 = 9;       //control pin for first motor
int IN2 = 8;       //control pin for first motor
int IN3 = 7;        //control pin for second motor
int IN4 = 6;        //control pin for second motor
int EN_B = 10;      //Enable pin for second motor
//Initializing variables to store data
int motor_speed;
int motor_speed1;
void setup ( ) {
Serial.begin (9600); //Starting the serial communication at 9600 baud rate
//Initializing the motor pins as output
pinMode(EN_A, OUTPUT);
pinMode(IN1, OUTPUT);
pinMode(IN2, OUTPUT);
pinMode(IN3, OUTPUT);
pinMode(IN4, OUTPUT);
pinMode(EN_B, OUTPUT);
//Initializng the joystick pins as input
pinMode (x_key, INPUT) ;
pinMode (y_key, INPUT) ;
}
void loop () {
x_pos = analogRead (x_key) ;  //Reading the horizontal movement value
y_pos = analogRead (y_key) ;  //Reading the vertical movement value

if (x_pos < 400){     //Rotating the left motor in clockwise direction
motor_speed = map(x_pos, 400, 0, 0, 255);   //Mapping the values to 0-255 to move the motor
digitalWrite(IN1, LOW);
digitalWrite(IN2, HIGH);
analogWrite(EN_A, motor_speed);
}
else if (x_pos>400 && x_pos <600){  //Motors will not move when the joystick will be at center
digitalWrite(IN1, LOW);
digitalWrite(IN2, LOW);
}

else if (x_pos > 600){    //Rotating the left motor in anticlockwise direction
motor_speed = map(x_pos, 600, 1023, 0, 255);
digitalWrite(IN1, HIGH);
digitalWrite(IN2, LOW);
analogWrite(EN_A, motor_speed);
}

if (y_pos < 400){         //Rotating the right motor in clockwise direction
motor_speed1 = map(y_pos, 400, 0, 0, 255);
digitalWrite(IN3, LOW);
digitalWrite(IN4, HIGH);
analogWrite(EN_B, motor_speed1);
}
else if (y_pos>400 && y_pos <600){
digitalWrite(IN3, LOW);
digitalWrite(IN4, LOW);
}

else if (y_pos > 600){        //Rotating the right motor in anticlockwise direction
motor_speed1 = map(y_pos, 600, 1023, 0, 255);
digitalWrite(IN3, HIGH);
digitalWrite(IN4, LOW);
analogWrite(EN_B, motor_speed1);
}
}

PCB設(shè)計(jì)

在確保面包板上一切正常后,我在 KiCad 上設(shè)計(jì)了 PCB。

?
poYBAGOYcLiAA55-AAEGXwMJYeE980.png
?

以下是該項(xiàng)目的項(xiàng)目文件夾的鏈接。

10 – Arduino L298N下載

?
?

設(shè)計(jì)PCB后,我生成了PCB制造所需的Gerber文件。

您可以通過以下鏈接下載 Gerber 文件

10 – Arduino L298N gerber 下載

?
?

訂購 PCB

現(xiàn)在我們已經(jīng)完成了 PCB 設(shè)計(jì),是時(shí)候訂購 PCB 了。為此,您只需訪問?JLCPCB.com ,然后單擊“立即報(bào)價(jià)”按鈕。

?
poYBAGNY0OGAS-SwAABU_t-iUBc816.png
?

JLCPCB也是該項(xiàng)目的贊助商。JLCPCB(深圳市JLC電子有限公司),是中國最大的PCB樣板企業(yè),是專業(yè)從事快速PCB樣板和小批量PCB生產(chǎn)的高科技制造商。您只需 2 美元即可訂購至少 5 個(gè) PCB。

要制造 PCB,請(qǐng)上傳您在上一步中下載的 gerber 文件。上傳 .zip 文件,或者您也可以拖放 gerber 文件。

?
pYYBAGNY0OOAO104AABCARkOTTg133.png
?

上傳 zip 文件后,如果文件上傳成功,您將在底部看到一條成功消息。

?
pYYBAGOYcMGAXSkiAABvaEWiObw364.png
?

您可以在 Gerber 查看器中查看 PCB,以確保一切正常。您可以查看 PCB 的頂部和底部。

?
pYYBAGOYcMaAUnv6AABjmO3zN9A217.png
?

在確保我們的 PCB 看起來不錯(cuò)后,我們現(xiàn)在可以以合理的價(jià)格下訂單。您只需 2 美元即可訂購 5 個(gè) PCB,但如果這是您的第一個(gè)訂單,那么您可以花 2 美元購買 10 個(gè) PCB。

要下訂單,請(qǐng)單擊“保存到購物車”按鈕。

?
poYBAGOYcMiAR6WqAABpn6gKJRA836.png
?

我的 PCB 花了 2 天時(shí)間制造出來,并使用 DHL 送貨選項(xiàng)在一周內(nèi)到達(dá)。PCB包裝得很好,質(zhì)量非常好。

?
pYYBAGOYcMuAC3ltAACsd0Zr-lg98.jpeg
?

在這里組裝完所有東西后就是它的樣子。

?
poYBAGOYcM2APpL4AADLKlPdjf475.jpeg
?

?

如果您有任何問題,請(qǐng)隨時(shí)在評(píng)論部分向我們提問。


下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評(píng)論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數(shù)據(jù)手冊(cè)
  2. 1.06 MB  |  532次下載  |  免費(fèi)
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費(fèi)
  5. 3TC358743XBG評(píng)估板參考手冊(cè)
  6. 1.36 MB  |  330次下載  |  免費(fèi)
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費(fèi)
  9. 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費(fèi)
  11. 6迪文DGUS開發(fā)指南
  12. 31.67 MB  |  194次下載  |  免費(fèi)
  13. 7元宇宙底層硬件系列報(bào)告
  14. 13.42 MB  |  182次下載  |  免費(fèi)
  15. 8FP5207XR-G1中文應(yīng)用手冊(cè)
  16. 1.09 MB  |  178次下載  |  免費(fèi)

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費(fèi)
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費(fèi)
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費(fèi)
  7. 4開關(guān)電源設(shè)計(jì)實(shí)例指南
  8. 未知  |  21549次下載  |  免費(fèi)
  9. 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費(fèi)
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費(fèi)
  13. 7電子制作實(shí)例集錦 下載
  14. 未知  |  8113次下載  |  免費(fèi)
  15. 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德爾著
  16. 0.00 MB  |  6656次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費(fèi)
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537798次下載  |  免費(fèi)
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費(fèi)
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費(fèi)
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費(fèi)
  11. 6電路仿真軟件multisim 10.0免費(fèi)下載
  12. 340992  |  191187次下載  |  免費(fèi)
  13. 7十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138040次下載  |  免費(fèi)