愛伊米

乾貨|一份很用心的H橋驅動掃盲教程

什麼是H橋?

H橋是一個比較簡單的電路,通常它會包含四個獨立控制的開關元器件(例如

MOS-FET

),它們通常用於驅動電流較大的負載,比如電機,至於為什麼要叫H橋(H-Bridge),因為長得比較像

字母H

,具體如下圖所示;

乾貨|一份很用心的H橋驅動掃盲教程

這裡有四個開關元器件,,,,另外還有一個直流電機M,,,,是MOS-FET的續流二極體;

開關狀態

下面以控制一個直流電機為例,對H橋的幾種開關狀態進行簡單的介紹,其中正轉和反轉是人為規定的方向,實際工程中按照實際情況進行劃分即可;

正轉

通常H橋用來驅動感性負載,這裡我們來驅動一個直流電機;

開啟和;

關閉和;

此時假設電機正轉,這電流依次經過,,,在圖中使用黃色線段進行標註,具體如下圖所示;

乾貨|一份很用心的H橋驅動掃盲教程

正轉

反轉

另外一種狀態則是電機反轉;此時四個開關元器件的狀態如下;

關閉和;

開啟和;

此時電機反轉(與前面介紹的情況相反),這電流依次經過,,,在圖中使用黃色線段進行標註,具體如下圖所示;

乾貨|一份很用心的H橋驅動掃盲教程

反轉

調速

如果要對直流電機調速,其中的一種方案就是;

關閉,;

開啟,上給它輸入佔空比的PWM波形,這樣就達到了降低轉速的效果,如果需要增加轉速,則將輸入PWM的佔空比設定為100%;

具體如下所示;

乾貨|一份很用心的H橋驅動掃盲教程

停止狀態

這裡以電機從正轉切換到停止狀態為例;

正轉情況下;和是開啟狀態;

這時候如果關閉和,直流電機內部可以

等效成電感,也就是感性負載,電流不會突變

,那麼電流將繼續保持原來的方向進行流動,這時候我們希望電機裡的電流可以快速衰減;

這裡有兩種辦法:

第一種:關閉和,這時候電流仍然會透過反向續流二極體進行流動,此時短暫開啟和從而達到快速衰減電流的目的;

乾貨|一份很用心的H橋驅動掃盲教程

第二種:準備停止的時候,關閉,開啟,這時候電流並不會衰減地很快,電流迴圈在Q2,M,Q4之間流動,透過MOS-FET的內阻將電能消耗掉;

乾貨|一份很用心的H橋驅動掃盲教程

應用

實際使用的時候,用分立元件製作H橋是很麻煩的,市面上已經有很多比較常用的IC方案,比如常用的L293D、L298N、TA7257P、SN754410等。接上電源、電機,透過輸入控制訊號就可以驅動電機了;

下面是某寶上的L298N模組,比較常見,對於新手玩家非常友好,接線也十分簡單;

乾貨|一份很用心的H橋驅動掃盲教程

L298N模組

這個模組有一個板載5V穩壓器,該穩壓器可使用跳線的方式進行使能。

如果電機電源電壓高達12V,我們可以啟用5V穩壓器,並且5V引腳可以用作輸出,例如給Arduino板供電。

但是,如果電動機電壓大於12V,則必須斷開跳線,因為這些電壓會損壞板載5V穩壓器。

在這種情況下,5V引腳將用作輸入,因為我們需要將其連線到5V電源,以使IC正常工作。

我們在這裡可以注意到,該IC的電壓降約為2V。因此,如果使用12V電源,則電動機端子上的電壓約為10V,這意味著我們將無法從12V直流電動機中獲得最大速度。

這裡使用為例,這是網上找的一個Demo整體的框架如下圖所示;

乾貨|一份很用心的H橋驅動掃盲教程

架構

簡單描述一下:首先我們需要定義程式所需的引腳和變數。

在中,我們需要設定引腳模式和電機的初始旋轉方向。

在中,我們先讀取電位器值,然後將從中獲得的值從0到1023變化,線性對映到PWM訊號的0到255的值,將其從0到100%的佔空比。

然後使用函式將PWM訊號傳送到L298N板的Enable引腳,該引腳實際上驅動電動機。

接下來,我們檢查是否按下了按鈕,如果是的話,我們將輸入1和輸入2的狀態反置,從而改變電動機的旋轉方向。該按鈕將用作切換按鈕,每次按下該按鈕都會改變電動機的旋轉方向。

某寶上這種小車很多,如下圖所示;主控可以換成51微控制器或者STM32,當然Arduino也沒問題,使用L298N就可以快速搭建一個小車了;

乾貨|一份很用心的H橋驅動掃盲教程

某寶的小車

總結

本文簡單介紹了H橋的原理,並以直流電機為例簡單介紹了驅動的狀態,整體比較簡單,適合新手玩家,最後給出了基於Arduino和L298N的驅動示例,僅供參考。