MODBUS通讯在DCS控制系统中的应用

(整期优先)网络出版时间:2024-03-04
/ 2

MODBUS通讯在DCS控制系统中的应用

马松飞、钟华

(云南锡业股份有限公司锡业分公司,云南个旧  661017 )

[摘 要]:本文主要介绍了浙大中控ECS-700系统与西门子S7-400系列PLC之间数据通信策略。并结合应用实例阐述了两者之间通过MODBUS通讯进行数据交换,详细描述了ECS-700与S7-400相关硬件及通讯配置、参数设定等,着重分析了一些技术要点、难点及解决方案。具有很强的实用性,对相关工作具有一定的借鉴。

[关键词]: ECS-700系统;PLCMODBUS通信;组态

1  前  言

随着工业自动化智能化的高速发展,对DCS、PLC工业自动化控制系统要求越来越高,往往同一工程项目中有着不同厂家的控制系统,这就需要各控制系统之间通过现场总线相关通信协议达到集中监视与控制的目的。因此,DCS系统如何实现与第三方设备间通讯进行数据交换,越来越被更多的用户重视并广泛应用。本文主要介绍浙大中控ECS-700系统与西门子S7-400 PLC通讯在锡公司中的应用。

2 系统结构

2.1上位系统

DCS只能作为主设备,PLC作为从设备。MODBUS是单主站网络协议,所以系统中只允许有一个MODBUS主站,本案例采用浙大中控ECS-700集散控制系统对锡公司主装置各种数据、现场设备进行监视与控制。现场单体设备采用西门子S7-400 PLC通过触摸屏进行数据采集与现场控制。为了达到中控室监控现场运行数据,节省人力、便于生产工艺控制的目的,本系统采用MODBUS现场总线进行通信。

2.2硬件组成

ECS-700系统由FCU712-S冗余控制器、COM701-S虚拟I/O连接模块、I/O机架、AI713-S模拟量输入模块、AO713-S模拟量输出模块、DI715-S数字量输入模块、DO716-S数字量输出模块以及远程连接通讯模块COM741-S等硬件组成;现场西门子PLC由CPU模块CPU 414-4H、I/O模块、通信模块CP341等硬件组成,物理网络通过RS485现场总线相连。

采用具备较佳抗干扰性的专用屏蔽通信线作为通信线。最里层是双绞的两芯数据传输线,一芯为红色,一芯为绿色,。中间层是金属屏蔽网。最外层是洋红色的塑料外壳。RS485现场总线接线采用普通的3线接法。把PLC通信模块CP341的4、8、11端子与中控COM741-S的TX+、TX-、SG端子连接,接线图如图1所示。中控COM741-S模块共有4个独立的串口,本案例接入COM 0串口。

图1   RS485通讯CP341 与 COM741-S连接示意图

2.3软件组成

浙大中控VF(V 4.20)用于主站ECS-700系统组态软件,西门子STEP 7 V5.3+SP2用于S7-400 PLC下位机系统组态。

3  MODBUS通讯设置

3.1从站的设置

西门子S7-400 PLC作为从站,先安装STEP 7 V5.3+SP2版本的编程软件和CP341通讯卡所需要的驱动。在硬件配置中编辑CP341通讯模块,如图2所示。在CP 341中设置从站波特率为9600,偶校验方式,停止位为1等参数,从站地址为10,如图3所示。然后再设置MODBUS从站里Function Code地址与该PLC内M,I,Q等地址的相互对应关系。另外还要编辑调用的DB60和DB61等数据块。

图2  CP341通讯卡硬件组态

图3  CP341通讯从站端口定义

3.2 主站的设置

中控DCS的主站通信模块COM741-S作为一个MODBUS主站接口,用于将标准MODBUS从站设备连入DCS系统。硬件系统构建完成以后,打开浙大中控VF组态软件进行通讯的系统组态,选中COM741-S卡件,右键选择“通信组态”进入 VFComBuilder串口通信组态软件,对该卡件进行配置。添加COM0串口,在右边的属性页中设置串口参数,物理接线设为RS485,波特率9600bps,数据位8,停止位1,偶校验方式等,如图4所示。需要注意的是,一个串口可以挂多个从站设备,但只支持一种通信协议。也即是,接入COM0串口的从站设备其通信参数必须是一样的,否则只能接入其它串口。

图4  COM741-S通讯主站端口定义

3.3 通讯组态

DCS系统与PLC系统通讯组态。中控VFComBuilder串口通信组态软件为MODBUS主站通信模块的上位机软件。选中COM0串口,添加设备Device10,设置设备的参数。逻辑地址10,响应时间500ms,间隔时间200ms,设备地址10。应注意,地址必须唯一,且和PLC的地址一致。如图5所示:

图5  设备参数定义

