張 蕾,廖紹雯
(1.河西學院 信息技術中心,甘肅 張掖 734000;2.河西學院 信息技術與傳媒學院,甘肅 張掖 734000)
隨著科技水平的不斷發展,3D打印機在工業生產、社會生活等各個領域得到廣泛的普及與推廣。其中,熔融沉積成型(FDM)技術的3D打印機相較于其它3D打印機具有結構簡單、經濟性好、適應復雜模型及生產周期短等優點而被廣泛應用[1]。目前,針對FDM型3D打印機噴嘴溫度控制系統大多仍采用傳統的PID控制,結合被控對象的特點,該方法具有明顯局限性,運用傳統PID控制容易出現超調和震蕩環節,同時傳統的PID控制對被控對象的要求較高,且參數無法實時調整等,進而影響控制系統的響應速度、精度及抗干擾能力等。當前,針對FDM型3D打印機噴嘴溫度控制的研究成果較為豐富,如“基于模糊算法3D打印噴頭PID溫度控制”,引入模糊控制實現對PID參數的整定,但模糊規則及隸屬度函數設計完全憑經驗且論域無法時刻調整,對系統影響較大[2];如“改進型積分分離PID的3D打印機噴頭溫度控制系統”,提出了一種改進型積分分離的PID算法,雖減小系統超調,但易出現積分飽和現象,無法得到最佳的控制效果[3];如“基于FDM型3D打印機噴嘴溫度系統的PID優化設計”,提出了傳統PID控制,其具有系統超調較大以及響應速度慢等缺點。
針對FDM型3D打印機噴嘴溫度控制系統設計了預測模型雙反饋變論域分形模糊分數階PID控制器。并針對變論域模糊分數階PID控制器參數調整的困難,引入改進的鯨魚算法(improved whale optimization algorithm,IWOA)克服基本鯨魚(whale optimization algorithm,WOA)算法易陷入早熟和局部最優解的缺陷,通過IWOA算法優化后的變論域模糊分數階PID控制器參數,FDM型3D打印機噴嘴溫度控制系統獲得更加優良的性能指標和抗擾動能力。
通常3D打印機溫度控制系統的加熱系統主要有以下部件構成:單端加熱絲、溫度傳感器、散熱器及導熱體等[4],其溫度控制結構如圖1所示。

圖1 FDM溫度控制系統
由圖1可知,FDM溫度控制系統首先根據耗材類型確定噴嘴溫度的設定值,溫度傳感器通過采集到加熱器的溫度并經過濾波和放大后與設定值進行對比產生誤差,通過閉環控制方式,根據誤差的大小信息,調節控制器(變論域分形模糊分數階PID控制器)輸出,進而改變加熱器的溫度,直到溫度誤差為零。
FDM打印機溫度控制系統控制的精度在一定程度上將決定著3D打印機的打印精度,過高或過低的噴嘴溫度都將影響耗材的流通性。關于電加熱裝置通常都有固定的模型近似,一般為一階慣性加滯后環節的傳遞函數進行描述[5],故FDM打印機噴頭溫度的數學模型為
(1)
式中:T為一階慣性環節的時間常數;K為一階慣性環節的增益;τ為滯后時間。
分數階微積分理論是整數階微積分理論的基礎上不斷發展和改進而來,與整數階微積分理論不同的是其階次不再只是整數,而是將其延伸至分數或者是復數。目前,工程上定義連續的分數階微積分算子如下

(2)

