12.23 微型直流電機驅動電路設計

微型直流電機的應用廣泛已經講過很多了,在實際的應用中,要微型電機實現控制應用,驅動電路的設計非常重要,下面為大家介紹直流電機的驅動電路設計。


首先我們要了解直流電機的結構(以前有寫過此類文章,這裡簡單介紹),直流電機是由定子與轉子兩個部分組成,如圖所示。


微型直流電機驅動電路設計

圖中的主磁極的作用是產生磁場;換向的作用改善換向作用(減小微型電機運行時電刷和換向器可能會產生換向火花);電刷則是用來引入或導出直流電壓的直流電流;鐵芯是主磁的主要部分,用來嵌放電樞繞組。


微型直流電機驅動電路設計

微型直流電機驅動電路設計中,要考慮以下幾個因素:


1. 直流電機的功能,是否需要調速?直流電機是單向轉動還是雙向轉動?如果是單向轉動的話,只需要用三極管或繼電器就可以直接帶動直流電機;但直流電機要雙向轉動時就需要一由4個功率元件組成的H橋電路。調速方面,如需要調速的話可用PWM調速。

2. 性能方面,假如要用到PWM調速直流電機的驅動電路,這幾點性能指標需滿足

(1)輸出的電流與電壓範圍,這個決定這能驅動多大功率的微型電機;

(2)效率,高效率可以節省電源,延長使用時間,也能減少驅動電路發熱;

(3)對控制輸入端的影響,功率電路對其輸入端應有良好的信號隔離,防止有高電壓大電流進入主控電路,這可以用高的輸入阻抗或者光電耦合器實現隔離;

(4)對電源的影響。共態導通可以引起電源電壓的瞬間下降造成高頻電源汙染;大的電流可能導致地線電位浮動;

(5)可靠性。電機驅動電路應該儘可能做到,無論加上何種控制信號,何種無源負載,電路都是安全的。


三極管電阻作柵極驅動

微型直流電機驅動電路設計


1.輸入與電平轉換部分:

輸入信號線由DATA引入,1腳是地線,其餘是信號線。注意1腳對地連接了一個2K歐的電阻。當驅動板與單片機分別供電時,這個電阻可以提供信號電流回流的通路。當驅動板與單片機共用一組電源時,這個電阻可以防止大電流沿著連線流入單片機主板的地線造成干擾。或者說,相當於把驅動板的地線與單片機的地線隔開,實現“一點接地”。高速運放KF347(也可以用TL084)的作用是比較器,把輸入邏輯信號同來自指示燈和一個二極管的2.7V基準電壓比較,轉換成接近功率電源電壓幅度的方波信號。

KF347的輸入電壓範圍不能接近負電源電壓,否則會出錯。因此在運放輸入端增加了防止電壓範圍溢出的二極管。輸入端的兩個電阻一個用來限流,一個用來在輸入懸空時把輸入端拉到低電平。不能用LM339或其他任何開路輸出的比較器代替運放,因為開路輸出的高電平狀態輸出阻抗在1千歐以上,壓降較大,後面一級的三極管將無法截止;

2.柵極驅動部分:

後面三極管和電阻,穩壓管組成的電路進一步放大信號,驅動場效應管的柵極並利用場效應管本身的柵極電容(大約1000pF)進行延時,防止H橋上下兩臂的場效應管同時導通(“共態導通”)造成電源短路。當運放輸出端為低電平(約為1V至2V,不能完全達到零)時,下面的三極管截止,場效應管導通。上面的三極管導通,場效應管截止,輸出為高電平。當運放輸出端為高電平(約為VCC-(1V至2V),不能完全達到VCC)時,下面的三極管導通,場效應管截止。上面的三極管截止,場效應管導通,輸出為低電平。上面的分析是靜態的,下面討論開關轉換的動態過程:三極管導通電阻遠小於2千歐,因此三極管由截止轉換到導通時場效應管柵極電容上的電荷可以迅速釋放,場效應管迅速截止。

但是三極管由導通轉換到截止時場效應管柵極通過2千歐電阻充電卻需要一定的時間。相應的,場效應管由導通轉換到截止的速度要比由截止轉換到導通的速度快。假如兩個三極管的開關動作是同時發生的,這個電路可以讓上下兩臂的場效應管先斷後通,消除共態導通現象。實際上,運放輸出電壓變化需要一定的時間,這段時間內運放輸出電壓處於正負電源電壓之間的中間值。這時兩個三極管同時導通,場效應管就同時截止了。所以實際的電路比這種理想情況還要安全一些。場效應管柵極的12V穩壓二極管用於防止場效應管柵極過壓擊穿。一般的場效應管柵極的耐壓是18V或20V,直接加上24V電壓將會擊穿,因此這個穩壓二極管不能用普通的二極管代替,但是可以用2千歐的電阻代替,同樣能得到12V的分壓;

3.場效應管輸出部分:

