香朝元,趙 弘
(中國石油大學(北京) 機械與儲運工程學院,北京 102249)
管道運輸具有了安全度高、高速經濟性、運輸規模大、控制自動化等優點,在全世界迅速發展。到目前為止,全球各種運輸管道已達到250萬km,比全球鐵路的總里程還長[1]。由于管道內部空間狹小,有潤滑油等各種材料的堆積,堵塞、腐蝕、磨損成為了油氣管道的主要受損原因。為了防止管道的損傷進一步擴大,石油和天然氣管道需要定期檢查,損壞的部位必須及時修理。油氣管道智能封堵技術作為一種重要的管道搶修方法,尤其對于海洋油氣管道,可以有效的減少搶修時間,快速阻止油氣的泄漏,降低維修工作的風險,具有著廣泛的應用前景[2]。
管內智能封堵器在封堵過程中需要避免水擊對管道帶來的危害,水擊則是由于管內流通面積的減小。因此封堵速度要控制在一個特定的區間內,以使水擊壓力保持在安全的區間內,才可以保障工作的安全性[3]。
傳統PID控制雖然原理簡單、運用廣泛,但是面對運動過程復雜的控制環境時,通常需要通過結合神經網絡算法,利用神經網絡訓練3個控制參數,達到優化控制效果的目的。譚淵等人在滑油壓力氣動控制的研究中,以及黃曉萍等人在注塑機液壓控制的研究中,就利用了基于BP神經網絡的PID控制方法[4-5]。
本文在管內智能封堵器封堵速度控制系統研究的基礎上,利用神經網絡的特點和優勢,設計了基于BP神經網絡的PID控制方法,對管內智能封堵器的封堵速度進行實時控制,從而改善管內智能封堵器的運行性能。
管道高壓智能封堵技術是一種新型的管道堵頭維修技術,逐漸成為管道維修方面最為成熟的技術。以挪威的PSI和美國的TDW為例,他們通過研究管內高壓封堵技術的原理,開發出管內封堵新技術,并研制了管內智能封堵器[6]。
管道智能封堵器工作原理如圖1所示。管道中的智能封堵器從清管器的末端進入管道,由管道中的壓差作用而向下游移動。地面控制中心和管道智能封堵器通過安裝在管道壁上的次聲電磁脈沖信號發生器交換信息。信號發生器可以將信號滲透到管道壁中,并與智能封堵器通信。如果封堵器在故障管道附近,控制中心將發送控制命令以關閉封堵器。收到封堵命令后,微型液壓泵內的液壓缸驅動活塞桿移動,封堵模塊端面的承壓頭和工作盤在其驅動下被軸向擰緊,鎖定滑塊沿擠壓碗斜向上方推動,直到鎖定模塊接觸面接觸內管壁并刺穿一定深度,實現智能封堵設備的自鎖。同時,封堵圈在壓力的作用下與管壁形成高壓接觸,用于密封管內智能封堵器的高壓介質。維護工作完成后,系統在解除信號的控制下釋放壓力,并且前后壓力達到平衡[7-8]。

圖1 智能封堵器工作原理
管內智能封堵器封堵速度系統框圖如圖2所示。在管內智能器封堵速度控制系統中,封堵信號通過積分放大器放大后,轉換為液壓能輸出,驅動液壓泵開始封堵,其內部液壓缸推動封堵器活塞桿進行封堵作業。活塞桿的運動速度則通過速度傳感器反饋到輸入端,構成閉環控制系統。

圖2 管內智能封堵器封堵速度系統框圖
管內智能封堵器的速度控制系統建模的關鍵是構造液壓缸的傳遞函數。其中影響最大的是閥的流量方程及缸的流量和負載方程。通過拉普拉斯變換可知,四通閥控非對稱液壓缸的負載流量方程為:
qL=Kqxv-KcpL
(1)
式中:qL為液壓缸流量;Kq為流量增益;xv為活塞位移;Kc為流量-壓力系數;pL為負載壓力。
液壓缸的流量連續性方程為:
(2)
式中:A1為液壓缸有桿腔面積;xp為液壓缸閥芯位移;Cip為負載流量泄漏系數;Vt為液壓缸容積;Cic為供油流量泄漏系數;ps為供油壓力。
液壓缸的負載力平衡方程為:
(3)
式中:mt為負載質量;Bp為負載阻尼;FL為管道內液壓差對負載及活塞造成的力。
液壓缸控制系統框圖如圖3所示。其中xp為液壓缸閥芯位移,xv為液壓缸活塞位移。

圖3 液壓缸控制系統框圖
根據液壓缸相關參數,本文液壓缸有桿腔的有效面積A1為7.85 cm2,可以得到液壓缸閥芯位移xp與液壓缸活塞位移xv的傳遞函數:

(4)
BP神經網絡以其原理簡單、操作易懂、學習能力強,被廣泛使用在各類控制結構中[9]。
PID控制是目前控制方法中最為常用。在簡單PID不能滿足控制要求的情況下,尤其是需多次手動改變PID參數以找到相對契合環境的值,將PID控制器與BP神經網絡算法結合能夠方便快捷的得到最適合的PID參數,達到最優控制[10]。管內智能封堵器的基于BP神經網絡的PID控制器設計如圖4所示。