經過分數階微積分理論及其算子定義后,得到分數階函數的時域表達式為
bmDβmy(t)+…+b1Dβ1y(t)+b0Dβ0y(t)=anDαnu(t)+…+a1Dα1u(t)+a0Dα0u(t)
(3)
對式(3)進行變換后,其傳遞函數為
(4)
將分數階控制與傳統的PID控制結合,類比傳統PID控制器的表達式及其式(3)可得分數階PID控制器的輸出表達為
u(t)=Kpe(t)+KiDλe(t)+KdDμe(t)
(5)
式中:λ>0為積分階次,μ>0為微分階次;Kp,Ki,Kd均為分數階PID控制器的比例、積分和微分系數。
分數階PID控制器傳遞函數由式(5)展開拉普拉斯變換可得
u(t)=Kpe+Kis-λ+Kdsμ
(6)
由式(6)可知,增加參數積分階次和微分階次,可使控制變得更加靈活。對于積分階次、微分階次在不同范圍取值,其表達式也會不同。隨著λ和μ取值的變化,控制器可得到很多組合,如PID、PD等。
由分數階微積分相關理論可知,分數階的階次與整數階相比存在無限性,無法實現控制器設計。為此,為了將分數階理論應用到工程上,需要在有限的范圍內對其進行近似處理。因此,本文采用了間接算法Oustaloup近似算法[6],其濾波器在頻率段(wb,wh)內對微積分算子的近似為
(7)


式中:wb,wh分別是Oustaloup濾波器近似頻率范圍的上下限;α為微積分的階次;N為濾波器的階次。
針對基本Oustaloup近似算法在(wb,wh)的上下限的兩個端點處近似效果較差。為此,利用傳遞函數對基本的Oustaloup近似算法進行改進,即
(8)
式中

式中:b、d為常數,均大于0;
針對分數階PID控制器參數,Kp、Ki、Kd、λ和μ的選擇一般按照經驗取值,本文針對模糊分數階PID控制器的比例系數Kp、積分系數Ki和微分系數Kd進行模糊推理,實現模糊分數階PID的控制算法設計,其結構如圖2所示。

圖2 模糊分數階PID控制器
模糊控制以FDM型3D打印機噴頭溫度的反饋值與設定值的偏差e和誤差的變化率ec作為二維模糊控制器的輸入,然后經過模糊控制的一系列操作(模糊化、模糊推理、去模糊等),模糊控制器的輸出為比例系數、積分系數、微分系數,并傳遞給分數階PID控制器里,避免分數階PID控制器參數選擇的隨意性和盲目性,結合各個參數的特點,設計模糊分數階PID控制器。
通過MATLAB軟件設計模糊控制器,本文以噴頭溫度誤差e及誤差變化率ec作為二維模糊控制器的輸入,Kp、Ki和Kd作為模糊控制器的輸出,其中,噴頭溫度誤差e和誤差變化率ec的基本論域為[-6,6],3個輸出變量基本論域為[-3,3],將模糊控制的兩個輸入及3個輸出變量模糊子集定義為{NB、NM、NS、ZO、PS、PM、PB},分別對應{負大、負中、負小、零、正小、正中、正大}。對于隸屬函數中的三角形隸屬函數的形狀僅僅與它的直線斜率相關,一方面計算相對來說比較容易,另一方面所需空間內存也不算太大[7],本文選用的是三角形隸屬函數,同時模糊控制中模糊規則一般是總結工程技術人員的技術知識和實際經驗而建立的,其中比例系數Kp、積分系數Ki和微分系數Kd的模糊參數規則表參考文獻[8]所示。
2.3.1 變論域模糊控制
傳統模糊控制的模糊規則在最初設定好以后將不再隨著模糊控制器的輸入的變化而變化,模糊規則的數量也會影響模糊控制的性能,隨著數量的增加將會大大提高系統控制精度,但也會伴隨著推理難度、耗時等的增加,因此不能靠增加模糊規則數量來提高控制精度,為此,本文提出了一種變論域模糊控制。變論域模糊控制可以認為是一種自適應模糊控制,在傳統模糊控制的基礎上引入伸縮因子時刻跟著誤差及誤差變化率的變化來調整伸縮因子,進而改變模糊規則,此時模糊規則只是進行相應的伸縮,同時保持規則不變,解決了控制性能與規則數量之間的矛盾[9]。
本文以模糊分數階PID控制器為例,結合本文的被控對象,設噴頭溫度誤差的基本論域為 [-Ee,Ee], 誤差變化率的基本論域為 [-Eec,Eec], 3個輸出變量基本論域為 [-Kp,Kp], [-Ki,Ki], [-Kd,Kd]。 模糊控制在引入伸縮因子后,其論域調整的表達式為
(9)
式中:αe、αec為輸入變量的伸縮因子;βkp、βki、βkd為輸出變量的伸縮因子。
模糊分數階PID控制引入伸縮因子后,其結構如圖3所示,對于輸入變量和輸出變量的伸縮因子受系統誤差及誤差變化率的影響,誤差增大,論域膨脹,誤差減小,論域壓縮。因此,選擇合適的伸縮因子方法將大大決定變論域模糊的控制控制的精度。