大功率場效應管內部在源極和漏極之間反向並聯有二極管,接成H橋使用時,相當於輸出端已經並聯了消除電壓尖峰用的四個二極管,因此這裡就沒有外接二極管。輸出端並聯一個小電容(out1和out2之間)對降低電機產生的尖峰電壓有一定的好處,但是在使用PWM時有產生尖峰電流的副作用,因此容量不宜過大。在使用小功率電機時這個電容可以略去。如果加這個電容的話,一定要用高耐壓的,普通的瓷片電容可能會出現擊穿短路的故障。輸出端並聯的由電阻和發光二極管,電容組成的電路指示電機的轉動方向;

4.性能指標:

電源電壓15~30 V,最大持續輸出電流5A/每個電機,短時間(10秒)可以達到10A,PWM頻率最高可以用到30KHz(一般用1到10KHz)。電路板包含4個邏輯上獨立的,輸出端兩兩接成H橋的功率放大單元,可以直接用單片機控制。實現電機的雙向轉動和調速;

5.佈線:

大電流線路要儘量的短粗,並且儘量避免經過過孔,一定要經過過孔的話要把過孔做大一些(>1mm)並且在焊盤上做一圈小的過孔,在焊接時用焊錫填滿,否則可能會燒斷。另外,如果使用了穩壓管,場效應管源極對電源和地的導線要儘可能的短粗,否則在大電流時,這段導線上的壓降可能會經過正偏的穩壓管和導通的三極管將其燒燬。在一開始的設計中,NMOS管的源極於地之間曾經接入一個0.15歐的電阻用來檢測電流,這個電阻就成了不斷燒燬板子的罪魁禍首。當然如果把穩壓管換成電阻就不存在這個問題了;


低壓驅動電路的簡易柵極驅動


一般功率場效應管的最高柵源電壓為20V左右,所以在24V應用中要保證柵源電壓不能超過20V,增加了電路的複雜程度。但在12V或更低電壓的應用中,電路就可以大大簡化。

微型直流電機驅動電路設計

上圖就是一個12V驅動橋的一邊,上面電路的三極管部分被兩個二極管和兩個電阻代替。(注意,跟上圖邏輯是反的)由於場效應管柵極電容的存在,通過R3,R4向柵極電容充電使場效應管延緩導通;而通過二極管直接將柵極電容放電使場效應管立即截止,從而避免了共態導通。這個電路要求在IN端輸入的是邊緣陡峭的方波脈衝,因此控制信號從單片機或者其他開路輸出的設備接入後,要經過施密特觸發器(比如555)或者推輓輸出的高速比較器才能接到IN端。如果輸入邊緣過緩,二極管延時電路也就失去了作用。R3,R4的選取與IN信號邊沿升降速度有關,信號邊緣越陡峭,R3,R4可以選的越小,開關速度也就可以做的越快。Robocon比賽使用的升壓電路(原理相似)中,IN前用的是555。


邊沿延時驅動電路

在前級邏輯電路里,有意地對控制PMOS的下降沿和控制NMOS的上升沿進行延時,再整形成方波,也可以避免場效應管的共態導通。另外,這樣做可以使後級的柵極驅動電路簡化,可以是低阻推輓驅動柵極,不必考慮柵極電容,可以較好的適應不同的場效應管。下圖是兩種邊沿的延時電路:

微型直流電機驅動電路設計

下圖是對應的NMOS,PMOS柵極驅動電路:

微型直流電機驅動電路設計

這個柵極驅動電路由兩級三極管組成:前級提供驅動場效應管柵極所需的正確電壓,後級是一級射極跟隨器,降低輸出阻抗,消除柵極電容的影響。為了保證不共態導通,輸入的邊沿要比較陡,上述先延時再整形的電路就可以做到。

其它幾種驅動電路

1. 繼電器+半導體功率器件的想法

繼電器有著電流大,工作穩定的優點,可以大大簡化驅動電路的設計。在需要實現調速的電機驅動電路中,也可以充分利用繼電器。有一個方案就是利用繼電器來控制電流方向來改變電機轉向,而用單個的特大電流場效應管(比如IRF3205,一般只有N型特大電流的管子)來實現PWM調速,如下右圖所示。這樣是實現特別大電流驅動的一個方法。換向的繼電器要使用雙刀雙擲型的,接線與線圈接線如下圖:

微型直流電機驅動電路設計


微型直流電機驅動電路設計

微型直流電機驅動電路設計


2.幾種驅動芯片

(1)L298

(2)A3952

(3)A3940

(4)L6203


PWM調速的實現

1.使用定時器的算法

2.使用循環移位的算法

產生PWM信號可以由定時器來完成,但是由於51內部只提供了兩個定時器,因此如果要向三個或更多的直流電機輸出不同佔空比的信號要反覆設置定時器,實現較為複雜,我們採用一種比較簡單的方法不僅可以實現對更多的直流電機提供不同的佔空比輸入信號,而且只佔用一個定時器資源。這種方法可以簡單表述如下:

