一、引言

在使用西门子PLC的时候,我们经常忽略一个重要的参数"通信负载"(也是“通讯负荷”)。在PLC与HMI连接 ,PLC与PLC进行通信等,博途(TIA Portal)软件监控、第三方软件通讯等都需要占用PLC通讯负载。

如何设置西门子S7-1200/1500 CPU的通讯负载率?_数据

在进行PLC-Recorder的高速采集测试时发现:如果S7-1200的通讯负载率设置为20%,则没法保证4ms一次的UDP发送,调整到50%后,就正常了。

不合理的通讯负载会导致PLC出现各种各样的问题。随着PLC通讯功能越来越强大,通讯任务也在不断增加,“通讯负载”这个参数有时候也被迫进行修改,哪些通讯对其影响大呢?如果不注意,可能引起哪些问题呢?

二、异常举例

1.通讯负载设置过大,可能导致OB1超出最大循环时间。经常出现在PLC使用过多工艺对象,如工艺轴、过多的循环程序等情况下:

如何设置西门子S7-1200/1500 CPU的通讯负载率?_数据_02

如何设置西门子S7-1200/1500 CPU的通讯负载率?_从站_03

如何设置西门子S7-1200/1500 CPU的通讯负载率?_从站_04

2.使用西门子触摸屏配方功能,经常出现触摸屏读取数据缓慢或者各种错误:

如何设置西门子S7-1200/1500 CPU的通讯负载率?_从站_05

3.使用西门子WEB功能,读取变量或者修改变量,出现缓慢情况时,也需关注通讯负载:*

如何设置西门子S7-1200/1500 CPU的通讯负载率?_从站_06

三、测试通讯负载

我们借助第三方软件PLC-Recorder,对于TIA Portal开发的PLC,进行各种变量组合读取测试,展示一下读取时间、通讯负荷变化等情况

1.硬件准备

确保你有一个完整的S7-1200/1500系统,包括PLC、编程软件(如TIA Portal)、必要的通讯模块和连接电缆。

2.软件准备

确保编程软件安装正确,并且已经将PLC和通讯模块正确配置。

3.测试步骤

①通讯连接:使用编程软件连接到PLC,确保通讯正常。

②编写测试程序:在PLC的编程软件中,编写一个简单的程序,用于模拟通讯负载。这个程序可以包括:定时发送数据到从站或接收从站发送的数据;使用高速计数器或定时器产生大量数据;使用多个数据块(DB)和多个变量来增加负载;

③运行测试程序:将程序下载到PLC中,并开始运行。

④监控通讯:在编程软件中监控PLC的通讯状态,包括:PLC的CPU负载,通讯错误日志,通讯速率。

⑤性能测试:观察PLC在运行测试程序时的响应时间和稳定性。检查PLC在长时间运行高负载程序时的温度和稳定性。

⑥记录数据:记录在不同负载下的PLC性能数据,包括CPU占用率、通讯速率、错误率等。

⑦分析结果:根据记录的数据分析PLC的通讯负载能力,确定其在实际应用中的表现。

4.合理实践

①逐步增加:逐步增加通讯负载,并监控PLC的性能,直到达到应用的上限。

②留有冗余:即使PLC能够处理更高的负载,也要留有一定的冗余,以应对未来可能的负载增加或网络问题。

5.具体设定建议

①S7-1200:对于S7-1200,通常每个I/O点的通讯负载不应超过100字节/秒,总负载(包括程序块和其他通讯)不应超过CPU处理能力的50%。

②S7-1500:S7-1500具有更强大的处理能力,因此通讯负载可以设定得更高。但一般建议保持CPU负载不超过70-80%,通讯频率根据实际应用进行调整。

总之,没有固定的通讯负载设定,因为这需要根据具体的应用场景来调整。合适的方法是通过测试和监控来确定最适合你应用的通讯负载设定。

四、PLC通讯负载查看

1.查看PLC地址

如何设置西门子S7-1200/1500 CPU的通讯负载率?_从站_07

2.浏览器这里输入https://192.168.0.1

如何设置西门子S7-1200/1500 CPU的通讯负载率?_数据_08

如何设置西门子S7-1200/1500 CPU的通讯负载率?_数据_09

3.选择"诊断"

如何设置西门子S7-1200/1500 CPU的通讯负载率?_数据_10

4.选择"运行系统信息"

如何设置西门子S7-1200/1500 CPU的通讯负载率?_数据_11

5.通信负载设置

"通信负载"用于设置CPU 总处理能力中可用于通信过程的百分比,如图所示。这部分 CPU 处理能力将始终用于通信,当通信不需要这部分处理能力时,它可用于程序执行。可设置的范围为15~50%,默认值为20%。占用"通信负载"的通信包括:博途(TIA Portal)软件监控,HMI连接及PLC间的S7 通信等。

如何设置西门子S7-1200/1500 CPU的通讯负载率?_从站_12

CPU通信负载设置

五、实际应用展示

在实际应用中,从站数量、数据交换量、通讯速率、通讯周期和通讯协议等都会对通信负载率造成不等的影响;如以下某新型材料企业车间,需要实现4组环形轨道上共48个电动葫芦与两个地面控制柜之间的无线通讯,两个地面控制柜内装有8台S7-1200smart PLC,作为每组电葫芦的主控设备。

车间共计采用58台西门子S7-1200 SMART PLC,由于车间从站数量过多,会导致通信负载率上升,因此在设计工业控制系统时,需要仔细考虑网络架构、PLC性能和通讯协议,以确保系统稳定运行。

为了有效缓解通信负载问题,我们采取了1主6从的通讯架构,并构建了8条环形轨道,每条轨道形成一个独立的系统单元。为此,我们共计部署了56个达泰无线通讯模块,以实现生产车间地面控制柜与电葫芦PLC之间的无线数据交互。我们选择的通讯协议是Profinet,旨在进一步优化通信效率。

无线通讯网络图如下:

如何设置西门子S7-1200/1500 CPU的通讯负载率?_从站_13

六、总结

通过上述对比测试,可以看出:

● 读取不同变量数量、不同数据类型变量,对西门子通讯负载会造成不同影响。

● 增大通讯负载设定,可以大大降低符号读取的周期时间。

但是,通讯负载也会对PLC循环周期产生影响,必须根据控制的需求和实际循环时间,进行合理设置(具体可参考西门子手册)。

通过降低通信负载,降低循环时间。

用户可以降低硬件配置中的通信负载设置。例如,如果通信负载设置为20%,而不是默认值50%,则循环时间为从2倍无通信负载时的循环时间降为1.25倍

对实际循环时间的影响

通信仅仅是造成循环时间延长的一个因素。各种循环时间延长设置都将导致在一个循环内发生更多的异步事件,进一步延长循环程序的执行时间。

延长的时间取决于循环程序中发生的事件数量以及执行这些事件所需的时间。

说明

检查参数变化

●检查在系统运行期间参数“因通信引起的循环负载"的值变化带来的影响。

●为了防止时间错误,在设置最大循环时间时,需考虑通信负载。