功率驅(qū)動器件與MCU/DSC的接口電路設(shè)計技巧
由于MCU和DSC的成本大幅下降,目前多數(shù)馬達控制設(shè)計中都使用MCU和數(shù)字信號控制器(DSC)來執(zhí)行馬達控制算法。本文介紹了一些方法和技巧,可將MCU或DSC的邏輯層輸入/輸出口(I/O)與功率電子驅(qū)動電路接口,并講述了如何正確地進行相關(guān)硬件及軟件開發(fā)的方法。
在進行MCU或DSC的邏輯層輸入/輸出口(I/O)與功率電子驅(qū)動電路的接口設(shè)計時,除了性能和價格需要權(quán)衡考慮外,還有許多方面要折衷處理。我們可根據(jù)以下問題來選擇接口元件:1. 本電路需要驅(qū)動何種馬達?2. 該馬達采用何種算法進行控制?3. 控制器外設(shè)可簡化哪些接口要求?4. 電氣安全要求是什么?5. 此設(shè)計是否用于產(chǎn)品開發(fā)?
柵極驅(qū)動接口電路
HSPACE=12 ALT="圖1:自舉電路給一只電容器充電,電容器上的電壓基于高端輸出晶體管源極電壓上下浮動。">
半橋輸出電路結(jié)構(gòu)可用于控制多種馬達,包括有刷直流馬達、無刷直流馬達、交流感應(yīng)式馬達及永磁交流馬達。電源級電路需要一個柵極驅(qū)動接口電路,該電路至少應(yīng)具備以下功能:1. 將MCU的邏輯輸出電平進行轉(zhuǎn)換,在晶體管的柵極和源極間提供一個10-15V的電平。2. 在晶體管的開通和關(guān)斷時提供足夠大的驅(qū)動電流,以克服米勒電容的影響。
高端輸出器件向來是柵極驅(qū)動接口電路的一個問題。在電源輸出級電路中,無論是高端或低端輸出都應(yīng)該采用N溝道器件。在裸片尺寸和擊穿電壓固定的情況下,P溝道器件的導通電阻往往比N溝道器件高。使用P溝道器件可簡化柵極驅(qū)動電路,但會增加設(shè)計成本。裸片尺寸越大成本越高,而且P溝道器件往往比同類的N溝道器件成本高。
由于低端器件的電位是相對于電路的接地點而言的,因此在電源級電路中產(chǎn)生一個用于低端器件的柵極電源電壓十分容易。柵極控制電壓必須以源極電壓為參考,在高端晶體管中它是滿幅電壓。因此,電源級電路中的高端器件需要一個柵極電源,該電源基于源極電壓上下浮動。
現(xiàn)在有許多便宜的IC可簡化柵極驅(qū)動電路的設(shè)計。但其中有些只是簡單的大電流驅(qū)動電路,不具備高端器件所需的電平轉(zhuǎn)換電路。另一些則包括電平轉(zhuǎn)換電路,可直接與邏輯及功率器件接口。選擇柵極驅(qū)動器時要視設(shè)計的絕緣要求而定。光電耦合器既可以滿足電平轉(zhuǎn)換要求,又使我們可在設(shè)計中選用簡單的柵極驅(qū)動器IC。
在許多馬達控制設(shè)備中,線路總電源從與AC線路直接相連的全波整流電路獲得并經(jīng)過濾波。整流器的低端電壓成為整個電路的參考電壓(0V)。不過,這一參考電壓并非接地電壓。在低端也存在交流電壓,它在OV左右和峰值線電壓間來回波動。在許多低成本應(yīng)用中,將MCU或DSC基于這一低端電位上下浮動是有意義的。不過,如果設(shè)計要求測試或現(xiàn)場服務(wù)的話,出于安全考慮最好加上信號隔離。至少在產(chǎn)品開發(fā)階段使用的馬達驅(qū)動硬件應(yīng)該具有信號隔離功能。
即使從盡量減少破壞來考慮,也應(yīng)該采用隔離電路。在某一具體設(shè)計中,即使沒有隔離反饋信號,也應(yīng)該隔離柵極控制信號。否則,電源器件可能會損壞或短路,從而使得直流總線電壓通過驅(qū)動電路耦合回來并流入邏輯器件中。
柵極驅(qū)動器IC通常具有其它特性,包括欠壓斷電保護、插入一段死區(qū)、防止高端功率器件和低端功率器件交叉導通以及過電流自動關(guān)機等。不過這些功能也會增加額外成本。
有多種方法可產(chǎn)生柵極驅(qū)動電路的電源。原則上來說,高端驅(qū)動電路應(yīng)該產(chǎn)生一個比DC總線電壓高出10-15V的電壓,用于輸出級電路。由于自舉電路無需浮動電源,因此是最便宜的。如圖1所示,自舉電路給一只電容器充電,電容器上的電壓基于高端輸出晶體管源極電壓上下浮動。下面的晶體管開通時將高端晶體管的源極電壓拉到0 V,只有此時電路才對電容器充電。電容器必須儲備足夠的電荷,以便在上端的晶體管處于開通狀態(tài)時維持所需的柵極電壓。由于帶有電容器,自舉電源無法保證上面的晶體管一直開通。當自舉電容器上的電壓下降時,高端器件便會關(guān)斷。
由自舉電路的局限性所產(chǎn)生的副作用與馬達類型有關(guān)。對用正弦波電流驅(qū)動的馬達而言,自舉電路會限制加在反相器上的PWM占空比。我們可以通過改變自舉電路中元件的大小來增大占空比。不過,由于BLDC和SR電動機需要換相,因此通常不采用自舉電路。
如果高端器件的柵極驅(qū)動必須保持連續(xù),那么必須使用浮動電路來產(chǎn)生比直流總線電壓高10 V至15 V的電壓。我們可以采用充電泵電路,它的電壓是相對高端晶體管的源極電壓而言的。另一種方法則是用一個高頻信號來調(diào)制柵極信號,這樣在柵極驅(qū)動信號出現(xiàn)時,高頻信號也會出現(xiàn)。在圖2中,調(diào)制信號通過一只變壓器耦合到晶體管的柵極和源極,并在變壓器的次級經(jīng)過整流產(chǎn)生柵極驅(qū)動電壓。但是,這兩種方法都會增加設(shè)計的成本。
馬達反饋信號
馬達和電源控制電路需要提供各種信號,這些信號視馬達的類型及控制算法而定。采集一種反饋信號的方法很多。例如,許多馬達控制算法需要知道負載中的相電流。測量相電流的最簡單方法是使用霍爾效應(yīng)電流傳感器?;魻杺鞲衅髋c驅(qū)動馬達的高壓電路完全隔離,它使用邏輯電路的電源,連接到MCU或者DSC中的A/D轉(zhuǎn)換器時所需元件極少,缺點則是成本高。
測量相電流的另一個方法是采用PWM電流傳感器IC。它測量一只與負載串聯(lián)、對電流敏感的電阻器上的電壓降。經(jīng)過設(shè)計,這些器件基于功率輸出級輸出的滿幅電壓上下浮動,并采用自舉電源供電。這種傳感器的輸出是PWM信號,它的占空比與感應(yīng)電阻器中的電流成正比,并有兩種方法與微控制器連接。第一種方法是采用一個RC濾波器網(wǎng)絡(luò)對PWM的輸出信號濾波,并把它轉(zhuǎn)換成模擬信號。這個方法的缺點是,控制算法要求濾波器輸出中沒有紋波和相位誤差。此外使用濾波器也增加了設(shè)計的成本。另外一個方法是直接把PWM的輸出信號送到微控制器上的輸入采集外設(shè)引腳上(圖3)。這一外設(shè)在輸入信號處于上升沿和下降沿(或兩者)時采集數(shù)字時基信號的脈沖數(shù),并用應(yīng)用軟件進行處理,從而計算出輸入信號的周期、頻率或者占空比。
當控制器上有“輸入采集”引腳時,我們也可以在設(shè)計中加上隔離式模擬放大器,通過數(shù)字轉(zhuǎn)換來得到相電流。用V/F或者電壓/PWM轉(zhuǎn)換器把模擬信號轉(zhuǎn)換成數(shù)字信號。模擬信號可用數(shù)字式光耦合器通過隔離電路傳到控制器。與模擬隔離方案相比,V/F轉(zhuǎn)換器+光耦合器方案成本較低。HSPACE=12 ALT="圖4:用差動放大器來放大電阻器兩端的電壓,然后送入A/D轉(zhuǎn)換器的輸入端。">
測量相電流的第三個方法是,在電源級電路的每個低端晶體管源極串聯(lián)一只感應(yīng)電阻器(圖4),用差動放大器來放大電阻器兩端的電壓,然后送入A/D轉(zhuǎn)換器的輸入端。在使用這個方法時,A/D轉(zhuǎn)換器必須與控制晶體管的PWM信號同步。為了得到精確的電流信號,應(yīng)當在電源輸出級中的低端晶體管開通時進行測量。在使用分流電阻進行測量時,內(nèi)建有A/D同步邏輯電路的控制器很有用。
進行軟件開發(fā)
用傳統(tǒng)的仿真器來開發(fā)馬達控制軟件比較困難。使用仿真器時,設(shè)計人員可以在任何時刻停止應(yīng)用軟件的執(zhí)行,以便查看寄存器值以及代碼執(zhí)行情況。但是,在某些時刻停止軟件執(zhí)行其實會對馬達和電源電路造成極大影響。
在停止軟件執(zhí)行時,PWM 控制值不再更新,馬達和電源輸出級電路中便會出現(xiàn)較大的直流電流。為了解決這一問題,應(yīng)該通過仿真器將PWM信號置于不會損壞負載的狀態(tài)。例如,dsPIC30F系列PWM外設(shè)部件可在仿真器停止時將所有PWM輸出引腳設(shè)置在低電平狀態(tài)。這時所有輸出器件都關(guān)斷,馬達慢慢停下來。在產(chǎn)品開發(fā)過程中,加入額外的硬件保護功能十分有用。這些功能可在產(chǎn)品開發(fā)過程出現(xiàn)軟件錯誤時保護硬件不受損壞,并可在正式生產(chǎn)時去除以節(jié)省成本。這些功能包括限流、總線電壓過載保護及在高、低端晶體管同時導通時關(guān)機。
本文小結(jié)
在選定某種控制器后,我們便要選擇相應(yīng)的元件來連接控制器和電源輸出級電路。通用MCU能夠滿足算法需求,但是它可能不具備與馬達控制直接相連的外設(shè)部件。我們必須在接口電路中增加相應(yīng)硬件,以保護輸出器件或處理反饋信號。