深入淺出H橋驅動電路
發布時間:2021-01-03 來源:菜刀和小麥 責任編輯:wenwei
【導讀】H橋是一個比較簡單的電路,通常它會包含四個獨立控製的開關元器件(例如MOS-FET),它們通常用於驅動電流較大的負載,比如電機,至於為什麼要叫H橋(H-Bridge),因為長得比較像字母H,具體如下圖所示;
什麼是H橋?
H橋是一個比較簡單的電路,通常它會包含四個獨立控製的開關元器件(例如MOS-FET),它們通常用於驅動電流較大的負載,比如電機,至於為什麼要叫H橋(H-Bridge),因為長得比較像字母H,具體如下圖所示;

這裏有四個開關元器件Q1,Q2,Q3,Q4,另外還有一個直流電機M,D1,D2,D3,D4是MOS-FET的續流二極管;
開關狀態
下麵以控製一個直流電機為例,對H橋的幾種開關狀態進行簡單的介紹,其中正轉和反轉是人為規定的方向,實際工程中按照實際情況進行劃分即可;
正轉
通常H橋用來驅動感性負載,這裏我們來驅動一個直流電機;
● 打開Q1和Q4;
● 關閉Q2和Q3;
此時假設電機正轉,這電流依次經過Q1,M,Q4,在圖中使用黃色線段進行標注,具體如下圖所示;

正轉
反轉
另外一種狀態則是電機反轉;此時四個開關元器件的狀態如下;
● 關閉Q1和Q4;
● 打開Q2和Q3;
此時電機反轉(與前麵介紹的情況相反),這電流依次經過Q2,M,Q3,在圖中使用黃色線段進行標注,具體如下圖所示;

反轉
調速
如果要對直流電機調速,其中的一種方案就是;
● 關閉Q2,Q3;
● 打開Q1,Q4上給它輸入50%占空比的PWM波形,這樣就達到了降低轉速的效果,如果需要增加轉速,則將輸入PWM的占空比設置為100%;
具體如下所示;

停止狀態
這裏以電機從正轉切換到停止狀態為例;
● 正轉情況下;Q1和Q4是打開狀態;
● 這時候如果關閉Q1和Q4,直(zhi)流(liu)電(dian)機(ji)內(nei)部(bu)可(ke)以(yi)等(deng)效(xiao)成(cheng)電(dian)感(gan),也(ye)就(jiu)是(shi)感(gan)性(xing)負(fu)載(zai),電(dian)流(liu)不(bu)會(hui)突(tu)變(bian),那(na)麼(me)電(dian)流(liu)將(jiang)繼(ji)續(xu)保(bao)持(chi)原(yuan)來(lai)的(de)方(fang)向(xiang)進(jin)行(xing)流(liu)動(dong),這(zhe)時(shi)候(hou)我(wo)們(men)希(xi)望(wang)電(dian)機(ji)裏(li)的(de)電(dian)流(liu)可(ke)以(yi)快(kuai)速(su)衰(shuai)減(jian);
這裏有兩種辦法:
第一種:關閉Q1和Q4,這時候電流仍然會通過反向續流二極管進行流動,此時短暫打開Q1和Q3從而達到快速衰減電流的目的;

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

應用
實際使用的時候,用分立元件製作H橋是很麻煩的,市麵上已經有很多比較常用的IC方案,比如常用的L293D、L298N、TA7257P、SN754410等。接上電源、電機,通過輸入控製信號就可以驅動電機了;
下麵是某寶上的L298N模塊,比較常見,對於新手玩家非常友好,接線也十分簡單;

L298N模塊
這個模塊有一個板載5V穩壓器,該穩壓器可使用跳線的方式進行使能。
如果電機電源電壓高達12V,我們可以啟用5V穩壓器,並且5V引腳可以用作輸出,例如給Arduino板供電。
但是,如果電動機電壓大於12V,則必須斷開跳線,因為這些電壓會損壞板載5V穩壓器。
在這種情況下,5V引腳將用作輸入,因為我們需要將其連接到5V電源,以使IC正常工作。
我們在這裏可以注意到,該IC的電壓降約為2V。因此,如果使用12V電源,則電動機端子上的電壓約為10V,這意味著我們將無法從12V直流電動機中獲得最大速度。
這裏使用Arduino為例,這是網上找的一個Demo整體的框架如下圖所示;

