?

基于改進SA-WOA算法優化熱封刀溫度控制系統PID參數的研究

2022-07-22 06:07魏上云胡曉兵章程軍
關鍵詞:模擬退火套袋鯨魚

魏上云,馬 靖,胡曉兵,李 虎,郭 爽,章程軍

(1.四川大學機械工程學院,成都 610065;2.四川省宜賓普什集團有限公司技術中心,宜賓 644007;3.四川大學宜賓園區,宜賓 644000)

全自動套袋機是一種將具有熱塑特性的薄膜通過熱封刀加熱裁切制成包裝袋,并自動套裝在產品上的機器[1].熱封質量的好壞直接影響產品的后續加工.熱封質量與熱封溫度、熱封壓力以及熱封時間相關聯,其中熱封溫度對于熱封質量的影響最大[2,3],因此對熱封溫度控制的研究尤為重要.

目前溫度控制最為普遍的方式為比例-積分-微分(Proportional-Integral-Derivative,PID)控制,PID控制是控制領域最成熟也最基礎的控制方式[4].但是PID控制存在控制參數難以調節的缺點.控制參數直接影響PID控制的效果.目前PID參數的設定大多通過人為經驗選取,控制效果不理想.西門子S7-200 SMART PLC中內置的PID模塊采用繼電反饋算法進行自整定尋優.這種算法首先需要人為設定控制參數,讓系統達到平衡,平衡之后,再給定系統一個微小的擾動,根據系統產生的變化計算出最優的控制參數[5].這種算法整定過程復雜,耗費時間過長,且尋優效果不理想.文獻[6,7]提出利用粒子群算法找尋最優PID控制參數,以滿足實際控制需求.但是粒子群算法計算量大,且有可能找到的是局部最優參數,導致控制效果不理想[8-10].鯨魚優化算法(Whale Optimization Algorithm,WOA),是一種智能優化算法,相對于粒子群算法,鯨魚算法的計算量更小,優化效果更好[11].但是鯨魚算法也會有進入局部最優的情況存在[12].為了避免這一情況,人們考慮引入模擬退火算法(Simulated Annealing Algorithm,SA).模擬退火算法是一種模擬溫度降溫過程而引出的算法,它可以有效地避免陷入局部最優[13].文獻[14]提出了一種基于模擬退火的改進粒子群算法(Improved Particle Swarm Optimization Based on Simulated Annealing,SACPSO)對PID參數進行整定.本文則將SA算法與WOA算法相結合,提出了一種改進的基于模擬退火的鯨魚算法(Improved Whale Algorithm Based on Simulated Annealing Algorithm,SA-WOA).該算法可以有效避免陷入局部最優.我們在此基礎上改進提升算法的計算效率,將改進后SA-WOA算法進行PID參數自整定尋找最優PID參數,然后將所得參數應用到PID控制器上,實現對套袋機熱封刀的溫度控制.

2 全自動套袋機溫度控制系統

本文對一款自研的TD150全自動套袋機進行研究.全自動套袋機溫度控制即是對套袋機的熱封刀進行溫度控制.套袋機控制器采用西門子S7-200 SMART型號PLC,K型熱電偶溫度傳感器采集熱封刀的溫度,西門子PLC的EM AT04模擬量輸入模塊將溫度傳感器的電壓信號轉換為數字信號,實時采集溫度信息.PLC普通數字量輸出口進行PWM脈寬調制控制固態繼電器,實現加熱管不同功率的加熱,完成對熱封刀溫度的精準控制.PLC與HMI人機界面采用RS485串口通訊,可以實時讀取溫度傳感器的信息,溫度數據在界面上顯示,可以更直觀地檢測溫度是否到達設定值.PLC與上位機之間采用ISO-TCP通訊[15],上位機實時讀取溫度數據,通過溫度數據的讀取可以得到系統的模型,上位機進行參數自整定,將計算的參數傳入PLC控制器.整個控制系統如圖1所示.

圖1 溫度控制系統

熱封刀如圖2所示,其中傳感器安裝孔用于安裝K型熱電偶傳感器,加熱管安裝孔用于安裝加熱管,加熱整個刀體,完成對薄膜的熱封.

對于圖2所示的熱封刀模型,熱封刀的熱量獲取是由加熱管產生的熱量減去通過刀體散發給環境的熱量[16],因此有如下公式.

(a)熱封刀三維模型

(1)

式中,m為熱封刀的質量;c為比熱容;h為熱封刀表面傳熱系數;S為熱封刀與環境交換熱量的總面積;T為熱封刀當前溫度;T′為環境當前溫度;Q為熱封刀獲取的熱量.

為了對式(1)進行簡化,我們通常在平衡點(Q′,U′)附近將整個熱交換過程近似為線性過程,于是有

(2)

將式(1)兩邊同時除以hS得:

(3)

式中,t′、K均為常數;ΔT為熱封刀當前溫度與環境當前溫度的差值.

因此式(3)為一個微分方程,對式(3)進行拉普拉斯變換,結果可得

(4)

結合實際生產過程,熱量的傳遞過程是一個具有大慣性和大時滯性的過程.因此對式(4)修正可得

