案例简介:
在设计某电力自动控制系统时,需要将继电保护装置的参数读取到西门子S7-400 PLC 中,并集成到SCADA监控系统中,参与实际的连锁控制。继电保护装置提供RS-485 通讯接口,其通讯协议为Modbus RTU协议。为了实现Modbus RTU 协议到PROFIBUS协议的转换,本设计将西门子PLC S7-400 作PROFIBUS 主站,应用YC-MDPB-001网关,和 Modbus 从站通讯,然后通过远创智控生产的 PLC 转以太网模块MPI-ETH-YC01、现场总线模块连接到企业SCADA 系统中,使二者得到完美的结合。
工具/原料
Modbus转ProfiBUS网关YC-MDPB-001一台
西门子400PLC一台
以太网模块MPI-ETH-YC01一台
继电保护系统一套
配置方法:
第一步:查看如下图表遥信信息点通讯的数据;
第二步:了解继电保护系统;
本电力系统电站装机容量为 6MW。其主接线为一机一变两回线,变压器为电压变比 10/6.3kV 的双圈变压器。电站 10kV 出线两回至用户站。
本继电保护系统的主要监测对象包括:一台发电机组、一台主变压器、两回 10kV 出线、400V 厂用变;保护对象包括电站的发电机、变压器、10kV 出线。该继电保护系统提供一智能通讯服务器,其功能是将许继设备的通讯规约转换为MODBUS 规约,预留RS-485 通讯接口与CP340 进行通讯。通讯的数据量包括遥信信息点(功能码 02,起始查询地址 0):YX1~YX36,祥见表 1。遥测信息点(功能码 03,起始查询地址 0)YC1~YC18, 祥见表 2。
表 2 遥测信息点通讯的数据;
第三步:了解通讯系统;
通讯系统的构成
在本自动控制系统中,将西门子S7-400 PLC 作PROFIBUS 主站,ET 200M 和远创智控YC-MDPB-001 网关作PROFIBUS 从站。另一方面,在 Modbus 总线中将MODBUS转PROFIBUS网关作Modbus 主站,继电保护装置和直流屏设备作为 Modbus 的从站,双方以 9600bps 的通讯速率进行通讯。具体的网络结构如图所示:
第四步: 了解Modbus 通讯协议简介 ;
Modbus协议有ASCII、RTU 二种协议,并没有规定物理层。此协议定义了控制器能够认识和使用的消息结构,而不管它们是经过何种网络进行通信的。Modbus的ASCII、RTU协议规定了消息、数据的结构、命令和应答的方式,数据通讯采用Maser/Slave 方式,Master 端发出数据请求消息,Slave 端接收到正确消息后就可以发送数据到Master端以响应请求;Master 端也可以直接改Slave 端的数据,实现双向读写。
第五步:Modbus通讯协议的功能码;
Modbus 的 Slave 端是根据Master 端发送过来的功能码进行相应的动作的。下表是Modbus RTU 协议常用的功能码,使用它们即可实现对Slave 端的数字量和模拟量进行读写操作。
第六步:了解Modbus RTU 通讯协议帧结构;
下表列出了RTU 协议每个字节的位。
第七步:Modbus RTU 协议的典型数据帧格式见下表; RTU 协议数据帧格式
第八步:下表 给出了以RTU 方式读取一个整数数据的例子:主机请求。
下表给出了以协议从机应答读取整数数据示例。
第九步: 远创智控YC-MDPB-001网关的配置;
YC-MDPB-001 网关是智能型Modbus-232/485到PROFIBUS 的协议转换网关,在接口RAM 中建立了
PROFIBUS 到Modbus 的映射数据区,由软件实现PROFIBUS 到Modbus的协议转换和数据交换。凡具有RS-232/485 接口的MODBUS 协议设备都可以利用YC-MDPB-001 与现场总线 PROFIBUS 互连。一方面,YC-MDPB-001网关在与PROFIBUS 通讯时是作为PROFIBUS 从站;另一方面,它在与Modbus 通讯时,即可以作Modbus 主站,也可作Modbus 从站。通过该网关的GSD 文件,可以在西门子STEP 7 编程软件中对该网关进行硬件和软件配置,完成相应的通讯功能。以下是详细的硬件和软件配置方法:
PROFIBUS 到Modbus网关的硬件设计
YC-MDPB-001 网关的PROFIBUS 从站地址和MODBUS 主、从站选择可以通过该网桥的硬件拨码开关来设置。其拨码开关有 8 位,其最高位是设置MODBUS 主从站的(若该位设为 1,即将其作为MODBUS 主站;若该位设为 0,即将其作为MODBUS 从站);其它的低 7 位设置PROFIBUS 从站地址。
第十步: PROFIBUS 到Modbus网关自带PROFIBUS DP 接口,可以使用标准的PROFIBUS DP 连接头和标准的PROFIBUS 电缆将其连接至PROFIBUS 现场总线中。
远创智控PROFIBUS 到Modbus网关还提供 RS-232/485 接口,其他MODBUS 从站可以通过该接口实现与PROFIBUS 到Modbus网关的通讯。须注意的是在RS-485 总线终端要加终端电阻,PROFIBUS 到Modbus网关已内置终端电阻,只需用外接短接线将其接入RS-485 网络即可。下图是RS-485 网络连接和终端电阻的连接示意图:
第十一步:YC-MDPB-001 网关的软件配置;
硬件连接配置好后,就可以开始配置YC-MDPB-001网关的软件了。其软件配置包括:设备参数配置和
MODBUS 报文队列配置:
第十二步:MODBUS转PROFIBUS网关的设备参数配置;
在STEP 7 的HW Config 中,可以通过安装YC-MDPB-001 网关的GSD 文件(PBMD.GSD 是MODBUS 主站的GSD 文件;PBMDMS.GSD 是MODBUS 从站的GSD 文件)把PROFIBUS 到Modbus网关的配置文件添加到STEP 7 的设备配置库中。此后,就可以按下图的示意方法配置PROFIBUS 到Modbus网关了。
第十三步: 将YC-MDPB-001 网关添加到S7 的硬件配置系统中后,可以对其相关参数进行配置。本设计将MODBUS转PROFIBUS网关作为MODBUS主站,根据MODBUS从站的要求,主站基本参数配置如下:
PROFIBUS 从站地址=19;
波特率=9600;校验方式:无校验;
数据更新模式:在每条MD 回答后;
等待回答时间:50ms。
MODBUS转PROFIBUS网关的MODBUS报文队列配置
根据通讯系统的要求,MDPB网桥可以配置不同的报文队列来完成实际的通讯要求。YC-MDPB-001 网关有 0#~19#共 20 个槽(逻辑上,非物理设备);0#、1#槽已占用,剩下 18 个槽提供用户使用。每个槽可以用来插入一条MODBUS 通信模块;所以一共可以插入 18 条MODBUS 模块。MODBUS转PROFIBUS网关的每一个MODBUS 模块对应一种功能的MODBUS 报文,可双击插入某一槽中。
下面以在 2#槽中插入“read 24 bits(0xxxx)”为例说明MODBUS 模块是如何完成某种功能的MODBUS 报文的。该MODBUS 模块对应MODBUS 的 01h 功能,即:读取 24 个输出线圈 0xxxx 状态。
13.1: 选中 2#槽,然后双击“read24 bits(0xxxx)”; 2#槽中插入“24DI read 24 bits(0xxxx) 1 3”;
13.2: 进一步设定MODBUS 参数:双击 2#槽中的“24DI read 24 bits(0xxxx) 1 3”;选择“Parameter Assignment”,即可设定“从站地址”和“起始地址”等参数。
参数设定完后,就建立了如下图所示的MODBUS 至PROFIBUS 的数据映射关系。
第十四步: 其中,I1..I3 是PROFIBUS 主站分配给这个MODBUS 模块的PROFIBUS 输入地址I1~I3,对应本MODBUS 报文读到的 24 bits (0xxxx)。这样,PLC 在进行编程时,直接读取I1~I3 即可得到MODBUS 的 24 个输出线圈 0xxxx 的状态。
本YC-MDPB-001网关需要完成的通讯数据包括:36 个遥信信息点(功能码 02)和 18 个遥测信息点(功能码 03)。根据此要求,需配置的报文队列如下图所示(站号为 19、起始地址为 0):
第十四步:
2#槽的报文队列对应的MODBUS 命令是:发功能码 02 命令—读输入线圈 10001~10032 的状态,存入I11~ I14;
3#槽的报文队列对应的MODBUS 命令是:发功能码 03 命令—读保持寄存器 40001~40018 的值,存入 I528~
I563;
完成以上配置后,PLC 就可以和MODBUS 从站设备进行通讯了。
案例总结:
自从本通讯系统运行以来,PLC 与Modbus RTU 间的通讯一直正常,从未出现过任何软、硬件故障以及其它干扰现象,有效地保证了自动控制系统的正常运行。可见,PLC 通过YC-MDPB-001 网关与Modbus RTU 通讯是一种行之有效的方法。PLC 和上位机WINCC 可以读取仪表中温度测量值、设定值等,同时可以远程设置继电保护装置和直流屏设备中的数据,极大地方便了现场的控制和操作。由此看来,利用YC-MDPB-001 网关来解决西门子PLC与第三方智能控制仪表之间的通讯是一个值得推广的方式,在电力自动控制系统中, 一定会取得更加成功的应用。
楼主最近还看过