SAAB雷达液位计与Simens PLC系统的通信实现*

2017-12-06 07:54吕建萍
化工自动化及仪表 2017年10期
关键词:液位计组态液位

王 喆 吕建萍 庞 锐

(中国石油兰州石化公司设备维修公司)

SAAB雷达液位计与SimensPLC系统的通信实现*

王 喆 吕建萍 庞 锐

(中国石油兰州石化公司设备维修公司)

介绍SAAB储罐计量系统内部的通信设置和TRL/2现场总线转换为RS232、RS485通信协议的方法,给出与SAAB储罐计量系统通信的Simens PLC系统所使用到的通信模件,分析Simens PLC系统通信模件的通信接口组态及其设置,最终实现了SAAB雷达液位计与Simens PLC系统之间的通信。

通信 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,依次类推。

图1 SAAB储罐计量系统的结构示意图

打开Winsetup,首先设置WinSetup的微机通信协议、接口参数(图2);其次使用Winsetup对SAAB储罐计量系统的各设备(雷达液位计、DAU等)一一安装、组态,组态内容有:每台雷达液位计的仪表位号、UI号对应的地址、该雷达液位计连接的DAU的UI对应的地址、雷达液位计的罐高、DAU连接的热电阻的类型和量程、压力变送器的量程及单位等(图3)。

图2 通信协议设置界面

图3 雷达液位计和DAU组态设置界面

组态、调试好雷达液位计,即可实现各参数(如压力、液位、温度)的采集,并实现在DAU液晶屏上就地显示。

现场通信单元FCU共有6个连接端口X1~X6,用于连接通信接口板FCM。这些连接端口可单独组态为分组总线端口(GB)或现场总线端口(FB)。但同时最多只能组态4个分组总线端口或4个现场总线端口。每种方案最大限度的组态形式只能是2+4、3+3或4+2个总线端口。一般采用4+2方案,即可在X5、X6端子上连接跨接配套短接片,用于RS232C分组总线通信;或在X5、X6端子上连接FCI卡,实现RS485通信。其余4个端口用于连接现场总线电缆,每个现场总线端口(FB)可接收8台雷达液位计的通信信号,即每台FCU最多通信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.3MODBUS主站与SAAB储罐计量系统的通信

DCS、PLC、安装WinSetup的微机作为MODBUS主站,可以通过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.1Simens 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.2CP341调试过程

使用CP341模块通信,需安装软件Step7 5.*、CP341驱动程序。

2.2.1组态和配置

在STEP7中完成PLC系统硬件组态,在硬件组态窗口中双击CP341模块,打开CP341模块的属性窗口,记录模块的硬件地址,点击属性窗口上的Parameters按钮,选择MODBUS Master协议,双击信封图标:弹出通信参数设置窗口,配置MODBUS Master通信参数:4 800bit/s、8data bits、1stop bit、无奇偶校验位。这些通信参数必须和FCU的通信参数设定一致。对硬件组态存盘编译,下载硬件组态,连接与SAAB储罐计量系统的通信电缆后,SF灯熄灭,说明硬件组态正确。

2.2.2编程

设定各参数如图4所示,首先建立发送程序块。双击OB1,打开OB1编程画面,从库中Libaraies-CP Ptp-CP341调用发送程序块FC500,分配背景数据块DB500。

图4 程序块FC500参数设置

其次建立发送数据块(图5)。创建发送数据的DB块DB500,从站地址为C9H(即FCU的地址201),功能码为3(读输出寄存器),起始地址1664(读取的FCU各参数寄存器的起始地址,如液位寄存器开始地址680H、液位变化率地址为660H等),读取寄存数,如30个。自动生成DB500的变量表。

然后建立接收数据块(图6)。从库中Libaraies-CP Ptp-CP341调用发送程序块FC700,分配发送数据块DB501,设置硬件组态的起始地址为624,发送数据的起始地址为0,接收数据长度为400。

最后,读取数据块中的数据。建立程序块FC504,使用MOVE功能块进行数据块中数据的读取,MOVE块中,参数IN为读取的变量在数据块中的地址,如DB501.DBW0,OUT为中间变量表中的存放地址,如DB504.DBW0。

图5 发送数据块的参数设定

图6 接收数据块的参数设定

3 SAAB储罐计量系统各参数的通信换算

通过Simens PLC系统的串口通信模块CP341,以及一系列的组态配置等,实现了Simens PLC系统对SAAB储罐计量系统各参数的采集。但因为各参数的通信数据类型不同(如液位、液位变化率、温度是整型变量,3900系列压力是整型变量,5900系列压力是实数型变量),显示单位不同(压力在现场显示mbar,在操作站显示MPa),还需要进行数据类型转换等操作。

对于液位、液位变化率、温度整型变量,通过整型-双整型-浮点转换,最终转换为浮点类型,直接用于上位操作站显示。对于压力整型变量,转换为浮点类型后,再除以1 000,从而将单位从mbar转换为MPa。对于压力实数型变量,占用了两个字,需通过实型-整型-双整型-浮点转换,并将高、低位通信地址互换、合成,再除以10 000,才可用于操作站显示。

4 结束语

利用笔者介绍的安装组态顺序可以快速实现SAAB储罐计量系统与Simens PLC系统之间的通信。但在实际实施过程中还需注意系统组态与现场设备的匹配问题。希望通过对SAAB储罐计量系统与Simens PLC系统通信的介绍,能推而广之,提供SAAB储罐计量系统与其他PLC或DCS通信的思路,更好地为企业储罐生产提供优质服务。

王喆(1984-),工程师,从事程控系统的组态及维护工作,wangzhyb@petrochina.com.cn。

TH826+.7

B

1000-3932(2017)10-1001-05

2017-03-29,

2017-09-01)

猜你喜欢
液位计组态液位
国外储罐防溢油液位的设置
干煤粉气化炉激冷室液位计失准分析及优化
基于PLC及组态技术的恒温控制系统开发探讨
气液分离罐液位计接管泄漏分析
一种新型船用自闭式液位计的研制
基于PLC和组态的智能电动拧紧系统
铸造行业三维组态软件的应用
基于PLC和组态的新型回转类测试设备的研制
宝马530车冷却液液位过低报警
霍尼韦尔 导波雷达液位变送器Smart Line^ 系列