在內存的某段空間內存放各個直流電機所需的輸入信號佔空比信息,如果佔空比為1則保存0FFH(11111111B);佔空比為0.5則保存0F0H(11110000B)或任何2進制數中包括4個0和4個1,即佔空比=1的個數/8。具體選取什麼樣的二進制數要看輸出頻率的要求。若要對此直流電機輸出PWM信號,只要每個時間片移位一次取出其中固定的一位(可以用位尋址或進位標誌C實現)送到電機端口上即可。另外,移位算法是一種對以前結果依賴的算法,所以最好定期檢查或重置被移位的數,防止移錯導致一直錯下去。這種算法的優點是獨立進程,可以實現對多個電機的控制,缺點是佔用資源較大,PWM頻率較低。

3.模擬電路PWM的實現

微型直流電機驅動電路設計

上圖為一個使用遊戲手柄或者航模搖桿上的線性電位器(或線性霍爾元件)控制兩個底盤驅動電機的PWM生成電路。J1是手柄的插座,123和456分別是x,y兩個方向的電位器。U1B提供半電源電壓,U1A是電壓跟隨。x,y分量經過合成成為控制左右輪兩個電機轉速的電壓信號。在使用中,讓L=(x+1)y/(x+1.4),R=(x-1)y/(x-0.6),經過試驗有不錯的效果(數字只是單位,不是電壓值)。經過U1C和U1D組成的施密特振盪器把電壓轉換為相應的PWM信號,用來控制功率驅動電路。以U1D為例,R1,R2組成有回差的施密特電路,上下門限受輸入電壓影響,C1和R3組成延時迴路,如此形成振盪的脈寬受輸入電壓控制。Q1,Q2是三極管,組成反相器,提供差分的控制信號。具體振盪過程參見數字電路教材上對555振盪器的分析。


步進電機驅動

1.小功率4相步進電機的驅動,下面是一種驅動電路框圖:

微型直流電機驅動電路設計

達林頓管陣列ULN2803分別從鎖存器取出第0,2,4,6位和1,3,5,7位去驅動兩個步進電機.四相步進電機的通電順序可以有幾種:A,B,C,D(4相4拍);AB,BC,CD,DA(4相雙4拍);A,AB,B,BC,C,CD,D,DA(4相8拍).為了兼顧穩定性,轉矩和功耗,一般採用4相8拍方式.所有這些方式都可以通過循環移位實現(也要有定期監控),為了使4相8拍容易實現,鎖存器與驅動部分採用了交叉連接。

步進電機工作在四相八拍模式(即正轉的輸入信號為1000→1100→0100→0110→0010→0011→0001→1001→1000),對應每個步進電機要有四個信號輸入端,理論上向端口輸出信號可以控制兩個步進電機的工作。寄存器循環移位奇偶位分別作兩個步進電機的驅動端的做法,其思路如下:

(1)LOOP: MOV A,#1110000B;​在A寄存器中置入11100000

(2)RR A;右移位

(3)AJMP LOOP;循環右移位

這樣在寄存器A中存儲的值會有如下循環11100000→01110000→00111000→00011100→00001110→00000111→10000011→11000001→11100000,其奇數位有如下循環1000→1100→0100→0110→0010→0011→0001→1001→1000,其偶數位有如下循環1100→0100→0110→0010→0011→0001→1001→1000→1100。將A輸出到P0端口,則奇數位和偶數位正是我們所需要的步進電機輸入信號。

而事實上每個電機的動作是不同的,為此我們在RAM中為每個電機開闢一個byte的狀態字節用以循環移位.在每一個電機週期裡,根據需要對每個電機的byte進行移位,並用ANL指令將兩個電機的狀態合成到一個字節裡輸出此時的A同時可以控制兩個電機了,步進電機的速度由驅動脈衝的頻率決定,移位的週期不同,電機的速度也就不同了.前面提到的電機週期,應該取各種可能的週期的最大公約數.換句話說,一旦電機週期取定,每個電機移位的週期應該是它的倍數.在程序中,對每個電機的相應時刻設定相應的分頻比值,同時用一個變量進行加一計數:每到一個電機週期若計數變量

另外,也可以採用傳統的查表方式進行驅動,程序稍長,但也比較穩定,這種方法非常適合三相步進電機。UCN5804B/LB是Allegro公司生產的4相步進電機驅動專用芯片,它集成了控制邏輯,脈衝分配和功率推動,通過幾個管腳的電平來設定轉動方式,方向,通過改變外時鐘頻率來改變轉動速度,這給完成複雜的動作和測試步進電機參數帶來了極大的方便。


步進電機的智能驅動方案

步進電機有可以精確控制的優點,但是功耗大、效率低、力矩小。如果選用大功率步進電機,為了降低功耗,可以採取PWM恆流控制的方法。基本思路是,用帶反饋的高頻PWM根據輸出功率的要求對每相恆流驅動,總體電流順序又符合轉動順序。需要力矩小的時候應及時減小電流,以降低功耗。該方案實現的電路,可以採用獨立的單片機或CPLD加場效應管驅動電路以及電流採樣反饋電路。


分享到:


相關文章: