基于模糊邏輯設(shè)計的DSP發(fā)動機控制器
Defuzzified VaLue=∑-Y[i]XmultCoeff[l]/∑Y[i]
其中Y[i]的i即為輸出向量元素,是multCoeff[i]的輸出成員集應(yīng)乘以的系數(shù)。其中,i可取1~5。公式計算結(jié)果即為去模糊化后的結(jié)果。
圖4通過圖形顯示了被該應(yīng)用使用的輸出成員集與[-0x10,-0x8,0x0,0x8,0x10]系數(shù)。
假設(shè),y[]=[0x0,0x13F,0x196A,0x0,0x0],則去模糊輸出值如下:
Defuz=0×(-16)+319×(-8)+6506×(0)+0×(8)+0×(16)/0+319+6506+0+0=-2552/6825=“-0.37391
圖5顯示為輸出向量y[]質(zhì)心點的計算結(jié)果。
硬件描述
eZDSP2812 板被用在這種電機控制應(yīng)用中。eZdsp板的核心是TMS320F2812數(shù)字信號處理器。該板使用定時器T1、20kHz的時鐘,產(chǎn)生PWM1-6的信號,并使用定時器T2來執(zhí)行中斷服務(wù)例程(ISR)。此外,輸入捕捉引腳CAP1-3是用來收集霍爾效應(yīng)傳感器高速數(shù)據(jù)的。
發(fā)動機是由 DSP產(chǎn)生的PWM信號驅(qū)動的。這六個PWM信號被用來作為三相功率變換器的源。功率變換器將這六個信號轉(zhuǎn)換為三相位信號,并直接作為發(fā)動機的電源。三相功率變換器的功能由一個輔助電機控制電路板來處理。頻譜數(shù)字提供了兩個能夠提供這種功能的電路板:DMC550和DMC1500。其中任何一塊都可直接插入eZdsp28xx板上使用。
霍爾效應(yīng)傳感器用于模糊邏輯控制回路反饋。對三相功率變換器開關(guān)的轉(zhuǎn)換是通過檢測從霍爾效應(yīng)傳感器接收到的信號來決定的。該信號被送入TMS320F2812的采集針內(nèi)。實際電機速度的計算是通過一個軟件模塊來計數(shù)的。
軟件介紹
電動機控制軟件是由數(shù)字微型電路(DMC)庫模塊和FL電動機控制程序組成的。數(shù)字微型電路(DMC)庫中有七個模塊被使用在此應(yīng)用程序中。它們是:
·Datalog數(shù)據(jù)記錄
·BLDC3PWM
·tall3_Drv
·Mod6_Cnt
·Rmp2Cntl
·Rarnp_Cntl
·Speed_PR
此外,模糊邏輯發(fā)動機控制是由一個主要FuzzyCtl()例程來處理的;對于無刷直流電動機就是Fuzzy-BLDC()。
該軟件首先是進行首次運行配置,然后進行應(yīng)用程序特定的設(shè)置。具體來說,GPIO引腳被配置為CAPture和PWM引腳。
下一步是進行定時器和模塊參數(shù)的初始化,以及ISR的設(shè)置。當(dāng)所有外設(shè)設(shè)置完成,中斷被激活,進入主要操控系統(tǒng)。主要操控系統(tǒng)每隔8.7毫秒調(diào)用一次模糊控制器。
誤差值被轉(zhuǎn)換成通過模糊化的模糊值被存儲在X1[]和X2[]。一旦轉(zhuǎn)換,模糊值被應(yīng)用于模糊推理規(guī)則。
從推理模塊得到的結(jié)果存儲在Y[]中。從Y[]得到的輸出在去模糊化模塊中被轉(zhuǎn)換成明晰值。由此產(chǎn)生的明晰值是一種PWM偏移量,該偏移量被添加到當(dāng)前的 PWM占空比上。更新后的PWM值被檢查,看看是否新的值是在一定范圍內(nèi),如果不是就將采取適當(dāng)行動。最后,模糊控制器返回更新后的PWM占空比給調(diào)用例程。
圖6顯示了演示應(yīng)用程序調(diào)試環(huán)節(jié)。
通道1和2(在右上角顯示窗口)分別顯示了PWM計數(shù)器和捕獲霍爾效應(yīng)傳感器。通道3和4(在通道1和2下方)顯示邊沿觸發(fā)PWM的計數(shù)器和霍爾效應(yīng)傳感器的顯示窗口的版本。監(jiān)視窗口中顯示重要變量,其中,最重要的是SetSpeed(設(shè)置速度)和CurrentSpeed(當(dāng)前速度)。這些值足夠接近,使得模糊邏輯控制器的輸出為零。
這次會話表明發(fā)動機是在無負載條件下運行的。此行為可能會和有負荷時的情形略有不同。此外,如果想要更細的粒度,可能有必要對控制器進行調(diào)整。
評論