伦伦影院久久影视,天天操天天干天天射,ririsao久久精品一区 ,一本大道香蕉大久在红桃,999久久久免费精品国产色夜,色悠悠久久综合88,亚洲国产精品久久无套麻豆,亚洲香蕉毛片久久网站,一本一道久久综合狠狠老

電子發(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)>電子資料下載>電子資料>電機(jī)驅(qū)動(dòng)板Atmega328PU和HC01開源

電機(jī)驅(qū)動(dòng)板Atmega328PU和HC01開源

2022-08-15 | zip | 0.04 MB | 次下載 | 2積分

資料介紹


電路板圖如下:
pYYBAGL5krGAHp9HAADI6Y4sRzE526.jpg
poYBAGL5krOAfoMbAACzIysJQKA868.jpg
pYYBAGL5kraAE7grAADKyVfQTCc084.jpg

描述

電機(jī)驅(qū)動(dòng)板 Atmega328PU 和 HC01

?

嘿,如果你正在制作一個(gè)基本的機(jī)器人設(shè)置,一個(gè)電機(jī)驅(qū)動(dòng)器控制器板,它通過板載 MCU 控制電機(jī)驅(qū)動(dòng)器并具有用于藍(lán)牙連接的 HC01 BT 模塊,那么這里有什么超級(jí)酷和有用的東西。

?

?

?

?

我在 PCB 上添加了四個(gè)安裝孔,因此我可以添加 PCB 支架以將電機(jī)驅(qū)動(dòng)器固定在電路板的頂部。使用支架是一種聰明的方法,因?yàn)槲覀兛梢允褂眠@種方法添加多個(gè)模塊,只需將它們堆疊在一排支架中即可。

我還在電路板的一側(cè)添加了一個(gè) HC-SR04 超聲波傳感器分線針,因此它可以用來制作一個(gè)避障機(jī)器人。

本文將介紹這款電機(jī)驅(qū)動(dòng)器的構(gòu)建過程,讓我們開始吧。

?

材料

以下是我在這個(gè)項(xiàng)目中使用的東西-

  • 定制PCB
  • Atmega328PU
  • 22PF 蓋 0603 封裝
  • 16MHz晶體
  • 10K電阻0603封裝
  • 1K電阻0603封裝
  • 指示燈 LED 0603 封裝
  • AMS1117 穩(wěn)壓器
  • HC01 藍(lán)牙模塊
  • 10uF 電容 1206 封裝
  • 1uF 電容 1206 封裝
  • IC 插座 DIP 28
  • USB 微型端口
  • 排針插座
  • Arduino 作為用于閃爍 Atmega328PU 的 ISP 設(shè)置
  • PCB 支架
  • 馬達(dá)
  • 超聲波傳感器 HC-SR04
  • 電池組 12V
  • 電機(jī)驅(qū)動(dòng)器 L298N

?

示意圖

?

poYBAGL5krqAOecUAAGI4Kn1N1U930.jpg

?

這是我準(zhǔn)備的原理圖,它由與 HC01 模塊連接的最小 Atmega328PU 設(shè)置組成。在 Atmega328PU 和 HC01 之間,有一個(gè) AMS1117 3.3V 穩(wěn)壓器,用于將 5V 從 VCC 降壓到 3.3V 以使 HC01 工作。

我添加了一堆連接器,用于將東西與 atmega 連接,其中包括 ISP 輸出,Atmega 的分支 SPI 引腳用于閃爍,然后我還添加了用于電機(jī)驅(qū)動(dòng)器 IN1、IN2、IN3 和 IN4 的 CON4 與 D6、D9、D10 和D11。

我還添加了一些帶 D2、D3 和 D4 的 LED 以及一個(gè) CON4 插頭引腳,用于將超聲波傳感器與該板連接。

完成原理圖后,我將其轉(zhuǎn)換為電路板文件。

?

PCB設(shè)計(jì)

?

poYBAGL5kr2AU-Q_AALGYX5jhwY898.png

?

至于設(shè)計(jì),我制作了一個(gè)邊緣有倒角的矩形板,還在板的中心放置了四個(gè)安裝孔,這樣我就可以使用 Standoffs 將 L298N 電機(jī)驅(qū)動(dòng)器放置在這個(gè) PCB 上。

