基于LabVIEW與OPC的船舶機(jī)艙報(bào)警系統(tǒng)設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
O 引 言
船舶機(jī)艙監(jiān)控系統(tǒng)是現(xiàn)代自動(dòng)化船舶中最基本和最重要的系統(tǒng),目前船舶集中監(jiān)控系統(tǒng)大多采用分布式結(jié)構(gòu),而集散式控制、分布式控制的船舶自動(dòng)化監(jiān)控系統(tǒng)將逐步被以現(xiàn)場(chǎng)總線為基礎(chǔ)的集中監(jiān)控系統(tǒng)所取代,從而最大程度地實(shí)現(xiàn)船舶航行的安全性、可靠性和經(jīng)濟(jì)性。相對(duì)于在傳統(tǒng)開發(fā)環(huán)境(VB,VC++,C等)下開發(fā)機(jī)艙監(jiān)控系統(tǒng)周期長(zhǎng),運(yùn)行速度慢,調(diào)試和維護(hù)困難,系統(tǒng)采用LabVIEW作為編程語言,它編程高效、靈活、面向?qū)ο?,其?qiáng)大的圖形編程能力及可視化編程環(huán)境得到很多軟件開發(fā)人員的青睞。PLC作為現(xiàn)代控制技術(shù)的重要支柱之一,以其可靠性高、抗干擾能力強(qiáng)等特點(diǎn)在現(xiàn)代控制系統(tǒng)中得到廣泛的應(yīng)用,它能適應(yīng)船舶機(jī)艙的惡劣環(huán)境。把LabVIEW與PLC相結(jié)合應(yīng)用到船舶機(jī)艙系統(tǒng),具有很好的應(yīng)用價(jià)值和前景。
該系統(tǒng)運(yùn)用Profibus現(xiàn)場(chǎng)總線控制,采用一種基于OPC的PC與SIEMENS PLC S7—300實(shí)時(shí)通訊的Lmb—VIEW實(shí)現(xiàn)方法,將虛擬儀器技術(shù)與PLC技術(shù)結(jié)合到一起開發(fā)船舶機(jī)艙上位機(jī)控制系統(tǒng),以實(shí)現(xiàn)良好的人機(jī)界面與可靠的系統(tǒng)控制。實(shí)現(xiàn)LabVIEW與PLC S7—300的實(shí)時(shí)、穩(wěn)定的數(shù)據(jù)交換,是該系統(tǒng)的關(guān)鍵與難點(diǎn)。
l 系統(tǒng)實(shí)現(xiàn)
1.1 系統(tǒng)軟硬件條件
軟件:LabVIEW 8.2,SIMATIC NET(OPCInclude),Step7 v5.3 SQL數(shù)據(jù)庫。其中LabVIEW8.2用于上位機(jī)編程,SIMATIC NET用于對(duì)通信進(jìn)行組態(tài)并配置OPC Server,Step 7 v5.3用于對(duì)SIE—MENS PLC S7—300進(jìn)行編程。
硬件:PC機(jī),SIEMENS PLC S7—300(CPU315—2DP),SIEMENS CP5611通訊卡,Profibus總線。Profibus總線是SIEMENS公司的一種用于工業(yè)控制的現(xiàn)場(chǎng)總線,在100 m范圍內(nèi)通信速率可達(dá)12 Mb/s。CP5611是一種PCI通訊卡,用于PC與Profibus連接。
1.2 系統(tǒng)流程圖
系統(tǒng)設(shè)計(jì)采用機(jī)艙報(bào)警和延伸報(bào)警互為補(bǔ)充。整個(gè)監(jiān)控系統(tǒng)共有84個(gè)工況參數(shù),其中開關(guān)量共71個(gè),模擬量共13個(gè)。廢氣鍋爐綜合故障、應(yīng)急配電板DC24 V失電、1號(hào)左燃油艙高位等71個(gè)開關(guān)量和所有如燃油進(jìn)機(jī)壓力、滑油進(jìn)主軸承壓力、汽缸冷卻高溫淡水出口溫度等13個(gè)模擬量均直接接人PLC的輸入輸出模塊,通過傳感器將信號(hào)實(shí)時(shí)地讀入PLC的數(shù)據(jù)映像區(qū)。用PPI電纜將PLC和PC(RS 232標(biāo)準(zhǔn)串口)相連,上位機(jī)PC監(jiān)控軟件采用LabVIEW程序進(jìn)行編寫,通過LabVIEW與PLC的接口將所有開關(guān)量和模擬量數(shù)據(jù)從PLC中取出,實(shí)現(xiàn)數(shù)據(jù)的顯示、報(bào)警、存儲(chǔ)、實(shí)時(shí)曲線和歷史曲線分析,故障診斷等功能。該系統(tǒng)還可通過上位機(jī)程序向PLC發(fā)出指令,以實(shí)現(xiàn)對(duì)設(shè)備的遠(yuǎn)程控制,系統(tǒng)結(jié)構(gòu)流程如圖1所示。
1.3 通信方案及實(shí)現(xiàn)
1.3.1 通信方案
在以上硬件條件下,要在LabVIEW中實(shí)現(xiàn)PC與PLC的實(shí)時(shí)通信,關(guān)鍵在于如何在LabVIEW編程環(huán)境中驅(qū)動(dòng)SIEMENS CP5611通訊卡。CP5611被驅(qū)動(dòng)后,PC機(jī)即可通過CP5611與Profibus總線連接,從PLCS7—300地址塊中讀出數(shù)據(jù)或往地址塊中寫入數(shù)據(jù)。SIEMENS CP5611目前沒有LabVIEW的驅(qū)動(dòng)程序,如果要在LabVIEW環(huán)境中開發(fā)SIEMENS PLC的上位控制系統(tǒng),可以采取兩種方案:
(1)開發(fā)者自己開發(fā)CP5611的驅(qū)動(dòng)程序,從底層的動(dòng)態(tài)鏈接庫編起;
(2)找到并安裝SIEMENS的OPC Server應(yīng)用程序,利用NI的OPC Client與之進(jìn)行數(shù)據(jù)交互。
顯然,第二種方案對(duì)開發(fā)者更方便、快捷,因而本文選用第二種方案。OPC(OLE for Process Contro1)是基于Windows NT技術(shù)的0LE,COM/DCOM接口的擴(kuò)展,其本質(zhì)是OPC Client用一種開放的、標(biāo)準(zhǔn)化的通訊方式與OPC Server進(jìn)行通訊。OPC規(guī)范定義的標(biāo)準(zhǔn)接口,使得不同廠家之間軟硬件的集成易于實(shí)現(xiàn)。使用第三方硬件時(shí),只要硬件開發(fā)商提供OPC Server,軟件開發(fā)人員無需編寫低層的驅(qū)動(dòng)程序,通過用戶軟件的OPC Client即可與之進(jìn)行數(shù)據(jù)交互。
1.3.2 LabVIEW與PLC數(shù)據(jù)通信的建立
(1)OPC Server的配置
SIEMENS公司為S7—300/S7—400提供的OPCServer接口集成在SIMATIC NET軟件包內(nèi),在本系統(tǒng)中西門子S7系統(tǒng)提供OPC Server,LabVIEW作為OPC Client進(jìn)行數(shù)據(jù)通信。
(1)首先要進(jìn)行OPC配置,在成功安裝SIMATICNET和CP5611的驅(qū)動(dòng)程序后,重新啟動(dòng)計(jì)算機(jī),開始使用SIMATIC NET軟件組態(tài)PC Station。
(2)組態(tài)好后在Step7v5.3中OPC Server與CPU315—2 DP進(jìn)行連接。
(3)連接好之后要下載,特別注意訪問點(diǎn)的(Access points)的設(shè)置,Options—PG/PCINTERFACE,下載到本地服務(wù)器要選本地訪問點(diǎn)PC internal(1ocal)下載到CPU315—2 DP,訪問點(diǎn)要改成CP5611。
(4)屬性中設(shè)定local(本地)IP地址,比如192.168.6.174,partner是CP5611,它的IP地址也要設(shè)定好,比如192.168.6.132。這樣,配置完成后,如果PCStation中小圖標(biāo)變?yōu)椴噬?,表示OPC Server配置好了。
(2)DataSocke與OPC的通信
LabVIEW的圖形化變成平臺(tái)集成了當(dāng)前測(cè)控領(lǐng)域中各種先進(jìn)的軟件開發(fā)技術(shù),可采用多種方案對(duì)OPC服務(wù)器進(jìn)行訪問。由于LabVIEW軟件平臺(tái)支持DataSocket技術(shù),DataSocket能實(shí)現(xiàn)實(shí)時(shí)數(shù)據(jù)共享,本文采用DataSocket技術(shù)實(shí)現(xiàn)對(duì)OPC服務(wù)器的訪問。 DataSocket技術(shù)是基于Microsoft COM和ActiveX,源于TCP/IP協(xié)議并對(duì)其進(jìn)行高度封裝,面向測(cè)量和自動(dòng)化應(yīng)用,用于共享和發(fā)布實(shí)時(shí)數(shù)據(jù),是一種易用的高性能數(shù)據(jù)交換編程接口。但它不必像TCP/IP編程那樣把數(shù)據(jù)轉(zhuǎn)換為非結(jié)構(gòu)化的字節(jié)流,而是以自己特有的編碼格式傳輸各種類型的數(shù)據(jù),包括字符串、數(shù)字、布爾量以及波形等,還可以在現(xiàn)場(chǎng)數(shù)據(jù)和用戶自定義屬性之間建立聯(lián)系,一起傳送。盡管DataSocket與OPC的實(shí)現(xiàn)原理有所不同,但DataSocket與OPC在體系上比較相似,二者結(jié)構(gòu)上都是客戶機(jī)/服務(wù)器模式,都為跨網(wǎng)絡(luò)傳輸數(shù)據(jù)定義了各自的傳輸協(xié)議,并以URL的方式訪問服務(wù)器數(shù)據(jù)項(xiàng)目。LabVIEW中可通過DataSocket VI功能子模板上DataSocket VIs支持OPC應(yīng)用。在LabV IEW中與一個(gè)OPC Sever通過調(diào)用DataSocke—tOpen Connection.vi圖標(biāo)實(shí)現(xiàn),并將對(duì)應(yīng)于OPC—severURL傳給該Vi。OPC URL的基本結(jié)構(gòu)為:OPC://主機(jī)名//OPC服務(wù)器名/數(shù)據(jù)項(xiàng)目/刷新率。
l.4 監(jiān)控系統(tǒng)界面
在上位機(jī)中顯示的1#主機(jī)5個(gè)參數(shù)的實(shí)時(shí)參數(shù)值,運(yùn)用DataSocke和OPC可以進(jìn)行實(shí)時(shí)穩(wěn)定的通信顯示。儀表盤中,綠色表示參數(shù)在安全的情況下運(yùn)行;黃色表示參數(shù)正處于臨界的狀態(tài),即將要達(dá)到超限的狀態(tài);而紅色即表示參數(shù)已經(jīng)超限。參數(shù)超限時(shí),儀表下面的報(bào)警燈隨即紅亮,圖3中的第三個(gè)儀表已經(jīng)報(bào)警,顯示的是1#主機(jī)轉(zhuǎn)速超限。此時(shí)可以根據(jù)要求發(fā)送指令到PLC,或者通過PLC編程自動(dòng)切換或停車。處理后PLC可將處理結(jié)果返回給LabVIEW顯示并存儲(chǔ)。表頭下面的三個(gè)曲線利用LabVIEW強(qiáng)大的數(shù)據(jù)顯示功能,通過設(shè)置顯示數(shù)據(jù)歷史長(zhǎng)度設(shè)置當(dāng)前一段時(shí)間內(nèi)的實(shí)時(shí)數(shù)據(jù)曲線,如圖3所示。
結(jié)合數(shù)據(jù)庫用戶可以對(duì)日志、報(bào)警記錄、控制處理結(jié)果以及各器件的歷史運(yùn)行狀態(tài)進(jìn)行查詢。圖4是主機(jī)的歷史曲線顯示分析界面,從歷史曲線可以看出系統(tǒng)參數(shù)的歷史趨勢(shì)。經(jīng)過分析可得出曲線整體走勢(shì)平緩,各參數(shù)在大部分時(shí)間是在正常范圍內(nèi)的,其中有個(gè)別點(diǎn)與其他點(diǎn)不同,說明過去存在參數(shù)報(bào)警。
2 結(jié) 語
該系統(tǒng)開發(fā)周期短、人機(jī)界面直觀友好、控制可靠、維護(hù)方便。運(yùn)用LabVIEW自帶的DataSocket與OPC通信實(shí)時(shí)可靠,適用于SIEMENS幾乎所有的通訊總線和通訊卡。如使用不同的通訊總線和不同類型的通訊卡,組態(tài)時(shí)選取相應(yīng)的總線型號(hào)和通訊卡型號(hào)即可。采用OPC作為數(shù)據(jù)交換的接口,具有可拓展性,可以將其他的系統(tǒng)融合進(jìn)來,構(gòu)成綜合監(jiān)控系統(tǒng)。實(shí)踐證明此系統(tǒng)在通沙汽渡五號(hào)上已經(jīng)運(yùn)行一年多,性能穩(wěn)定,大大提高船舶機(jī)艙自動(dòng)化水平。