(5)

式中,τ為滯后時間.

根據文獻[17]介紹,通過階躍響應曲線法可以得出系統的傳遞函數.于是我們給定系統一個100%脈寬的輸入,通過溫度傳感器以0.5 s的采樣周期采集溫度數據,PLC再將溫度數據傳遞到上位機,根據數據得出系統在1400 s左右到達平衡.通過MATLAB的ident工具箱識別出傳遞函數為

(6)

式(6)中,擬合的傳遞函數與實測數據的擬合度為94.84%,擬合度較高.擬合曲線與實測數據曲線如圖3所示.

圖3 傳遞函數擬合曲線

3 改進SA-WOA智能優化算法

3.1 PID算法

PID算法的控制原理是將期望值與當前值做差得到誤差量,對誤差量進行比例、積分、微分運算可以得到一個控制量,將新的控制信號傳遞給系統進行控制,使實際值不斷地接近期望值.比例運算可以適當調整系統達到期望值的時間,比例過大會引起較大的超調,比例過小會導致達到穩態的時間過長.積分運算可以消除系統的穩態誤差.微分運算可以提前預知系統超調,減小輸出[18,19].一般情況下PI控制即可滿足需求.其控制如下式所示.

(7)

式中,KP為比例系數;KI為積分系數;KD為微分系數;e(t)為t時刻的誤差量.

因為實際生產中都是對數據進行離散采樣,目前使用最廣泛的是增量式PID.將式(7)進行離散化處理得到:

Δu(t)=KP(e(t)-e(t-1))+KIe(t)+

KD(e(t)-2e(t-1)+e(t-2))

(8)

在實際控制系統中,更改KP、KI、KD3個參數即可對系統進行控制,但是傳統的PID算法中這3個參數是人為根據經驗制訂的,并不一定是最優的.因此傳統的PID算法控制溫度系統不是很精確.

3.2 鯨魚算法

鯨魚算法是一種智能優化算法,它是模仿鯨魚捕食的過程而演化出來的算法,具有原理簡單、操作簡易、易于實現、需要調整的參數少及魯棒性強的特點.在函數優化方面,鯨魚算法的求解精度和穩定性要優于粒子群算法、差分進化算法和遺傳算法等.鯨魚捕食采用的是一種泡泡網捕食的方法,這種捕食方法有以下3種表現形式[20]:

(1)包圍獵物.

鯨魚可以識別獵物的位置并將其包圍,通過下列方程表現這一過程:

(9)

(10)

(11)

(12)

(2)泡泡網攻擊.

(13)

式中,b、l為常數.

(3)搜索獵物.

(14)

(15)

3.3 模擬退火算法

模擬退火算法(SA算法)是一種模擬金屬退火的原理而衍生出來的算法,它以一定的概率接受比當前解差的解,從而有概率跳出局部最優,具有計算過程簡單,通用魯棒性強的特點.SA算法的計算過程如下[14].

(1)初始化:初始溫度T,初始解狀態x(迭代起點),每個溫度狀態下的迭代次數L.

(2)產生新解xnew=x+Δx,Δx為一個增量范圍內的隨機數.

(4)判斷是否達到該溫度下的迭代次數,如果滿足迭代次數,則判斷是否滿足終止條件,滿足則停止;如果不滿足迭代次數,則繼續迭代,滿足迭代次數但不滿足終止條件的話則繼續降溫.溫度降溫過程一般為T=αT,α一般取接近于1的值,如0.95、0.9等.

3.4 算法改進

結合SA算法以及WOA算法的優點,將SA算法與WOA算法結合保證優化結果是全局最優,因此采用SA-WOA算法對PID參數進行整定,理論上可以達到最優的控制效果.我們在此基礎上對SA-WOA算法做如下改進.

(16)

式中,L表示當前迭代次數;Lmax表示最大迭代次數.

(2)鯨魚在進行泡泡網攻擊時,定義螺旋游動以及向獵物靠近兩種方式概率相同,但是在實際中,鯨魚在前期搜索范圍較大的情況下,有較大概率圍繞目標螺旋游走繼續找尋獵物;在后期距離獵物較近的情況下,有大概率向獵物靠近.因此我們將算法進行以下改進.

(17)

式中,L表示當前迭代次數;Lmax表示最大迭代次數.

(3)模擬退火算法的終止條件通常為溫度下降到極低或者誤差達到設定需求.本文綜合考慮鯨魚算法的迭代終止條件,將終止條件改為迭代次數的達到,同時對溫度的下降過程進行改進,溫度下降需要與迭代次數有關.考慮反比例函數關系,改進后的溫度下降過程為

(18)

式中,L表示當前迭代次數;Lmax表示最大迭代次數.改進后的算法流程圖如圖4所示.

圖4 改進算法流程

改進后的SA-WOA算法步驟如下所示.

(1)根據溫度控制系統的約束條件,初始化鯨魚種群(數量為m),包括鯨魚的位置,以及給定起始溫度T0,迭代次數Lmax.