?

PCBWAY

?

pYYBAGL5kr-AUP_tAAA6WHZDlK4631.jpg

?

完成設(shè)計(jì)后,我在PCBWAY的報(bào)價(jià)頁面上傳了Gerber數(shù)據(jù),選擇了紅色的阻焊層顏色,然后下單。

下訂單后,我在一周內(nèi)收到了 PCB,PCB 質(zhì)量非常好。

?

poYBAGL5ksKAYdl0AAByrojg9AA869.jpg

?

poYBAGL5ksSAYRCPAACSHmrk0EQ925.jpg

?

這種形狀是完全隨機(jī)的,所以很難制作,但他們在制作這個(gè) PCB 方面做得非常出色,沒有任何錯(cuò)誤。

?

一定要檢查一下,以更低的價(jià)格獲得出色的 PCB 服務(wù)。

?

電路板組裝

?

PCB組裝過程將具有以下步驟。

  • 錫膏點(diǎn)膠
  • 拾取和放置過程
  • 熱板回流
  • 添加剩余的 THT 組件
  • 刻錄引導(dǎo)加載程序

?

?

焊膏

pYYBAGL5ksaAVi9eAADCCF3_PuY471.jpg

?

第一步是在每個(gè)元件焊盤上涂抹焊膏。

我使用了普通的 Sn-Pb 焊膏,其熔化溫度為 140 至 270 °C。

添加錫膏后,我們進(jìn)入下一個(gè)過程,即“PICK & Place Process”

?

挑選和放置

poYBAGL5ksmAPOvbAADMVz2zReE831.jpg

?

然后,我使用 ESD Tweeaser 小心地將每個(gè) SMD 組件一個(gè)一個(gè)地挑選并放置在指定的位置,這需要大約 30 秒的時(shí)間,但結(jié)果是一個(gè)完美的 PCB,所有組件都放置在它們的位置。

?

熱板回流

pYYBAGL5ksuAZ0VPAACtnxRqSRE961.jpg

?

poYBAGL5ks2ANq19AADI0c_pIoE993.jpg

?

pYYBAGL5ks-AGXIzAACjJ08FE8w273.jpg

?

在“PICK & Place Process”之后,我小心翼翼地將整個(gè)電路板抬起并放在我的 DIY SMT Hotplate 上,它也是自制的,就像這個(gè)項(xiàng)目一樣。

幾分鐘后,當(dāng)熱板達(dá)到焊膏熔化溫度時(shí),所有組件都將通過此熱回流工藝焊接。

然后我們從熱板上取下 PCB 以冷卻所有組件和電路板表面。

?

?

然后我通過 USB 端口插入 5V 電源以檢查 HC01 是否工作,如果設(shè)置正常工作,HC01 一側(cè)的 LED 將閃爍。

?

THT 組件

?

pYYBAGL5ktKAPGl7AACaL76eJOk795.jpg

?

poYBAGL5ktSANMq9AACyMu_IB4Y124.jpg

?

最后,我們將 THT 組件添加到 PCB,它們是 Atmega 插座和接頭引腳。

完成后,我們的電路就完成了!

?

Atmega328PU 通過 Arduino 作為 ISP 燒錄引導(dǎo)加載程序

?

poYBAGL5kteAS3ZYAADCe7GQclE680.jpg

?

pYYBAGL5ktmARer4AADRD3l3Oy4233.jpg

?

現(xiàn)在,此設(shè)置使用 Atmega328PU。Atmega328PU 有一個(gè)小十六進(jìn)制文件,稱為引導(dǎo)加載程序,類似于 BIOS便宜的 atmega328PU 通常不附帶預(yù)裝的引導(dǎo)加載程序,因此我必須將引導(dǎo)加載程序刻錄到 MCU 上,為此,我使用了我之前的一個(gè)項(xiàng)目,即基于 Arduino 的 Attiny Programmer。

?

程序員是為將引導(dǎo)加載程序和 Flash 代碼刻錄到 Attiny MCU 中,使用上傳到常規(guī) Arduino Nano R3 的“Arduino as ISP Sketch”進(jìn)行一些調(diào)整(在復(fù)位和 GND 之間添加 1uf Cap)

