陳驍俊,連建國(guó),徐忠義
(中廣核核電運(yùn)營(yíng)有限公司,廣東 深圳 518000)
AlgoRex CS11系統(tǒng)為西門(mén)子生產(chǎn)的功能完善的火災(zāi)探測(cè)系統(tǒng),可通過(guò)編程實(shí)現(xiàn)復(fù)雜的設(shè)備聯(lián)動(dòng)邏輯,然而在某些應(yīng)用場(chǎng)合中可能需要實(shí)現(xiàn)CS11系統(tǒng)與第三方遠(yuǎn)程系統(tǒng)交互應(yīng)用,具體如實(shí)現(xiàn)遠(yuǎn)程上位機(jī)對(duì)各個(gè)區(qū)域的火警監(jiān)控和設(shè)備控制,或集成到核電廠DCS系統(tǒng)中實(shí)現(xiàn)電廠安全防火分區(qū)內(nèi)的設(shè)備聯(lián)動(dòng)控制,對(duì)此,西門(mén)子提供了相應(yīng)的CK11網(wǎng)關(guān)通信模塊和DMS7000通信架構(gòu)來(lái)實(shí)現(xiàn)AlgoRex CS11系統(tǒng)與第三方系統(tǒng)的通信功能,進(jìn)而實(shí)現(xiàn)擴(kuò)展應(yīng)用的能力,通過(guò)在DMS7000網(wǎng)絡(luò)中傳遞DMS7000消息報(bào)文、命令報(bào)文、時(shí)間報(bào)文,來(lái)實(shí)現(xiàn)對(duì)DMS7000架構(gòu)中的控制單元的狀態(tài)監(jiān)測(cè)和控制、對(duì)DMS7000單元中的各數(shù)據(jù)點(diǎn)的狀態(tài)變化監(jiān)測(cè)以及對(duì)DMS700中的控制單元的時(shí)間同步等功能。本文將舉例介紹如何實(shí)現(xiàn)S7-400 PLC與AlgoRex CS11系統(tǒng)中的CK1143的通信交互以及如何獲取到DMS7000數(shù)據(jù)報(bào)文[1]。
本文將以下圖1所示的系統(tǒng)配置和PLC硬件組態(tài)為例,介紹S7-400 PLC與AlgoRex CS11系統(tǒng)的通信的具體編程實(shí)現(xiàn),其中第三方系統(tǒng)為S7-400PLC,CS11系統(tǒng)的C-BUS總線上共有1個(gè)CC11控制器,PLC中使用CP441-2通信模塊和CS11系統(tǒng)C-BUS網(wǎng)絡(luò)的CK1143網(wǎng)關(guān)通信模塊通信,兩者之前主要通過(guò)傳遞DMS7000報(bào)文來(lái)實(shí)現(xiàn)AlgoRex CS11系統(tǒng)中各火警監(jiān)測(cè)數(shù)據(jù)點(diǎn)的信息交互,其中CK1143的DMS地址為110,CC11的DMS地址為111。
圖1 系統(tǒng)配置及PLC硬件組態(tài)示例
CK1143網(wǎng)關(guān)提供了將AlgoRex子系統(tǒng)集成到第三方系統(tǒng)的用戶接口,采用點(diǎn)對(duì)點(diǎn)串行通信,通信協(xié)議是基于ISO1745標(biāo)準(zhǔn)模式,采用物理層(Levle 1)、數(shù)據(jù)鏈路層(Level 2)、應(yīng)用層(Level 7)三層結(jié)構(gòu)[2]。對(duì)應(yīng)數(shù)據(jù)鏈接層其使用的命令字包括如下表1所示,傳輸塊分為線路監(jiān)控塊(UBL,在沒(méi)有數(shù)據(jù)報(bào)文傳輸時(shí)發(fā)送,用于進(jìn)行通信雙方數(shù)據(jù)連接監(jiān)控)、數(shù)據(jù)報(bào)文塊(UBT,包含了DMS7000通信架構(gòu)中的DMS7000報(bào)文)兩種,塊結(jié)構(gòu)分別如下表1,傳輸規(guī)則中的協(xié)議順序圖參考表2。
表1 控制字符表
表2 線路監(jiān)控塊結(jié)構(gòu)
表3 數(shù)據(jù)報(bào)文塊
對(duì)應(yīng)應(yīng)用層,在和任意一個(gè)AlgoRex單元通信前必須監(jiān)測(cè)其是否在線,CK11和CC11控制單元通過(guò)周期性發(fā)送在線報(bào)文(報(bào)文結(jié)構(gòu)為:Z
表5 輪詢程序表
在本文示例中,使用CP441-2模塊的Interface 2接口和CK1143連接,由于CK1143通信結(jié)構(gòu)對(duì)應(yīng)的物理層數(shù)據(jù)傳輸采用異步串行通信,半雙工模式,傳輸字符包含1位起始位、7位數(shù)據(jù)位、1奇偶校驗(yàn)位、2截止位;傳輸速率可選擇1200或2400波特。因此對(duì)應(yīng)CP441-2模塊的其硬件參數(shù)組態(tài)如下圖2所示。
圖2 CP441-2模塊參數(shù)及通信協(xié)議參數(shù)設(shè)置示意圖
在本文示例的軟件組態(tài)實(shí)現(xiàn)中,自定義兩個(gè)功能FC1和FC2,主要通過(guò)調(diào)用系統(tǒng)功能塊SFB12 BSEN和SFB13 BRCV實(shí)現(xiàn)CP441-2模塊的數(shù)據(jù)接收和發(fā)送,以接收CK1143傳輸?shù)臄?shù)據(jù)和發(fā)送數(shù)據(jù)到CK1143,并在S7-PLC實(shí)現(xiàn)程序中定義FB1功能塊,實(shí)現(xiàn)CP441-2對(duì)CK1143的輪詢和數(shù)據(jù)交互功能。通過(guò)在主程序OB1中調(diào)用FC1和FC2功能,以及FB1功能塊實(shí)現(xiàn)CP441-2和CK1143的通信交互。
FC1和FC2中分別調(diào)用SFB12和SFB13系統(tǒng)功能塊如下圖3所示,其中接收數(shù)據(jù)讀取到DB11,發(fā)送數(shù)據(jù)塊為DB21。
在自定義的FB1功能塊中,從FC1讀取的CK1143傳輸?shù)臄?shù)據(jù)塊DB11和需要在FC2中發(fā)送給CK1143的數(shù)據(jù)塊DB21作為FB1功能塊的輸入?yún)?shù),通過(guò)在功能塊中對(duì)DB11和DB21進(jìn)行數(shù)據(jù)分析和處理,實(shí)現(xiàn)CP441對(duì)CK1143的輪詢和數(shù)據(jù)交互功能,其程序處理流程主要包括圖4所示主流程、圖5所示的CK11/CC11在線監(jiān)測(cè)及啟動(dòng)設(shè)備數(shù)據(jù)輪詢子流程、圖6/7所示的CK11/CC11輪詢子流程。通過(guò)上述流程處理,PLC程序?qū)@取得到的火警數(shù)據(jù)報(bào)文進(jìn)行處理,達(dá)到擴(kuò)展應(yīng)用的目的。
圖3 SFB12和SFB13調(diào)用示例圖
圖4 FB1功能塊主流程示意圖
圖5 CK11、CC11在線監(jiān)測(cè)及啟動(dòng)設(shè)備數(shù)據(jù)輪詢子流程
圖6 CK11輪詢子流程示意圖
圖7 CC11輪詢子流程示意圖
在上述示例中介紹了S7-400 PLC如何獲取AlgoRex CS11火災(zāi)探測(cè)系統(tǒng)中的數(shù)據(jù)報(bào)文,在此基礎(chǔ)上,就可以在PLC中結(jié)合CS11系統(tǒng)中的火警配置文件,進(jìn)一步編程獲取CS11系統(tǒng)中各火警監(jiān)控探頭的異常狀態(tài)信息并進(jìn)行相應(yīng)數(shù)據(jù)處理,進(jìn)而實(shí)現(xiàn)火災(zāi)探測(cè)區(qū)域內(nèi)防火設(shè)備聯(lián)動(dòng)控制、防火監(jiān)控等應(yīng)用擴(kuò)展,甚至還可以通過(guò)S7-400 PLC集成到電廠的DCS系統(tǒng)中,實(shí)現(xiàn)DCS內(nèi)對(duì)各廠房區(qū)域內(nèi)的火警控制和防火設(shè)備自動(dòng)聯(lián)動(dòng)等應(yīng)用[3]。