圖3 變論域模糊分數階PID控制結構
2.3.2 伸縮因子選擇
變論域模糊伸縮因子的選擇目前主要有以下方式:一是基于函數形式選擇,二是模糊推理,三是誤差分級。其中關于函數是一個二次函數,以誤差和誤差變化率作為變量,伸縮因子作為自變量的函數,目前比較常用的有比例函數、指數函數等;對于模糊推理選擇伸縮因子雖然避免了人工選擇的盲目性,實現在線調整,其控制性能比基于函數形式有較大提高,但是其計算量大,用時較長,同時硬件要求也困難[10],為此本文選擇基于誤差分級選擇變論域模糊分數階PID控制器的伸縮因子。
對FDM型3D打印機噴頭溫度的誤差進行分級處理,將誤差劃分為如下幾個區域,區間1: [-emax,-0.6emax]∪[0.6emax,emax], 區間2: [-0.6emax,-0.4emax]∪[0.4emax,0.6emax], 區間3: [-0.4emax,-0.2emax]∪[0.2emax,0.4emax], 區間4: [-0.2emax,0.2emax], 為了克服模糊推理法選擇的伸縮因子帶來的困難,將噴頭溫度誤差劃分以上4個區域,對于每個區域選擇一組固定的αe、αec、βkp、βki、βkd值,大大緩解了伸縮因子的計算工作量,便于設計與硬件實現。其中,emax=r。 對于在各個誤差區間的伸縮因子具體值見表1。

表1 誤差分級選擇伸縮因子
根據神經內分泌激素調節規律,激素的調節存在兩種反饋,根據體內激素H3的濃度信息反饋到下丘腦和垂體進而增加或較少激素H1和H2的濃度,使激素H3保持在穩定的水平,同時存在一種短反饋作用,以垂體作為短環反饋的作用點,將激素H2的濃度信息直接反饋到垂體上,改變激素H3的濃度,其過程如圖4所示。

圖4 短反饋回路
本文將變論域分形模糊分數階PID控制器比作垂體,其輸出的變化率Δuc(k)和誤差信號作為算法的輸入,然后在Farhy L S提出的神經內分泌激素調節的普遍規律對算法的輸入變量進行運算處理[11],能夠得到非線性反饋的函數

(10)
式中:a,n為算法系數,取值決定算法補償的幅度;Δe(k) 為誤差增量;Δu(k) 為輸出增量。
由式(10)可知,短反饋算法是根據系統誤差,誤差增量以及輸出增量來實時調整短反饋算法的輸出,進而使系統往系統設定值方向進行改變。本文將模糊分數階滑模控制器的輸出的變化率Δuc(k)當成算法的啟動信號,進而變論域分形模糊分數階PID控制器的輸出u(k)為
u(k)=uc(k)-f(Δuc(k),e(k))
(11)
預測模型主要通過前期數據的輸入以及過程數據的記錄,利用相關的計算進行推導從而對被控對象未來的輸出進行預測[12]。本文為了簡化動態矩陣控制(DMC)的算法過程,選擇較為簡單的方法來實現模型預測,即單值預估的方法。
假設k時刻采樣值為y(k), 并在設定的采樣周期內維持不變,在k+1時刻采樣值為y(k+1), 通過將兩次采樣值進行對比作差,得到yc(k+1), 利用所得的采樣值差值yc(k+1) 對k+1時刻采樣值為y(k+1) 進行修正,得到預測輸出y*(k+1), 對于其它時刻的預測輸出,保持同樣的變化規律。變論域分形模糊分數階PID控制器的反饋值就將y*(k+1) 反饋到輸入端,并與設定值進行比較產生FDM打印機噴頭溫度誤差。本文采用在線單值預估方法,模型只能對未來一個采樣周期的輸出進行預測。通過以上分析可知,y*(k+1) 作為系統反饋值,為了能夠適當調節預測控制的能力,引入預測模型系數K值,該系數能夠根據yc(k+1) 來調整y*(k+1)。
為了增加FDM型3D打印機噴頭溫度系統的控制精度和品質,本文以傳統的變論域分形模糊分數階PID控制器為作用點引入超短反饋環節,同時在變論域分形模糊分數階PID控制器的反饋環節引入預測模型。對于變論域分形模糊分數階PID控制的比例因子和量化因子,引入鯨魚算法及其改進算法進行參數優化。其原理如圖5所示。