請參閱我以前的項(xiàng)目以制作此程序員并開始使用此閃爍方法。

?

我將 Atmega328PU 的 SPI 引腳通過 Arduino Nano 的 SPI 引腳通過一個(gè)插頭插座連接在一起,并燒錄 Atmega328PU 的引導(dǎo)程序,并上傳 ULTRASONIC SENSO TEST SKETCH 用于測試 Atmega 芯片。

?

?

測試草圖#1 超聲波傳感器

?








   {
序列號(hào).開始();
pinMode(trigPin,輸出);
pinMode(echoPin,輸入);
pinMode(LED,輸出);
pinMode(led2,輸出);
pinMode(led3,輸出);

 
}

   {
,距離;
數(shù)字寫入(trigPin,低);
延遲微秒();
數(shù)字寫入(trigPin,高);
延遲微秒();
數(shù)字寫入(trigPin,低);
持續(xù)時(shí)間=脈沖輸入(回聲針,高);
距離 = (持續(xù)時(shí)間/  ) /  ;
 

(距離 <= ){
數(shù)字寫入(領(lǐng)導(dǎo),高);
 
}
{
數(shù)字寫入(領(lǐng)導(dǎo),低);
}
(距離 < ){
數(shù)字寫入(led2,高);
 
}
{
數(shù)字寫入(led2,低);
}

(距離 < ){
數(shù)字寫入(led3,高);
 
}
{
數(shù)字寫入(led3,低);
}

延遲();
}

?

poYBAGL5ktuANusrAACYVkP5jXA220.jpg

?

我將 HC-SR04 超聲波傳感器模塊添加到其分配的 Header Pin 插座中,并上傳了我制作的測試草圖。當(dāng)我們將任何東西放在它前面 30 厘米的距離處時(shí),第一個(gè) LED 會(huì)發(fā)光,通過減小其他兩個(gè) LED 發(fā)光的距離。

?

測試草圖#2 BT 終端 LED 開/關(guān)

?

垃圾;
字符串輸入字符串 =  ;


 ? ? ? ? ? ? ? ? ? ? 
{
?序列號(hào).開始();? ? ? ? ? ? 
?pinMode(,OUTPUT)也應(yīng)如此;
}


 
 {
?  (Serial.available()){
? (Serial.available())
? ? {
? ? ?  inChar = (  )Serial.read(); 
? ? ? inputString += inChar;? ? ? ? 
? ? }
? ? Serial.println(inputString);
? ? (Serial.available() >  )??
? ? {
? ? ? 垃圾 = Serial.read() ; }? ? ?
? ? }
? ?  (inputString ==  ){? ? ? ? ?  
? ? ? digitalWrite(  , HIGH);??
? ? }
? ?   (inputString ==  ){? ?  
? ? ? digitalWrite(  , LOW);
? ? }
? ? 輸入字符串 =  ;
? ? }

?

pYYBAGL5kt6AYI-1AACQhebtr4Y213.jpg

?

檢查超聲波傳感器后,我將BT測試草圖上傳到MCU并使用BT終端APP與HC01連接。

通過BT終端APP向HC01發(fā)送“on”,LED點(diǎn)亮,發(fā)送“off”將其關(guān)閉。

?

添加帶 PCB 支架的電機(jī)驅(qū)動(dòng)器

在測試板工作正常后,我繼續(xù)下一步,即使用 PCB Standoffs 將 L298N 電機(jī)驅(qū)動(dòng)器添加到主板。

?

在主板和電機(jī)驅(qū)動(dòng)器之間添加電線連接器

?

pYYBAGL5kuCAClDfAADNJnVKGYY726.jpg

?

poYBAGL5kuKAAgefAACi8QnBvEw389.jpg

?

然后我在電機(jī)控制器的 VCC GND 和 5V 以及電機(jī)驅(qū)動(dòng)器的 VCC GND 和 5V 之間添加了電線。

然后我在電機(jī)控制器的控制引腳和 Atmega328pu 的 Pwm 引腳之間添加了電線。

?

  • ENA 和 ENB 均為高電平
  • IN1 至 D6
  • IN2 至 D9
  • IN3 至 D10
  • IN4 至 D11