架構
#define enA 9
#define in1 6
#define in2 7
#define button 4
int rotDirection = 0;
int pressed = false;
void setup() {
pinMode(enA, OUTPUT);
pinMode(in1, OUTPUT);
pinMode(in2, OUTPUT);
pinMode(button, INPUT);
// Set initial rotation direction
digitalWrite(in1, LOW);
digitalWrite(in2, HIGH);
}
void loop() {
// Read potentiometer value
int potValue = analogRead(A0);
// Map the potentiometer value from 0 to 255
int pwmOutput = map(potValue, 0, 1023, 0 , 255);
// Send PWM signal to L298N Enable pin
analogWrite(enA, pwmOutput);
// Read button - Debounce
if (digitalRead(button) == true) {
pressed = !pressed;
}
while (digitalRead(button) == true);
delay(20);
// If button is pressed - change rotation direction
if (pressed == true & rotDirection == 0) {
digitalWrite(in1, HIGH);
digitalWrite(in2, LOW);
rotDirection = 1;
delay(20);
}
// If button is pressed - change rotation direction
if (pressed == false & rotDirection == 1) {
digitalWrite(in1, LOW);
digitalWrite(in2, HIGH);
rotDirection = 0;
delay(20);
}
}
簡單描述一下:首先我們需要定義程序所需的引腳和變量。
在setup()中,我們需要設置引腳模式和電機的初始旋轉方向。
在loop()中,我們先讀取電位器值,然後將從中獲得的值從0到1023變化,線性映射到PWM信號的0到255的值,將其從0到100%的占空比。
然後使用analogWrite()函數將PWM信號發送到L298N板的Enable引腳,該引腳實際上驅動電動機。
接下來,我們檢查是否按下了按鈕,如果是的話,我們將輸入1和輸入2的狀態反置,從而改變電動機的旋轉方向。該按鈕將用作切換按鈕,每次按下該按鈕都會改變電動機的旋轉方向。
某寶上這種小車很多,如下圖所示;主控可以換成51單片機或者STM32,當然Arduino也沒問題,使用L298N就可以快速搭建一個小車了;

某寶的小車
總結
本文簡單介紹了H橋的原理,並以直流電機為例簡單介紹了驅動的狀態,整體比較簡單,適合新手玩家,最後給出了基於Arduino和L298N的驅動示例,僅供參考。
以下文章來源於小麥大叔 ,作者菜刀和小麥
免責聲明:本文為轉載文章,轉載此文目的在於傳遞更多信息,版權歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權問題,請聯係小編進行處理。
推薦閱讀:
特別推薦
- 噪聲中提取真值!瑞盟科技推出MSA2240電流檢測芯片賦能多元高端測量場景
- 10MHz高頻運行!氮矽科技發布集成驅動GaN芯片,助力電源能效再攀新高
- 失真度僅0.002%!力芯微推出超低內阻、超低失真4PST模擬開關
- 一“芯”雙電!聖邦微電子發布雙輸出電源芯片,簡化AFE與音頻設計
- 一機適配萬端:金升陽推出1200W可編程電源,賦能高端裝備製造
技術文章更多>>
- 一秒檢測,成本降至萬分之一,光引科技把幾十萬的台式光譜儀“搬”到了手腕上
- AI服務器電源機櫃Power Rack HVDC MW級測試方案
- 突破工藝邊界,奎芯科技LPDDR5X IP矽驗證通過,速率達9600Mbps
- 通過直接、準確、自動測量超低範圍的氯殘留來推動反滲透膜保護
- 從技術研發到規模量產:恩智浦第三代成像雷達平台,賦能下一代自動駕駛!
技術白皮書下載更多>>
- 車規與基於V2X的車輛協同主動避撞技術展望
- 數字隔離助力新能源汽車安全隔離的新挑戰
- 汽車模塊拋負載的解決方案
- 車用連接器的安全創新應用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門搜索
按鈕開關
白色家電
保護器件
保險絲管
北鬥定位
北高智
貝能科技
背板連接器
背光器件
編碼器型號
便攜產品
便攜醫療
變容二極管
變壓器
檳城電子
並網
撥動開關
玻璃釉電容
剝線機
薄膜電容
薄膜電阻
薄膜開關
捕魚器
步進電機
測力傳感器
測試測量
測試設備
拆解
場效應管
超霸科技