圖4 基于BP神經網絡的PID控制器
基于BP神經網絡PID控制的控制算法為:
Δu(k)=u(k)-u(k-1)=
KpΔe(k)+Kle(k)+KDΔ2e(k)
(5)
式中:KP為比例系統;Kl為積分系數;KD為微分系數;e(k)為第k次采樣時刻的偏差值,e(k)=yr(k)-y(k),yr(k)為第k次時刻設定的期望值,y(k)為第k次時刻被控對象的實際輸出值。
Δe(k)=e(k)-e(k-1)
(6)
Δ2e(k)=Δe(k)-Δe(k-1)=
e(k)-2e(k-1)+e(k-2)
(7)
對于被控對象管內封堵器而言,其輸入就是Δe(k)。
控制器由2部分組成:常規PID控制部分能夠對受控對象形成閉環反饋控制;神經網絡部分能夠依據系統狀態和特定的學習算法,得到3個參數的最優解。神經網絡(NN)結構如圖5所示。

圖5 BP神經網絡結構
設計步驟如下:
1) 確定BP神經網絡的結構。本著簡化神經網絡系統、縮短學習訓練所需時間的原則,確定輸入層節點數目M、隱含層節點數目Q、隱含層的層數。在本神經網絡中,3個PID參數即為輸出層的3個輸出結果。隱含層可以提取信號特征,在某些應用如圖像處理中,增多隱含層的層數能夠使得網絡功能更強大。在PID控制應用中,使用1~2個隱含層便足夠滿足要求[11]。

3) 確定激活函數。本文的激活函數選取正切函數。
(8)
其導數為:
f′(x)=1-tanh2(x)=1-f2(x)
(9)
因為輸出層節點分別為KP、KI、KD,選擇非負正切函數。
(10)
其導數為:
g′(x)=2g(x)[1-g(x)]
(11)
4) 依次計算神經網絡各層的結果值。其中輸入層輸入為:
(12)
隱含層輸入為:
(13)
隱含層輸出為:
(14)
輸出層輸入為:
(15)
輸出層輸出為:
(16)

(17)

7) 若性能指標函數E(k)小于設定值,說明網絡輸出的3個參數已滿足PID控制器要求,學習結束;反之,令k=k+1,返回步驟4)繼續學習[12]。
現基于MATLAB-Simscape仿真軟件,建立管內智能封堵器的傳統PID控制系統和BP神經網絡PID控制系統。其中BP神經網絡的PID控制系統包含封堵器內液壓缸及負載,管內智能封堵器液壓泵動力源,和基于BP神經網絡的PID控制器[13]。仿真控制系統設計圖如圖6所示。

圖6 系統整體設計框圖
S函數是Simulink的高級功能模塊。Simulink作為MATLAB中的重要仿真模塊,其可以將MATLAB中編寫的M文件形成具有特定功能的S函數。在Simulink中還可以進行子系統的建立和封裝,本系統中子模塊用于封裝神經網絡,子系統中有r(k)和y(k)輸入,經過延時模塊后,匯入S函數中進行神經網絡計算,得出的結果用于反饋給輸入,進行自我調整,并得到相應的的變化趨勢[14-15]。
子系統的Simulink模型如圖7所示。

圖7 子系統的Simulink模型
神經網絡結構選為3-8-3結構,即3個輸入節點、8個隱含節點、3個輸出節點。
在傳統PID控制中,根據調試得到適當的速度曲線,此時PID參數為KP=10,KI=20,KD=0.01。
在第3節條件下,通過階躍輸出得到速度控制仿真曲線如圖8所示。

圖8 速度控制仿真曲線
由圖8可知,傳統PID控制的單位階躍曲線約4 s達到穩定狀態,超調量約為30%,而BP神經網絡的PID控制約3 s就能達到穩定,而超調量只有約10%,可知后者的控制精度和控制速度遠大于前者。
傳統PID控制和BP神經網絡PID控制的誤差如圖9所示。

圖9 誤差曲線
通過比較兩種不同的控制方式的誤差可以看出,BP神經網絡PID控制的誤差穩定后低于10%,略小于傳統PID控制。
在第4.1節相同的條件下,將階躍信號改變為正弦信號,觀察控制效果,得到的速度控制仿真曲線如圖10所示。誤差曲線如圖11所示。

圖10 速度控制仿真曲線

圖11 誤差曲線
在正弦輸入的情況下,可以看出BP神經網絡PID控制的效果要略好于傳統PID控制,但是兩者的控制誤差基本相同。所以可以得出BP神經網絡PID控制在控制正弦信號輸入時效果并沒有突出于傳統PID控制。
由以上分析可以看出,BP神經網絡PID控制器相比于傳統PID控制,控制速度和控制精度遠遠領先,并且誤差也較為理想。控制單位階躍輸入比控制正弦信號輸入時的效果更加明顯。
在封堵速度控制上,BP神經網絡可以使PID控制進行參數自適應,無需手動調整PID參數,并且控制速度比傳統PID控制中的控制速度更加穩定,誤差更小。
傳統PID控制方法的控制參數一般為定值,導致了控制精度的不足,而管內智能封堵器系統又是一個隨時變化、環境復雜的系統。本文通過比較傳統PID和基于BP神經網絡的PID,提出了后者作為管內智能封堵器封堵速度的控制方法,并進行了仿真分析,結果得出神經網絡PID控制不管從控制精度還是控制的安全度都要優于傳統PID,從而改善了管內智能封堵器的運行性能。基于BP神經網絡PID控制調整時間相比普通PID控制提前約1 s;超調量約為10 %,明顯小于傳統PID控制的30%;誤差穩定后維持在10%以下。