張 環(huán),胡定軍
(鎮(zhèn)江船艇學(xué)院 指揮系,江蘇 鎮(zhèn)江 212003)
?
基于PLC模塊的船舶監(jiān)控仿真系統(tǒng)實現(xiàn)
張環(huán),胡定軍
(鎮(zhèn)江船艇學(xué)院 指揮系,江蘇 鎮(zhèn)江212003)
摘要:以西門子S7-300系列PLC為核心模塊設(shè)計船舶監(jiān)控仿真系統(tǒng),實現(xiàn)了PLC下位機(jī)程序設(shè)計,基于Prodave軟件包和Profibus總線實現(xiàn)數(shù)據(jù)通信傳輸功能,實時采集船舶航行信息、設(shè)備運(yùn)行信息等數(shù)據(jù)到PC上位機(jī);在船舶綜合信息平臺網(wǎng)絡(luò)和數(shù)據(jù)庫系統(tǒng)的基礎(chǔ)上,綜合運(yùn)用虛擬現(xiàn)實技術(shù)、計算機(jī)建模技術(shù)、故障診斷技術(shù)、信息集成、網(wǎng)絡(luò)信息技術(shù)等技術(shù)手段開發(fā)了基于PLC模塊的船舶監(jiān)控仿真系統(tǒng);該系統(tǒng)可以有效地降低船舶工作人員的勞動強(qiáng)度,提高其工作效率,還可以對船舶人員進(jìn)行基礎(chǔ)技能訓(xùn)練、船舶管理訓(xùn)練、故障診斷與排除訓(xùn)練等。
關(guān)鍵詞:可編程邏輯控制器;現(xiàn)場總線;過程數(shù)據(jù)交換;實時監(jiān)控;場景再現(xiàn)
0引言
船舶監(jiān)控仿真系統(tǒng)是船舶自動化系統(tǒng)的一個重要組成部分,隨著通信網(wǎng)絡(luò)技術(shù)和自動化技術(shù)的快速發(fā)展,集中管理和遠(yuǎn)程監(jiān)控船舶系統(tǒng)的實時運(yùn)行數(shù)據(jù)和各項性能指標(biāo)參數(shù)在整個船舶自動化系統(tǒng)中占著極其重要的地位[1]。通過設(shè)計船舶運(yùn)行數(shù)據(jù)實時采集模塊,建設(shè)船舶綜合信息平臺網(wǎng)絡(luò)和數(shù)據(jù)庫系統(tǒng),對船舶的航行信息、設(shè)備運(yùn)行信息等數(shù)據(jù)進(jìn)行后續(xù)處理和分析,實現(xiàn)監(jiān)控船舶實時信息和模擬仿真試操作等功能已經(jīng)成為船舶自動化系統(tǒng)的一個重要方向[2]。
相較于其他計算機(jī)控制系統(tǒng),可編程邏輯控制器(PLC)具有高度穩(wěn)定性及其抗干擾性,而且PLC配線容易及價格相對便宜,因此在工業(yè)控制和自動化領(lǐng)域中得到了廣泛應(yīng)用,解決了很多計算機(jī)所無法解決的問題。西門子工控產(chǎn)品在工控領(lǐng)域應(yīng)用市場中有較高的占有率,S7-300系列PLC是西門子SIMATIC PLC家族中的成員之一,具有體積小、軟硬件功能強(qiáng)大和系統(tǒng)配置方便等優(yōu)點(diǎn),由它組成的系統(tǒng)可以與強(qiáng)大的Profibus總線相連接??紤]到上述因素,采用S7-300系列PLC為硬件基礎(chǔ)來實時采集船舶航行信息、設(shè)備運(yùn)行信息等數(shù)據(jù)到PC上位機(jī)[3-4]。
本文主要研究和探討PLC在船舶監(jiān)控仿真系統(tǒng)中的應(yīng)用,實現(xiàn)了PC上位機(jī)對PLC的數(shù)據(jù)采集和通信,在船舶綜合信息平臺網(wǎng)絡(luò)和數(shù)據(jù)庫系統(tǒng)的基礎(chǔ)上,實現(xiàn)了船舶數(shù)據(jù)實時監(jiān)控、場景再現(xiàn)和模擬試操作等功能。
1系統(tǒng)硬件設(shè)計
1.1PLC硬件設(shè)計
PLC硬件設(shè)計采用單臺上位機(jī)管理多臺PLC的方案(如圖1所示),即PC上位機(jī)通過MPI總線訪問多臺PLC,各個PLC之間又可以通過Profibus-DP總線相連接,通過Windows高級語言調(diào)用通信軟件與各個PLC進(jìn)行通信,采集或者修改PLC存儲區(qū)的數(shù)據(jù),實現(xiàn)上位機(jī)控制和監(jiān)控PLC相關(guān)數(shù)據(jù)的功能,同時,通過在PC上位機(jī)的Windows高級語言編程,可以靈活地根據(jù)需求增加數(shù)據(jù)庫和網(wǎng)絡(luò)分發(fā)等模塊,實現(xiàn)存儲和分發(fā)PLC相關(guān)數(shù)據(jù)的功能。在上位機(jī)中安裝雙網(wǎng)卡并連接本地工業(yè)以太網(wǎng)或者無線局域網(wǎng),可以實現(xiàn)IE遠(yuǎn)程發(fā)布功能和手持終端設(shè)備遠(yuǎn)程監(jiān)控等功能。通過將船舶各個設(shè)備的實時數(shù)據(jù)采集到數(shù)據(jù)庫中,并進(jìn)行后續(xù)的數(shù)據(jù)分析、診斷和處理,還可以綜合運(yùn)用Windows高級語言的消息隊列、定時器和多線程技術(shù),為其它船舶應(yīng)用程序提供編程接口,實現(xiàn)應(yīng)用程序之間的無縫對接等功能[5-6]。
圖1 單臺上位機(jī)管理多臺PLC方案
1.2分系統(tǒng)硬件設(shè)計
1.2.1機(jī)艙系統(tǒng)
機(jī)艙監(jiān)控臺設(shè)有兩臺PC上位機(jī)完成對底層網(wǎng)絡(luò)采集的數(shù)據(jù)進(jìn)行預(yù)處理(帶記錄、打印等功能)并上傳至中央數(shù)據(jù)庫。兩臺PC上位機(jī)正常情況下監(jiān)視主要設(shè)備,在一臺故障的情況下,另外一臺可自動承擔(dān)并完成所有的監(jiān)控任務(wù)。
數(shù)據(jù)采集系統(tǒng)選用西門子S7-300系列PLC完成對機(jī)艙設(shè)備開關(guān)量、模擬量數(shù)據(jù)及通訊數(shù)據(jù)的采集和處理。PLC采用CPU及電源雙冗余,以提高系統(tǒng)的安全性。具備較強(qiáng)的容錯能力和可拓展能力。
PLC與電站管理系統(tǒng)的PPU、側(cè)推、中央空調(diào)等系統(tǒng)設(shè)備內(nèi)置的PLC間采用Profibus總線進(jìn)行數(shù)據(jù)交換,與PC上位機(jī)采用TCP/IP工業(yè)以太網(wǎng)通訊協(xié)議方式進(jìn)行通訊,與主機(jī)、發(fā)電機(jī)組等系統(tǒng)或設(shè)備采用ModBus 485總線進(jìn)行數(shù)據(jù)采集與控制。
1.2.2自動電站系統(tǒng)
自動電站系統(tǒng)采用西門子S7-300系列PLC和DEIF公司的PPU發(fā)電機(jī)并車保護(hù)模塊,完成對發(fā)電機(jī)電壓、電流、功率、相位等參數(shù)的采集與控制。電站管理系統(tǒng)可根據(jù)電網(wǎng)和待并發(fā)電機(jī)的頻率差發(fā)出調(diào)速及并車合閘信號。PPU發(fā)電機(jī)并車保護(hù)模塊采用Profibus DP通訊協(xié)議與PLC進(jìn)行數(shù)據(jù)通訊,電站管理系統(tǒng)可設(shè)置西門子觸摸屏顯示可編程控制器的設(shè)備數(shù)據(jù)狀態(tài),機(jī)組的起停及各個主開關(guān)的狀態(tài)都可以有觸摸屏顯示,各發(fā)電機(jī)組的有功功率、電壓、電流無功功率等都在觸摸屏上實時顯示。
1.2.3駕控臺系統(tǒng)
駕控臺PLC控制系統(tǒng),通過PROFIBUS總線連接機(jī)艙采集系統(tǒng),負(fù)責(zé)駕控臺航行信號燈、霧笛控制器、應(yīng)急車鐘、程控電話、主機(jī)遙控等設(shè)備狀態(tài)的信息記錄;并可對程控信號燈進(jìn)行控制與狀態(tài)信息記錄。
1.2.4損管系統(tǒng)
通過數(shù)據(jù)采集箱采集各類浸水報警、彈藥艙高溫報警、消防總管壓力顯示、消防泵遙控及風(fēng)有遙切、火災(zāi)報警、CO2滅火、冷庫呼叫延伸報警、水霧滅火、閥門遙控、通訊、水密門控制等信號,轉(zhuǎn)換成標(biāo)準(zhǔn)開關(guān)量或模擬量送入損管PLC控制系統(tǒng),并通過Profibus現(xiàn)場總線將信號送入機(jī)艙監(jiān)控綜合報警。部分損管臺信號(如浮態(tài)檢測與自動調(diào)壓載控制信號)直接將數(shù)據(jù)傳至主工業(yè)以太網(wǎng)內(nèi)。
1.2.5側(cè)推系統(tǒng)
側(cè)推系統(tǒng)標(biāo)準(zhǔn)設(shè)置是由S7-200系列PLC作為其核心監(jiān)控組件并結(jié)合變頻器(ATV61-315)自身的監(jiān)控功能來實現(xiàn)對該套系統(tǒng)裝置的控制監(jiān)測與保護(hù),電動機(jī)的電柜繞組溫度、電機(jī)軸承溫度由PLC實施監(jiān)控。PLC與變頻器間采用DP通訊的方式實施監(jiān)控,以節(jié)約變頻器的DP通訊字。出于電磁兼容性需要,在變頻器柜進(jìn)線附近設(shè)置一臺容量不低于400 kVA的隔離變壓器,以阻斷變頻器整流端的高次諧波進(jìn)入電網(wǎng),消除其對電站和網(wǎng)絡(luò)通訊系統(tǒng)的干擾。
變頻監(jiān)控PLC(作為從站)與機(jī)艙監(jiān)控臺內(nèi)主站PLC(S7-300系列)之間采用Profibus-DP總線通訊方式進(jìn)行數(shù)據(jù)交換,實現(xiàn)數(shù)據(jù)采集、網(wǎng)絡(luò)監(jiān)控與管理、電站容量匹配的協(xié)同并行。
1.2.6中央空調(diào)系統(tǒng)
由于空調(diào)系統(tǒng)用電總量較大,相對電站單機(jī)容量的百分比較高,有必要納入自動電站的容量管理系統(tǒng)(PMS)。選用S7-200系列PLC加DP通訊模塊和相應(yīng)的模擬量與數(shù)字量模塊來完成對空調(diào)系統(tǒng)邏輯控制、模擬量監(jiān)測故障報警和系統(tǒng)保護(hù)??照{(diào)監(jiān)控PLC(作為從站)與機(jī)艙監(jiān)控臺內(nèi)主站PLC(S7-300系列)間采用現(xiàn)場工業(yè)總線Profibus的通訊方式進(jìn)行數(shù)據(jù)交換。
1.2.7舵機(jī)系統(tǒng)
舵機(jī)系統(tǒng)配設(shè)舵角變送器(4~20 mA)一只,設(shè)置兩只壓力變送器,配設(shè)流量計一只,控制系統(tǒng)設(shè)置相應(yīng)超限保護(hù)。該部分的數(shù)據(jù)由機(jī)艙監(jiān)控臺所設(shè)PLC的模擬量輸入模塊進(jìn)行數(shù)據(jù)采集。
2系統(tǒng)主要程序設(shè)計
2.1下位機(jī)程序設(shè)計
PLC下位機(jī)程序設(shè)計使用西門子公司的編程軟件STEP7,STEP7具有使用方便、直觀的用戶界面、用組態(tài)取代編程和統(tǒng)一數(shù)據(jù)庫等優(yōu)點(diǎn),以文件塊的形式管理用戶編寫的程序及程序運(yùn)行所需的數(shù)據(jù),使得組態(tài)編程非常容易、簡單[3-4]。圖2為PLC硬件組態(tài)窗口示意圖,圖3為PLC采集電路的局部梯形圖[5]。
圖2 PLC硬件組態(tài)
圖3 PLC采集電路局部梯形圖
2.2數(shù)據(jù)通信程序設(shè)計
如何實現(xiàn)PC機(jī)與PLC之間的數(shù)據(jù)通信是一個棘手的問題。西門子公司提供了Prodave軟件包,Prodave是Process Data Traffic(過程數(shù)據(jù)交換)的縮寫,該軟件包的DLL和LIB文件中集成了大量基于Windows操作系統(tǒng)的函數(shù),供用戶解決PLC與PC之間的數(shù)據(jù)交換和數(shù)據(jù)處理問題。在自行開發(fā)的監(jiān)控軟件中可以方便地調(diào)用該軟件中的各種函數(shù),省去了煩瑣冗長的通訊部分,用戶只需編寫流程處理和數(shù)據(jù)處理模塊,提高了系統(tǒng)開發(fā)效率。
Prodave的主要函數(shù)有:
1)load_tool :PC上位機(jī)與PLC系統(tǒng)初始化鏈接;
2)unload_tool:斷開PC上位機(jī)與PLC系統(tǒng)鏈接;
3)讀寫PLC內(nèi)部存儲區(qū)的若干函數(shù)db_read,db_write等。
通過Prodave軟件包的讀寫函數(shù)對PLC內(nèi)部存儲區(qū)進(jìn)行讀寫,可以方便地管理和監(jiān)控PLC控制系統(tǒng),能夠滿足大規(guī)模數(shù)據(jù)的傳輸速度要求,程序調(diào)試非常簡單,適合于船舶監(jiān)控仿真系統(tǒng)的應(yīng)用開發(fā)。
3系統(tǒng)主要功能與實驗分析
3.1系統(tǒng)主要功能
考慮到船舶監(jiān)控仿真系統(tǒng)的數(shù)據(jù)量、實時性和成本等因素,采用C#語言開發(fā)船舶監(jiān)控仿真系統(tǒng),綜合運(yùn)用TCP網(wǎng)絡(luò)技術(shù)、數(shù)據(jù)庫、多線程、對象仿真、COM組件等技術(shù)手段,實現(xiàn)數(shù)據(jù)實時監(jiān)控、場景再現(xiàn)和模擬試操作等功能[6]。船舶監(jiān)控仿真系統(tǒng)主要功能如下。
3.1.1實時監(jiān)控功能
通過網(wǎng)絡(luò)平臺與數(shù)字化技術(shù),訪問中央數(shù)據(jù)服務(wù)器的信息,實時接收船舶環(huán)境信息、操縱信息、機(jī)電設(shè)備運(yùn)行信息等,經(jīng)篩選、編輯、處理后,以合適的界面在手持觸摸屏或監(jiān)控終端PC機(jī)上顯示,參考示例如圖4所示,為左右泵并聯(lián)供水系統(tǒng)實時監(jiān)控數(shù)據(jù)。
圖4 左右泵并聯(lián)供水系統(tǒng)實時監(jiān)控數(shù)據(jù)
3.1.2場景再現(xiàn)功能
船舶航行系統(tǒng)、推進(jìn)系統(tǒng)、電站系統(tǒng)、輔機(jī)系統(tǒng)、損管系統(tǒng)和機(jī)艙綜合報警系統(tǒng)信息數(shù)據(jù)存入數(shù)據(jù)庫形成歷史數(shù)據(jù)。對歷史數(shù)據(jù)進(jìn)行場景再現(xiàn),可以培訓(xùn)船舶人員正確操縱管理船舶設(shè)備的能力,對船舶設(shè)備運(yùn)行故障信息進(jìn)行處理分析,培訓(xùn)船舶人員判斷、排除設(shè)備故障的能力。場景再現(xiàn)界面示例如圖5所示。
圖5 場景再現(xiàn)界面示例
3.1.3模擬試操作功能
利用3DMax等開發(fā)工具實現(xiàn)模擬試操作功能,船舶受訓(xùn)人員根據(jù)試操作課目進(jìn)行模擬試操作,產(chǎn)生虛擬設(shè)備運(yùn)行信息。船舶相關(guān)專業(yè)人員利用實時采集的船舶實際運(yùn)行信息,比對該虛擬設(shè)備運(yùn)行信息,可以迅速找出操縱管理差距,及時調(diào)整操縱管理方法,有效提高受訓(xùn)人員的操縱管理技能。圖6為主機(jī)啟動模擬試操作示例。
圖6 主機(jī)啟動模擬試操作示例
3.2系統(tǒng)實驗分析
數(shù)據(jù)通信程序是船舶監(jiān)控仿真系統(tǒng)的重要組成部分,測試對多臺PLC與PC之間在網(wǎng)絡(luò)環(huán)境下的網(wǎng)絡(luò)通信性能進(jìn)行實驗測試。
目前PLC與PC機(jī)之間的通信方式有兩種:1)PC機(jī)始終處于主導(dǎo)地位,數(shù)據(jù)的傳輸都由PC機(jī)定時發(fā)出命令;2)PLC始終具有優(yōu)先權(quán)。
為了方便測量出PC機(jī)和PLC之間的通信時間,本文采用前一種方式,即在PC機(jī)上利用C#語言開發(fā)基于Prodave的通信程序,將C#編程與PLC口編程綁定起來,PC機(jī)發(fā)送一個特定的字符串時,當(dāng)PLC檢測并接收到數(shù)據(jù)時,將數(shù)據(jù)存入指定的數(shù)據(jù)緩沖區(qū)中,通過發(fā)送指令將對應(yīng)數(shù)據(jù)通過網(wǎng)絡(luò)發(fā)送至PC機(jī)。
PC機(jī)與多臺PLC通信時,采用并行通信與串行通信相結(jié)合的方式進(jìn)行:首先將各臺PLC按照功能性劃分為若干個小組,每個PLC小組內(nèi)部采用并行鏈結(jié)先一個一個連接好,各個小組之間通過中轉(zhuǎn)接到PC機(jī)在網(wǎng)絡(luò)口上進(jìn)行通信。
在通信實驗中所計算出的通信時間是在PC機(jī)用C調(diào)用Windows API函數(shù)來實現(xiàn)的,采用多次實驗取平均值的方法進(jìn)行通信測試,具體的測試結(jié)果如表1所示。
表1 Prodave通信程序數(shù)據(jù)讀寫測試
還對Profibus-DP通信協(xié)議進(jìn)行了通信數(shù)據(jù)測試:即用db_write函數(shù)對PLC的存儲區(qū)10個存儲單元進(jìn)行20Bytes寫操作的測試數(shù)據(jù)(共進(jìn)行1000次試驗),測試結(jié)果如表2所示。
表2 不同通信協(xié)議寫數(shù)據(jù)測試
試驗結(jié)果表明,基于Prodave軟件包和Profibus-DP數(shù)據(jù)總線能夠?qū)崿F(xiàn)上位機(jī)和PLC之間的高速數(shù)據(jù)通信傳輸功能,能夠滿足實時采集船舶航行信息、設(shè)備運(yùn)行信息等數(shù)據(jù)到PC上位機(jī),為實現(xiàn)船舶監(jiān)控仿真系統(tǒng)提供實時性的數(shù)據(jù)通信支持。
4結(jié)論
本文以西門子系列PLC為核心模塊設(shè)計船舶監(jiān)控仿真系統(tǒng),綜合運(yùn)用網(wǎng)絡(luò)技術(shù)、數(shù)據(jù)庫、虛擬現(xiàn)實等技術(shù)手段,實現(xiàn)數(shù)據(jù)實時監(jiān)控、場景再現(xiàn)和模擬試操作等功能。該系統(tǒng)不僅可以方便船舶人員管理和監(jiān)控船舶相關(guān)信息,還可以對船舶人員進(jìn)行基礎(chǔ)技能、故障診斷與排除等訓(xùn)練,具有良好的應(yīng)用前景。
參考文獻(xiàn):
[1]劉沿陽,邵昱. 艦船綜合自動化系統(tǒng)的現(xiàn)狀與發(fā)展趨勢 [J]. 船舶工程,2006, 28(2):62-66.
[2]楊家龍,曹云鵬,路勇,等. 基于網(wǎng)絡(luò)環(huán)境的船舶機(jī)艙動力裝置監(jiān)控系統(tǒng)開發(fā)研究[J]. 船舶工程,2006,28(2):47-50.
[3]陽勝峰. 快速學(xué)會S7-3300/400PLC [M]. 北京:中國電力出版社,2014.
[4]劉忠超,蓋曉華. 西門子S-300PLC編程入門及工程實踐 [M]. 北京:化學(xué)工業(yè)出版社,2014.
[5]王志開. PLC及WINCC組態(tài)軟件在自動控制中的應(yīng)用 [J]. 中國科技信息,2005(5):14-16.
[6]蔣曉峰,等. 基于觸摸屏和PLC的船舶電站監(jiān)控系統(tǒng)設(shè)計 [J]. 電力自動化設(shè)備,2011,31(1):118-121.
Realization of Vessel Monitoring and Simulated System Based on PLC Module
Zhang Huan,Hu Dingjun
(Department of Commanding, Zhenjiang Watercraft College,Zhenjiang212003,China)
Abstract:A vessel monitoring and simulated system is designed based on Siemens S7-300, which realized the PLC program. The data communication function is implemented based on Prodave software package and Profibus. The navigation information, the run information of the device and so on is collected into the upper-computer instantly. On the basis of integrated information platform network and database, the vessel monitoring system based on PLC module is developed recur to the virtual reality technology, computer modeling technology, fault diagnosis technology, united information technology, network information technology and so on. The proposed system can reduce the labor intensity of the vessel worker and improve their working efficiency effectively. Meanwhile, with the help of the proposed system, the vessel worker can do basic skill training, vessel manage training, diagnose training, and so on.
Keywords:PLC; Profibus; process data exchange; real-time monitor; scene reconstruction
文章編號:1671-4598(2016)02-0103-04
DOI:10.16526/j.cnki.11-4762/tp.2016.02.028
中圖分類號:TP274
文獻(xiàn)標(biāo)識碼:A
作者簡介:張環(huán)(1982-),男,江蘇灌云人,博士,講師,主要從事自動控制、虛擬現(xiàn)實方向的研究。胡定軍(1976-),男,江蘇寶應(yīng)人,碩士,高級工程師,主要從事船艇指揮方向的研究。
基金項目:全軍后勤科研計劃課題(080137)。
收稿日期:2015-08-31;修回日期:2015-09-28。