基于C8051F313的新型電動自行車調(diào)速控制系統(tǒng)設(shè)計
引言
隨著環(huán)境的污染和能源的緊張,電動自行車以無廢氣污染,無噪音,利用電能和使用方便等優(yōu)點(diǎn),越來越受到人們的喜愛,成為生活中的代步交通工具。本文介紹采用美國公司Silicon laboratories(Silabs)的高速SoC型C8051F313單片機(jī)設(shè)計的一種無刷直流電機(jī)調(diào)速控制系統(tǒng)。該系統(tǒng)充分利用C8051F313的片上資源,設(shè)計方案電路簡單,需要的外圍元件少,控制器的整體成本低,性能好。
C8051F313
C8051F313屬于Silabs的高速SOC型單片機(jī)C8051F系列。C8051F系列單片機(jī)集成度高,完全兼容傳統(tǒng)的8051單片機(jī)內(nèi)核和指令系統(tǒng),但其各方面的性能都遠(yuǎn)遠(yuǎn)超越了傳統(tǒng)的8051單片機(jī)。由于采用了“流水線”結(jié)構(gòu)方式處理指令,70%的指令的執(zhí)行時間為1個或2個系統(tǒng)時鐘,突破了傳統(tǒng)的8051單片機(jī)運(yùn)行效率低的弱點(diǎn),特別是它執(zhí)行乘法指令只要4個系統(tǒng)時鐘,執(zhí)行除法指令只要8個系統(tǒng)時鐘。另外C8051F系列單片機(jī)片上集成了豐富的外設(shè),極大地降低了對外圍元器件的需求:模擬多路選擇器、可編程增益放大器、ADC、DAC、電壓比較器、電壓基準(zhǔn)、溫度傳感器、SMBus(I2C)、增強(qiáng)型UART、SPI、可編程計數(shù)/定時器陣列(PCA)、電源監(jiān)視器、看門狗定時器(WDT)、時鐘振蕩器等。另外還有片上的FLASH程序存儲器、RAM和XRAM。在編程語言上,支持匯編和C編程。
系統(tǒng)硬件設(shè)計
整個控制系統(tǒng)主要包括轉(zhuǎn)子位置檢測電路、測速電路、調(diào)速電路、MOSFET全橋驅(qū)動電路、限流電路等,圖1是控制系統(tǒng)框圖。直流電源通過MOSFET電路向電動機(jī)定子繞組供電;轉(zhuǎn)子位置檢測電路檢測轉(zhuǎn)子的位置,并根據(jù)轉(zhuǎn)子的位置信號來控制MOSFET的導(dǎo)通和截止,從而實(shí)現(xiàn)電子換向;測速電路檢測電機(jī)的轉(zhuǎn)速,調(diào)速電路根據(jù)測速電路的檢測結(jié)果,動態(tài)地調(diào)整電機(jī)的轉(zhuǎn)速(調(diào)速)。本設(shè)計可根據(jù)需要設(shè)計成60o或120o電角度換相。
轉(zhuǎn)子位置檢測電路和測速電路
本設(shè)計中的無刷直流電動機(jī)為三相無刷直流電機(jī),3個霍爾位置傳感器的空間間距為120o。3個霍爾傳感器的輸出H1、H2、H3分別直接接到C8051F313的PCA(可編程計數(shù)器/定時器陣列)的三個捕捉/比較模塊:CEX0、CEX1和CEX2。捕捉/比較模塊可以對霍爾信號的上升沿和下降沿進(jìn)行捕捉,并產(chǎn)生中斷。這種檢測無刷電機(jī)轉(zhuǎn)子位置的方法比使用A/D轉(zhuǎn)換或使用比較器的方法更具優(yōu)越性。外圍電路簡單,幾乎不需要任何外圍元器件,實(shí)時性又非常高,可靠快速地對霍爾信號進(jìn)行捕捉。同時使用一個定時器對中斷的間隔進(jìn)行計時。這個時間就反映了電機(jī)的轉(zhuǎn)速,軟件上通過一定的算法處理,就可以得到電機(jī)此時的轉(zhuǎn)速。這種方法得到的電機(jī)轉(zhuǎn)速比較真實(shí)地反映了電機(jī)的實(shí)際轉(zhuǎn)速。
MOSFET全橋驅(qū)動電路
這部分電路實(shí)際上完成電機(jī)換相驅(qū)動和調(diào)速的功能。C8051F313根據(jù)轉(zhuǎn)子位置檢測電路的檢測結(jié)果,對無刷直流電機(jī)進(jìn)行實(shí)時的換相驅(qū)動,同時根據(jù)轉(zhuǎn)速檢測電路檢測到的轉(zhuǎn)速對無刷直流電機(jī)進(jìn)行調(diào)速。本設(shè)計采用PWM方式對電樞電壓進(jìn)行控制,實(shí)現(xiàn)調(diào)速。
圖2中的Ua為直流無刷電機(jī)電樞兩端的電壓,PWM的周期為T(為一個固定值),改變PWM的占空比,即改變T1的時間,那么直流無刷電機(jī)電樞兩端的平均電壓發(fā)生改變,電機(jī)的轉(zhuǎn)速也就發(fā)生了變化,實(shí)現(xiàn)了調(diào)速的目的。Ua的計算公式為:
Ua = (T1/(T1 + T2))× Ud
這就是直流無刷電機(jī)電樞電壓的PWM調(diào)速的計算公式。按照相反的次序給直流無刷電機(jī)通電,就可以使用直流無刷電機(jī)的反轉(zhuǎn)。
在本設(shè)計中使用C8051F313的PCA(可編程計數(shù)器/定時器陣列)的一個捕捉/比較模塊CEX3來產(chǎn)生PWM,并且根據(jù)換相和調(diào)速的實(shí)際需要,通過Crossbar(數(shù)字交叉開關(guān))動態(tài)地將1路PWM波分時送到到MOSFET全橋的3個下管,進(jìn)行調(diào)速。
軟件設(shè)計
由于C8051F313兼容傳統(tǒng)的8051單片機(jī),匯編指令和傳統(tǒng)的8051單片機(jī)指令一樣,同時支持目前國內(nèi)使用最廣的Keil C仿真軟件,只要有過51單片機(jī)編程經(jīng)驗(yàn)或使用過Keil C的人,就可以很輕松的上手C8051F313的編程工作,而不需要事前投入大量時間進(jìn)行學(xué)習(xí)。
本設(shè)計使用C語言編程,程序可移植性強(qiáng)。其程序流程圖如圖3所示。
結(jié)語
本設(shè)計充分利用了C8051F313片上的資源,特別是PCA的資源。使用PCA的3個捕捉/比較模塊巧妙地實(shí)現(xiàn)了直流無刷電機(jī)轉(zhuǎn)子位置的檢測;一個捕捉/比較模塊產(chǎn)生一路PWM波實(shí)時動態(tài)地分配到MOSFET橋的三個下管進(jìn)行調(diào)速,同時也實(shí)現(xiàn)了直流無刷電機(jī)轉(zhuǎn)速的準(zhǔn)確測量。整個系統(tǒng)實(shí)時性強(qiáng),可靠性高,性能好。由于C8051F系列單片機(jī)片上集成了豐富的外設(shè),極大地降低了對外圍元器件的需求,整個系統(tǒng)成本比較低。