限流工作的軟件設(shè)計(jì)無(wú)刷直流電機(jī)的電流控制能體現(xiàn)無(wú)刷直流電機(jī)控制系統(tǒng)的好壞。電流的控制關(guān)鍵在于準(zhǔn)確和及時(shí)。準(zhǔn)確、及時(shí)正是對(duì)電流經(jīng)過(guò)LM2904放大后由AD采樣的到的值經(jīng)過(guò)處理控制PWM波形而言的。準(zhǔn)確性體現(xiàn)在電流AD采樣和轉(zhuǎn)換的時(shí)刻。所使用的PSoC的AD模塊為SAR8,采用其對(duì)齊觸發(fā)采樣的方式。因?yàn)橐訮WM波驅(qū)動(dòng)的無(wú)刷直流電機(jī)電流與PWM波同頻率,但相位滯后一定時(shí)間的脈動(dòng)電流波形,合適的采樣點(diǎn)在上升沿過(guò)后一定時(shí)間內(nèi)。及時(shí)主要體現(xiàn)在采樣的次數(shù)上,因?yàn)殡娏鞯淖兓芸欤谝粋€(gè)PWM周期內(nèi)可能會(huì)有很大的起伏,所以最好是一個(gè)PWM周期內(nèi)采樣多次,但是由于SAR8的采樣和轉(zhuǎn)換時(shí)間為3.3μs,單片機(jī)的速度受限,且改變PWM脈寬寄存器的值不會(huì)立即改變PWM占空比,要到下一個(gè)PWM周期開(kāi)始才改變,所以一個(gè)周期采集一次足矣。
采集到電流AD值后,可以根據(jù)其值對(duì)PWM脈寬做調(diào)節(jié)控制,用逐漸增減PWM脈寬值的方法。采集到的電流AD值乘以占空比得計(jì)算的平均電流值,當(dāng)平均值大于限流值時(shí),減小PWM脈寬值,當(dāng)平均值小于限流值時(shí),不馬上恢復(fù)原先的PWM脈寬值,而是有一個(gè)環(huán)帶,當(dāng)電流值低于環(huán)帶值時(shí)才開(kāi)始逐漸增加PWM脈寬值,當(dāng)恢復(fù)到原有值時(shí)就停止更新脈寬值。所以用平均值來(lái)控制PWM脈寬值時(shí),當(dāng)占空比很小時(shí),電流即時(shí)值就相當(dāng)大,所以還需要最大值的控制,當(dāng)電流及時(shí)值大于最大值時(shí),同樣執(zhí)行增減PWM脈寬值程序代碼。當(dāng)即時(shí)值大于過(guò)流保護(hù)值時(shí),開(kāi)啟過(guò)流保護(hù)使PWM脈寬快速減為0,確保MOSFET的安全。