標(biāo)題: Arduino學(xué)習(xí)7-Arduino 輸出引腳擴(kuò)流 [打印本頁]

作者: 51黑學(xué)者    時(shí)間: 2016-4-14 03:23
標(biāo)題: Arduino學(xué)習(xí)7-Arduino 輸出引腳擴(kuò)流
使用Arduino時(shí)候,經(jīng)常需要控制大電流或者高壓負(fù)載。但是Arduino只有最大5v,20mA的引腳輸出。必須要通過擴(kuò)流電路。擴(kuò)流的方法有很多。下面介紹幾種方法,適合在不同場合下面使用。

注意:下述電路圖的負(fù)載均用電阻符號(hào)代替,符號(hào)標(biāo)志是電子學(xué)的負(fù)載符號(hào)RL,就是R(load)的意思。

1、小功率NPN三極管擴(kuò)流(適用于擴(kuò)展后負(fù)載電壓5v以下,負(fù)載電流建議<1A)。

Arduino輸出引腳直接連電阻驅(qū)動(dòng)三極管基極。



復(fù)雜度:★★☆☆☆;成本:★☆☆☆☆;可擴(kuò)流倍數(shù):★☆☆☆☆;
優(yōu)點(diǎn):簡單方便,成本低。開關(guān)頻率上限直接由三極管決定,可以做的很高;
缺點(diǎn):受控大電流和Arduino直接連通,所以外置驅(qū)動(dòng)電源不建議超過5v,以免外置電源的電壓通過Q1倒灌到Arduino引腳引起Arduino燒壞。
選材:三極管Q1可以選用小功率的NPN三極管。推薦型號(hào)有2SC1815,2N2222,8050,2SD882等(點(diǎn)元件名看對(duì)應(yīng)數(shù)據(jù)手冊(cè),下同);基極電阻R1必不可少,否則會(huì)導(dǎo)致Arduino因?yàn)橐_負(fù)載過大而發(fā)熱甚至燒毀。R1阻值在100Ω~10k之間均可,推薦值1kΩ。所有電阻功率無要求,貼片0805以上,直插1/8w以上的就行,以下所有電路均使用這種電阻規(guī)格。

2、固態(tài)繼電器(光耦)擴(kuò)流(適用于220V交流直接控制,或者大功率直流控制,建議用于負(fù)載電流0.2A~40A間)

使用現(xiàn)成的固態(tài)繼電器可以很方便的被Arduino控制。對(duì)于Arduino來說,驅(qū)動(dòng)固態(tài)繼電器就像驅(qū)動(dòng)一個(gè)LED那么簡單。


直流控制直流

直流控制交流

復(fù)雜度:★☆☆☆☆;成本:★★★★★;可擴(kuò)流倍數(shù):★★★★★;
優(yōu)點(diǎn):使用最簡單,抗干擾能力最強(qiáng),無電磁干擾?梢钥刂平涣麟/直流電,并且可以控制很大電流的負(fù)載。
缺點(diǎn):成本很高
選材:注意的是,固態(tài)繼電器有兩種:直流控制交流固態(tài)繼電器/直流控制直流固態(tài)繼電器。它們的受控端有本質(zhì)的區(qū)別,不能混用。直流控交流的交流是用可控硅進(jìn)行開關(guān)的,而直流控直流用的是三極管或者場效應(yīng)管進(jìn)行開關(guān)。下面會(huì)對(duì)兩種繼電器仿制進(jìn)行介紹的(見3)。

3、帶光耦隔離NPN三極管擴(kuò)流(適用于大范圍負(fù)載電壓,建議用于負(fù)載電流1A~5A間)

通過光耦加擴(kuò)流做出一個(gè)控制/受控隔離的直流控制器。完全等效于直流固態(tài)繼電器。



復(fù)雜度:★★★★☆;成本:★★☆☆☆;可擴(kuò)流倍數(shù):★★★★★;
優(yōu)點(diǎn):控制電流小,等效于驅(qū)動(dòng)一只LED。受控大電流和Arduino控制板完全電氣隔離,即使受控部分發(fā)生事故燒毀了,也不會(huì)影響到Arduino主板。
缺點(diǎn):電路比直接擴(kuò)流復(fù)雜,成本稍高。
選材:三極管可以選擇2SD882,2SD669A,TIP122(5A達(dá)林頓管)等。光耦使用PC817等廉價(jià)光耦即可。

4、繼電器擴(kuò)流(適用于低速,對(duì)受控端開關(guān)電阻有要求的場合,建議用于負(fù)載電流0~3A間)

