O 引 言
船舶機艙監控系統是現代自動化船舶中最基本和最重要的系統,目前船舶集中監控系統大多采用分布式結構,而集散式控制、分布式控制的船舶自動化監控系統將逐步被以現場總線為基礎的集中監控系統所取代,從而最大程度地實現船舶航行的安全性、可靠性和經濟性。相對于在傳統開發環境(VB,VC++,C等)下開發機艙監控系統周期長,運行速度慢,調試和維護困難,系統采用LabVIEW作為編程語言,它編程高效、靈活、面向對象,其強大的圖形編程能力及可視化編程環境得到很多軟件開發人員的青睞。PLC作為現代控制技術的重要支柱之一,以其可靠性高、抗干擾能力強等特點在現代控制系統中得到廣泛的應用,它能適應船舶機艙的惡劣環境。把LabVIEW與PLC相結合應用到船舶機艙系統,具有很好的應用價值和前景。
該系統運用Profibus現場總線控制,采用一種基于OPC的PC與SIEMENS PLC S7—300實時通訊的Lmb—VIEW實現方法,將虛擬儀器技術與PLC技術結合到一起開發船舶機艙上位機控制系統,以實現良好的人機界面與可靠的系統控制。實現LabVIEW與PLC S7—300的實時、穩定的數據交換,是該系統的關鍵與難點。
l 系統實現
1.1 系統軟硬件條件
軟件:LabVIEW 8.2,SIMATIC NET(OPCInclude),Step7 v5.3 SQL數據庫。其中LabVIEW8.2用于上位機編程,SIMATIC NET用于對通信進行組態并配置OPC Server,Step 7 v5.3用于對SIE—MENS PLC S7—300進行編程。
硬件:PC機,SIEMENS PLC S7—300(CPU315—2DP),SIEMENS CP5611通訊卡,Profibus總線。Profibus總線是SIEMENS公司的一種用于工業控制的現場總線,在100 m范圍內通信速率可達12 Mb/s。CP5611是一種PCI通訊卡,用于PC與Profibus連接。
1.2 系統流程圖
系統設計采用機艙報警和延伸報警互為補充。整個監控系統共有84個工況參數,其中開關量共71個,模擬量共13個。廢氣鍋爐綜合故障、應急配電板DC24 V失電、1號左燃油艙高位等71個開關量和所有如燃油進機壓力、滑油進主軸承壓力、汽缸冷卻高溫淡水出口溫度等13個模擬量均直接接人PLC的輸入輸出模塊,通過傳感器將信號實時地讀入PLC的數據映像區。用PPI電纜將PLC和PC(RS 232標準串口)相連,上位機PC監控軟件采用LabVIEW程序進行編寫,通過LabVIEW與PLC的接口將所有開關量和模擬量數據從PLC中取出,實現數據的顯示、報警、存儲、實時曲線和歷史曲線分析,故障診斷等功能。該系統還可通過上位機程序向PLC發出指令,以實現對設備的遠程控制,系統結構流程如圖1所示。
1.3 通信方案及實現
1.3.1 通信方案
在以上硬件條件下,要在LabVIEW中實現PC與PLC的實時通信,關鍵在于如何在LabVIEW編程環境中驅動SIEMENS CP5611通訊卡。CP5611被驅動后,PC機即可通過CP5611與Profibus總線連接,從PLCS7—300地址塊中讀出數據或往地址塊中寫入數據。SIEMENS CP5611目前沒有LabVIEW的驅動程序,如果要在LabVIEW環境中開發SIEMENS PLC的上位控制系統,可以采取兩種方案:
(1)開發者自己開發CP5611的驅動程序,從底層的動態鏈接庫編起;
(2)找到并安裝SIEMENS的OPC Server應用程序,利用NI的OPC Client與之進行數據交互。










