(中石化管道儲運公司管道技術作業分公司,江蘇 徐州 221008)蘇彩虹,師 潤
SCADA系統(監控與數據采集supervisory control and data acquisition )因其具有信息完整、高效、實時掌握系統運行狀態、快速決策、快速診斷故障等優點[3],對提高輸油生產運行的可靠性、安全性與經濟效益具有不可替代的作用,而被長輸管道廣泛采用。
一般而言,長輸管道SCADA系統采用調度中心SCADA 系統、輸油站場PLC兩級控制方式。原油總調度中心SCADA 系統通過通訊(一般距離為數百公里或跨省)實現對遠程輸油站場的數據采集、實現對遠程輸油站場輸油泵閥功能進行現場或遠程控制、同時還要整合其它各輔助系統的運行信息和生產數據,并將這些數據提供給各級操作人員、管理者。因此,總調度中心SCADA系統如何實現與遠程若干輸油站場PLC之間的通訊并進行數據交換,成為關鍵所在。
以東臨線/東臨復線為例,總調度中心SCADA控制系統采用I/A系列SCADA監控系統。通常SCADA系統分為兩個層面,即客戶/服務器體系結構。服務器與硬件設備通信,進行數據處理和運算,而DNP 3.0規約不但是SCADA行業國際標準規約,而且它可以為SCADA提供低速(最高達64 kbit/s) 連接上高效和可靠的數據傳輸和控制功能,并能適應不同的拓撲結構。所以遠程輸油站場的PLC系統與SCADA的通訊實施策略最終采用DNP3.0協議的通訊模式。而其所選的PLC系統不支持DNP3.0協議,所以增加了Prolinx協議轉換器,通過此轉換器實現了SCADA系統遙測、遙信、遙調、遙控“四遙”功能[4]。
設計時為了提高系統的可靠性和穩定性,因此,硬件設備及通訊網絡均采用冗余配置,從而降低了因設備和網絡故障造成的安全風險。另外,考慮到現場環境的實際狀況,周圍大功率設備較多,而系統又是通過遠程通訊方式遠程監控現場設備,為了增強系統的抗干擾能力,選用光纖作為通訊介質。

圖1 通訊結構圖

圖2 SCADA系統典型的硬件配置
現場站控PLC系統140 NOE 771 01以太網模塊是Modicon Quantum 以太網TCP/IP模塊系列中的最新號之一,這種以太網模塊的電子部件包含在標準的Modicon Quantum單寬度外殼中,端口可傳送和接收封裝在 TCP/IP 協議中的Modbus命令。此模塊支持Modbus TCP/IP通訊協議。
SCADA監控系統的硬件設備主要是RTU服務器和工作站、管理機等。SCADA控制系統基于雙機雙網冗余結構,即有兩臺RTU、兩個工作站和兩個以太網,兩個以太網和兩臺RTU服務器均可以自動切換,以保證系統的可靠運行。工業以太網采用光纖通信,能以100Mbps的速率進行傳輸。每臺計算機均配有兩個網卡,以配合雙網通訊。兩臺工作站計算機、優化決策機和RTU服務器,通過工業以太網進行通訊,將現場采集實時數據傳送到SCADA系統節點并進行處理,在本地實現流程圖顯示、趨勢曲線、歷史數據保存、歷史曲線查詢、參數調整、報警管理、報表管、智能優化等功能。
為了系統的通訊更穩定,快捷,通常SCADA系統通過走DNP3.0規約與遠程硬件設備通信,進行數據處理和運算。近年來又出現一個層面,通過Web發布在Internet上進行監控,可以認為這是一種“超遠程客戶”。
5201-MENT-DNPSNET通訊模塊是以Prolinx為通訊網關,用于通過MODBUS TCP通訊將PLC中數據送到協議轉換器內部數據庫再重新打成DNP3.0協議的包與徐州控制中心進行通訊。使一種PLC控制系統的通訊方式進行擴充,通過Prolinx-5201-MENT-DNPSNET網關可以把Modicon Quantum PLC(Unity pro)系統擴展的140 NOE 77111 modbus以太網通訊協議和SCADA控制系統的DNP3.0以太網通訊協議相聯接。
根據現場設備分散廣、周圍環境復雜的特點,本系統設計了由兩套冗余PLC控制系統,雙以太網模塊與其他的外部設備進行通訊。兩塊140NOE77101卡,組成A網和B網冗余以太網,正常情況下至少有一個是一直閃爍的。

圖3 140 NOE 77101以太網模塊軟件組態
Prolinx MNET-DNPSNET 的原理是只有一個端口,運行TCP IP 協議,但是在TCP IP 協議的上層,它走兩種應用層協議,一種是MODBUS TCP 另外一種是DNP TCP(從邏輯上講也相當于兩個口)。一邊通過這個口,Prolinx 與PLC 進行通訊(走MODBUS TCP協議),數據還是存在其內部數據庫中,另外一方面,Prolinx與徐州的SCADA 服務器進行通訊,運行的是DNP TCP 協議,將內部數據庫的數據與遠處的SCADA服務器進行交換。
以下以東營站A網的配置文件為例:
# Module Information
my_ip : 10.90.200.135
netmask : 255.255.255.224
gateway : 10.90.200.129
# Module Configuration
[Module]
Module Type : 5201-MNET-DNPSNET
Module Name : 5201-MNET-DNPSNET_A
[Module Comment]
# Put Comment Here
[MNet Servers]
Float Flag : No
Float Start : 7000
Float Offset : 1000
Output Offset : 0
Bit Input Offset : 0
Holding Register Offset : 0
Word Input Offset : 0
Connection Timeout : 600
[MNet Client 0]
Minimum Command Delay : 10
Response Timeout : 1000
Retry Count : 3
Float Flag : No
Float Start : 7000
Float Offset : 2000
ARP Timeout : 5
Command Error Delay : 0
[MNet Client 0 Commands]
START

