基于PLC的石油儲運監控系統的設計與實現
基于PLC的石油儲運監控系統的設計與實現
罐區中原油儲罐和輸油管道所使用的各種控制閥門是石油儲運過程中現場儀表,其智能化程度的高低、所含信息的多少和對故障的診斷與容錯能力直接影響到數據采集與監控系統的可靠性、穩定性和易用性。通常罐區中的控制閥數量眾多且分散,普通的控制閥所含信息量少而布線繁多,這在一定程度上使罐區監控系統的設計復雜化。該系統采用英國Rotork公司的智能電動閥及其主站控制器,大大簡化了監控系統的復雜設計,而且借助其豐富的診斷信息和對故障的容錯能力,使系統的可靠性得以提高。
二、監控系統的硬件實現
1、Rotork智能閥控制設備
Rotork智能閥控制設備是一個閥門數據采集、監視與控制系統,它由一臺主站控制器和與它相連的現場電動閥組成。主站控制器通過一條兩線電流環路可以控制掛于環路上的多達240個現場控制閥,該電流環路可長達20 km。
現場電動閥的智能化程度較高,其內部含有豐富的數據和診斷信息。但最主要的特點是多個智能閥僅通過兩線互聯成一個環路,最終接入主站控制器的只有起始和末端兩線,所有閥門信息通過兩線通訊進入主站控制器。現場電動閥還具有線路故障屏蔽功能,當環路出現開路、短路或接地故障時,智能閥可以將故障端的線路屏蔽掉,使主站控制器仍能與線路上的所有智能閥通訊而不受影響,同時將故障信息發給主站控制器。其兩線屏蔽原理如圖2—1所示。
正常操作情況下,通訊電流信號沿環路的一條線從主站控制器的端口A流出,經該環路從端口B流回。此時,另一條線路是冗余的。當有一處線路發生故障時,該處故障線路被閥門屏蔽,故障線路兩邊的智能閥可通過各自的環路與主站控制器通訊;當有兩處線路發生故障時,這兩處故障之間的智能閥都被屏蔽,兩處故障之外的智能閥依然可以通過兩“臂狀"環路與主站控制器通訊。
主站控制器是由主CPU卡、環路通訊卡、電源、液晶顯示器和16按鈕鍵盤組成的盤裝智能儀表。它內部有兩個固定的數據庫,一個是現場單元數據庫,負責接收并記錄從兩線環路傳來的智能閥的地址、轉矩、開度等數據,根據從上位機傳來的讀寫命令控制閥門的運動,該數據庫從邏輯上劃分為4個區,每個區記錄60個閥門的數據;另一個數據庫為主站控制器狀態及自診斷數據庫,負責記錄通訊協議的有關狀態并向智能閥發布命令。通過主站控制器的按鍵和液晶顯示器,可以實現讀取智能閥的開度、轉矩、地址等數據,控制閥門的開閉,接收報警信號及與PLC通訊等功能。
Pakscan IIE Master Station是Rotork主站控制器中的一種,它為雙重熱備結構,在主控制器出現故障時可以自動切換到熱備控制器。圖2—2為Pakscan IIE主站控制器與現場智能閥通過兩線環路相連的情況。
Pakscan IIE Master Sation有一個RS-485通訊口和一個RS-232通訊口,它們可通過Modbus協議與PLC通訊。其中RS-232通訊口可以不通過PLC直接連接打印機,打印報警信號。
2、監控系統結構
圖2—3所示為現場智能電動閥監控系統的結構框圖。
該系統的控制部分采用美國GE Fanuc公司的HBR雙重熱備型PLC系統,通過PLC控制140個智能閥(IQ actuator)的開停閉。上位監控站可監視各個智能閥的閥位回信狀態、閥位值以及報警信號,并可執行開閥、停閥和關閥操作。
Pakscan IIE主站控制器與PLC之間采用Modbus協議通訊,以port 1的RS-485接口連接。正常運行情況下,主PLC和主控制器工作,從PLC和熱備控制器分別與主PLC和主控制器保持同步。智能閥將數據傳送給主控制器,主PLC通過RS-485接口從主控制器中讀取數據,并向其發布命令,主控制器再執行命令,驅動智能閥按命令運轉。當主PLC或主控制器出現故障時,系統能分別自動切換到從PLC或熱備控制器。
由于系統中采用的是Modbus通訊協議,一臺PLC可以連接多臺Pakscan IIE主站控制器,因此,若現場智能閥較多,系統可以很方便地擴展而且連線簡單。
三、軟件設計
1、通訊程序設計
PLC選用Modbus RTU主通訊模塊(master)。Pakscan IIE主站控制器是一個遠程終端單元,做為Modbus從設備(slave)。PLC的CPU通過Modbus RTU主通訊模塊控制Pakscan IIE主站控制器的讀寫,被稱為Modbus host。系統采用單Modbus host兩線通訊方式,該方式最多可以連接32個Pakscan IIE主站控制器。
主通訊模塊的程序設計有3部分內容:初始化通訊模塊;讀寫Modbus/RTU數據;監測通訊狀態。
通訊模塊的初始化工作主要是配置3個初始化控制塊的參數:Slave控制塊(SCB),信息控制塊(MCB)和通訊要求參數塊(COM_REQ)。SCB是一個15個寄存器長的數據塊,功能是定義與其通訊的Slave的型號、個數、狀態等參數,每一個Slave需要定義一個SCB塊。MCB是一個6個寄存器長的數據塊,功能是定義Master要求每個Slave執行的命令信息,包括命令類型、RTU引用地址偏移、PLC引用地址偏移、主機號等參數,每一種命令需要定義一個MCB塊。COM_REQ是一個17個寄存器長的數據塊,功能是定義通訊方式、端口控制字及監測SCB和MCB的狀態參數等,每一端口需要定義一個COM_REQ塊。所有這些初始化參數在PLC上電或冷啟動初始化的第一個掃描周期內加載到RTU主通訊模塊,此后RTU主通訊模塊負責與PakscanIIE主站控制器通訊,而PLC則與RTU主通訊模塊交換數據。
讀寫Modbus/RTU數據和監測通訊狀態的編程相對簡單,只要讀寫初始化時定義的相應的PLC參數地址即可。
2、監控軟件設計
上位監控站可以準確的監測和控制儲運過程的所有信息和設備。通過編程、組態、連接,形象地反映實際工藝流程、顯示動態數據,設置PID控制參數以及過程參數,并可以查看歷史趨勢、報警歷史報表等。
Rotork的現場電動閥配置在流程的輸油管線上,通過按鈕可以人工啟動、停止和關閉任一個閥門,并顯示任意時刻的閥門狀態和閥位值。設計良好的人機界面使操作簡便、直觀。
四、結束語
Rotork的智能閥控制設備與PLC的結合使得罐區儲運監控系統布線簡潔、控制方便,PLC的冗余以及Pakscan IIE主站控制器的雙熱備保證了系統的高可靠性,也提高了控制系統的自動化程度。該系統已投入工業現場使用,效果良好。