楊 琨,舒佳成,胡 彪
(武漢理工大學(xué) a.能源與動力工程學(xué)院; b.國家水運安全工程技術(shù)研究中心,武漢 430063)
基于互聯(lián)網(wǎng)的船舶機槳匹配遠程計算平臺
楊 琨a,b,舒佳成a,胡 彪a
(武漢理工大學(xué) a.能源與動力工程學(xué)院; b.國家水運安全工程技術(shù)研究中心,武漢 430063)
為滿足遠程船舶機槳匹配設(shè)計的需求,結(jié)合MATLAB和C#平臺進行混合編程,運用Easyui進行用戶交互界面設(shè)計,介紹一套基于互聯(lián)網(wǎng)的B/S架構(gòu)船舶機槳匹配遠程計算平臺。在該平臺上通過船舶機槳匹配中的初級匹配、終結(jié)匹配和空泡校核等3個實例進行平臺測試。測試結(jié)果表明,該平臺操作簡單、計算速度快、結(jié)果準確,能很好地實現(xiàn)遠程機槳匹配計算,可為未來船舶動力系統(tǒng)工況在線監(jiān)測及“互聯(lián)網(wǎng)+”環(huán)境下的機槳動態(tài)匹配提供工程基礎(chǔ)。
船舶工程;機槳匹配;互聯(lián)網(wǎng);遠程計算;MATLAB;C#
船舶機槳匹配是船舶設(shè)計中的一個重要環(huán)節(jié),通常在完成船舶型線設(shè)計并確定有效功率之后進行。機槳匹配是指螺旋槳的設(shè)計負荷點和主機的最大持續(xù)輸出點均能在所允許運行的工作區(qū)域內(nèi)選取一個機槳合理配合的設(shè)計工況點。不同機型的工作區(qū)域劃分是有差別的。目前絕大多數(shù)船舶的機槳匹配設(shè)計采用的是圖譜設(shè)計法,如經(jīng)過長期實踐檢驗和改進的B系列及MAU系列圖譜等。然而,圖譜設(shè)計法會涉及到大量的圖表和復(fù)雜的計算公式,導(dǎo)致計算工作量大,且取值和計算過程中產(chǎn)生的人為誤差會影響計算結(jié)果的準確性。針對該問題,一些研究機構(gòu)將計算機技術(shù)引入到機槳匹配設(shè)計中,實現(xiàn)船舶機槳匹配的快速、準確計算。
目前,相關(guān)學(xué)者廣泛采用MATLAB編寫船舶機槳匹配軟件,以此進行匹配計算。文獻[1]針對中小型電動船舶設(shè)計基于MATLAB/Guide的船舶機槳匹配軟件。文獻[2]根據(jù)導(dǎo)管圖譜設(shè)計理論,基于MATLAB研究拖網(wǎng)漁船的機槳匹配設(shè)計軟件。文獻[3]創(chuàng)建船舶、主柴油機和螺旋槳等3大數(shù)據(jù)庫,基于螺旋槳圖譜設(shè)計方法,利用MATLAB開發(fā)能覆蓋船舶機槳匹配設(shè)計問題的全過程的船舶機槳匹配設(shè)計軟件,并給出船舶機槳匹配設(shè)計的總流程和一些計算步驟的程序框圖。文獻[4]在分析拖網(wǎng)漁船的阻力特性、主機特性、雙速比減速齒輪箱推進特性和導(dǎo)管槳推進特性的基礎(chǔ)上,總結(jié)拖網(wǎng)漁船機槳匹配圖譜設(shè)計方法的計算流程,運用MATLAB編寫拖網(wǎng)漁船機槳匹配軟件。雖然這些軟件均能快速實現(xiàn)船舶機槳匹配計算,但均為單機版軟件,不具備遠程設(shè)計能力,當設(shè)計人員需異地進行匹配設(shè)計時,這些軟件不能滿足需求,因此設(shè)計一套基于遠程的匹配計算平臺尤為重要。
為滿足基于遠程的機槳匹配需求,彌補現(xiàn)有軟件的不足,從平臺的實用性和易用性出發(fā),根據(jù)網(wǎng)頁具有用戶圖形設(shè)計簡單和MATLAB計算能力強大的特點,設(shè)計并實現(xiàn)一種基于網(wǎng)絡(luò)的船舶機槳匹配遠程計算平臺。
船舶機槳匹配分為初級匹配設(shè)計和終結(jié)匹配設(shè)計,其中初級匹配設(shè)計根據(jù)給定參數(shù)的不同分為2種情況(第1種給定船速、有效功率和螺旋槳直徑;第2種給定船速、有效功率和轉(zhuǎn)速)。[5]在實際情形中,第1種情況更加普遍,這里針對B型槳以第1種情況為例進行研究。
初級匹配是指在一定轉(zhuǎn)速范圍內(nèi),在機槳功率相等或近似相等的情況下求得不同轉(zhuǎn)速下的槳參數(shù),則效率最大時的槳與所對應(yīng)的主機即為所求。終結(jié)匹配在初級匹配選定主機后進行,根據(jù)主機的功率和轉(zhuǎn)速、傳動設(shè)備和軸系傳送效率ηs,計算得到槳收到的功率Pd,槳的效率ηo及船身效率ηh等。根據(jù)這些參數(shù),計算出船舶能達到的航速、螺旋槳的直徑、螺距比和螺旋槳效率等。為避免出現(xiàn)空泡現(xiàn)象,在終結(jié)匹配設(shè)計完成后還需對螺旋槳進行空泡校核。以上設(shè)計的具體匹配流程見圖1。
考慮到船舶機槳匹配設(shè)計作業(yè)需求、協(xié)同作業(yè)性及結(jié)果的可視化等方面的因素,確定平臺實現(xiàn)以下功能,根據(jù)這些功能確定的平臺結(jié)構(gòu)見圖2。
1) 根據(jù)登錄的不同用戶,建立用戶私人文件夾,用戶可上傳、下載和刪除匹配時用到的文件。
2) 初級匹配、終結(jié)匹配和空泡校核等3個功能模塊分開,獨立作業(yè),3個模塊輸入的數(shù)據(jù)和計算結(jié)果可在服務(wù)器端保存,以便后續(xù)使用。
3) 用戶的計算結(jié)果以多種方式保存下來,匹配計算的每一步結(jié)果都可通過Word,Excel及PDF等格式直接輸出。
4) 匹配計算原理和平臺操作幫助文檔查看。
3.1MATLAB與C#混合編程
MATLAB不僅在算法開發(fā)、數(shù)據(jù)可視化、數(shù)據(jù)分析和數(shù)值計算等數(shù)學(xué)領(lǐng)域中有著廣泛應(yīng)用,而且在自動控制、系統(tǒng)仿真、數(shù)字信號處理和圖像分析等方面發(fā)揮著重要作用。這主要是由于其內(nèi)置有很多函數(shù)和工具包,可幫助編程人員節(jié)省時間、提高編程效率。然而,MATLAB也有一定的不足,例如.m文件只能在安裝有MATLAB的計算機上打開,且用戶的圖形界面設(shè)計不夠靈活。
a)初級匹配流程b)終結(jié)匹配流程c)空泡校核流程
圖1 機槳匹配流程
.NET是一個高效的集成可視化的編程平臺,而C#是一種簡單、面向?qū)ο?、類型安全、高效的基?NET平臺的編程語言,在其編寫的程序生成EXE文件后,運行于.NET平臺上有較高的執(zhí)行速度。但是,C#在圖像生成和計算方面的編程比MATLAB復(fù)雜得多。
該平臺需進行圖形、公式計算,并提供給用戶一個可視化的操作界面,因此將MATLAB與C#相結(jié)合進行混合編程能滿足該要求。在機槳匹配計算平臺中,根據(jù)圖1編寫匹配計算的.m文件,其中.m文件輸出為二進制的圖像數(shù)據(jù)。通過MATLAB中的deployeetool工具將.m文件轉(zhuǎn)換為DLL文件,供C#調(diào)用。在C#調(diào)用MATLAB生成的DLL文件之前,需添加對MWArray.dll的引用,從而將調(diào)用的數(shù)據(jù)類型轉(zhuǎn)換為MATLAB能識別的數(shù)據(jù)類型。C#和MATLAB混合編程開發(fā)的應(yīng)用在部署時,需安裝MCR(MATLAB Compilier Runtime),其版本根據(jù)開發(fā)時所用的MATLAB的版本信息確定。[6-8]
圖2 船舶機槳匹配計算平臺結(jié)構(gòu)
3.2基于Easyui的交互設(shè)計
在采用B/S結(jié)構(gòu)時,會涉及到與用戶進行交互的前端網(wǎng)頁,而前端網(wǎng)頁的編寫一般需要專業(yè)美工。若沒有專業(yè)美工而又希望所編寫的應(yīng)用盡量美觀且具有良好的兼容性,Easyui可滿足其要求。Easyui是基于jQuery的用戶界面插件的集合,提供必要的功能以支持現(xiàn)代化、交互和javascript應(yīng)用。Easyui能使開發(fā)者在不編寫很多代碼的情況下實現(xiàn)美觀和兼容性良好的用戶界面,節(jié)省開發(fā)時間和規(guī)模。[9]
3.3基于Ibatis框架的數(shù)據(jù)庫訪問
Ibatis是“Internet”與“abatis”的組合,是一種基于SQL映射并支持.NET和java的持久層框架。Ibatis的持久層框架包括DAO和SQL Maps,用戶僅需對配置文件進行簡單的配置就能連接數(shù)據(jù)庫,無需創(chuàng)建連接、打開和關(guān)閉數(shù)據(jù)庫,代碼更加簡潔。[10]考慮到數(shù)據(jù)庫的易用性、性能及費用,選用MySQL數(shù)據(jù)庫作為船舶機槳匹配計算平臺的數(shù)據(jù)庫,并通過Ibatis框架進行連接。[11]
將機槳匹配計算平臺部署到遠程服務(wù)器之后,在瀏覽器中輸入部署的網(wǎng)址,進入到平臺的登錄系統(tǒng),輸入用戶名和密碼,通過身份驗證進入平臺后,即可進行船舶機槳匹配計算。
4.1機槳初級匹配計算校驗
輸入初級匹配必要參數(shù)進行船舶機槳初級匹配計算,結(jié)果見圖3。該平臺的計算結(jié)果(見表1)與文獻[12]中實際設(shè)計初級匹配計算結(jié)果(見表2)基本吻合,誤差<0.5%,準確性符合工程要求。
圖3 遠程機槳匹配程序界面及初級匹配計算結(jié)果
表1 機槳匹配計算平臺初級匹配計算結(jié)果
表2 文獻[12]中實際設(shè)計初級匹配計算結(jié)果
4.2機槳終結(jié)匹配計算校驗
終結(jié)匹配算例采用文獻[13]中的數(shù)據(jù),將其單位轉(zhuǎn)換為標準單位后輸入,計算結(jié)果頁面見圖4。將其與文獻[13]中的計算結(jié)果相對比(見表3),驗證初級匹配程序正確。
4.3空泡校核計算校驗
空泡校核參數(shù)來自于文獻[5],輸入相關(guān)參數(shù)即可獲取空泡校核結(jié)果(見圖5),計算得到所需的盤面比為0.647,與文獻[5]中的計算結(jié)果(0.642)基本吻合,驗證了空泡校核程序的正確性。
圖4 終結(jié)匹配計算頁面
表3 終結(jié)匹配計算結(jié)果對比
圖5 空泡校核計算頁面
本文提出一種基于C#,MATLAB和互聯(lián)網(wǎng)平臺的船舶機槳匹配計算平臺的實現(xiàn)方法,并通過將該平臺部署在遠程服務(wù)器上來測試其功能。結(jié)果表明,該平臺對匹配計算的功能均能很好地實現(xiàn)。實際測試發(fā)現(xiàn),在對該平臺進行計算時,第1次計算的時間明顯較長,原因是在調(diào)用MATLAB生成的DLL文件時,程序會初始化DLL運行環(huán)境MCR。因此,對于該問題,應(yīng)考慮在整個平臺啟動時初始化MCR,避免在第1次匹配計算時初始化,從而提高用戶的工作效率。該研究可為未來船舶動力系統(tǒng)工況在線監(jiān)測環(huán)境下的機槳動態(tài)匹配提供通用平臺和技術(shù)積累。
[1] 潘鵬程,趙春華.基于MATLAB/Guide的中小型電動船舶船機槳匹配設(shè)計研究[J].艦船科學(xué)技術(shù),2016,38(1):80-84.
[2] 陳虹,張曉君,王藝真.導(dǎo)管槳拖網(wǎng)漁船的機槳匹配設(shè)計軟件開發(fā)[J].漁業(yè)現(xiàn)代化,2015,42(4):44-47.
[3] 王建政,王藝真,張文平,等.船機槳匹配設(shè)計軟件研究開發(fā)[J].船舶與海洋工程,2014(1):45-49.
[4] 王藝真.基于導(dǎo)管槳和雙速比齒輪箱的拖網(wǎng)漁船機槳匹配軟件設(shè)計[D].舟山: 浙江海洋學(xué)院,2014: 71.
[5] 盛振邦,劉應(yīng)中.船舶原理[M].上海:上海交通大學(xué)出版社,2004.
[6] KACAR S,BAYILMIS C.A Web-Based Educational Interface for an Analog Communication Course Based on MATLAB Builder NE With WebFigures[J].IEEE Transactions on Education,2013,56(3):346-354.
[7] SKUTOVA J.A Web Based Application Using MATLAB Builder NE for the Analysis of Linear Systems[C]∥Control Conference.IEEE,2014:574-577.
[8] 黃一丹,嚴洪森,馮麗娟,等.基于C#.NET與Matlab接口和BP網(wǎng)絡(luò)的汽車產(chǎn)量預(yù)測[J].計算機技術(shù)與發(fā)展,2008,18(11):36-40.
[9] 楊守文,王婷,張智萍,等.圖書館自定義統(tǒng)計系統(tǒng)的體驗與改進[J].現(xiàn)代情報,2013,33(4):132-135.
[10] 徐國平,張顯庫.基于網(wǎng)絡(luò)的船舶航向保持控制仿真平臺設(shè)計[J].中國航海,2015,38(1):1-3.
[11] 李澎林,朱國清,吳斌.基于iBatis SQL Map的數(shù)據(jù)持久層實現(xiàn)應(yīng)用研究[J].浙江工業(yè)大學(xué)學(xué)報,2008,36(1):72-76.
[12] 周瑞平,樊紅,胡毅.民用船舶動力裝置原理與設(shè)計[M].武漢:武漢理工大學(xué)出版社,2012.
[13] 劉海強,呂林.船舶機槳匹配設(shè)計與分析計算平臺研究[J].船海工程,2008,37(3):56-58.
Internet-BasedRemoteCalculationPlatformforDieselEngine-PropellerMatching
YANGKuna,b,SHUJiachenga,HUBiaoa
(a.School of Energy and Power Engineering; b.National Engineering Research Center for Water Transport Safety,Wuhan University of Technology,Wuhan 430063,China)
A diesel engine-propeller matching platform based on B/S network is designed.The software of the platform is developed with MATLAB-C# mixed programming,and the user interface is developed by means of Easyui.The tests,covering coarse matching,final matching and the cavitation check are performed to verify the platform.The test results show that the output is accurate,and the platform is easy to use,and the calculation is fast.
ship engineering; diesel engine-propeller matching; Internet; remote calculation; MATLAB; C#
U664.33
A
2017-02-11
國家自然科學(xué)基金青年基金(51309185)
楊 琨(1981—),男,湖北武漢人,副教授,碩士生導(dǎo)師,從事船舶動力機械遠程狀態(tài)在線監(jiān)測與診斷研究。E-mail:kunyangwhut@163.com
1000-4653(2017)02-0025-04