1、概述
我们的plc控制系统包括各种控制系统,不仅包括集中控制室中的西门子plc系统,还包括其他辅助abb plc控制系统,如煤炭处理,包装,水处理和污泥脱水机的plc控制系统。我们领先的控制系统是abb plc控制系统,但随着煤气化装置的不断改进,增加了许多包装单元控制系统。这些包装单元控制系统主要是西门子系列PLC控制系统。包装单元控制系统,顾名思义,是一个无法集中控制的独立控制系统。基于此前提,有必要触摸屏监控分组单元系统,以降低操作强度,从而提高监控水平。
2、Modbus协议
如果modbus协议被放置在通信接口中,所有通信都是透明的。dcs与plc之间实现数据通信的各种功能只需要找到相应的功能代码,并按照特定的框架格式进行处理。由此可见,modbus网络协议的存在使得plc系统和dcs系统之间的通信非常方便。这两个系统只需要一个串行通信模块和相应的通信协议。
用户只需要根据功能代码编写特定的信息格式,无论他们需要关注什么系统。这就是所有通信过程对用户透明的原因。
3、硬件设计
采用公司主控系统,以西门子plc为主站,PLC为从站对控制系统进行改造。其次,讨论了BGL气化炉的abb plc主控系统和污泥脱水机的PLC控制系统。同时,以累积煤流为例,提出了高数据传输处理技术。
由于这两个系统的cpus相距甚远,因此采用光纤进行数据传输,以避免分组丢失和干扰。主要硬件包括:cp341、光转换器、光盒、模块、dp电缆和单模光纤电缆。
3.1 PLC硬件配置
西门子plc下位机编程软件采用STEP7 ,首先要先硬件配置,在合适的插槽中增加CP 341 RS422/485卡,如图3-2所示:

plc作为一种设备,需要定义数据交换的地址,以便能够根据abb plc控制系统的地址进行数据交换。配置卡后,我们需要设置cp341卡的属性。在这里我们应该注意四个功能代码:
(1)功能具有读写开关的功能;
(2)FC02是具有只读开关功能的第二组代码。
(3)fc03,06,16是第三组代码,它们的功能具有只读模拟功能;
(4)功能具有读写模拟功能。
3.2 abb plc的硬件配置
abb plc系统使用通讯模块实现modbus协议通信。通信中的主要变量和控制信息采用半双工通信方式从4ma传输到20ma。在模块上配置网络设置后,从互联网资源管理器地址栏输入ip地址以打开模块主页,这样就更容易配置其他项目。
1)网络设置网络设置
IP地址:IP地址(192.168.0.10)
网络掩码:掩码(255.255.255.0)
网关:网关(10.10.16.254)
2)串行设置串行端口设置
选择端口选择端口(2)
波特率波特率:(9600)
数据位数据位:(8)
停止位停止位:(1)
奇偶校验(事件平价)
接口接口:(RS-4852线)
3)操作模式设置输出模式设置
选择模式选择模式:( TCP服务器)
4、程序设计
程序设计包括PLC和abb系统通信程序部分的设计,以及数据读写地址定义的定义。PLC通讯程序最重要的部分是写Modb_功能块。功能块的正常运行直接影响到整个链路的数据交换。
4.1使用modb_341功能块
图4-1显示了调用的MODB_341功能块。每个引脚在该功能块中的应用非常重要。具体功能如表4-1所示。 在硬件配置中进行在线组态后,还可以在CP341的诊断缓冲区中查看详细的错误信息。有关错误消息比较和处理,请参阅适用于PtP CP Modbus协议RTU格式S7的S7-300 for Loadable Driver Slave手册。

图4-1 MODB_341引脚图
这里我们强调laddr,它是cp341在硬件配置中的起始逻辑地址。找到此地址是在硬件配置中找到cp341卡后,在属性的i/o地址中看到的起始地址。
表4-1引脚功能表

4.2数据交换计划地址规划
在编写通信模块时,需要定义数据交换地址,然后调用地址中的数据参与逻辑操作和编程。
数据交换方式分为数字只读,数字读写,模拟只读,模拟读写四种数据交换方式;只读定义是指abb读取PLC数据;读写定义不仅指plc,还可以读取PLC数据或将数据写入PLC。
气化plc系统与污泥脱水机PLC系统的数据交换中,模拟只读数据块为DB11,数据类型为实;模拟读写数据块为DB8,数据类型为实;数据只读数据调用地址段为M210.0~M212.4;数字读写数据调用AD。服装段为M213.0~M213.7。有关更多信息,请参见图4-2。

图4-2数据库模块图
4.3快速生成器配置
4.3.1创建渠道
创建信道的主要配置参数如下:
类型:通道类型Modbus通道
名称:频道名称(wn_channel)
端口类型:端口类型(终端服务器)#p#分页标题#e#
协议:协议(ModbusRTU)
终端服务器TCP主机名:
终端服务器TCP端口号:
模块端口号(4002)
终端服务器tcp端口号取决于用于通信的模块的哪个端口。第一个港口是4001,第二个港口是4002。一共有四个端口。
4.3.2激活频道
打开工作站,单击配置菜单下的系统硬件控制器接口通道,单击wn_通道,选择启用并观察%错误。如果低于0且模块端口2状态指示灯持续闪烁橙色,则通道已成功创建和连接。如果接口2状态指示灯始终为橙色且不闪烁,则信号线反转。
4.3.3建立控制器
创建控制器时的主要配置参数如下:
类型:控制器类型(Modbus控制器)
名称:控制器名称(n_con01)
数据表:数据类型(保持寄存器)
plc车站编号:plc来自车站地址(2)
4.3.4创建点
在后两种情况下,需要算法Algo 68-Action Value Transportion。 PV和SP范围必须相同,扫描周期不能为零。此外,数据从PLC读取并写入CM。未填充SP DestAddress;数据从CM读取并写入PLC,SP Dest Address必须与SP源地址相同。
5、高数据传输的处理
以运煤带的累积流量为例,由于煤炭上煤炭量大,累积带尺度大,16位整数数据格式的最大数据范围为0-65535,因此不能满足实际应用。使用32位整数数据格式的通信。
16位整数数据只需要一个地址。 32位整数由两个16位寄存器组成。它需要两个连续的地址并具有高位和低位。 PLC和DCS配置必须相同。通常,配置指定奇数地址。默认情况下,使用+1地址,因此无法再次指定+1地址。如果再次指定,通信数据将交叉,导致SCADA点的SP值连续漂移。
int的范围为-32768到32767,不能接收32768到65535范围内的数据。配置时,int范围应扩展到0-65535,与modbus一致。
5.1、数据传输方法
综合价值计算方法:高位和时间; 65536 +低位
1、奇数地址传输低

2、奇数地址传输高

5.2扩展PLC整数INT范围
PLC的基础数据类型int-32768-32767的范围不能更改。在Modbus通信中,16位寄存器的范围从0到65535,这导致int不能接收32768到65535范围内的数据。减去65536后,此间隔中的数据为负数。因此,通过判断接收值的正负值,int的范围间接扩展到0到65535:如果接收值为正,则真值为真;如果接收值为负,则在添加65536后添加Modbus传输的真值。
例如:
低于或等于32767的低值
使用40003地址和U32B数据格式发送138465,并且138465 = 2×65536 + 7393,然后40003地址发送低位7393,而40004地址发送高位2。
6、总结
可以看出,CP341通信模块和西门子plc软件实现了西门子plc与其它设备Modbus网络的通信,是一种有效的方法,具有广泛的应用价值,如果大家有关于通讯方面的需求,欢迎来电或咨询容感电气。