APP下载

基于Modbus协议的通讯在国产分散控制系统上的应用

2012-02-08杨素珍黄焕炮张敏李晓红

电力建设 2012年6期
关键词:卡件网卡采集器

杨素珍,黄焕炮,张敏,李晓红

(北京国电智深控制技术有限公司,北京市, 100022)

0 引言

目前,国产分散控制系统(distributed control system,DCS)在火力发电厂的应用越来越多,国内主要的DCS有国电智深EDPF-NT+、浙大中控JX系列和利时MACS系列等。根据现场实际情况,经常需要将第三方的数据送到DCS,或将DCS系统数据送到第三方系统。本文提出利用Modbus协议通讯来解决数据传送的问题,这样可以避免增加采集控制设备,而且便于统一监视及控制。EDPF-NT+系统软件结合了先进的网络通信、信息、监控、管理技术为一体,具有开放式结构、良好的硬件兼容性和软件可扩展性;在通讯接口方面,支持Modbus通讯协议,能与各类控制设备及计算机实现通讯连接,已成功应用于火电厂1 000 MW机组,且在水电、化工、新能源等领域的应用也逐渐显现出优势。

1 EDPF-NT+的Modbus通讯

Modbus协议已经成为工业通讯的通用标准。通过该协议控制器之间可进行通讯,还可以将不同厂商的控制设备连成工业网络进行集中监控。Modbus协议通讯为客户机对服务器[1-2](即1主1从),主站方发出请求,从站作出应答进行环路交换信息。许多工业设备使用Modbus协议作为通讯标准[3-4]。EDPFNT+支持Modbus RTU通讯模式[5-6]及Modbus TCP通讯模式,且通讯操作简单灵活,组态方便,安全可靠。

1.1 EDPF-NT+与Modbus RTU的通讯

EDPF-NT+在与Modbus RTU通讯中,只作主站,接口站通过虚拟分散处理单元(distributed processing unit,DPU)建立任务,利用TCP/IP网络连接到串口服务器,串口服务器再以RS485方式连接到可编程控制器(programmable logic controller,PLC)或IO模块的网关(即作从站的通讯设备)。使用串口服务器是为了将RS485数据转换为DPU数据。串口服务器有4、8、16口,可以方便扩充通讯及与多方设备建立通讯。图1为EDPF-NT+基于Modbus RTU的架构图。

图1 EDPF NT+与Modbus串口通讯结构Fig.1Structure of serial communication between EDPF-NT+and Modbus

1.2 EDPF-NT+的Modbus TCP通讯

EDPF-NT+在基于Modbus TCP通讯中可作主站,也可作从站。系统可通过网线与Modbus TCP建立通讯。作主站时,如果1台接口站需要与多方设备进行通讯,中间可以用交换机或Hub进行扩展。接口站需要使用不同的端口与对方通讯。作从站时,需在502端口上等待请求[7]。

2 配置虚拟控制器

EDPF-NT+系统通讯,只需在虚拟的DPU[6-7]中添加相应的虚拟I/O模块。每个开关量信号对应1个寄存器的1位或1个线圈及1个离散量。EDPF-NT+可以将1个寄存器的16位自动分配解包到相对应模块的连续的16个通道中。再配置扩展I/O程序来完成不同功能的任务,如读线圈、离散量、保持寄存器、输入寄存器等。表1为卡件类型及功能码对应表。

表1 卡件类型及功能码对应表Tab.1Correspondence between card types and function codes

3 串口配置

Modbus RTU是基于串口的通讯,EDPF-NT+接口站与第三方系统之间通过串口服务器连接在一起。串口服务器一端通过以太网方式和DCS连接,另一端通过RS 485方式和第三方系统连接。通常串口服务器具有多个连接端口,每个端口连接1个第三方系统。串口服务器的地址与EDPF-NT+的接口站IP需要配置在同一网段,串口服务器每个端口应配置同网段IP及不同的端口号,应用中需要定义每个端口的波特率、停止位、奇偶校验等信息(第三方系统厂家提供)。

4 接线定义

(1)串口的接线。用1根交叉网线,一端连接EDPF-NT+接口站网口,另一端接串口服务器的以太网口;就地过来485线接串口服务器的端口上[8]。

(2)Modbus TCP的接线。用1根普通的网线,一端接到EDPF-NT+接口站网口,另一端接到第三方系统的通讯设备的网口或网关上。

5 实例配置

5.1 资料提供

(1)与第三方采集器通讯提供资料:规约类型为Modbus RTU;通讯端口为RS232/RS 485;通讯速率为9600bps;通讯参数为8、1、1、N;Modbus主机为DCS系统(响应数据);Modbus从机为采集器(查询命令、确认命令);地址为C9H;功能码为03H;起始寄存器地址为0000H。

(2)与第三方DEH的PLC通信提供资料:子站地址为 1;协议9600,8,n, 1;开关量4150-4151,以保持寄存器来读取。

5.2 配置虚拟DPU

通讯之前,需要先建立虚拟DPU。假设新建的虚拟DPU为30号站,则接口站的A网卡增加IP为: 172.101.1.30,B网卡增加IP为:172.101.2.30。

在PO中添加虚拟DPU 30,增加完在D盘目录下新建虚拟DPU的运行文件夹。

5.3 配置组态

配置完虚拟DPU后需要增加虚拟卡件,增加虚拟卡件是在DPU 30中新建IO模块,添加实际模拟量的模块DPU 30 A1及开关量的DPU 30 A2。

