新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 掌握MCU軟件設(shè)計(jì)準(zhǔn)則 實(shí)現(xiàn)直流馬達(dá)控制精準(zhǔn)度提升

掌握MCU軟件設(shè)計(jì)準(zhǔn)則 實(shí)現(xiàn)直流馬達(dá)控制精準(zhǔn)度提升

作者: 時(shí)間:2016-12-02 來(lái)源:網(wǎng)絡(luò) 收藏
300瓦以下的小功率馬達(dá)適合以MCU做為控制方案,在各家MCU硬件規(guī)格差異化日漸縮小之下,軟件演算設(shè)計(jì)就顯得相形重要,若能掌握MCU控制各種直流馬達(dá)的軟件設(shè)計(jì)原則,將能大幅提升馬達(dá)控制的精準(zhǔn)度。
運(yùn)作在300瓦(W)以下的小功率馬達(dá)被廣泛應(yīng)用于各類應(yīng)用,例如汽車系統(tǒng)、打印機(jī)、復(fù)印機(jī)、碎紙機(jī)、玩具、工廠自動(dòng)化、測(cè)試設(shè)備、機(jī)器人技術(shù)、航空航天與軍工等。最流行的小功率馬達(dá)類型是直流(DC)馬達(dá)、無(wú)刷直流馬達(dá)(BLDC)和步進(jìn)馬達(dá)。馬達(dá)的產(chǎn)量大致與功率大小成反比,量產(chǎn)的小功率馬達(dá)數(shù)量遠(yuǎn)遠(yuǎn)高于大功率馬達(dá)數(shù)量。
專用于馬達(dá)控制的數(shù)字信號(hào)處理器(DSP)設(shè)計(jì)主要在滿足大型脫機(jī)式馬達(dá)的需求。脫機(jī)馬達(dá)通常為交流(AC)感應(yīng)或無(wú)刷直流馬達(dá),運(yùn)行在110-480VAC和1/4-100馬力(HP)。專用于馬達(dá)控制的DSP,對(duì)于小功率馬達(dá)控制系統(tǒng)來(lái)說(shuō),成本太高。
本文提供使用微控制器(MCU)控制各類馬達(dá)的軟件范例。雖然這些范例相對(duì)簡(jiǎn)單,但其針對(duì)各類馬達(dá)提供有效的解決方案。一個(gè)傳統(tǒng)的馬達(dá)控制系統(tǒng)通常要求額外特性并具有更高的復(fù)雜度。這些軟件范例能夠做為開(kāi)發(fā)更復(fù)雜馬達(dá)驅(qū)動(dòng)系統(tǒng)的基礎(chǔ)。
借助軟件演算 DC有刷馬達(dá)功耗下降
DC馬達(dá)在小功率馬達(dá)中是最常見(jiàn)和最便宜的。在本文中,DC馬達(dá)主要指的是有刷換向永磁直流馬達(dá)。
DC馬達(dá)的特性使其成為變速系統(tǒng)中最簡(jiǎn)單易使用的馬達(dá)。DC馬達(dá)的轉(zhuǎn)矩-速度特性如圖1所示,DC馬達(dá)的非負(fù)載速度與馬達(dá)電源電壓成線性關(guān)系。驅(qū)動(dòng)穩(wěn)定扭矩負(fù)載、線性負(fù)載或指數(shù)負(fù)載的DC馬達(dá)的電壓-速度特性也是連續(xù)的、正斜率的和可預(yù)測(cè)的,因此,在大多數(shù)情況下,使用開(kāi)放回路控制系統(tǒng)是可行的。簡(jiǎn)單地改變通過(guò)馬達(dá)的電壓,任何人都能夠控制馬達(dá)的速度。脈寬調(diào)變(PWM)能夠用于改變馬達(dá)供電電壓,加載到馬達(dá)的平均電壓與PWM工作周期比成正比例關(guān)系(這里忽略馬達(dá)電感和不連續(xù)運(yùn)行導(dǎo)致的次要影響)。


圖1 DC馬達(dá)特性


這里提供一個(gè)以MCU控制DC馬達(dá)的簡(jiǎn)單例子。在這個(gè)范例中,使用模擬數(shù)字轉(zhuǎn)換器(ADC)讀取電位器的位置信息,并使用PCA 8位PWM模式輸出對(duì)應(yīng)的PWM信號(hào)(圖2)。


圖2 DC馬達(dá)驅(qū)動(dòng)電路