然后设置该从站设备的 MODBUS命令参数。选中设备Device10后,添加[000]Cmd。该PLC通讯点表如图 6 所示。因为该点位的数据只有一种,所以只添加一个Cmd就可以了。这里需要了解MODBUS通讯协议的一些约定地址规则,还有功能码的约定。线圈(DO)地址:00001-09999;触点(DI)地址:10001-19999;输入寄存器(AI)地址:30001-39999;输出寄存器(AO)地址:40001-49999。因该PLC点表数据地址在40001-49999之间,数据点数有8个,类型为模拟量。所以参数设置为,功能号:读AO(FC03),开始地址1,数量8,位号类型:2字节整型模入。命令参数如图 7 所示:

  

6  PLC通讯点表             命令参数设置

这样就在串口通信组态软件中完成了串口、设备、命令等设置,保存后退出,回到硬件组态软件。在硬件组态软件中,选中相应的“COM741-S”,右键选择“组态更新”。同时保存硬件组态。

数据读写

4.1 位号表组态

进入DCS系统软件“位号表组态软件”界面中,选择菜单[操作(O)\扫描通道位号\扫描新增]。需要注意, 因为MODBUS通讯在硬件配置里,已经定义好了各数据点的位号数据类型,所以不用进行“通信策略”组态,这是与DP通讯里位号表组态的区别。ECS-700系统通过VFComBuilder通讯软件接收西门子PLC传送过来的数据。通过扫描新增位号的方式将PLC发过来的数据包以新增位号的方式添加到位号表中。

对应PLC通讯点表相关位号、量程直接在ECS-700系统位号表中进行编辑,读入与写出数据。然后,在各通道位号表的右边进行相应的设置。这里需要注意的是输入原始码的设置,以该PLC通讯点表的电流信号为例,因为该PLC过来的模拟量信号在PLC内部乘以了10的处理,所以DCS收到该数据后需要做除以10的处理,以便显示真实值和小数点。所以原始码的量程要在0—99A的基础上扩大10倍,设置为0—999。所有位号的设置完了后,保存编译下载到控制站。然后去位号表里进行“位号调试”,通过查看各位号的实时值和该位号的状态标志,就可以观察通信是否已正常。

4.2 数据在程序中的引用

位号表组态做好后,模拟量的位号可以在程序和画面里直接去引用。最后通过组态管理软件进行画面组态及下载发布,通过监控软件进行监控与操作。

5  存在问题和故障维护

存在问题:因为锡项目施工时,通讯线里双绞的数据传输线用的是多芯线,而不是规范的单芯线。接线处,有些地方可能存在毛刺,运行过程中受外力作用有可能会造成短路,从而引起整个线路通讯故障。解决的方法,现在全部换线不现实,只能是规范接线,以及平时运行时尽量不要去牵扯通讯线和接线端子。

故障排查方法:我们必须要熟悉通讯线的走向接线图。

首先,对于施工调试过程中的通讯故障。先查线路,看TX+、TX-端子是不是接反了,通讯线路是否有短路和断路,屏蔽SG线是否正常连接。然后是分析主从站地址、波特率和校验方式等是否设置正确,点表和通讯组态是否正确。

其次,对于正常生产中突然出现的通讯故障。因为组态不会出错,这时我们就要去分析线路等硬件故障了。如果是某个点后面的设备通讯全没了,可能就是该处的线路断开了,去现场该设备处去排查。

如果是整个线路的通讯都没了,这时大概率是某处短路了。可能是现场有人动过通讯的设备,造成通讯线的+、-双绞线上的毛刺碰在一起短路了。这时,如果知道是谁在现场动了设备,就直接去该设备查线。如果不知道是谁动了哪里,就只能逐一排查,当然也是有技巧的,先去通讯线路实际走向的中间位置的设备,去把该处后端的通讯线断开。这时,如果该设备及前面的通讯上了,说明是线路后面设备的问题,然后再去断开后半段线路的中间位置处的设备,观察情况。逐一缩小范围,直到找到问题所在。

6  结束语

该方案在锡搬迁项目中得到了较好的应用,目前系统稳定、运行状况良好。MODBUS现场控制总线作为一种工业控制器的网络通讯协议,其在DCS与小型成套设备之间进行联网、监控方面发挥着重要作用。当然PLC与DCS通讯的手段和策略有很多种,需要广大的用户不断总结和探索,本文所阐述的不当之处还请同行专业人士批评指正。

作者简介:

马松飞(1995—),男,学士,电气助理工程师,从事仪表、控制系统管理工作。

钟华(1987—),男,学士,电气工程师,从事仪表、控制系统管理工作。

[参考文献]:

[1]浙江中控Visual Field用户手册[Z].

[2] 西门子PLC与变频器、触摸屏综合应用教程/吴志敏,阳胜峰编著.北京:中国电力出版社,2009.