圖5 基于預測模型雙模糊分數階PID優化控制的原理
本文對于FDM型3D打印機噴頭溫度系統的預測雙反饋變論域分形模糊分數階PID控制器的參數優化,采用的指標為ITAE指標,表達式為

(12)
鯨魚算法(WOA)是一種群智能優化算法,其核心思想來源于鯨魚捕食。當鯨魚在深海中捕食一般采用的是泡泡網捕食方法,當鯨魚發現獵物時,將沿著螺旋路徑不斷靠近獵物,并在沿途中制造泡泡網,螺旋上游靠近獵物,該方法可分為3個階段,一是鯨魚搜尋獵物,其次是環繞包圍發現的獵物,最后是沿著螺旋軌跡發動泡泡網攻擊,捕捉獵物[13]。通過模擬鯨魚捕食的行為,將WOA算法分成以上3個部分,當鯨魚捕捉到獵物時,即為問題的最優解。
3.1.1 包圍捕食階段

D=|C·Xp(t)-X(t)|
(13)
X(t+1)=Xp(t)-A·D
(14)
式中:t為算法迭代次數;Xp(t) 為最優解,即目標獵物位置;X(t) 為個體搜索位置;C為擺動系數;A為收斂因子;D為目標獵物與搜索體之間的距離
A=2a·r1-a
(15)
C=2r2
(16)
(17)
式中:r1、r2分別為[0,1]上的隨機數;a為算法控制參數,線性遞減;Tmax為最大迭代次數。
3.1.2 螺旋攻擊階段
螺旋攻擊階段是模擬鯨魚發現目標獵物時,沿著螺旋軌跡不斷靠近獵物的過程。該階段首先計算鯨魚搜索個體與目標獵物之間的距離如式(13)所示,然后沿著螺旋軌跡慢慢縮小包圍圈靠近獵物,其軌跡更新為
X(t+1)=D·ebl·cos(2πl)+Xp(t)
(18)
式中:l為[0,1]上的隨機數;b為對數螺旋形狀的常量系數。
鯨魚在螺旋攻擊的時候存在兩個過程,一是沿著螺旋估計運行,二是不斷縮小包圍圈,這樣才能捕捉獵物,為此引入概率p判斷鯨魚此時在哪個過程,其數學模型描述為
(19)
3.1.3 尋找獵物階段
在鯨魚算法中,通過 |A| 的取值大小來判斷鯨魚處于搜尋獵物階段還是捕食階段,當 |A|>1時,鯨魚將無法發現獵物蹤跡,此時只能隨機搜索獵物的位置,其模型為
D=|C·Xrand(t)-X(t)|
(20)
X(t+1)=Xrand(t)-A·D
(21)
式中:Xrand(t) 為鯨魚群體中隨機選擇的個體位置向量。
針對基本鯨魚優化算法易陷入早熟和局部最優解且收斂速度慢等問題,本文將對基本WOA算法從多個方面進行改進。
3.2.1 種群初始化
針對基本鯨魚算法種群初始化是一種隨機初始化的方法,種群多樣性會大大降低,因此本文采用偽反向學習策略來進行鯨魚種群的初始化[14],大大增加種群的多樣性,避免陷入局部最優。

(22)
(23)