(2)根據適應度函數計算每條鯨魚的適應度值,并更新最優鯨魚位置及最優值.

(3)判斷是否滿足結束條件,如滿足則輸出最優值,不滿足則執行步驟(4).

(6)進行降溫操作.

(7)返回步驟(2).

對比文獻[14]所用方法,文獻[14]采用模擬退火策略對改進粒子群算法進行優化的原理為:當改進粒子群算法進入局部最優,或者達到迭代次數后,再引入模擬退火算法進行二次優化.此種算法屬于先利用改進粒子群算法進行粗尋優,再利用模擬退火算法進行精尋優的方式.本文算法與之不同,本文算法將模擬退火算法的思想融入鯨魚算法中,在鯨魚算法的每一次迭代中,都進行一次模擬退火策略的判斷.本文算法可以加快迭代的速度,減少計算量,且同時保證結果為全局最優.

4 仿真對比實驗分析

利用MATLAB R2017b軟件進行仿真分析,將改進的SA-WOA算法在軟件上編程,適應度函數考慮溫度的總誤差以及超調量,制訂適應度函數為

(19)

式中,c1、c2為權重系數.

制定鯨魚種群數量為100,迭代次數為100,KP、KI和KD等3個參數的范圍依次為[0,10]、[0,10]、[0,10],系統輸入u(i)的范圍為[0,100].權重系數c1為0.999,c2為0.001.根據套袋機要求,封膜溫度為130 ℃.

由于系統延時不論在何種算法優化情況下都是相同的,因此在進行仿真實驗時,它可以忽略不計.實驗結果如圖5所示,系統在160 s之后系統達到平衡,且整個過程中,系統的超調量為0.實驗結果表明,本文算法優化的參數值可以很好地控制系統溫度.

圖5 仿真實驗結果曲線

改進算法的適應度曲線如圖6所示,我們可以看出,在種群數量為100的情況下,算法迭代7次就可以求解出最優結果.算法收斂速度快.

圖6 適應度曲線

為了體現本算法的優勢之處,我們將本算法的整定結果與PLC中PID自整定模塊整定結果[5]、粒子群算法整定結果[7]以及基于模擬退火的改進粒子群算法(SACPSO算法)的整定結果[14]進行比較,同時對這4種算法的優化時間進行統計.4種算法求解結果如表1所示.通過表1我們可以看出,相對于繼電反饋算法、粒子群算法以及基于模擬退火的改進粒子群算法,本文改進算法自整定時間最短(155 s),有較大的優勢.

表1 算法求解結果

我們將這4種算法所求參數分別進行仿真實驗,仿真結果對比曲線如圖7所示.根據結果我們可以看出,本文改進算法的超調量為0且達到目標溫度所用時間最短;粒子群算法優化結果超調量最大且震蕩嚴重;SACPSO算法優化效果相較于粒子群算法優化效果更好,達到穩定的時間與本文算法基本一致,但是超調量也較大;繼電反饋算法優化結果超調量低,但是達到目標溫度所需時間過長.因此本文算法相比于其他3種算法具有明顯的優勢.

圖7 仿真結果對比曲線

5 現場實驗

將仿真優化PID參數輸入PLC控制器進行實驗,通過網線將PLC與上位機連接后,進行通訊,每隔0.5 s采集一次溫度數據,將采集的溫度數據繪制成曲線圖,結果如圖8所示.

圖8 溫度實測數據曲線

從圖8根據結果可以看出,實測曲線與仿真曲線有差別,可能由兩個原因造成:(1)系統存在大的時滯性,仿真時未考慮;(2)系統實際的傳遞函數與MATLAB ident工具箱識別的傳遞函數有差異.但是溫度實測曲線表明系統在140 s左右到達設定溫度.在400 s之前溫度有一定的偏差,偏差范圍在[-1.8,+1.2]可以保證較好的熱封質量;到400 s之后,溫度趨于穩定,由于環境的波動會有微小的抖動.這時熱封質量最佳.綜上,本文算法優化的PID參數控制效果良好,可以滿足TD150套袋機熱封刀溫度控制要求.

6 結 論

本文將鯨魚算法和模擬退火算法結合并改進,再把改進后的算法在MATLAB R2017b軟件上進行仿真對比實驗.仿真對比實驗結果表明,本文算法通過優化的參數在系統超調量以及穩定時間方面具有較大優勢,且本文算法計算速度更快.我們將仿真所得優化參數進行現場實驗,結果也表明了本文算法的可靠性以及優越性.綜上,本文算法可以實現套袋機PID溫度控制參數的自整定,提高溫度的控制效果,保證封膜的質量,對套袋機熱封刀溫度控制有一定的實際意義.

猜你喜歡
模擬退火套袋鯨魚
小鯨魚
結合模擬退火和多分配策略的密度峰值聚類算法
樂昌柰李“煉金術” 套袋果身價十倍
不套袋與套袋栽培的紅富士蘋果品質比較
迷途鯨魚
基于遺傳模擬退火法的大地電磁非線性反演研究
鯨魚
鯨魚島——拖延癥
改進模擬退火算法在TSP中的應用
套袋
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合