一份很用心的H橋驅(qū)動掃盲教程_第1頁
一份很用心的H橋驅(qū)動掃盲教程_第2頁
一份很用心的H橋驅(qū)動掃盲教程_第3頁
一份很用心的H橋驅(qū)動掃盲教程_第4頁
一份很用心的H橋驅(qū)動掃盲教程_第5頁
已閱讀5頁,還剩6頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

一份很用心的H橋驅(qū)動掃盲教程什么是H橋?H橋是一個比較簡單的電路,通常它會包含四個獨(dú)立控制的開關(guān)元器件(例如MOS-FET),它們通常用于驅(qū)動電流較大的負(fù)載,比如電機(jī),至于為什么要叫H橋(H-Bridge),因為長得比較像字母H,具體如下圖所示;這里有四個開關(guān)元器件Q1,Q2,Q3,Q4,另外還有一個直流電機(jī)M,D1,D2,D3,D4是MOS-FET的續(xù)流二極管;開關(guān)狀態(tài)下面以控制一個直流電機(jī)為例,對H橋的幾種開關(guān)狀態(tài)進(jìn)行簡單的介紹,其中正轉(zhuǎn)和反轉(zhuǎn)是人為規(guī)定的方向,實際工程中按照實際情況進(jìn)行劃分即可;正轉(zhuǎn)通常H橋用來驅(qū)動感性負(fù)載,這里我們來驅(qū)動一個直流電機(jī);打開Q1和Q4;關(guān)閉Q2和Q3;此時假設(shè)電機(jī)正轉(zhuǎn),這電流依次經(jīng)過Q1,M,Q4,在圖中使用黃色線段進(jìn)行標(biāo)注,具體如下圖所示;正轉(zhuǎn)反轉(zhuǎn)另外一種狀態(tài)則是電機(jī)反轉(zhuǎn);此時四個開關(guān)元器件的狀態(tài)如下;關(guān)閉Q1和Q4;打開Q2和Q3;此時電機(jī)反轉(zhuǎn)(與前面介紹的情況相反),這電流依次經(jīng)過Q2,M,Q3,在圖中使用黃色線段進(jìn)行標(biāo)注,具體如下圖所示;反轉(zhuǎn)調(diào)速如果要對直流電機(jī)調(diào)速,其中的一種方案就是;關(guān)閉Q2,Q3;打開Q1,Q4上給它輸入50%占空比的PWM波形,這樣就達(dá)到了降低轉(zhuǎn)速的效果,如果需要增加轉(zhuǎn)速,則將輸入PWM的占空比設(shè)置為100%;具體如下所示;停止?fàn)顟B(tài)這里以電機(jī)從正轉(zhuǎn)切換到停止?fàn)顟B(tài)為例;正轉(zhuǎn)情況下;Q1和Q4是打開狀態(tài);這時候如果關(guān)閉Q1和Q4,直流電機(jī)內(nèi)部可以等效成電感,也就是感性負(fù)載,電流不會突變,那么電流將繼續(xù)保持原來的方向進(jìn)行流動,這時候我們希望電機(jī)里的電流可以快速衰減;這里有兩種辦法:第一種:關(guān)閉Q1和Q4,這時候電流仍然會通過反向續(xù)流二極管進(jìn)行流動,此時短暫打開Q1和Q3從而達(dá)到快速衰減電流的目的;第二種:準(zhǔn)備停止的時候,關(guān)閉Q1,打開Q2,這時候電流并不會衰減地很快,電流循環(huán)在Q2,M,Q4之間流動,通過MOS-FET的內(nèi)阻將電能消耗掉;應(yīng)用實際使用的時候,用分立元件制作H橋是很麻煩的,市面上已經(jīng)有很多比較常用的IC方案,比如常用的L293D、L298N、TA7257P、SN754410等。接上電源、電機(jī),通過輸入控制信號就可以驅(qū)動電機(jī)了;下面是某寶上的L298N模塊,比較常見,對于新手玩家非常友好,接線也十分簡單;L298N模塊這個模塊有一個板載5V穩(wěn)壓器,該穩(wěn)壓器可使用跳線的方式進(jìn)行使能。如果電機(jī)電源電壓高達(dá)12V,我們可以啟用5V穩(wěn)壓器,并且5V引腳可以用作輸出,例如給Arduino板供電。但是,如果電動機(jī)電壓大于12V,則必須斷開跳線,因為這些電壓會損壞板載5V穩(wěn)壓器。在這種情況下,5V引腳將用作輸入,因為我們需要將其連接到5V電源,以使IC正常工作。我們在這里可以注意到,該IC的電壓降約為2V。因此,如果使用12V電源,則電動機(jī)端子上的電壓約為10V,這意味著我們將無法從12V直流電動機(jī)中獲得最大速度。這里使用Arduino為例,這是網(wǎng)上找的一個Demo整體的框架如下圖所示;架構(gòu)#defineenA9#definein16#definein27#definebutton4introtDirection=0;intpressed=false;voidsetup(){pinMode(enA,OUTPUT);pinMode(in1,OUTPUT);pinMode(in2,OUTPUT);pinMode(button,INPUT);//SetinitialrotationdirectiondigitalWrite(in1,LOW);digitalWrite(in2,HIGH);}voidloop(){//ReadpotentiometervalueintpotValue=analogRead(A0);//Mapthepotentiometervaluefrom0to255intpwmOutput=map(potValue,0,1023,0,255);//SendPWMsignaltoL298NEnablepinanalogWrite(enA,pwmOutput);//Readbutton-Debounceif(digitalRead(button)==true){pressed=!pressed;}while(digitalRead(button)==true);delay(20);//Ifbuttonispressed-changerotationdirectionif(pressed==true&rotDirection==0){digitalWrite(in1,HIGH);digitalWrite(in2,LOW);rotDirection=1;delay(20);}//Ifbuttonispressed-changerotationdirectionif(pressed==false&rotDirection==1){digitalWrite(in1,LOW);digitalWrite(in2,HIGH);rotDirection=0;delay(20);}}簡單描述一下:首先我們需要定義程序所需的引腳和變量。在setup()中,我們需要設(shè)置引腳模式和電機(jī)的初始旋轉(zhuǎn)方向。在loop()中,我們先讀取電位器值,然后將從中獲得的值從0到1023變化,線性映射到PWM信號的0到255的值,將其從0到100%的占空比。然后使用analogWrite()函數(shù)將PWM信號發(fā)送到L298N板的Enable引腳,該引腳實際上驅(qū)動電動機(jī)。接下來,我們檢查是否按下了按鈕,如果是的話,我們將輸入1和

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論