越來越多企業開始使用變速驅動發動機來減少能源的消耗。這需要通過從微分(PID)控制器轉向基于模糊邏輯算法的系統來簡化設計,縮短開發時間,并消除復雜的數學公式。
但是,這昆山電感廠對發動機提出了新的挑戰。當使用傳統的積分和微分(PID)控制器來控制無刷直流(BLDC)電機的速度是復雜的,因為它們依賴于復雜的數學模型,并且是計算密集型的。而使用模糊邏輯(FL)的算法,可以消除設計過程對復雜的數學公式的依賴,并且提供一個容易理解的解決方案。與(PID)微分控制器相比,模糊邏輯(FL)發動機控制還有一個優勢,那就是開發周期更短。本文討論了采用德州儀器c28xx定點DSP系列,實現用模糊邏輯算法來控制無刷直流電動機的過程。
無刷直流電機控制模型的發展
在模糊邏輯(FL)發動機構建之前,我們必須首先建立一個模型作為設計的功率電感基礎。模糊邏輯控制器使用啟發式知識,并使用一個語言描述模型來表達它的設計。我們將以PID控制器模型為出發點,而不是從頭開始開發一個模型。一旦完成開發和實現,模糊邏輯控制器將通過調整其參數來提高性能。
一般來說,開發模糊邏輯無刷直流控制器有三個設計步驟:
1.定義輸入、輸出控制器的操作范圍。
2.定義模糊成員集的功能和規則。
功率電感3.調整引擎。
第一步是定義模式相關的輸入和輸出。輸入是誤差(E),它是設置的速度(SS)和當前的速度(CS)之間的當前誤差;另外的輸入是誤差的變化(CE),它是當前誤差和以前計算誤差(PE)之間的一體電感器差值。輸出是電樞電壓(CV)的改變值,它是現有的電樞電壓(CAV)和以前的電樞電壓(PAV)保存值的差額。由此產生的模型方程式如下:
E=SS-CS
CE=E-PE
CV=CAV-PAV
發動機旋轉速單位為轉每分鐘(RPM),E決定了接近目標速度的程度。因此,當E>0,發動機的旋轉速度低于設定的速度;當E<0,電機旋轉速度超過設定的速度。CE決定控制器的調整方向。當且僅當(iff)目前的旋轉速度比設定的速度要低時CE為正,;當且僅當目前的旋轉速度大于設定的速度時,CE 為負。當接近設定速度時,CE就會在正的和負的值之間來回調整。CV是電樞的供繞行電感器電電壓。這個電壓表示為脈沖的寬度調制(PWM)占空比。
下一步是定義模糊集的成員函數、變量和規則。為了保證能工作,非模糊(清晰)輸入和輸出必須轉化成模糊的。轉換由使用語言變量來表示輸入和輸出范圍。這些也被稱為模糊變量。模糊變量用于為成員函數劃分隸屬值的區域。例如,5個變量用來映射輸入和輸出,它們是中等負值(NM)、小負值(NS)、零(z)、小正值(PS)、中等正值(PM)。
它不是數學公式,模糊控制器使用模糊規則來作出決定,并產生一個輸出。模糊規則是通過IF-THEN語句的形式來描述的。模糊規則決定系統的行為,而不是復雜的數學方程。例如,如果錯誤(E)是等于中等負值(NM),而錯誤的變化(CE)等于小正值 (PS),那么在電樞電壓(CV)的改變就等于小負值(NS)。所用的一些規則是根據設計者的經驗和系統的知識來設定的。因此,我們的系統所使用的規則的數量是25個。
為了激活電樞,CV模糊輸出必須被轉換回清晰輸出。這個過程稱為去模糊化。一種流行的去模糊方法稱為重心法。
設計的最后一步是調整成員函數和規則。這個階段也稱為優化調整階段。優化調整用于提高模糊控制器的性能。一旦設計完成,控制器就將準備付諸實現。
模糊邏輯控制器的實現是由三個模塊組成的。它們分別是模糊化、規則部署和去模糊化。以下各節討論模糊邏輯無刷直流電動機相關模塊的實現情況。
模糊化
模糊化是將有明晰數值的數據轉換成模糊數據的過程。由此產生的模糊數據的轉換是基于對輸入變量的模糊隸屬度。對于這種應用,電機控制輸入變量是旋轉誤差 (Error)和旋轉誤差差值(Cerror)。旋轉誤差(Error)是從一個采樣時間到下一個采樣時間的絕對旋轉速度差。同樣地,旋轉誤差差值 (Cerror)是一個采樣時間和下一個采樣時間之間的旋轉誤差變化值。公式如下:
旋轉誤差(Error)=SetSpeed(設定速度)-Cur-rentSpeed(目前速度)
旋轉誤差差值(Cerror)=旋轉誤差(Error)-Pre-viousError(前一次誤差)
正如前面談到的,為旋轉誤差(Error)變量和旋轉誤差差值(Cerror)變量定義了五個成員集: