唐伎玲, 趙宏偉, 王婷婷, 胡黃水
(1.長春大學(xué) 計算機科學(xué)技術(shù)學(xué)院, 長春 130022; 2.吉林大學(xué) 計算機科學(xué)與技術(shù)學(xué)院, 長春 130012;3.長春工業(yè)大學(xué) 計算機科學(xué)與工程學(xué)院, 長春 130012)
無刷直流電機(brushless direct current motor, BLDCM) 以其結(jié)構(gòu)簡單、效率高、維護(hù)費用低、動態(tài)響應(yīng)高等優(yōu)點, 在航空航天、機器人、電動汽車等領(lǐng)域應(yīng)用廣泛[1-3].轉(zhuǎn)速控制是無刷直流電機驅(qū)動領(lǐng)域的一個重要方面[3-4].隨著電子技術(shù)、傳感器技術(shù)、自動控制技術(shù)和制造技術(shù)的快速發(fā)展, 研究響應(yīng)速度快、調(diào)節(jié)能力強、控制精度高的無刷直流電機調(diào)速控制器具有重要意義和應(yīng)用前景.但復(fù)雜的強耦合非線性特性使傳統(tǒng)控制方法難以實現(xiàn)良好的速度控制性能.為改善無刷直流電機的暫態(tài)和穩(wěn)態(tài)特性, PID(比例-積分-微分)控制器通常是無刷直流電機調(diào)速的最佳選擇.文獻(xiàn)[5-6]提出了基于PI(比例-積分)的無刷直流電機速度控制器, 通過增加比例增益, 提高了速度控制器的靈敏度, 降低了速度超調(diào).但傳統(tǒng)PID對增益選擇的依賴性較強, 導(dǎo)致無刷直流電機性能下降, 具有各種不確定性和非線性[7].因此, 人們提出了許多方法來簡化或改進(jìn)PID增益整定過程, 其中基于神經(jīng)網(wǎng)絡(luò)的算法取得了較好的結(jié)果[8-10].
基于神經(jīng)網(wǎng)絡(luò)的PID增益更新算法已成功地應(yīng)用于伺服電機、數(shù)控機床等控制中.如文獻(xiàn)[11]設(shè)計了單神經(jīng)元PID控制器對無刷直流電機進(jìn)行控制; 文獻(xiàn)[12]設(shè)計了一種基于神經(jīng)網(wǎng)絡(luò)的永磁同步電機控制策略, 速度環(huán)反饋采用BP神經(jīng)網(wǎng)絡(luò)實現(xiàn), 通過系統(tǒng)的狀態(tài)參數(shù)對PI控制器的比例系數(shù)KP、積分系數(shù)KI進(jìn)行控制, 該控制策略易實現(xiàn), 但是該策略在神經(jīng)網(wǎng)絡(luò)訓(xùn)練前需通過先驗知識確定狀態(tài)參數(shù).此外, 基于梯度下降的訓(xùn)練算法也是一個耗時的過程, 為此, 人們提出了一些優(yōu)化方法.文獻(xiàn)[13]采用粒子群優(yōu)化算法初始化自適應(yīng)PID神經(jīng)網(wǎng)絡(luò)控制器的權(quán)值, 采用改進(jìn)的梯度下降算法對PID神經(jīng)網(wǎng)絡(luò)的參數(shù)進(jìn)行調(diào)整, 但粒子群優(yōu)化算法初始化PID神經(jīng)網(wǎng)絡(luò)的時間較長.經(jīng)典的最優(yōu)控制理論已經(jīng)形成了一種線性二次穩(wěn)壓器, 它可使系統(tǒng)狀態(tài)軌跡的偏差最小化, 并且只需要最小的控制器努力[14].線性二次調(diào)節(jié)器(LQR)的這種特性可用于調(diào)整PID控制器[15-16].LQR優(yōu)化PID控制器雖然具有良好的跟蹤性能和穩(wěn)定性能, 但其魯棒性還有待提高.
為實現(xiàn)無刷直流電機的轉(zhuǎn)速控制, 本文設(shè)計一種LQR優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的PID控制器LNPID.該控制器使用LQR算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的控制輸出, 最佳控制輸出調(diào)節(jié)控制器的KP,KI,KD增益, 以提高控制器的動態(tài)適應(yīng)性和魯棒性, 使LNPID比傳統(tǒng)神經(jīng)網(wǎng)絡(luò)PID (NNPID)[12]和LQR優(yōu)化的PID控制器(LQRPID)[16]控制性能更好.為了驗證LNPID的性能, 在不同的工況下進(jìn)行測試, 并與上述控制器進(jìn)行超調(diào)、欠調(diào)、穩(wěn)定時間、恢復(fù)時間和穩(wěn)態(tài)誤差等參數(shù)的比較.
三相星形連接BLDCM可轉(zhuǎn)換為如圖1所示的電路圖.BLDCM的數(shù)學(xué)模型可用矩陣形式表示為
(1)
其中:Va,Vb,Vc為相電壓(V);R為定子繞組電阻(Ω);ia,ib,ic表示電機的相電流(A);L,M分別表示電機繞組的自感和定子繞組間的互感;ea,eb,ec表示各相的反電磁力, 單位為V;P表示轉(zhuǎn)子中極數(shù);θr表示轉(zhuǎn)子位置;J,B,ωr,TL分別表示電機的轉(zhuǎn)動慣量、摩擦系數(shù)、角速度和負(fù)載轉(zhuǎn)矩.機電轉(zhuǎn)矩為
(2)
圖2為BLDCM轉(zhuǎn)速控制系統(tǒng).由圖2可見, 該系統(tǒng)由三相電壓型PWM逆變器、三相BLDCM、LQR優(yōu)化BP神經(jīng)網(wǎng)絡(luò)、傳統(tǒng)PID控制器、開關(guān)邏輯和電機測量傳感器組成.在此基礎(chǔ)上, 建立了內(nèi)環(huán)和外環(huán)兩個閉環(huán).外環(huán)用于BLDCM的速度控制, 并基于誤差e, LQR優(yōu)化BP神經(jīng)網(wǎng)絡(luò)PID控制器為切換邏輯電路提供控制信號, 控制直流總線電壓, 從而控制電機的轉(zhuǎn)速.PID控制器由比例項、積分項和微分項組成, 可表示為
(3)
其中e(t),KP,KI,KD,u(t)分別為轉(zhuǎn)速誤差、比例增益、積分增益、微分增益和控制輸入.通過對連續(xù)時間PID方程兩邊的時間導(dǎo)數(shù)進(jìn)行離散化, 得到離散時間PID控制器, 其表達(dá)式為
其中T為采樣周期.
圖1 無刷直流電機等效電路Fig.1 Equivalent circuit of BLDCM
圖2 BLDCM轉(zhuǎn)速控制系統(tǒng)Fig.2 Speed control system of BLDCM
圖3 BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)Fig.3 Structure of BP neural network
采用三層BP神經(jīng)網(wǎng)絡(luò), 其中輸入層為3個神經(jīng)元(神經(jīng)元個數(shù)的選取對應(yīng)e(k),e(k)-e(k-1),e(k)-2e(k-1)+e(k-2)), 隱含層為6個神經(jīng)元(神經(jīng)元個數(shù)的選取為多次仿真效果最佳), 輸出層為3個神經(jīng)元(神經(jīng)元個數(shù)的選取對應(yīng)PID控制器的3個參數(shù)), 其結(jié)構(gòu)如圖3所示.
則優(yōu)化PID增益可表示為
(9)
其中f1(x)和f2(x)是隱藏層和輸出層的激活函數(shù), Sigmoid函數(shù)為
f1(x)=2/(1+ex)-1,
(10)
f2(x)=1/(1+ex).
(11)
最優(yōu)伺服系統(tǒng)的設(shè)計目標(biāo)是系統(tǒng)跟蹤一定指令信號時誤差最小.設(shè)BLDCM是一個離散系統(tǒng), 其離散狀態(tài)方程為
X(k+1)=FX(k)+GOkout(k),
(12)
Ok(k)=CX(k),
(13)
其中:X(k)是(n×1)維狀態(tài)向量;Okout(k)是m維控制向量;Ok(k)是l維輸出向量,F,G,C分別是(n×n),(n×m),(l×n)維的系統(tǒng)參數(shù)矩陣.
Okout(k)=-MX(k)+KE(k),
(14)
(15)
若用帶記號“*”的新變量表示系統(tǒng)偏離穩(wěn)態(tài)的平穩(wěn)狀態(tài)值(擾動), 則新變量定義為
將式(19)~(21)代入式(12),(13), 得
顯然, 從式(22),(23)中分別減去穩(wěn)態(tài)的關(guān)系式(16),(18), 可得新的差分方程為
且有
由式(24),(27)可組成一個新的增廣系統(tǒng)為
(28)
其中V*(k)為m維向量,
(29)
尋求控制輸入V*(k)使如下性能指標(biāo)J最小:
(30)
其中:Q=CTSC為(n×n)維的半正定矩陣;R為(m×m)維的正定矩陣.在式(28)的約束條件下, 使式(30)表示的性能指標(biāo)最小.此時, 求V*(k)與線性最優(yōu)調(diào)節(jié)器問題相同.于是, 可求得增廣系統(tǒng)最優(yōu)控制器輸入為
(31)
BP神經(jīng)網(wǎng)絡(luò)具有并行處理能力強、非線性映射能力強、容錯性好等優(yōu)點, 已被用于以不同結(jié)構(gòu)調(diào)整PID控制器的增益.但BP神經(jīng)網(wǎng)絡(luò)很難達(dá)到全局最優(yōu)解, 收斂時間較短, 參數(shù)確定較難, 導(dǎo)致精度低, 收斂性較弱.因此, 將LQR引入到BP神經(jīng)網(wǎng)絡(luò)以減少控制誤差.
設(shè)BP神經(jīng)網(wǎng)絡(luò)的輸入為xi(k), 輸出為Okout(k), 則控制律為
(32)
其中g(shù)(xi(k))=g(x1,x2,x3)為BP神經(jīng)網(wǎng)絡(luò)的輸入與輸出非線性映射函數(shù).于是, 最終優(yōu)化PID增益可表示為
KP,I,D=Ok,k=1,2,3.
(33)
定義訓(xùn)練BP神經(jīng)網(wǎng)絡(luò)權(quán)值的誤差函數(shù)為當(dāng)被控對象動態(tài)響應(yīng)能由式(12)精確表達(dá)時, BP神經(jīng)網(wǎng)絡(luò)網(wǎng)絡(luò)的輸出為零(Okout(k)=0).將BP神經(jīng)網(wǎng)絡(luò)的性能指標(biāo)定義為
(34)
其中
(35)
(36)
BP神經(jīng)網(wǎng)絡(luò)的連接權(quán)值Wij(k)和Wjk(k)采用最速下降法調(diào)整:
(37)
其中η為學(xué)習(xí)率.計算
(39)
其中:xi(k)表示BP神經(jīng)網(wǎng)絡(luò)的輸入;bj為隱層輸出;Okout為輸出層的輸出.
基于LQR優(yōu)化的BP神經(jīng)網(wǎng)絡(luò)的PID控制算法步驟如下:
1) 事先選定BP神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu), 即選定輸入層節(jié)點個數(shù)m, 根據(jù)遺傳算法選定隱含層節(jié)點個數(shù)q及各層間加權(quán)系數(shù)的初值Wij(0),Wjk(0), 選取學(xué)習(xí)率η, 并令k=1;
2) 采樣得到r(k)和y(k), 計算e(k)=r(k)-y(k);
3) 對e(k),e(k)-e(k-1),e(k)-2e(k-1)+e(k-2)進(jìn)行歸一化處理, 作為BP神經(jīng)網(wǎng)絡(luò)的輸入;
4) 根據(jù)步驟3)計算BP神經(jīng)網(wǎng)絡(luò)輸出層的輸出Okout, 計算此時的控制律Ok, 并由式(33)獲得此時控制器的3個調(diào)整參數(shù)KP,KI,KD;
5) 計算基于LQR優(yōu)化的BP神經(jīng)網(wǎng)絡(luò)控制E(k);
6) 由式(40)計算修正輸出層和隱含層的加權(quán)系數(shù)Wij(k)和Wjk(k);
7) 令k=k+1, 轉(zhuǎn)步驟2), 直到BP神經(jīng)網(wǎng)絡(luò)輸出層輸出誤差滿足要求為止.
為驗證LNPID在BLDCM控制系統(tǒng)中的轉(zhuǎn)速控制性能, 借助MATLAB/Simulink工具箱搭建系統(tǒng)模型, 在不同工況條件下對控制器進(jìn)行仿真分析, BLDCM控制系統(tǒng)仿真模型如圖4(A)所示, 其中LNPID控制器如圖4(B)所示.采用文獻(xiàn)[3]中的BLDCM參數(shù)設(shè)置: 額定電壓為470 V, 額定電流為50 A, 額定轉(zhuǎn)速為2 600 r/min, 定子電阻相R=3 Ω, 定子相電感L=0.001 H, 電壓常數(shù)為0.146 6 V/(r·min-1), 轉(zhuǎn)矩常數(shù)為1.4 N·m/A, 轉(zhuǎn)動慣量J=0.000 8 kg·m2/rad, 阻力因子B=0.001 N·m/(rad·s-1), 極對數(shù)P=4.
圖4 BLDCM速度控制系統(tǒng)模型Fig.4 Model of speed control system for BLDCM
給定BLDCM的輸入轉(zhuǎn)速為2 600 r/min, 負(fù)載為空, BP神經(jīng)網(wǎng)絡(luò)節(jié)點數(shù)為3,6,3, 初始權(quán)值為[-0.5,0.5]的隨機數(shù), 權(quán)值隨系統(tǒng)動態(tài)在線調(diào)整, 學(xué)習(xí)率η=0.05,R=1.根據(jù)3種算法仿真實驗最終輸出數(shù)據(jù)獲得KP,KI和KD參數(shù), 結(jié)果列于表1.運行無刷直流電機調(diào)速系統(tǒng)模型, 得到的轉(zhuǎn)速響應(yīng)曲線如圖5所示, 各項性能指標(biāo)列于表2.
表1 KP,KI,KD實驗參數(shù)
圖5 空載狀態(tài)下轉(zhuǎn)速響應(yīng)曲線Fig.5 Curves of speed response under no-load state
表2 空載狀態(tài)下各控制器的性能指標(biāo)
由圖5和表2可見, LQRPID有明顯的超調(diào)/欠調(diào)現(xiàn)象, 超調(diào)量最高為137.7 r/min, 欠調(diào)量最低為24.3 r/min, NNPID的超調(diào)量為38.2 r/min, 欠調(diào)量為4.1 r/min; 而LNPID超調(diào)/欠調(diào)現(xiàn)象較弱, 超調(diào)量為25.6 r/min, 欠調(diào)量為4.5 r/min.在穩(wěn)態(tài)過程中, LNPID穩(wěn)定時間最短約0.01 s, 且穩(wěn)態(tài)誤差最小, LQRPID穩(wěn)定時間約為0.052 s, NNPID穩(wěn)定時間最長約為0.056 s.LNPID在各方面的控制效果均優(yōu)于其他控制器.
對于實際BLDCM系統(tǒng), 存在突加的外部干擾, 在控制算法研究中, 系統(tǒng)的魯棒性也是評判控制策略優(yōu)劣的一個重要指標(biāo).為比較這3種控制算法抗干擾性能的控制效果, 在0.2 s對系統(tǒng)添加3 N的外力干擾, 轉(zhuǎn)速響應(yīng)曲線如圖6所示, 各項性能指標(biāo)列于表3.由圖6和表3可見, 系統(tǒng)在0.2 s突然增加外力干擾時, 3種控制器均產(chǎn)生了波動性響應(yīng), NNPID和LQRPID控制器超調(diào)/欠調(diào)現(xiàn)象明顯, LNPID的波動現(xiàn)象最?。?LNPID控制器的恢復(fù)時間最短為0.05 s, 穩(wěn)態(tài)誤差最小為0.4 r/min.因此, LNPID控制器魯棒性最佳, 具有良好的抗干擾能力.
圖6 負(fù)載狀態(tài)下轉(zhuǎn)速響應(yīng)曲線Fig.6 Curves of speed response under load state
表3 負(fù)載狀態(tài)下各控制器的性能指標(biāo)
Table 3 Performance indexes of each controller under load state
性能指標(biāo) NNPID控制器LQRPID控制器LNPID控制器超調(diào)量/(r·min-1)34.9217.01-3.5欠調(diào)量/(r·min-1)136.01115.8122.34恢復(fù)時間/s0.0750.0650.05穩(wěn)態(tài)誤差/(r·min-1)1.310.820.4穩(wěn)態(tài)誤差/%0.050.0320.015
綜上所述, 本文針對無刷直流電機的轉(zhuǎn)速控制問題, 提出了一種基于LQR優(yōu)化的BP神經(jīng)網(wǎng)絡(luò)PID控制器LNPID.采用BP神經(jīng)網(wǎng)絡(luò)對PID控制器的增益進(jìn)行調(diào)整, 采用LQR優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的最優(yōu)輸出.在MATLAB/Simulink環(huán)境下建立仿真模型, 測試LNPID在空載、負(fù)載等工況下的控制性能, 并與NNPID和LQRPID控制器進(jìn)行了性能指標(biāo)的對比.仿真結(jié)果表明, 在無刷直流電機的各種工況下, LNPID控制器都明顯優(yōu)于其他控制器.