根据第三方采集器说明,需要读取从站的1~16号保持寄存器的数据,首先增加Bidc开关量输入卡,设备号为DCS自定义,此处定为1。从站ID C9H为十六进制,转换成十进制为201,起始寄存器号0、起始点号为第1块通道,功能码为3,数据类型、字节顺序类型与第三方一致。

根据第三方PLC说明需要读取从站PLC的4150与4151号保持寄存器的数据,首先增加Bidc MDI卡,设备号为DCS自定义,此处定为2。从站为1,起始寄存器号4150,功能码为3。

再进行配置卡件图,并转换下载SAMA图。

5.4 安装数据库

(1)应用Excel数据库模板,将1~16号寄存器转换为DPU 30的A1卡件1~16通道数据。

(2)PLC的通讯为8个开关量打包到1个寄存器中,只需将4150寄存器的8个开关量分配到A2的1~8通道,4151寄存器分配到A2的17~24通道。

导入数据库,配置点组,下载点组及数据库,信号类型可选为源码输入不变。

5.5 串口配置

串口服务器主要有2项大的配置,一为串口参数配置,二为工作模式配置。在配置串口服务器前,需要在接口站增加第3块网卡,用交叉线连接到串口服务器Ethemet 10/100M口,根据串口服务器默认IP为192.168.0.233(可修改),再为第3块网卡添加与串口服务器同网段IP地址。

(1)串口参数设置。串口参数配置的是第三方设备的相关串口参数:将采集器过来的485线连接到串口服务器第1个端口,PLC过来的485线连接到第2个端口,再通过用户数据报协议转发到同一台接口站来扩展通讯。因采集器与PLC提供的串口参数相同[11],所以将端口1、2设置为:波特率9600,数据位8,停止位1,校验位none,流量控制none,类型改为485或不更改。

(2)工作模式设置。工作模式是用于配置串口服务器与接口站的通讯模式:因接口站与串口服务器是UDP协议,所以需要将第1及第2个端口的工作模式配置为TCP/UDP Socket。再将协议改为UDP,对端主机设置为通讯网卡的IP地址192.168.0.208,端口号任意设置。保存配置,重启串口服务器即可。

5.6 配置EIO通讯任务

将C:Program FilesEDPF-NT plusTemplate路径下的EIO.ini文件,拷贝至运行主目录config system下。打开EIO文件,按实际情况将EIO文件下的相应内容修改。根据实际情况,DCS方需要定义第1个设备号1对应采集器的201号设备通讯,并建1号任务为读32个线圈数据;DCS方再定义第2个设备号2对应PLC的2号设备通讯,并建1号任务为读40个保持寄存器数据。

配置好EIO后,可直接重启虚拟DPU,完成通讯。如果是Modbus TCP通讯,此EIO.ini文件需要更改2处:Protocol=modbusTCP,RemotePort=502。

6 通讯中遇到的问题及解决方法

(1)与第三方设备通讯成功,但值(模拟量值)不对,可以检查字节顺序类型是否一致或通讯测点的起始位置是否按错位处理。通常通讯数据类型应为源码输入,不进行标量变换,否则修改为自定义,并计算转换系数。

(2)对于第三方厂家将16个及16个以内开关量打包到1个寄存器的情况,只需在任务中读1个寄存器,在各个通道建对应的测点名,模拟量输入卡件自动将寄存器中的16个开关量解包到各通道。

(3)对于1个寄存器为16个开关量,但只取某1位值的情况,只需将这1位开关量测点名建在对应的通道上即可。

7 结语

在通讯中,可以用辅助的Modbus调试软件调试设备,根据双方是否能发送或接受数据报文来判断并分析线路、协议等是否正常。在EDPF-NT+系统中,通过虚拟控制器与第三方系统进行Modbus协议通讯,应用广泛,不仅能降低生产成本,并且程序运行稳定、维护简便。

[1]GB/T 19582.3—2008基于Modbus协议的工业自动化网络规范[S].中国:中国标准出版社,2008.

[2]陈铭.基于MODBUS协议的设备和PLC实现通信的研究[J].湖南科技学院学报,2009(4):60-62.

[3]李喜东,刘波涛.Modbus RTU串行通讯协议在工业现场的应用[J].自动化技术与应用,2005(07):37-40.

[4]吕国芳,唐海龙.基于Modbus RTU的串口调试软件的实现[J].计算机技术与发展,2009(9):236-238,241.

[5]郭永吉,王兴贵.ModbusRTU模式下工控机与智能仪表的通讯实现[J].甘肃科学学报,2008(1):51-53.

[6]刘沛津,谷立臣.基于Modbus/TCP的火电厂实时数据集成及网络通信控制器研制[J].电力自动化设备,2009(8):128-131.

[7]张海艳.RS232/485与CAN总线协议转换器的研究与设计[D].大连:大连海事大学,2008.

[8]朱建平,辛伊波.工业控制系统串行异步通信研究[J].自动化仪表,2003(6):53-55.

(编辑:沈雷)

猜你喜欢

卡件网卡采集器
COVID-19大便标本采集器的设计及应用
Ovation系统VP卡件可靠性研究及预控措施
Server 2016网卡组合模式
浅析中控DeltaV系统卡件检查方法
基于ZigBee的大型公共建筑能耗采集器设计
基于LabVIEW的多数据采集器自动监控软件设计与开发
火电厂新华控制系统网络及卡件升级改造
挑战Killer网卡Realtek网游专用Dragon网卡
RHEL7 Network Teaming(网卡绑定)配置与测试
多接口温湿度数据采集器的设计