經過了上次的失敗后,我又重新設計了電路,選取了一些合適的器件來改進我的這塊板子,我之前總結了我的第一版電路的一些問題,我會在這一版的設計中來完善它。。。
首先放上我之前的問題:
1.電源以及動力線的寬度不夠,可能導致電流大時候燒毀,需要重新設定線寬
2.AO3400封裝錯誤
3.5V輸出焊盤沒有線連接
4.555芯片復位電路需要下拉電阻
5.經過多個考慮,還是想取消使用mos管驅動的方案,改為使用驅動芯片的方案
6.對于這個板子,輸入電壓可以從0.9V一直到12V,但是是需要從兩個接口輸入,并且經過兩個電路去升壓和降壓,容易發生接錯的問題,于是考慮更換升降壓電路,改為從一個接口輸入寬電壓的方案
7.同時,為了適應寬電壓的輸入,我還需要重新設計電壓采樣電路
一共有七條問題,在這一次的設計中我會一個一個來解決。
第一部分
1.關于寬電壓輸入的電源方案改進
第一次設計的電路是分成兩個部分來進行的,一路5V升壓電路一路5V降壓電路,這樣導致了整個電路的電壓輸入端口有兩個,一個只支持低于5V的電壓輸入,一個只支持高于5V的電壓輸入,這樣就導致了很多問題:
>兩路電源電路占據了大量的版面空間,導致其他元件的擺放受到很大影響
>兩路電源輸入接口容易混淆,容易造成燒壞電路板現象發生
>讓整個電路板的功耗增加
介于這三個問題的存在,我給出了兩種解決方案,這兩種方案都將原來的兩個輸入口合二為一,希望大家予以借鑒
一、采用BUCK-BOOS電源芯片的自動升降壓電路
首先為大家講解一下什么是buck-boost,顧名思義buck意思為降壓,boost意思為升壓,和我們常見的降壓或者升壓芯片不同,這種電源芯片將升壓電路和降壓電路合二為一,集成在一個芯片中,而且可以在升壓模式和降壓模式之間自動切換,可以達到對于寬范圍電壓輸入,給出穩定電壓輸出的要求,十分適合我的要求。對于自動升降壓的原理可以自行去百度搜索一下斬波電路,里面有很詳細的講解。這里我選擇的是來自德州儀器的TPS63060芯片。
下面給出它的數據表:
2345截圖20181203213113.jpg (48.8 KB, 下載次數: 105)
下載附件
2018-12-6 21:33 上傳
可以看出最大輸出電流超過1A,足夠我的使用,而且支持2.5V到12V的輸入電壓,非常適合我的項目,所以我就決定使用它了!
電路的設計我在這款芯片的數據手冊里面找到了如下的典型電路,我直接使用這個電路即可,下面是電路圖:
2345截圖20181203213604.jpg (15.98 KB, 下載次數: 99)
下載附件
2018-12-6 21:33 上傳
對于這個電路我簡單的講解一下外圍元件的功能,電壓輸入首先經過2個10uf的濾波電容,進入到芯片中,然后經過內部斬波電路,從out口輸出,輸出端通過兩個電阻分壓形成反饋電壓,從FB口進入,同時輸出電壓給Power Good端口提供上拉,最后經過3個22uf濾波電容輸出。電感L1給斬波電路提供了儲能,所以會通過大電流,這點在布線的時候注意留出足夠的線寬。
二、采用ME6210A33的降壓電路
查詢Atmega328手冊,發現Atmega328同樣可以在3.3V電壓下運行,而我供電使用的鋰電池最低電壓是咋3.7V左右,所以完全可以使用一個低壓差線性穩壓器為整個電路提供電源,由于我使用的無線模塊NRF24L01同樣是工作在3.3V電壓的,所以這一舉動可以將原來的三個電源IC縮減到一個,這會省下很多的空間以及價格。故我開始尋找合適的穩壓芯片。對于這款穩壓芯片,我需要壓差非常小的穩壓IC,而且同樣需要可以兼容我的大電壓輸出(12V),所以一番尋找過后,我選擇了ME6210A33這款,下面是數據表:
2345截圖20181203215030.jpg (30.87 KB, 下載次數: 94)
下載附件
2018-12-6 21:33 上傳
可以看出在200ma的輸出電流環境下,輸入與輸出之間的壓差只有260mv,這個參數完全可以達到我的要求,而且最大輸出電流可以達到500ma,雖說沒有TPS63060的輸出電流大,但是也是足夠我使用的,而且最主要的是ME6210A33的外圍電路簡單,故我將選擇這個芯片方案,我在這款芯片的數據手冊里面找到了典型電路,我將直接使用它:
2345截圖20181203215433.jpg (5.75 KB, 下載次數: 107)
下載附件
2018-12-6 21:34 上傳
整個電路非常簡單,外圍電路只需要兩個濾波電容即可。
到這里,電源電路的改進就結束了。
2.電壓采樣電路
由于需要采集寬范圍的電壓(3.7-12V),最大電壓超出單片機所能夠承受的電壓了,我不能直接將Atmega328的模擬輸入引腳連接到電壓輸入上,所以我需要設計一個分壓電路,電路圖如下:
2345截圖20181203220022.jpg (15.99 KB, 下載次數: 115)
下載附件
2018-12-6 21:34 上傳
由于使用3.3V給單片機供電的緣故,單片機內置ADC的參考電壓引腳也為3.3V,所以導致我需要一個能將最大電壓12V分壓到3.3V以下的電路,綜合了常用電阻值和電壓檢測的精度之后,我選擇了150k和50k作為分壓電阻,因此根據電阻分壓公式,R11上的電壓等于BAT端電壓的四分之一,因此當A0引腳讀到電壓數據之后,將值乘以4即可計算出輸入電壓。所以在A0腳的最大電壓為12/4=3V左右,剛好適合單片機的ADC轉換使用。
3.電機驅動的改進
第一次設計的mos管驅動電路,我將mos管買回來之后發現一接上電機就燒掉了,到現在一直沒有找出是什么原因,所以不得已選擇用集成驅動IC驅動電機。市場上電機驅動IC實在太多了,我需要挑選出滿足我的要求的:
輸入電壓一定要寬范圍
每一路的驅動電流要足夠
外圍電路盡量簡單
需要的輸入引腳盡可能少
選來選去,我看中了LG的L9110s,這是一款單路電機驅動芯片,而且外圍電路簡單,僅僅需要兩個引腳就可以控制電機調速以及正反轉以及剎車,最大電流800ma,足夠我的使用了,下面放出典型的電路圖:
2345截圖20181203221445.jpg (23.89 KB, 下載次數: 98)
下載附件
2018-12-6 21:34 上傳
需要大家注意的是,這類驅動IC一般都內置功率型NMOS管以及續流二極管,無需外接續流二極管,所以建議大家在驅動電機的時候盡量選擇這類驅動IC,可以省略很多外圍器件。
至此元器件的問題都解決了,下面是PCB布線上的問題解決。
4.關于555芯片復位電路的下拉電阻
上一次做的555芯片沒有接下拉電阻導致Reset引腳的電位不穩定,導致上電之后蜂鳴器不受單片機控制的問題。于是我添加下拉電阻來穩定555芯片Reset引腳的電位,由于我的555芯片是低電平復位的,所以我添加了47K的下拉電阻,這樣保證了555默認情況下為復位狀態,不會有輸出,而當單片機引腳給出高電平時,電阻上方為高電平信號,使能555芯片從而讓蜂鳴器發聲。
第二部分
由于我更換了新的電源電路以及驅動IC,所以我的PCB電路需要重新編排各個元件的位置以及重新布線,為了盡可能的考慮到各個器件的最佳工作環境以及最佳工作狀態,我采用手動布線去有針對性的考慮各個器件的問題。
由于采用集成IC驅動電機,而且有三路,所以我將板子右端部分留給電機驅動芯片,并將關鍵的高頻信號線(連接NRF24l01的SPI總線)以及預留的SPI接口全部放在離驅動芯片最遠的左邊區域,這樣可以減少電機驅動等大電流的器件所帶來的干擾。我將晶振也從原來靠近電源芯片旁邊挪到了左下方,保證晶振電路的穩定。對于蜂鳴器和電源降壓模塊,我將他們放到了板子的上方。一番調整后,器件的位置大體定下來了。
2345截圖20181204205046.jpg (68.96 KB, 下載次數: 122)
下載附件
2018-12-6 21:35 上傳
我這一次會尤其注意導線的線寬,留出足夠的富裕保證線路的可靠。一般的,EDA軟件中計算長度都會使用mil單位,具體換算的話是1mil=0.0254mm
根據經驗值,當銅箔為1oz厚時,0.4mm寬的導線大概可以通過1A的電流,換算成mil單位就是16mil,所以對于我的這個驅動芯片,最大電流為800ma,我將為電機驅動的線寬設計為40mil,留出超過兩倍的富裕,保證穩定的使用。
對于高頻信號和低頻信號一定要分開布線,盡量避免多跟信號線長距離并行布線,這樣會造成很大的干擾。
因為我的板子是兩層板,所以沒有內置的電源層和地線層,所以我將空白的區域全部鋪銅并且和地線連接在一起,并且使用過孔將正反兩面的地線連接在一起,我在元器件周圍設置了許多過孔去連接兩側地線,保證每個元件都有最近的接地處理。
同時注意濾波電容的布置位置,對于單片機以及L9110芯片的電源濾波電容,一定 要將電容靠近IC芯片放置以起到最好的效果,經過鋪銅后的效果如下:
2345截圖20181204210010.jpg (75.59 KB, 下載次數: 98)
下載附件
2018-12-6 21:35 上傳
2345截圖20181204210021.jpg (62.86 KB, 下載次數: 99)
下載附件
2018-12-6 21:35 上傳
所以呢全部的部分都做完了,我已經將PCB文件發送給工廠加工,經過幾天的等待之后,收到了寄回來的板子:
微信圖片_20181206210430.jpg (237.09 KB, 下載次數: 85)
下載附件
2018-12-6 21:36 上傳
微信圖片_20181206210442.jpg (241.03 KB, 下載次數: 106)
下載附件
2018-12-6 21:36 上傳
這一次呢只做了5塊,因為我擔心會出現一些意想不到的問題,所以先少做一點實驗一下。收到了板子之后我檢查了版面,發現沒有看出明顯的問題,所以我將元器件一一焊接上,具體的焊接教程可以參考上一篇帖子,里面有詳細的講解,經過一番焊接,我完成了,效果如圖:(注:蜂鳴器我沒有焊接,電機驅動我也只焊接了一塊,只用來做實驗用,后續的成品板子我會全部焊接上)
微信圖片_20181206210445.jpg (258.72 KB, 下載次數: 118)
下載附件
2018-12-6 21:36 上傳
微信圖片_20181206210449.jpg (251.59 KB, 下載次數: 103)
下載附件
2018-12-6 21:36 上傳
微信圖片_20181206210452.jpg (244.34 KB, 下載次數: 107)
下載附件
2018-12-6 21:36 上傳
焊接完成之后就是給芯片燒寫bootloader了,我使用一片Arduino nano當作燒寫器,給這一塊燒寫bootloader,具體的燒寫方法論壇里有很多教程,我在這就不詳述了,燒寫好了之后,這一塊板子就可以使用了!我經過一番測量,發現所有的元件工作良好,電機驅動也可以正常工作,第一次設計出現的問題基本上得到解決,不過唯一的缺憾是這塊板子沒有5V電壓輸出,所以我們后續測試的時候只能采用3.3V的設備了。
在設計這塊板子中,我遇到了很多困難,也學習到了很多知識以及掌握了很多經驗,這將近一個月以來,我不斷的完善我的設計,同時又在焊接測試中發現問題,我從中學會了很多技巧也獲得了很多經驗,所謂在實踐中學習吧。希望各位也可以從我的經驗中得到一些啟發,對于我的這個設計,我相信還有許多不足的地方,希望有經驗的大神可以在我的基礎上改進,做出功能最強,體積最小的Arduino集成板。我在這里放上我的設計文件,希望大家下載學習,謝謝。
我重新列舉一下此板的特點:
1.3路電機驅動(2路雙向,1路單向,最大電流800ma每一路)
2.2路3.3V電源接口引出
3.一路3.7V-12V電壓輸入
4.板載電源電壓檢測電路
5.一路蜂鳴器報警電路
6.一個NRF24L01接口
7.一個串口(用作下載程序)
8.4路模擬量輸入接口
9.一路SPI總線接口
10.預留arduino數字2,3,5,6,9口用作外部輸入輸出
11一路舵機接口(新增加的)
對于板載USB口的設想,我最近正在學習USB轉串口的電路,會在以后的版本中增加USB轉ttl芯片,這樣就可以不再外接USB轉ttl模塊給板子燒寫程序了,初步決定使用CH340的方案,我會在以后的版本中更新,希望大家持續關注。
到這里所有的制作Arduino最小集成板的過程就結束了,謝謝大家的瀏覽,如果你也想自己制作Arduino的最小系統板,或者遇到什么問題,歡迎來咨詢我。也可以加我的QQ:2877137721來咨詢。謝謝大家。
(PS:既這塊板子完成之后,我會開始著手設計與之配套的遙控器電路,同樣采用NRF24l01的無線通訊方案,如有想了解的同學請繼續關注我,謝謝)
0.png (41.56 KB, 下載次數: 83)
下載附件
2018-12-6 22:47 上傳
全部資料51hei下載地址:
自制最小板資料.zip
(238.32 KB, 下載次數: 79)
2018-12-6 21:36 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
|