基于控制專用單片機(jī)的無刷直流電機(jī)控制器
1 概述[1,2] 無位置傳感器無刷直流電動機(jī)控制器采用的位置檢測方法是反電勢3次諧波檢測法,其輸入 到控制器的有2路信號,1路為a相反電勢過零信號,1路為轉(zhuǎn)子磁通3次諧波的過零信號,利 用這2路信號控制永磁同步電機(jī)運(yùn)行于自同步工作狀態(tài)。所以這一控制系統(tǒng)有別于傳統(tǒng)的反 電勢基波法(也叫端電壓法)采用3路反電勢過零點(diǎn)信號的控制系統(tǒng)。? 由于3次諧波檢測法相當(dāng)靈敏,而且在信號處理中無需經(jīng)過衰減率極大的低通濾波器,使得3次諧波檢測在較低的轉(zhuǎn)速下就可以正確檢測出轉(zhuǎn)子的位置。由于3次諧波信號的處理可以采 用在整個(gè)頻率范圍內(nèi)都保持穩(wěn)定的90°積分器電路,所以檢測精度高,這帶來的直接效果就 是電機(jī)的運(yùn)行效率高,輸出轉(zhuǎn)矩大,因此,本文研究一種適合于3次諧波檢測法的控制器。 2 控制器的各組成電路[1~4 無刷直流電機(jī)控制器的任務(wù)是完成位置閉環(huán)、轉(zhuǎn)速閉環(huán)控制以及起動控制。位置閉環(huán)是為了 使電機(jī)運(yùn)行于自同步狀態(tài),轉(zhuǎn)速閉環(huán)則是為了調(diào)速。由于3次諧波檢測法同樣也無法檢測零 速下電機(jī)轉(zhuǎn)子的位置,所以同樣也需要比較復(fù)雜的起動控制?! ?.1 位置閉環(huán)的實(shí)現(xiàn) 在本控制器中采用中斷方式完成位置閉環(huán),在控制器的控制程序中預(yù)先編制三相6拍對應(yīng)的 三相同步信號序列,3次諧波每一次跳變引發(fā)1次中斷,控制器輸出下一個(gè)同步信號序列。a 相反電勢每一次上跳沿引發(fā)1次中斷,使控制器指向第一個(gè)同步信號序列?! ∥恢瞄]環(huán)的實(shí)現(xiàn)主要由譯碼電路、3次諧波沿脈沖生成電路。譯碼器電路是把微機(jī)輸 出的三 相同步信號譯碼成逆變6個(gè)功率器件的導(dǎo)通信號,其功能與傳統(tǒng)端電壓法采用的譯碼器功能 一樣。本文所研究的控制器是采用gal16v8可編程邏輯器件來完成的?! o刷機(jī)運(yùn)行狀態(tài)時(shí),3次諧波位置信號每一次跳變對應(yīng)著一個(gè)換相時(shí)刻,而能引起微機(jī)產(chǎn)生1 次外部中斷的只能是外部信號發(fā)生1次上跳沿,所以這就需要1個(gè)沿脈沖生成電路,把輸入的 3次諧波信號上跳沿和下跳沿都轉(zhuǎn)化成具有上跳沿的窄脈寬。使用2個(gè)上升沿單穩(wěn)觸發(fā)器可能完成這樣的功能。沿脈沖生成電路如圖1所示,其中脈沖的寬度由單穩(wěn)觸發(fā)器的rc延時(shí)網(wǎng)絡(luò)決定。這個(gè)脈寬要求不能大于最高轉(zhuǎn)速時(shí)3次諧波位置信號的脈寬,否則在最大轉(zhuǎn)速時(shí)每一 個(gè)周期將會漏掉1次換相時(shí)刻,這將會使電機(jī)運(yùn)行于一種不穩(wěn)定的狀態(tài)?! ?.2 轉(zhuǎn)速閉環(huán)的實(shí)現(xiàn) 轉(zhuǎn)速閉環(huán)的實(shí)現(xiàn)包括轉(zhuǎn)速的測定、控制量的設(shè)定及pwm波占空比的調(diào)節(jié)。 因?yàn)?次諧波位置信號頻率與電機(jī)的轉(zhuǎn)速成正比,對于p=2的電機(jī),轉(zhuǎn)子每旋轉(zhuǎn)1圈,3次 諧波 信號發(fā)生12次跳變。所以轉(zhuǎn)速的測定可能通過測定3次諧波信號。由于3次諧波頻率比較低 ,采用測頻法測轉(zhuǎn)速,若想在較短的時(shí)間內(nèi)測出電機(jī)的轉(zhuǎn)速,那么測得的轉(zhuǎn)速誤差太大。所以本控制器采用測周法?! ∮捎?0c196kb帶有高速輸入口,輸入信號的每一次跳變發(fā)生時(shí)刻將被高速輸入口記錄下來, 這為測周法的實(shí)現(xiàn)提供了極大的方便。3次諧波信號通過hsi.1輸入到單片機(jī)中,設(shè)定高速輸 入口為記錄每一次跳變的工作方式,并設(shè)定fifo為保持寄存器有效中斷方式,即每發(fā)生一個(gè) 事件響應(yīng)1次中斷,在中斷處理程序中計(jì)算2次事件的時(shí)間差,從而計(jì)算出電機(jī)的轉(zhuǎn)速。 控制量的設(shè)定包括轉(zhuǎn)速給定值、啟動負(fù)載設(shè)定值、正反轉(zhuǎn)開關(guān)以及啟停開關(guān)等。其中轉(zhuǎn)速給 定值和啟動負(fù)載設(shè)定值可以通過philips遙控器以及紅外接收頭來完成數(shù)字設(shè)定,紅外接收 頭的輸入信號可接到單片機(jī)的高速輸入口,在fifo中斷處理程序中識別遙控器輸入的鍵值, 并根據(jù)鍵值設(shè)定輸入值,也可以采用電位器模擬給定,由80c196kb的a/d轉(zhuǎn)換成數(shù)字量。正 反轉(zhuǎn)開關(guān)以及啟停開關(guān)只需要普通的開頭形成電平信號從p1口輸入到單片機(jī)中,在控制器主 程序循環(huán)中,不斷查詢開關(guān)狀態(tài),根據(jù)不同的開關(guān)狀態(tài)進(jìn)行相應(yīng)的處理?! ?0c196kb內(nèi)含一個(gè)8位pwm通道,無須再擴(kuò)展,此pwm通道在12m晶振下,輸出的pwm頻率可達(dá)2 3.6khz,超出了音頻范圍,不會給系統(tǒng)帶來噪聲。要改變pwm占空比只需改變pwm占空比寄存 器,使用起來相當(dāng)可靠、方便。唯一不足的一點(diǎn)是其占空比分辨率只有8位,即1/256(0.39% ),對于要求調(diào)速精度較高的場合,需要外加高辨率的pwm波發(fā)生器?! ?.3 起動控制的實(shí)現(xiàn) 在基于3次諧波檢測法控制系統(tǒng)中,同樣也可以采用端電壓法控制系統(tǒng)所采用的3段式起動方 法,即整個(gè)起動過程分為轉(zhuǎn)子定位、加速和切換3個(gè)階段。對于3次諧波檢測法端電壓法,其檢測的靈敏度大大提高。3次諧波檢測法的高靈敏度使得電機(jī)的起動無須像端電壓法那 樣復(fù)雜,電機(jī)一開始只輸入輸出一個(gè)定位信號進(jìn)行轉(zhuǎn)子定位,然后輸出下一個(gè)信號序列,使定子磁場向前跳進(jìn)60°,這時(shí)電機(jī)由定位位置轉(zhuǎn)到下一個(gè)位置的過程中,3次諧波信號已經(jīng)有效,并向微機(jī)發(fā)出1次換相中斷,使得電樞磁場再向