設(shè)置完成,現(xiàn)在我們可以將電池添加到電機(jī)驅(qū)動(dòng)器的 VCC 和 GND 端口,并將電機(jī)端子添加到電機(jī)驅(qū)動(dòng)器的連接器。

?

添加電機(jī)和電池

?

pYYBAGL5kuWADCntAADP-aHRemo703.jpg

?

poYBAGL5kueAedJPAACHS2isUo0204.jpg

?

?

最終草圖 - 測試電機(jī)

?

 motorLpin1 =  ;
 motorLpin2 =  ; 
 motorRpin1 =  ;
 motorRpin2 =  ;
LED1 =  ;
LED2 =  ;
LED3 =  ;

 
 {
序列號(hào).開始();
Serial.flush();
pinMode(motorLpin1,輸出);
pinMode(motorLpin2,輸出);
pinMode(電機(jī)Rpin1,輸出);
pinMode(電機(jī)Rpin2,輸出);
pinMode(LED1,輸出);
pinMode(LED2,輸出);
pinMode(LED3,輸出);


}

  {
字符串輸入= (Serial.available()){
輸入+=()Serial.read();
延遲();
}

(輸入== ){
馬達(dá)停止();
}
 (輸入== ){
馬達(dá)前進(jìn)();
}
 (輸入== ){
電機(jī)后退();
}
 (輸入== ){
左電機(jī)();
}
 (輸入== ){
右電機(jī)();
}
 
 }

 
 {
數(shù)字寫入(motorLpin1,HIGH);
數(shù)字寫入(motorLpin2,LOW);
數(shù)字寫入(motorRpin1,HIGH);
數(shù)字寫入(電機(jī)Rpin2,低);
數(shù)字寫入(LED1,高);
數(shù)字寫入(LED2,低);
數(shù)字寫入(LED3,低);
}

 
 {

數(shù)字寫入(motorLpin1,LOW);
數(shù)字寫入(motorLpin2,HIGH);
數(shù)字寫入(電機(jī)Rpin1,低);
數(shù)字寫入(motorRpin2,HIGH);
數(shù)字寫入(LED1,低);
數(shù)字寫入(LED2,高);
數(shù)字寫入(LED3,低);
}
 
 {
數(shù)字寫入(motorLpin1,HIGH);
數(shù)字寫入(motorLpin2,LOW);
數(shù)字寫入(電機(jī)Rpin1,低);
數(shù)字寫入(motorRpin2,HIGH);
數(shù)字寫入(LED1,低);
數(shù)字寫入(LED2,低);
數(shù)字寫入(LED3,高);
}
 
 {
 
數(shù)字寫入(motorLpin1,LOW);
數(shù)字寫入(motorLpin2,HIGH);
數(shù)字寫入(motorRpin1,HIGH);
數(shù)字寫入(電機(jī)Rpin2,低);
數(shù)字寫入(LED1,低);
數(shù)字寫入(LED2,低);
數(shù)字寫入(LED3,高);

}
 
 {

數(shù)字寫入(motorLpin1,LOW);
數(shù)字寫入(motorLpin2,LOW);
數(shù)字寫入(電機(jī)Rpin1,低);
數(shù)字寫入(電機(jī)Rpin2,低);
數(shù)字寫入(LED1,低);
數(shù)字寫入(LED2,低);
數(shù)字寫入(LED3,低);

}

?

pYYBAGL5kuqAanPwAADGmBzgCn0776.jpg

?

poYBAGL5kuyAbZKKAAB1M7JLJbI063.jpg

?

我將上面的草圖上傳到 Atmega 中,然后添加了一個(gè)帶有電機(jī)驅(qū)動(dòng)器連接器的齒輪直流電機(jī),并添加了一個(gè) 12V 電池組來為整個(gè)系統(tǒng)供電。

為了控制電機(jī),我正在使用與 HC01 模塊連接的 BT 終端應(yīng)用程序向 MCU 發(fā)送“F”表示前進(jìn),“B”表示后退。

為了停止電機(jī),我們通過 BT 端子發(fā)送“S”,電機(jī)停止旋轉(zhuǎn)。

?

下一步,做一個(gè)機(jī)器人

?

pYYBAGL5ku6AU9eEAACi2IZWjfQ336.jpg