用一個(gè)小功率三極管擴(kuò)流,然后控制一個(gè)5v的繼電器。



復(fù)雜度:★★★★☆;成本:★★★☆☆;可擴(kuò)流倍數(shù):★★★★★;
優(yōu)點(diǎn):擴(kuò)流電流大,并且由于繼電器是機(jī)械閉合觸點(diǎn),閉合電阻基本為零,不像固態(tài)繼電器或者三極管,有正向壓降;適用于對(duì)閉合電阻要求高的場合,比如受控端是開關(guān)0~0.7v的信號(hào)。使用三極管或者固態(tài)繼電器就不能工作了,只能使用繼電器。
缺點(diǎn):低速,每秒最快只能開關(guān)幾次;機(jī)械開關(guān)使用壽命短,開關(guān)頻率高的話,很快就會(huì)壞掉。成本高,電路也不簡單;開關(guān)電流大,需要充足的電源供給繼電器吸合。有較強(qiáng)的空間電磁干擾(EMI),會(huì)對(duì)高速數(shù)字電路(USB,串口,視頻等)或者小信號(hào)模擬電路(音頻信號(hào)線,儀器測量輸入線)造成干擾。必須做好屏蔽措施;并且繼電器斷開時(shí)候會(huì)產(chǎn)生反向高壓,必須處理反壓。
選材:繼電器必須選用5v控制的,因?yàn)锳rduino只有5v。并且繼電器吸合電流必須小于200mA,不能影響Arduino使其工作電壓不穩(wěn)。如果不能滿足的話,可以嘗試?yán)^電器級(jí)聯(lián),即小繼電器拖動(dòng)大繼電器。

5、場效應(yīng)管擴(kuò)流(適用于大負(fù)載直流電流,建議用于負(fù)載電流5A~100A間)

用場效應(yīng)管代替三極管擴(kuò)流。由于場效應(yīng)管屬于電壓控制型器件,輸入電流極小。與三極管擴(kuò)流相比,可以獲得更快的開關(guān)速度和更小的輸入電流,并且可以控制很大的直流電流(比如10~50A)。用Arduino驅(qū)動(dòng)的話。驅(qū)動(dòng)電路跟1、3幾乎一樣,只是換了場管。



復(fù)雜度:★★★★☆;成本:★★★★☆;可擴(kuò)流倍數(shù):★★★★★;

優(yōu)點(diǎn):控制電流小,等效于驅(qū)動(dòng)一只LED。受控大電流和Arduino控制板完全電氣隔離,即使受控部分發(fā)生事故燒毀了,也不會(huì)影響到Arduino主板。有最高的控制速度,并且電流也可以做的非常大。
缺點(diǎn):電路比較復(fù)雜,場效應(yīng)管成本比三極管更高。
選材:場效應(yīng)管可以使用普通的N溝道增強(qiáng)型場效應(yīng)管(N-Channel Enhancement Mode Field Effect Transistor)。筆者用過的型號(hào)有:CEP80N75(75V,80A,75W),IXGQ240N30P(IGBT管,240A,300V,500W),IRF630(9A,200V,75W)等。

作者: 51黑學(xué)者    時(shí)間: 2016-4-14 03:24
剛好做一個(gè)電路用到NPN 8050管驅(qū)動(dòng)一個(gè)5V繼電器,用ATMEA8L,一共5個(gè)繼電器分別在9~13開關(guān)口,高電平有效。
上電瞬間 發(fā)現(xiàn)13口的繼電器總要狂跳幾次,其它口的繼電器卻不會(huì)亂跳,很奇怪,修改代碼和對(duì)調(diào)開關(guān)口無果,三極管B極接下拉電阻也不行,最后在B極接一個(gè)10uF電容到地還是不行,最后一抓狂,上個(gè)220uF, 居然天下太平了。
百度了下,發(fā)現(xiàn)這個(gè)問題比較多,主要是單片機(jī)上電瞬間,各IO口的狀態(tài)不穩(wěn)定,解決方法也有很多種,加個(gè)電解電容就可以吸收IO口突變的電平,各位可以參考。
作者: 51黑學(xué)者    時(shí)間: 2016-4-14 03:25
如果需要許多輸出可以使用ULN2803或者ULN2003,每個(gè)輸出最大電流是500ma。
ULN2803是8通道
ULN2003是7通道,比ULN2803便宜許多


一個(gè)ULN2803連接Arduino例子:

作者: ashdood    時(shí)間: 2017-10-23 10:24
這個(gè)帖子不錯(cuò),正好需要這樣的擴(kuò)流電路做參考,贊一個(gè)




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1