基于中穎SH79F168單片機(jī)的航模無(wú)刷電調(diào)方案
摘要:本文提出了一種采用中穎8位單片機(jī)SH79F168作為主控芯片的航模無(wú)刷電調(diào)方案,用AD采樣的方法進(jìn)行反電動(dòng)勢(shì)檢測(cè)以控制無(wú)位置傳感器的無(wú)刷直流電機(jī)。該芯片內(nèi)部集成了PWM、ADC、增強(qiáng)外部中斷等有針對(duì)性的功能模塊,使軟硬件設(shè)計(jì)都大為簡(jiǎn)化。經(jīng)實(shí)際項(xiàng)目應(yīng)用,該系統(tǒng)運(yùn)行穩(wěn)定可靠,且與市面上的其它控制方案相比具有成本優(yōu)勢(shì)。
本文引用地址:http://www.butianyuan.cn/article/173182.htm1 概述
無(wú)位置傳感器的無(wú)刷直流電機(jī)(Brushless Direct Current Motor, BLDCM)由于其快速、可靠性高、體積小、重量輕等特點(diǎn),在航模領(lǐng)域得到了廣泛的應(yīng)用。但是與有刷電機(jī)和有位置傳感器的無(wú)刷直流電機(jī)相比,其控制算法要復(fù)雜得多。加上航模設(shè)計(jì)中對(duì)重量和體積的要求非常嚴(yán)格,因此要求硬件電路盡可能簡(jiǎn)單,更增加了軟件的難度。
本文提出了一種基于中穎8位單片機(jī)SH79F168的控制方案,借助于該芯片片內(nèi)集成的針對(duì)電機(jī)控制的功能模塊,只需很少的外圍電路即可搭建控制系統(tǒng),實(shí)現(xiàn)基于反電動(dòng)勢(shì)法的無(wú)位置傳感器BLDC控制,在保證穩(wěn)定性和可靠性的基礎(chǔ)上大大降低了系統(tǒng)成本。而且該芯片與傳統(tǒng)8051完全兼容,易于上手,從而也降低了研發(fā)成本。
2 系統(tǒng)硬件設(shè)計(jì)
本方案選用中穎的8位單片機(jī)SH79F168做為主控芯片。該芯片采用優(yōu)化的單機(jī)器周期8051核,內(nèi)置16K FLASH存儲(chǔ)器,兼容傳統(tǒng)8051所有硬件資源,采用JTAG仿真方式,內(nèi)置16.6M振蕩器,同時(shí)擴(kuò)展了如下功能:
雙DPTR指針. 16位 x 8乘法器和16位/8除法器.
3通道12位帶死區(qū)控制PWM,6路輸出,輸出極性可設(shè)為中心或邊沿對(duì)齊模式;同時(shí)集成故障檢測(cè)功能,可瞬時(shí)關(guān)閉PWM輸出;
7通道10位ADC模塊;
內(nèi)置放大器和比較器,可用作電流放大采樣和過(guò)流保護(hù);
增強(qiáng)的外部中斷,提供4種觸發(fā)方式;
提供硬件抗干擾措施;
Flash自編程功能,方便存儲(chǔ)參數(shù);
主系統(tǒng)硬件架構(gòu)如圖1所示,從圖中可以看出該系統(tǒng)大部分功能都由片內(nèi)集成的模塊完成。外圍電路的簡(jiǎn)化一方面可以提高系統(tǒng)可靠性,另一方面也降低了成本。
圖 1 系統(tǒng)硬件架構(gòu)
三相逆變橋采用上橋PMOS用三極管驅(qū)動(dòng),下橋NMOS用PWM端口直接驅(qū)動(dòng)的方式,如圖2所示。
圖 2 三相逆變橋
SH79F169片內(nèi)集成了三通道6路PWM端口,可分別獨(dú)立配置為PWM輸出或者IO輸出。將PWM01~PWM21配置為PWM輸出,直接驅(qū)動(dòng)三相逆變橋的下橋;PWM0~PWM2配置為IO端口,經(jīng)過(guò)晶體管反相電路后驅(qū)動(dòng)三相逆變橋的上橋。
外部中斷輸入INT4x配置為雙沿觸發(fā),即輸入信號(hào)的上升沿和下降沿都能觸發(fā)中斷,可用于捕捉調(diào)速給定信號(hào)。
3 系統(tǒng)軟件設(shè)計(jì)
由于SH79F168的硬件已經(jīng)完成了大量的任務(wù),軟件的部分相對(duì)簡(jiǎn)化很多。主程序流程圖如圖3所示。
圖 3 主程序流程圖
為便于理解,該流程圖經(jīng)過(guò)了盡量的簡(jiǎn)化,只保留最關(guān)鍵的步驟。主流程中沒(méi)有列出“檢測(cè)BEMF”和“換相”兩個(gè)關(guān)鍵的步驟,因?yàn)樗鼈兎謩e在PWM中斷和timer0中斷中進(jìn)行。
3.1 反電動(dòng)勢(shì)過(guò)零點(diǎn)檢測(cè)
在PWM輸出高期間,假設(shè)斷開(kāi)相繞組端電壓為 ,反電動(dòng)勢(shì)為 ,供電電壓為 ,則三者之間有如下關(guān)系[1]:
SH79F168提供PWM周期中斷和占空比中斷。當(dāng)周期中斷發(fā)生時(shí)不斷檢測(cè)斷開(kāi)相的端電壓,并與 比較,直到檢測(cè)到過(guò)零點(diǎn)或者PWM輸出低(根據(jù)PWM占空比中斷標(biāo)志位判斷),即可實(shí)現(xiàn)在PWM輸出高期間的反電動(dòng)勢(shì)過(guò)零點(diǎn)檢測(cè)。每次換相后就切換到另一個(gè)通道,檢測(cè)下一個(gè)斷開(kāi)相的端電壓,如此循環(huán),實(shí)現(xiàn)實(shí)時(shí)檢測(cè)。
需要注意是剛換相后的一段時(shí)間內(nèi),由于MOS管的續(xù)流,斷開(kāi)相繞組的電壓會(huì)出現(xiàn)尖峰。為了準(zhǔn)確檢測(cè)反電動(dòng)勢(shì),可以選擇在剛換相的一到兩個(gè)PWM周期內(nèi)不進(jìn)行采樣,避開(kāi)尖峰電壓。
3.2 起動(dòng)算法
BLDC電機(jī)的反電動(dòng)勢(shì)和轉(zhuǎn)速正相關(guān),在起動(dòng)和低速運(yùn)行階段,電機(jī)產(chǎn)生的反電動(dòng)勢(shì)為零或很小,因此往往需要經(jīng)過(guò)一段強(qiáng)制加速,使反電動(dòng)勢(shì)上升到能夠檢測(cè)過(guò)零點(diǎn)的水平。
航模電機(jī)一般在較低速時(shí)即會(huì)產(chǎn)生比較明顯的反電動(dòng)勢(shì),這個(gè)特點(diǎn)為起動(dòng)提供了很大的便利。先給電機(jī)任意兩相通電,使電機(jī)獲得一個(gè)初速度,這時(shí)檢測(cè)斷開(kāi)相電壓并等待其發(fā)生過(guò)零。若檢測(cè)到過(guò)零點(diǎn)則換相,若經(jīng)過(guò)較長(zhǎng)一段時(shí)間還沒(méi)有檢測(cè)到過(guò)零則強(qiáng)制換相,重復(fù)這個(gè)過(guò)程直至電機(jī)穩(wěn)定運(yùn)行。這種起動(dòng)方式,不但實(shí)現(xiàn)簡(jiǎn)單,而且穩(wěn)定可靠。在這種方式不能適用時(shí),再根據(jù)應(yīng)用場(chǎng)合考慮選用特定的起動(dòng)方式,可參考文獻(xiàn)[2],限于篇幅本文不詳述。
3.3 換相計(jì)算
一般在用反電動(dòng)勢(shì)法進(jìn)行BLDC控制的時(shí)候,需要對(duì)每?jī)纱螕Q相的間隔時(shí)間進(jìn)行計(jì)時(shí),得到60°電角度時(shí)間,然后除以2作為檢測(cè)到過(guò)零點(diǎn)后30°延時(shí)的定時(shí)值。這就需要用到兩個(gè)定時(shí)器/計(jì)數(shù)器,一個(gè)用作計(jì)數(shù)器對(duì)每?jī)纱螕Q相的間隔進(jìn)行計(jì)數(shù),另一個(gè)用作定時(shí)器實(shí)現(xiàn)30°延時(shí)。本方案中為了節(jié)省timer資源,用一個(gè)timer同時(shí)完成兩項(xiàng)功能。
在每次換相后,檢測(cè)到該通電狀態(tài)下的過(guò)零點(diǎn)之間,timer0用作計(jì)數(shù)器;在檢測(cè)到過(guò)零點(diǎn)之后,之前的計(jì)數(shù)值即為30°電角度,將其作為定時(shí)值裝入timer0,timer0用作定時(shí)器開(kāi)始定時(shí)。定時(shí)時(shí)間到后,在timer0中斷中進(jìn)行換相。然后timer0又用作計(jì)數(shù)器,如此循環(huán)。正常情況下,由于電機(jī)轉(zhuǎn)速很高,每次換相到檢測(cè)到過(guò)零點(diǎn)之間的時(shí)間很短,timer0在計(jì)數(shù)模式下不會(huì)發(fā)生中斷。若timer0在計(jì)數(shù)模式時(shí)發(fā)生中斷,必然是計(jì)數(shù)溢出,說(shuō)明電機(jī)經(jīng)過(guò)較長(zhǎng)的時(shí)間還沒(méi)有檢測(cè)到過(guò)零點(diǎn),而這可以作為電機(jī)堵轉(zhuǎn)的標(biāo)志。根據(jù)實(shí)際情況,可對(duì)timer0在計(jì)數(shù)模式下連續(xù)發(fā)生中斷的次數(shù)進(jìn)行計(jì)數(shù),超過(guò)一定值即認(rèn)為發(fā)生堵轉(zhuǎn)。這樣,timer0還實(shí)現(xiàn)了堵轉(zhuǎn)保護(hù)的功能。
手機(jī)電池相關(guān)文章:手機(jī)電池修復(fù)
pwm相關(guān)文章:pwm是什么
單片機(jī)相關(guān)文章:單片機(jī)教程
單片機(jī)相關(guān)文章:單片機(jī)視頻教程
單片機(jī)相關(guān)文章:單片機(jī)工作原理
評(píng)論