
摘 要: 為了提高船舶在復雜海況下的操作性能,有效地減小船舶的橫搖,保持船舶航行的穩定性,針對船舶舵減搖系統存在的非線性和時變性問題,采用基于PLC的模糊控制方法,由施耐德PLC及其常規輸入/輸出模塊組成模糊控制器,利用Unity Pro XL軟件采用模塊化編程方法實現其控制功能。在實驗室條件下對構建的控制器在舵減搖系統中進行了初步測試,試驗表明,基于施耐德PLC實現船舶舵減搖系統模糊控制的制定,既保留了可編程邏輯控制器PLC的靈活性、可靠性、適應能力強等特點,又提高了整個控制系統的智能化程度。
關鍵詞: 船舶; PLC; 模糊控制; 舵減搖系統
中圖分類號: TN911?34 文獻標識碼: A 文章編號: 1004?373X(2016)02?0140?03
Application of fuzzy control based on PLC in ship rudder roll stabilization system
ZHOU Ying1, HU Dabin1, JIN Rufeng2, HU Jinhui1
(1. College of Power Engineering, Naval University of Engineering, Wuhan 430033, China;
2. School of Naval Architecture, Dalian University of Technology, Dalian 116023, China)
Abstract: To improve the ship operating performance under complex sea conditions, reduce the ship rolling effectively, and maintain the stability of the ship navigation, for the problems of nonlinearity and time?varying characteristics existing in the ship rudder roll stabilization system, a fuzzy control method based on PLC is adopted. The fuzzy controller is composed of PLC made by Schneider and conventional input/output modules. Its control function is realized by means of modularization programming method with Unity Pro XL software. Under the condition of laboratory, the constructed controller was tested in rudder roll stabilization system. The test results show that the fuzzy control based on PLC made by Schneider for the ship rudder roll stabilization can retain the characteristics of flexibility, reliability and strong adaptability of PLC, and improve the intelligent level of the whole control system.
Keywords: ship; PLC; fuzzy control; rudder roll stabilization system
0 引 言
在現代工業的實際系統中,由于非線性、時變性和滯后性的存在,傳統的控制理論難以取得理想的控制效果。對于這樣的系統,比如電機的阻力隨主軸轉速非線性變化,采用模糊控制器能取得更好的效果。所謂的模糊控制器,是基于模糊算法的控制系統進行控制,模擬人的思維邏輯方法,不需要精準的數學模型,只需要把人的經驗歸納為定性描述的語句,利用模糊理論,將其定量化,可以完全代替人的手動操作實現自動控制功能。可編程邏輯控制器(PLC)因其可靠性高、編程簡單靈活、維護方便等優點,廣泛應用于工業控制中。傳統的PLC自動控制系統雖然具有開發時間短、設計方便等優點,但卻存在著控制精度不高和自動化程度低的缺點。而基于PLC的模糊控制能夠回避對復雜被控對象的建模問題,將操作人員的經驗轉化為模糊控制規則,可以構造出對被控對象進行自動化程度較高的自動控制系統。PLC 上實現模糊控制的基本方式分兩種[1]:一是使用專用的硬件模糊控制器,這種方式推理速度快,控制精度高;缺點是其價格昂貴,使用范圍受到限制;另一種是在軟件上用模糊算法取代數字控制算法,把模糊控制程序作為PLC控制程序中的一個子程序,這種方法組成簡單,靈活性高,應用范圍廣。
本文采用第二種方法,利用Unity Pro XL軟件,采用模塊化編程的方法,使用語句表編制程序實現模糊控制算法,使預想的模糊控制策略在施耐德PLC上得以實現。并將之運用到船舶舵減搖系統當中進行研究分析。本文研究的目的:將PLC的模糊控制方法應用于舵減搖系統中,提高船舶在復雜海況下的操作性能,有效地減小船舶的橫搖,保持船舶航行的穩定性。
1 舵減搖系統模糊控制策略
舵減搖裝置可以利用船舶上已有的舵機的操縱系統,只要增添傳感器、控制器等少數部件就能實現其相應的功能。舵減搖系統裝置的設備質量輕、體積適中,因此在大中型軍艦和商船中應用廣泛。模糊控制運用模糊理論邏輯方法進行控制,具有判斷、推理、決策的功能,不苛求被控制系統要具有精準的數學模型,具有較好的魯棒性。因此,為了提高控制系統的穩定性和可靠性,在舵減搖系統中采用模糊控制。
1.1 控制系統結構
舵減搖模糊控制系統由兩大部分組成:一是操舵控制系統與船舶串聯的部分;二是舵機伺服系統與船舶串聯的部分。整個系統可由施耐德PLC控制器及相應的傳感器構成,其控制原理圖如圖1所示[2]。
圖1 舵減搖系統
1.2 變量自整定模糊控制器的設計
舵減搖控制器的輸入語言變量為船舶橫搖角Φ和船舶橫搖角變化率Φ*,輸出語言變量為舵角δ。這樣就為舵減搖系統確定了一個雙輸入/單輸出的模糊控制器,并制定相應的模糊控制規則,可以達到減搖效果。按照實際的控制經驗,選取橫搖角Φ、橫搖角變化率Φ*和輸出控制量舵角δ的基本論域分別為:
橫搖角Φ為[-45°,45°];橫搖角變化率Φ*為[-10,10];輸出控制量舵角δ為[-50°,50°]。
將橫搖角Φ、橫搖角變化率Φ*、輸出控制量δ所對應的語言變量E、EC以及U分成7檔,每一檔對應一個模糊子集:
E={PB,PM,PS,ZO,NS,NM,NB};
EC={PB,PM,PS,ZO,NS,NM,NB};
U={PB,PM,PS,ZO,NS,NM,NB}
可用模糊語言狀態詞正大、正中、正小、零、負小、負中、負大來描述E,EC和U,對應的符號分別為PB,PM,PS,ZO,NS,NM,NB。E和EC的論域定義為[-6,6], U的論域定義為[-7,7]之間,選擇三角形函數作為確定模糊語言變量的隸屬度。由此,模糊控制器可完成對輸入變量的模糊化,求得輸入變量的賦值表。模糊輸入變量由模糊控制規則進行推理決策,推理決策的結果經過模糊控制器變換成實際的校正量,這樣就完成了進一步控制。
基于PLC的模糊控制器,在程序功能的實現上,控制規則采用條件語句形式,即“if…and…,then…”。總結控制經驗,因為每一條模糊控制條件語句都決定了一個模糊關系,故共有49條控制規則。可得舵減搖系統模糊控制器的總的模糊控制關系矩陣R為:[R=R1∨R2∨…∨R49],其中[∨]表示取大。應用模糊控制理論合成推理法得到的模糊控制量查詢表,見表1。
表1 模糊控制量查詢表
1.3 模糊控制程序流程圖
整個模糊控制程序的流程圖如圖2所示[3]。
圖2 模糊控制程序流程圖
2 Unity Pro XL實現的模糊控制算法
2.1 硬件選型
基于PLC的模糊控制工作的核心是PLC控制站[4?6],其初步配置選型如下:選用電源模塊CPS 3020,CPU模塊P34 2020,ModBus通信模塊NOM 0200、模擬輸入模塊AMI 0410、離散輸入模塊DDI 3202、繼電輸出模塊DRA 1505。其各部分的功能如下:電源模塊將交流電轉化為PLC控制站所需的直流電;CPU模塊實現邏輯和計算功能;ModBus通信模塊實現ModBus總線的通信連接;模擬輸入模塊將信號轉化成數字代碼并轉發到CPU模塊;離散輸入模塊處理邏輯輸入信號,并將信號轉化成數字代碼傳送到CPU模塊;繼電輸出模塊轉換來自CPU的信號,驅動執行機構動作,同時將信號發送到報警裝置。
2.2 程序設計
在整個程序編程時,將模糊控制量查詢表依次存儲在PLC的內存%M1000~%M1168中,之后最關鍵的是如何查詢模糊控制量查詢表。可以用直接尋址的方法,簡單明了,控制性能好,但是缺點是查詢表的容量很大時,程序就變得十分冗長,而且占用了大量的內存。為了避免這種情況,可以采用“基址+偏移尋址”的方法。計算法則為:U的地址=%M1000+13(e+6)+(ec+6),e,ec代表E和EC論域中的元素。最終由處理器模塊實現模糊量到精確量的轉化,將最終計算結果送到輸出模塊實現控制功能,部分程序語句如下:
%MW56 := ADD (%MW54, 6) ;
%MW57 := ADD (%MW55, 6);
%MW58 := MUL (%MW56,13);
%MW60 := ADD (%MW58,%MW57) ;
%MW62 := ADD (%MW100,%MW60) ;
%MW64 := MOVE(%MW62) ;
3 結 語
在實驗室條件下對所構建的控制器在舵減搖系統中進行了初步測試,試驗中采用仿真微機+I/O模塊的方法模擬生成實際系統待檢測信號。實驗室模擬的測試中,系統的控制功能正常,在工況變換時響應速度快,能夠有效地保持船舶航行的穩定性。模糊控制器的設計和試驗表明,基于施耐德PLC實現船舶舵減搖系統模糊控制的制定,既保留了可編程邏輯控制器PLC的靈活性、可靠性、適應能力強等特點,又提高了整個控制系統的智能化程度。對于那些時變的、非線性、難以建立數學模型的被控系統,基于PLC的模糊控制方法應為一種較為理想的控制方案。
參考文獻
[1] 蔡軍,曹慧英.基于PLC模糊控制的調速系統研究[J].微計算機信息,2008(25):56?57.
[2] 鄭明輝,楊松林,王志東.一種采用模糊控制的舵減搖系統的仿真研究[J].船電技術,1997(1):17?20.
[3] 康斌棟,王志新.基于PLC模糊控制軟件的設計研究[J].機電一體化,2000(1):57?58.
[4] 蘇攀,吳杰長.基于PLC的船舶機艙設備的雙層網絡控制系統設計[J].船海工程,2015(2):104?106.
[5] 鄭阿奇.施耐德PLC應用技術[M].北京:電子工業出版社,2011.
[6] 王兆宇.施耐德PLC變頻控制器觸摸屏綜合應用[M].北京:中國電力出版社,2012.