(24)
通過以上計算得出的偽反向個體與隨機初始化得出的個體進行合并得到2N個個體,按計算其適應度值從小到大的順序排,選取前N個鯨魚的位置作為初始位置。通過偽反向學習策略得到的初始化鯨魚的種群能夠增加種群的多樣性和品質,使初始化種群分布更加合理。
3.2.2 非線性收斂因子與自適應權重
同時針對WOA算法中,控制參數a直接決定著 |A| 的大小,進而決定了鯨魚算法的局部和全局搜索能力,對提高算法精度都起著至關重要的作用。基本WOA算法中以式(17)線性遞減,使算法收斂速度慢,為此本文采用一種非線性分段公式,在確保收斂速度的同時保證了局部和全局的搜索能力

(25)
針對WOA算法中沒有考慮獵物引導鯨魚進行位置更新的引導力可能存在差異,結合粒子群算法的位置更新,引入自適應權重,其公式如下
(26)
基本鯨魚算法的位置更新則變更為

(27)
X(t+1)=ωXrand(t)-A·D
(28)
利用Matlab/Simulink仿真軟件,搭建基于改進鯨魚算法優化的預測模型雙反饋變論域分形模糊分數階PID控制的FDM型3D打印機噴嘴溫度控制系統仿真模型,如圖6所示。其中,3D打印機噴嘴溫度的數學模型的主要參數為[15]:K=0.232,T=23.4,τ=10.6。同時建立了改進鯨魚搜索算法與Simulink模型之間的聯系。它們之間的紐帶是粒子(即:Ke、Kec、K1、K2、K3)和該粒子對應的適應度值J(即:控制器的性能指標)。在改進鯨魚搜索算法產生粒子的前提下,利用Matlab軟件編寫WOA/IWOA算法來優化預測模型雙反饋變論域分形模糊分數階PID控制器的參數,在assignin函數的調用下將WOA/IWOA算法優化的參數送到Simulink模型進行仿真,并判斷是否滿足終止條件。

圖6 預測模型雙反饋變論域分形模糊分數階PID控制仿真對比模型
圖7為系統單位階躍仿真曲線,由曲線可知,基于改進鯨魚算法優化的預測模型雙反饋變論域分形模糊分數階PID控制器(IWOA-預測-VFFOPID)、預測模型雙反饋變論域分形模糊分數階PID控制器(預測-VFFOPID)和傳統的PID控制器三者之間相比,傳統的PID控制響應速度最慢,預測-VFFOPID控制器次之,IWOA-預測-VFFOPID控制器最快,且上升時間、峰值時間等大大減小,穩態誤差減小,其具體數值見表2。

圖7 不同算法的溫度仿真曲線

表2 控制器的動態性能指標的比較
為了驗證3D打印機噴頭溫度系統抗干擾能力,在時間為100 s的時間加入幅值為0.1的階躍擾動,模型系統在實際過程中受到的不確定擾動。IWOA-預測-VFFOPID控制器能夠在134 s恢復穩定,而傳統的PID控制需要58 s恢復,系統仿真結果如圖8所示,其由恢復時間可知,IWOA-預測-VFFOPID控制的抗干擾能力較強。

圖8 不同算法的抗干擾仿真曲線
為了驗證系統在模型失配情況下的魯棒性比較,使系統的時間常數增加25%進行仿真實驗,仿真結果如圖9所示。由曲線可知,在模型失配時,系統都出現了一定的超調,其中,IWOA-預測-VFFOPID控制器的超調量為3.05%,穩定時間為135 s,系統未出現振蕩;而傳統的PID控制器的超調量為7.02%,穩定時間為265 s,并產生了小的振蕩,由此可見,IWOA-預測-VFFOPID控制器能夠最快的恢復到穩態值,魯棒性較強,對于復雜溫度控制系統具有較強的適應性和有效性。

圖9 不同算法的失配模型仿真曲線
針對大滯后、非線性及強干擾的3D打印機噴頭溫度控制制系統,導致打印產品的精度差及表面粗糙的問題,建立了一種預測模型雙反饋變論域分形模糊分數階PID控制器,同時引入改進的鯨魚算法,實現變論域分行模糊分數階PID參數的自調整,與傳統的PID控制對比,有效解決了強干擾、非線性等問題。仿真結果表明,本文方法明顯優于傳統PID控制,可實現調節時間短、超調量小、響應速度快、控制精度高等優良的性能指標,能夠改善打印產品精度和表面質量。