李靖,馬振江
(中交上海三航科學研究院有限公司,上海 200032)
隨著通信技術(shù)、電子技術(shù)、計算機技術(shù)的發(fā)展,工業(yè)過程控制系統(tǒng)框架朝著智能化、數(shù)字化、信息化、網(wǎng)絡(luò)化方向發(fā)展,控制系統(tǒng)具有高速、高效、高精度、高可靠性的性質(zhì)。因此,通過通信信道和設(shè)備互連起來的多個不同地理位置的數(shù)據(jù)通信系統(tǒng),要使其能協(xié)同工作,實現(xiàn)信息交換和資源共享,它們之間必須具有共同的語言,遵循互相都能接受的規(guī)則,這個規(guī)則就是通信協(xié)議[1],如物理層協(xié)議EIA RS-232接口標準、EIA-422接口標準、TCP/IP通信協(xié)議、PROFIBUS通信協(xié)議、MODBUSRTU通信協(xié)議、PPI協(xié)議、MPI協(xié)議等。由于工業(yè)設(shè)備通信協(xié)議種類繁多,不同廠家設(shè)備具有不同通信標準,對系統(tǒng)開發(fā)人員就提出了很高的要求,需要完成軟件控制系統(tǒng)開發(fā),這不僅需要掌握各種設(shè)備通信協(xié)議,而且當硬件設(shè)備驅(qū)動改動時,軟件開發(fā)人員必須修改大量的驅(qū)動程序來連接設(shè)備,因此,控制系統(tǒng)開發(fā)難度大、通用性差、效率低。為此,需要研究一套高效、快速、穩(wěn)定的系統(tǒng)通信解決方案,硬件開發(fā)人員無需考慮程序的多種需求和傳輸協(xié)議,軟件開發(fā)人員也無需了解硬件的實質(zhì)和操作流程,這樣可有效提高系統(tǒng)升級的效率,優(yōu)化控制方案,方便系統(tǒng)維護。砂樁控制系統(tǒng)由不同通信協(xié)議的設(shè)備組成綜合控制系統(tǒng),下面介紹砂樁控制系統(tǒng)優(yōu)化通信方案研究成果。
砂樁控制系統(tǒng)硬件布置如圖1,1號、2號、3號打設(shè)管理計算機與PLC控制器組成砂樁控制系統(tǒng),它們之間采用TCP/IP方式進行通訊,控制系統(tǒng)配置的可編程控制器(PLC)采用日本三菱公司生產(chǎn)的Q系列PLC,具有 MC通信協(xié)議(MELSEC)的以態(tài)網(wǎng)模塊QJ71E71,外部設(shè)備可以通過QJ71E71從PLC CPU讀取數(shù)據(jù)和程序或者將程序?qū)懭隤LC,QJ71E71還具有固定緩沖存儲器通訊(分有順序控制和無順序控制)和隨機訪問緩沖存儲器進行通訊[2],同時PLC控制器具有串行通信端口。
圖1 控制系統(tǒng)構(gòu)成Fig.1 Controlsystem constitution
在砂樁船控制系統(tǒng)中,GPS管理計算機負責對砂樁進行定位并輸出砂樁橫坐標、縱坐標、實時潮位信息,集中管理計算機發(fā)送砂樁施工管理、設(shè)備參數(shù)等砂樁工藝數(shù)據(jù)。因此,程序開發(fā)過程中會涉及到不同的設(shè)備以及不同通信協(xié)議。
在整個砂樁控制系統(tǒng)中,GPS管理系統(tǒng)產(chǎn)生的數(shù)據(jù)以TXT文件格式保存,PLC控制系統(tǒng)數(shù)據(jù)以存儲器方式保存,需要實時與數(shù)據(jù)庫進行數(shù)據(jù)交換,人機界面數(shù)據(jù)交互等。不同數(shù)據(jù)存儲方式,不同數(shù)據(jù)格式,開發(fā)的控制軟件需要確保與其它系統(tǒng)不產(chǎn)生沖突,高效運行。
GPS系統(tǒng)提供的位置信息是保存在GPS系統(tǒng)的C:/shazhuang/Record.txt文件內(nèi),集中管理計算機與打設(shè)管理計算機之間數(shù)據(jù)交換是通過Pile.txt、PlaceManger.txt、InitializeSetting.txt 等文件來實現(xiàn),因此,如何提取相關(guān)信息進行數(shù)據(jù)交換,對控制系統(tǒng)的改善、優(yōu)化都是需要解決的問題。
圖2為潮位處理的模型圖。通信處理程序在取得潮位基本信息后,通過計算并同步更新潮位變量,“潮位變量”隨著Record.txt中的潮位信息變化而變化,并提供給系統(tǒng)中使用。同時程序需要檢測網(wǎng)絡(luò)硬件運行情況,網(wǎng)絡(luò)狀態(tài)需要在控制程序面板上通過指示燈顯示,紅燈亮起表明網(wǎng)絡(luò)故障。
圖2 潮位信息處理流程Fig.2 Tide level information process flow
對于外接端口多,需要與外設(shè)進行大量數(shù)據(jù)交換的系統(tǒng),采用傳統(tǒng)高級語言進行編程,必將產(chǎn)生大量的代碼,耗時相當長,開發(fā)效率低,于是需要尋找一種適合高級語言開發(fā)的“通信處理程序”。NILabVIEW圖形語言以框圖的形式編寫程序,其表現(xiàn)形式和功能類似于實際的儀器,它是一種帶有圖形控制結(jié)構(gòu)的數(shù)據(jù)流模式(Data Flow Mode),這種方式確保了只有獲得它的全部數(shù)據(jù)后才能被執(zhí)行。這種數(shù)據(jù)流程序中,程序執(zhí)行是由數(shù)據(jù)驅(qū)動的,同時具有功能強大的集成開發(fā)環(huán)境,完整地集成了與GPIB、VXI、RS-232、RS-485和內(nèi)插式數(shù)據(jù)采集卡等硬件的通訊功能,具有內(nèi)置式程序庫,提供了大量的連接機制,通過DLLs、共享庫、OLE等途徑實現(xiàn)與外部程序代碼或軟件系統(tǒng)的連接[3]。
NILabVIEW還能創(chuàng)建獨立的可執(zhí)行程序,能夠脫離開發(fā)環(huán)境而單獨運行,特別適合在測試、控制、設(shè)計領(lǐng)域的運用,具有程序開發(fā)速度快,與外部設(shè)備通信能力強,人機交互界面友好等優(yōu)點。采用NI LabVIEW開發(fā)潮位數(shù)據(jù)處理程序,通過打開端口、讀取文件、格式轉(zhuǎn)換、關(guān)閉端口及簡單數(shù)據(jù)轉(zhuǎn)換就能取得潮位信息,與VC、VB、C#開發(fā)的程序需要產(chǎn)生大量代碼相比,程序更加簡單,開發(fā)效率更高。
工業(yè)控制和生產(chǎn)自動化領(lǐng)域中的各種智能設(shè)備,可編程控制器(PLC)是核心部件,且種類繁多,通信標準不統(tǒng)一,如儀表多采用RS232或RS485傳輸標準,儀表與計算機之間的往來通訊都以ASCⅡ碼實現(xiàn),傳感器采用Modbus總線通信協(xié)議等。不同通信協(xié)議的系統(tǒng)或者設(shè)備之間進行信息互換對于大型系統(tǒng)集成必須得以解決,因此,需要一種技術(shù)來處理不同標準的設(shè)備及通信協(xié)議間的數(shù)據(jù)通信。
OPC(OLE Process Control)技術(shù)是 OPC 基金會組織倡導的工業(yè)控制和生產(chǎn)自動化領(lǐng)域中使用的硬件和軟件的接口標準。OPC技術(shù)具有開放性(Openness)、產(chǎn)業(yè)性(Productivity)和“即插即用”的互聯(lián)性(Connectivity),主要由OPC接口、OPC服務(wù)器、I/O驅(qū)動組成(見圖3)。因此,對于系統(tǒng)集成來說,工程師不需要更多地關(guān)心外設(shè)的情況,可更多關(guān)注系統(tǒng)集成本身。
圖3 數(shù)據(jù)通信模型Fig.3Data exchange pattern
在砂樁控制系統(tǒng)中,采用NIOPC Server與PLC控制系統(tǒng)進行通信,Lab編程軟件通過變量與OPC Server進行數(shù)據(jù)交換。圖4為PLC數(shù)據(jù)處理流程,“Lab變量表”中的變量與PLC的存儲器相對應(yīng)。
圖4 PLC數(shù)據(jù)處理流程Fig.4 PLC data process flow
對于程序開發(fā)者來說,只需要關(guān)心“Lab變量表”中項目的物理意義及本身的工藝流程,對于I/O驅(qū)動不需要進行考慮,它由OPC Server來完成。如表中 “GLdata”對應(yīng)于PLC存儲器“D11014”,PLC系統(tǒng)通過自動掃描并更新存儲器“D11014”數(shù)據(jù)。由于使用了OPC技術(shù),變量“GLdata”將按照一定的時間間隔進行更新。砂樁控制系統(tǒng)中與數(shù)據(jù)庫的通信采用同樣OPC技術(shù)。
采用以上通信方案開發(fā)的砂樁控制軟件,已經(jīng)在港珠澳大橋海上橋隧轉(zhuǎn)換人工島中得以運用。圖5為程序界面,顯示相關(guān)參數(shù)及設(shè)備狀態(tài)。數(shù)據(jù)處理程序通過對保存在數(shù)據(jù)庫中的數(shù)據(jù)進行操作,可以查詢打樁過程中有關(guān)參數(shù)的變化情況。
圖5 程序界面Fig.5 The program interface
砂樁控制程序已經(jīng)安裝在三航砂樁6號和三航砂樁7號船上的打設(shè)管理計算機上,打設(shè)砂樁長度超過240 000延m,用砂量超過30萬m3。使用過程中程序穩(wěn)定,運行可靠,達到了高效開發(fā)控制系統(tǒng)的目的。
采用OPC技術(shù)及以上控制系統(tǒng)通信方案,解決工程現(xiàn)場TCP/IP協(xié)議、PLC控制器MC通信協(xié)議(MELSEC)、Access數(shù)據(jù)庫、TXT文本之間數(shù)據(jù)交換問題,開發(fā)了砂樁控制系統(tǒng),實際項目中的運用驗證了這種通信方法的可靠性、穩(wěn)定性,同時提高了集成控制系統(tǒng)的開發(fā)效率,縮短了集成系統(tǒng)開發(fā)時間,節(jié)約了系統(tǒng)開發(fā)成本,對控制系統(tǒng)集成和機電設(shè)備開發(fā)具有積極的參考價值。
[1] 楊明福.計算機網(wǎng)絡(luò)技術(shù)[M].北京:經(jīng)濟科學出版社,2005.YANG Ming-fu.Computer networking technology[M].Beijing:Economic and Scientific Press,2005.
[2] 廖常初.S7-300/400 PLC應(yīng)用技術(shù)[M].北京:機械工業(yè)出版社,2006.LIAOChang-chu.S7-300/400 PLC application[M].Beijing:China Machine Press,2006.
[3] 徐小東.LabVIEW 8.5常用功能與編程實例精講[M].北京:電子工業(yè)出版社,2009.XU Xiao-dong.Essence says on LabVIEW 8.5 function and programmeexamples[M].Beijing:Publishing Houseof Electronics Industry,2009.