?

此電機(jī)控制器的下一步或下一步用途將是構(gòu)建一個(gè)機(jī)器人,我目前正在設(shè)計(jì)一個(gè)將使用此控制器設(shè)置的機(jī)器人,敬請期待。

如果您喜歡機(jī)器人,請查看我以前的機(jī)器人項(xiàng)目-

?

?

?

謝謝,PCBWAY 支持這個(gè)項(xiàng)目,如果你需要更好的 PCB 服務(wù)以降低成本,請檢查它們,我很快就會(huì)帶著新項(xiàng)目回來。

和平

?

代碼


pcb ATmega328 電機(jī)驅(qū)動(dòng)板
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

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

評(píng)論

查看更多

下載排行

本周

  1. 1EMC PCB設(shè)計(jì)總結(jié)
  2. 0.33 MB   |  6次下載  |  免費(fèi)
  3. 2LLC變換器的原理特點(diǎn)與應(yīng)用領(lǐng)域
  4. 1.54 MB   |  1次下載  |  1 積分
  5. 3索尼14n 20n系列維修手冊
  6. 3.68 MB   |  次下載  |  1 積分
  7. 4晶益微 JY6166 音頻codec驅(qū)動(dòng)資料分享
  8. 0.73 MB   |  次下載  |  免費(fèi)
  9. 5晶益微 JY6311 音頻codec驅(qū)動(dòng)資料分享
  10. 0.77 MB   |  次下載  |  免費(fèi)
  11. 6英集芯 IP5518V 集成MCU 的TWS耳機(jī)充電倉管理SoC數(shù)據(jù)手冊
  12. 8.35 MB   |  次下載  |  免費(fèi)
  13. 7英集芯 IP5518 集成MCU的TWS耳機(jī)充電倉管理SoC數(shù)據(jù)手冊
  14. 7.53 MB   |  次下載  |  免費(fèi)
  15. 8英集芯 IP5518H 集成MCU的30V高耐壓TWs耳機(jī)充電倉管理S0C數(shù)據(jù)手冊
  16. 8.33 MB   |  次下載  |  免費(fèi)

本月

  1. 1EMC PCB設(shè)計(jì)總結(jié)
  2. 0.33 MB   |  6次下載  |  免費(fèi)
  3. 2耗盡型MOS FET產(chǎn)品目錄選型表
  4. 0.14 MB   |  4次下載  |  免費(fèi)
  5. 3PD取電芯片 ECP5702規(guī)格書
  6. 0.88 MB   |  4次下載  |  免費(fèi)
  7. 4氮化鎵GaN FET/GaN HEMT 功率驅(qū)動(dòng)電路選型表
  8. 0.10 MB   |  2次下載  |  免費(fèi)
  9. 52EDL05x06xx系列 600V半橋門驅(qū)動(dòng)器帶集成自舉二極管(BSD)手冊
  10. 0.69 MB   |  1次下載  |  免費(fèi)
  11. 6TI系列-米爾TI AM62L核心板開發(fā)板-高能效低功耗嵌入式平臺(tái)
  12. 1.51 MB  |  1次下載  |  免費(fèi)
  13. 7PD取電芯片,可取5/9/12/15/20V電壓ECP5702數(shù)據(jù)手冊
  14. 0.88 MB   |  1次下載  |  免費(fèi)
  15. 8飛騰FT2000-4 COM Express核心板技術(shù)手冊0603
  16. 1.22 MB  |  1次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935137次下載  |  10 積分
  3. 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
  4. 1.48MB  |  420064次下載  |  10 積分
  5. 3Altium DXP2002下載入口
  6. 未知  |  233095次下載  |  10 積分
  7. 4電路仿真軟件multisim 10.0免費(fèi)下載
  8. 340992  |  191457次下載  |  10 積分
  9. 5十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
  10. 158M  |  183360次下載  |  10 積分
  11. 6labview8.5下載
  12. 未知  |  81606次下載  |  10 積分
  13. 7Keil工具M(jìn)DK-Arm免費(fèi)下載
  14. 0.02 MB  |  73832次下載  |  10 積分
  15. 8LabVIEW 8.6下載
  16. 未知  |  65991次下載  |  10 積分