單個(gè)N通道功率金屬氧化物半導(dǎo)體場(chǎng)效晶體管(MOSFET)Q1用于驅(qū)動(dòng)DC馬達(dá)。功率MOSFET應(yīng)當(dāng)根據(jù)特定的馬達(dá)電壓和電流需求進(jìn)行選擇。飛輪二極管的D1跨接到DC馬達(dá)。當(dāng)MOSFET關(guān)閉時(shí),電流通過(guò)馬達(dá)自感繼續(xù)流動(dòng),MOSFET漏極電壓將上升到超過(guò)馬達(dá)電源電壓的一個(gè)二極管壓降,然后,電流經(jīng)由飛輪二極管繼續(xù)流動(dòng)。
大多數(shù)低壓馬達(dá)驅(qū)動(dòng)電路利用蕭特基功率整流器實(shí)現(xiàn)飛輪二極管,蕭特基整流器具有較低的正向電壓和極短的反向恢復(fù)時(shí)間。這兩者在馬達(dá)驅(qū)動(dòng)應(yīng)用中都是非常重要的參數(shù)因子。
功率MOSFET由反向閘極驅(qū)動(dòng)器驅(qū)動(dòng)。F300的端口引腳默認(rèn)配置為輸入引腳,并且啟用弱的100k上拉電阻。在端口被配置而且交叉開(kāi)關(guān)器和周邊啟用之前,端口引腳一直保持高電平。當(dāng)復(fù)位接腳保持低電平時(shí),端口接腳也會(huì)被配置為弱上拉啟用的輸入接腳。透過(guò)使用反向驅(qū)動(dòng)器,功率晶體管在預(yù)設(shè)狀態(tài)下處于關(guān)閉狀態(tài)。如果使用非反相器驅(qū)動(dòng),10k下拉電阻應(yīng)當(dāng)端口引腳和接地。
為使用3伏特(V)微控制器,閘極驅(qū)動(dòng)器應(yīng)當(dāng)具有3V相容的輸入電平臨界值。如果馬達(dá)電壓在5-15V之間,閘極驅(qū)動(dòng)器能夠直接切斷馬達(dá)電源電壓。如果馬達(dá)電壓超過(guò)15V,分開(kāi)的閘極驅(qū)動(dòng)器電源電壓是需要的,通常為5V或者12V。當(dāng)采用低于10V的閘極驅(qū)動(dòng)器電源電壓時(shí),應(yīng)當(dāng)使用邏輯電平功率MOSFET。
軟件實(shí)現(xiàn)非常簡(jiǎn)單。main()函數(shù)初始化頻率、端口和周邊,然后進(jìn)入while(1)回路。在while(1)中使用avgADC()函數(shù)讀取電位器電壓值,然后輸出這個(gè)值到8位PWM。
PORT_Init()函數(shù)配置端口輸入/輸出(I/O)、周邊、?用數(shù)位交叉開(kāi)關(guān)器。在這里,為8位PWM?用端口引腳,為閘極驅(qū)動(dòng)器?用推挽式輸出引腳。
系統(tǒng)頻率SYSCLK被配置運(yùn)行在24.5MHz最大速率,這允許8位PWM可配置為160奈秒(ns)頻率周期和24kHz頻率。
ADC0_Init()函數(shù)配置ADC為查詢模式。ADC增益設(shè)定為1,并且為ADC頻率選擇1MHz保守頻率。重要的是,這里也要初始化電壓參考,配置ADC使用VDD滿量程。
函數(shù)readADC()采用查詢模式讀取電壓值一次,并返回ADC值。函數(shù)avgADC()調(diào)用readADC()函數(shù),并且返回六十四個(gè)采樣值的平均值。平均化ADC讀數(shù)可以最小化噪聲影響,減少PWM輸出抖動(dòng)。
當(dāng)使用PCA 8位PWM模式時(shí),在CEX0輸出0x00值對(duì)應(yīng)到100%的工作周期比;輸出0xFF值對(duì)應(yīng)到0.39%的工作周期比,0%的工作周期比可以透過(guò)清除PCA0CPM0 SFR中的ECOM0位來(lái)實(shí)現(xiàn)。
當(dāng)使用反向驅(qū)動(dòng)器時(shí),這種關(guān)系是相反的。在MOSFET閘極驅(qū)動(dòng)器上,0x00值對(duì)應(yīng)到0%的工作周期比,0xFF值對(duì)應(yīng)到99.6%的工作周期比為了簡(jiǎn)單起見(jiàn),本文中所有使用8位PWM的軟件范例都僅限于使用99.6%PWM。
在一些情況下,100%的工作周期比是可取的,100%工作周期比將有效的消除開(kāi)關(guān)損耗。由于MOSFET從不會(huì)關(guān)閉,因此在MOSFET上沒(méi)有開(kāi)關(guān)損耗,在二極管上也沒(méi)有損失,唯一的功率損耗是功率MOSFET中的傳導(dǎo)損耗。如果馬達(dá)預(yù)計(jì)在大部分時(shí)間里都處于全速運(yùn)作,100%的最大工作周期比是合理的。100%的工作周期比,可以經(jīng)由清除PCA0CPM0 SFR中的ECOM0位來(lái)實(shí)現(xiàn)。

上一頁(yè) 1 2 3 下一頁(yè)

評(píng)論


技術(shù)專區(qū)

關(guān)閉