摘 要 介紹 SAAB 儲罐計量系統內部的通信設置和 TRL/2 現場總線轉換為 RS232、RS485 通信協議的方法,給出與 SAAB 儲罐計量系統通信的 Simens PLC 系統所使用到的通信模件,分析 Simens PLC 系統通信模件的通信接口組態及其設置,zui終實現了 SAAB雷達液位計與 Simens PLC 系統之間的通信。
SAAB 儲罐計量系統(即 SAAB 雷達液位計量系統)是用于儲罐液位計量的跟蹤監視和控制系統,該系統可與各類傳感器連接,實現儲罐的完全監控。在系統的各單元之間設置分布式智能單元連續收集并處理信息,當接收到信息請求時,立即做出響應,發送經過更新的信息。通過現場總線,各單元之間實現相互通信,SAAB 儲罐計量系統可以測量許多介質的儲罐液位,包括原油、精煉石油、腐蝕性化學品及液化天然氣等。儲罐雷達液位計向儲罐內介質表面發射微波,根據介質表面的回波計算液位。通過使用合適的儲罐連接單元,SAAB 儲罐計量系統可以對任何類型的儲罐進行計量。SAAB 儲罐計量系統內部通過現場總線實現通信,對外通過 RS232、RS485 實現通信,筆者主要介紹 SAAB 儲罐計量系統與 Simens PLC系統的通信實現過程。
1 SAAB 儲罐計量系統內部通信設置
1.1 系統的結構組成
目前,SAAB 儲 罐 計 量 系 統 主 要 采 用RTG3900 和 RTG5900 兩 個 系 列 的 產 品。RTG3900 雷達液位計量系統(圖 1)主要由雷達液位計 RTG(可連接壓力變送器,采集液位、壓力信號)、現場數據采集單元 DAU(可連接多點溫度計,采集溫度信號,實現就地顯示)及 FCU2160 現場通信單元等基本部件組成,內部采用 TRL/2 現場總線協議通信;RTG5900 雷達液位計量系統是由 5900S 雷達液位計(可連接 3051S 壓力變送器,實現壓力、液位信號采集)、2240S 多點溫度變送器(可連接多點溫度傳感器,實現溫度信號的采集)、2410 儲罐 Hub 及 FCU2160 現場通信單元等組成,內部采用 Foundation 現場總線協議通信。另有輔助設備現場總線調制解調器 FBM,用作RS232C 和現場總線之間的協議、接口轉換,可將安裝雷達組態軟件 TankMaster WinSetup 的微機與現場總線連接。
在 SAAB 儲罐計量系統中各部件有各自的 UI 號,SAAB 儲罐計量系統內部通過各自的 UI 號和地址進行尋址通信。各系列雷達液位計可共用 FCU 現場通信單元,FCU 對來自儲罐雷達液位計和數據采集單元的數據進行輪詢并將存儲在緩沖存儲器內,用作現場總線與 MODBUS 之間的協議、接口轉換,具有分組總線與現場總線之間的網關或數據集中器功能,是雷達液位計量系統與 DCS、PLC 通信的對外接口設備。
1.2 系統內部通信設置
Rosemount 廠家提供了 TankMaster 軟件包,包含 Winopi、Winsetup 兩個軟件模塊。Winopi 用于監測測量數據,Winsetup 用于 SAAB 儲罐計量系統的各設備組態配置以及通信設置。在進行通信設置前結合雷達液位計安裝數量和安裝位置分配各雷達液位計在 FCU 的通信地址和接線端口,如 FCU 的通信地址常設為 201、雷達液位計通信地址從 1 開始、對應的 DAU 通信地址加 100,如 101,依次類推。
打開 Winsetup,首先設置 WinSetup 的微機通信協議、接口參數(圖 2);其次使用 Winsetup 對SAAB 儲罐計量系統的各設備(雷達液位計、DAU等)一一安裝、組態,組態內容有:每臺雷達液位計的儀表位號、UI 號對應的地址、該雷達液位計連接的 DAU 的 UI 對應的地址、雷達液位計的罐高、DAU 連接的熱電阻的類型和量程、壓力變送器的量程及單位等(圖 3)。
組態、調試好雷達液位計,即可實現各參數(如壓力、液位、溫度)的采集,并實現在 DAU 液晶屏上就地顯示。
現場通信單元 FCU 共有 6 個連接端口 X1 ~X6,用于連接通信接口板 FCM。這些連接端口可單獨組態為分組總線端口(GB)或現場總線端口(FB)。但同時zui多只能組態 4 個分組總線端口或 4 個現場總線端口。每種方案zui大限度的組態形式只能是 2 +4、3 +3 或 4 +2 個總線端口。一般采用 4 + 2 方案,即可在 X5、X6 端子上連接跨接配套短接片,用于 RS232C 分組總線通信;或在X5、X6 端子上連接 FCI 卡,實現 RS485 通信。其余 4 個端口用于連接現場總線電纜,每個現場總線端口(FB)可接收 8 臺雷達液位計的通信信號,即每臺 FCU zui多通信 32 臺雷達液位計。具體步驟如下:
a. 安裝 FCU。首先在 Winsetup 軟件上安裝FCU,建立 FCU 通信,定義 FCU 的儀表位號(如FCU201)、FCU 的 UI 號對應的地址(如 201)。
b. 組態 FCU。打開 FCU 組態窗口,定義 6個連接端口 X1 ~ X6 的通信參數,如協議、波特率、數據位及奇偶校驗位等。
c. 建立 FCU 從數據庫。在 FCU 組態窗口,有 64 個地址,前 32 個分配與雷達液位計,地址從1 開始至 99,后 32 位分配給 DAU,地址從 101 開始至 199。定義連接端口上的各通道地址參數,如雷達液位計型號、DAU 型號、溫度傳感器數量及模擬量輸入參數的數量等,每個地址上的參數與實際相對應,才能實現數據采集與上傳。
1.3 MODBUS 主站與 SAAB 儲罐計量系統的通信
DCS、PLC、安裝 WinSetup 的微機作為 MODB-US 主站,可以通過 RS232C 或 RS485 與 SAAB 儲罐計量系統建立通信連接。在 SAAB 儲罐計量系統中,液位、溫度、壓力及雷達波形等每個動態數據以二進制數值傳輸,存儲在 FCU 從數據庫對應的保持寄存器內?;?RS485 通信的主站通信設置:數據位 8 位、波特率 4 800、起始位 1、停止位 1、無奇偶校驗位、故障檢測 CRC-16。MODBUS主站與 FCU 通信是主站發送請求后從 FCU 從數據庫寄存器讀取數據。FCU 從數據庫的保持寄存器地址對應的參數如下:
660 ~67F Level Rate status 液位變化率
680 ~69F Level status 液位
6A0 ~6BF Ullage status 空罐高度
6C0 ~ 6DF Analog input 1 status 模擬量 1,
用于 3900 系列壓力參數存儲
6E0 ~6FF Analog input 2 status 模擬量 2
700 ~71F Analog input 3 status 模擬量 3
760 ~77F Temp 14 status 溫度 14
780 ~79F Temp 13 status 溫度 13
7A0 ~7BF Temp 12 status 溫度 12
7C0 ~7DF Temp 11 status 溫度 11
7E0 ~7FF Temp 10 status 溫度 10
800 ~81F Temp 9 status 溫度 9
820 ~83F Temp 8 status 溫度 8
840 ~85F Temp 7 status 溫度 7
860 ~87F Temp 6 status 溫度 6
880 ~89F Temp 5 status 溫度 5
8A0 ~8BF Temp 4 status 溫度 4
8C0 ~8DF Temp 3 status 溫度 3
8E0 ~8FF Temp 2 status 溫度 2
900 ~91F Temp 1 status 溫度 1
980 ~99F Temp avg. status 平均溫度
9C0 ~ 9DF Current input 1 status 電流輸入1,用于 2900 系列的壓力參數存儲
9E0 ~9FF Current input 2 status 電流輸入 2
A00 ~ A1F Current input 3 status 電流輸入 3
A20 ~ A3F Current input 4 status 電流輸入 4
B60 ~ B7F Relay 1 status 繼電器 1
B80 ~ B9F Relay 2 status 繼電器 2
BA0 ~ BBF Relay 3 status 繼電器 3
BC0 ~ BDF Relay 4 status 繼電器 4
AE0 ~ AFF Hart Input 3 slave status(FCU 3.D0 版本增加)
B00 ~ B1F Hart Input 2 slave status(FCU 3.D0 版本增加,用于 5900 系列的壓力參數存儲)
B20 ~ B3F Hart Input 1 slave status(FCU 3.D0 版本增加)
2 Simens PLC 系統通信設置與組態
2.1 Simens PLC 串口通信模塊
串行通信模塊 CO340/CP341/CP440/CP441具有 1 個串行通信口(RS232C 或 RS485/422)。使用這些通信模塊可以實現 S7-300/400 與其他串行通信設備的數據交換。筆者以 CP341 RS485串行通信模塊為例進行說明。
Simens PLC 與 SAAB 儲罐計量系統之間通信,Simens PLC 作為 MODBUS 主站,SAAB 儲罐計量系統作為 MODBUS 從站,采用 RS485 半雙工兩線制接線模式。這需要在 CP341 模塊上插入相應主站協議的“硬件狗”,CP 模塊才能夠支持MODBUS 協議。
2.2 CP341 調試過程
使用 CP341 模塊通信,需安裝軟件 Step7 5.* 、CP341 驅動程序。
2.2.1 組態和配置
在 STEP7 中完成 PLC 系統硬件組態,在硬件組態窗口中雙擊 CP341 模塊,打開 CP341 模塊的屬性窗口,記錄模塊的硬件地址,點擊屬性窗口上的 Parameters 按鈕,選擇 MODBUS Master 協議,雙擊信封圖標:彈出通信參數設置窗口,配置 MOD-BUS Master 通信參數:4 800bit/s、8data bits、1stopbit、無奇偶校驗位。這些通信參數必須和 FCU 的通信參數設定一致。對硬件組態存盤編譯,下載硬件組態,連接與 SAAB 儲罐計量系統的通信電纜后,SF 燈熄滅,說明硬件組態正確。
2.2.2 編程
設定各參數如圖 4 所示,首先建立發送程序塊。雙擊 OB1,打開 OB1 編程畫面,從庫中 Li-baraies-CP Ptp-CP341 調用發送程序塊 FC500,分配背景數據塊 DB500。
其次建立發送數據塊(圖 5)。創建發送數據的 DB 塊 DB500,從站地址為 C9H(即 FCU 的地址 201),功能碼為 3(讀輸出寄存器),起始地址1664(讀取的 FCU 各參數寄存器的起始地址,如液位寄存器開始地址 680H、液位變化率地址為660H 等),讀取寄存數,如 30 個。自 動 生 成DB500 的變量表。然后建立接收數據塊(圖6)。從庫中 Libaraies-CP Ptp-CP341 調用發送程序塊 FC700,分配發送數據塊 DB501,設置硬件組態的起始地址為 624,發送數據的起始地址為0,接收數據長度為400。zui后,讀取數據塊中的數據。建立程序塊FC504,使用 MOVE 功能塊進行數據塊中數據的讀取,MOVE 塊中,參數 IN 為讀取的變量在數據塊中的地址,如 DB501. DBW0,OUT 為中間變量表中的存放地址,如 DB504. DBW0。
3 SAAB 儲罐計量系統各參數的通信換算
通過 Simens PLC 系 統 的 串 口 通 信 模 塊CP341,以及一系列的組態配置等,實現了 SimensPLC 系統對 SAAB 儲罐計量系統各參數的采集。但因為各參數的通信數據類型不同(如液位、液位變化率、溫度是整型變量,3900 系列壓力是整型變量,5900 系列壓力是實數型變量),顯示單位不同 ( 壓力在現場顯示 mbar,在操作站顯示MPa),還需要進行數據類型轉換等操作。對于液位、液位變化率、溫度整型變量,通過整型 - 雙整型 - 浮點轉換,zui終轉換為浮點類型,直接用于上位操作站顯示。對于壓力整型變量,轉換為浮點類型后,再除以 1 000,從而將單位從mbar 轉換為 MPa。對于壓力實數型變量,占用了兩個字,需通過實型 - 整型 - 雙整型 - 浮點轉換,并將高、低位通信地址互換、合成,再除以 10 000,才可用于操作站顯示。
4 結束語
利用筆者介紹的安裝組態順序可以快速實現SAAB 儲罐計量系統與 Simens PLC 系統之間的通信。但在實際實施過程中還需注意系統組態與現場設備的匹配問題。希望通過對 SAAB 儲罐計量系統與 Simens PLC 系統通信的介紹,能推而廣之,提供 SAAB 儲罐計量系統與其他 PLC 或 DCS 通信的思路,更好地為企業儲罐生產提供優質服務。
轉載請注明原文作者和版權,本文僅供參考,具體問題請參考現場實際情況綜合考慮。
上一篇:從幾個方面詳談低頻脈沖雷達在實際工況中的應用
下一篇:雷達料位計安裝位置的改進及應用