# Enable Internal Address Poll Interval Reg Count Swap Code Node IP Address Serv Port SlaveAddress ModBus Function MB Address in Device Comment 1 1 0 0 15 0 10.90.200.133 502 1 3 1900 # DI 2 1 80 0 82 0 10.90.200.133 502 1 3 1500 # AI 3 1 162 0 40 0 10.90.200.133 502 1 3 540 # AI 4 1 202 0 32 0 10.90.200.133 502 1 3 1000 # AI 5 1 9280 0 105 0 10.90.200.133 502 1 15 1000 # DO 6 2 610 0 32 0 10.90.200.133 502 1 16 1000 # AO 7 1 1100 0 32 0 10.90.200.133 502 1 3 1000 #AO form PLC
END
[DNP ENET Slave]
Internal Slave ID : 5
Use IP List : No
DNP Database Offset : 0
Binary Inputs : 80
Analog Inputs : 500
Counters : 0
Binary Outputs : 30
Analog Outputs : 100
AI Deadband : 1
Select/Operate Arm Time : 2000
Write Time Interval : 60
Data Link Confirm Mode : Never
Data Link Confirm Tout : 1000
Data Link Max Retry : 2
App Layer Confirm Tout : 2000
Unsolicited Response : No
Class 1 Unsol Resp Min : 10
Class 2 Unsol Resp Min : 10
Class 3 Unsol Resp Min : 10
Unsol Resp Delay : 5000
UResp Master Address : 0
AI Events with time : Yes
Time Sync Before Events : Yes
Use Trip/Close Single Point : Yes
[DNP ENET IP ADDRESSES]
START
END
[DATA MAP]
START

# From Address To Address Register Count Swap Code Delay Preset Comment 1 1100 610 32 0 200 #
END
SCADA監控系統與現場進行通訊,采集各種實時數據、開關狀態、報警信息和記錄事件。SCADA監控系統與RTU服務器的通訊是核心部分,內部用DNP3.0 協議,外部通過TCP/IP協議封裝,通過以太網到達另一端。在TCP/IP編程接口中,用Socket來定義TCP/IP連接中的端點,每一個TCP/IP連接由兩個Socket構成,每一個Socket由IP地址和端口號來描述,都可以看做是一個網絡連接的端點。可以把Socket理解為通道,TCP/IP連接由連接通道來完成,連接通道由主機地址和通道號來標識。在實際編程中,Socket會自動根據TCP/IP協議對所發送的報文進行封裝,對所接收的報文自動解除封裝[2]。我們只需要根據DNP3.0協議的要求來發送和接受并解析報文。
DNP 3.0 規約是在國際電子電工協會(IEC)的TC57協議基礎上制定的通信規約,它支持ISO 的 OSI/EPA 模型,這種模型規定了物理層,數據鏈路層和應用層。然而,為了支持高級的RTU 功能和大于最大幀長的報文,DNP 3.0 的數據鏈路采用一個偽傳輸層去完成最短報文的組裝與分解。DNP 3.0 規約的文本共分4部分:數據鏈路層規約,傳輸功能,應用層規約及數據對象庫[1]。

圖4 對DNP地址進行分配圖
對SCADA監控系統軟件組態,首先配置DNP遠程設備,設備是遠程設備的名字。設備的物理地址是遠程設備的地址。

圖5 配置DNP遠程設備

圖6 每一個遠程控制站進行通訊配置
綜合考慮原油輸送設備分布分散,管線較長、現場站控多等因素,為達到遠控監控的管理目標,采用冗余通訊系統,使PLC與SCADA通訊性能更穩定,技術可靠。東臨雙線自動化系統自投入使用以來已經在遠程監控、可靠性、可維護性等方面體現出明顯的優勢,已經成為當今自動化應用領域的發展方向。當然PLC與SCADA通訊的手段和策略有很多種,需要廣大的用戶不斷總結和探索。
[1] 李志明, 李鳴春. DNP3.0規約在廣州地區調度系統的應用[J]. 廣東電力,1999, 12(3): 28-30.
[2] 劉莉莉. 基于IEC 61850的風電場SCADA系統安全訪問控制模型設計[J].電網技術, 2008, 32(1).
[3] 孫明春, 金敏. SCADA系統及其應用[J].自動化博覽, 2000, (4): 12-14.
[4] 安艷萍, 申群太. “DNP3.0” 在基于RTU的綜合自動化系統中的實現[J].工業控制計算機, 2006, 19(8): 19-22.