3、PLC选型进阶:CPU性能选型、通信协议选择、扩展模块搭配
好,咱们继续往下聊。前面我们把PLC选型的基础框架搭好了,现在要进入真正考验功力的环节了。说实话,很多工程师选PLC,最后项目出问题,往往就栽在CPU性能估算、通信协议选错、或者扩展模块搭配不合理这三个坑里。我这些年踩过的坑,今天一次性给你讲透。
3.1 CPU性能选型:别光看主频
很多人选CPU,上来就问“主频多少?”。其实这是个误区。PLC的CPU性能,说白了要看三个维度:处理速度、程序容量、以及I/O点数上限。
我个人习惯,先看位指令执行时间。比如西门子S7-1200的1214C,位指令大概0.08μs,而S7-1500能做到0.001μs。差了两个数量级。你想想看,如果你的程序里有大量高速计数、或者PID调节,CPU处理不过来,扫描周期就会拉长,现场设备就会“卡顿”。
我在项目中遇到过一件事:一个包装线项目,用了某品牌的中端PLC,客户说“机器动作慢半拍”。我一查,CPU扫描周期到了50ms,而工艺要求是20ms以内。最后换了高一档的CPU,问题解决。所以,选CPU时,建议留出30%的余量。别卡着上限选,那是给自己挖坑。
CPU选型速查表(以西门子为例)
| 型号 | 位指令时间 | 工作存储器 | 最大DI/DO | 适用场景 |
|---|---|---|---|---|
| S7-1200 1214C | 0.08 μs | 100 KB | 284点 | 小型单机设备 |
| S7-1500 1511 | 0.01 μs | 300 KB | 1024点 | 中型产线 |
| S7-1500 1516 | 0.001 μs | 1.5 MB | 4096点 | 大型复杂系统 |
嗯,这里要注意:程序容量不是越大越好。够用就行,但别太抠。我曾经见过一个项目,程序写了95%,结果客户要加一个功能,死活塞不进去了。最后只能换CPU,工期和成本都上去了。
3.2 通信协议选择:Profinet、EtherCAT、Modbus TCP
通信协议这块,是选型里最容易“打架”的地方。我见过不少项目,因为协议不统一,最后加了一堆网关,既贵又麻烦。咱们一个一个说。
3.2.1 Profinet:西门子的“亲儿子”
Profinet,说白了就是西门子生态里的“标准语言”。如果你用的是西门子PLC,那首选就是Profinet。它基于工业以太网,支持实时(RT)和等时同步(IRT)两种模式。IRT模式下,抖动可以控制在1μs以内,做运动控制完全够用。
我建议:只要项目里西门子设备占多数,就无脑选Profinet。它和西门子变频器、伺服、HMI的配合是天衣无缝的。我曾经在一个汽车焊装线上,用了Profinet连接了30多个从站,调试时几乎没遇到兼容性问题。
小技巧:Profinet的IO周期可以设置。如果对实时性要求不高,比如只是采集温度,可以把更新周期设到10ms以上,能减轻CPU负担。
3.2.2 EtherCAT:运动控制的“快枪手”
EtherCAT,这个名字你肯定听过。它的特点是“快”,而且是那种“不讲道理的快”。为什么?因为它采用“飞读飞写”技术,数据帧经过每个从站时,只处理自己的那部分,然后直接转发。延迟极低。
如果你做的是多轴同步、电子凸轮、或者高速飞剪这类应用,EtherCAT几乎是唯一的选择。我做过一个锂电池卷绕机项目,8个伺服轴需要同步运行,用EtherCAT,同步误差控制在1μs以内。换成Profinet的IRT模式也能做,但调试难度会大一些。
不过,EtherCAT也有短板:它和西门子的PLC配合不是那么“原生”。西门子PLC要支持EtherCAT,通常需要加一个通信模块,或者用第三方主站卡。嗯,这里要权衡一下。
3.2.3 Modbus TCP:老当益壮的“通用语言”
Modbus TCP,可以说是工业界的“普通话”。几乎所有PLC、仪表、变频器都支持它。虽然速度比不上Profinet和EtherCAT,但胜在简单、稳定、兼容性好。
我建议:当项目里设备品牌很杂时,用Modbus TCP做“兜底”协议。比如,一个水处理项目,PLC用西门子,仪表用国产的,变频器用ABB的。这时候,用Modbus TCP连接所有设备,是最省心的方案。
我曾经在一个项目中,用Modbus TCP同时接了20多个Modbus从站,包括温控器、流量计、变频器。虽然每个从站轮询需要时间,但整体周期控制在50ms以内,完全满足工艺要求。
避坑指南:Modbus TCP的从站地址不能重复,而且每个从站的响应时间要设置合理。我曾经遇到过一个问题:某个从站响应慢,导致整个轮询周期被拖长。后来我把超时时间从100ms改到50ms,并跳过了那个故障从站,问题才解决。
3.3 扩展模块搭配:别让“短板”拖后腿
CPU选好了,协议定好了,接下来就是扩展模块的搭配。这一步看似简单,但最容易出问题。
我个人习惯,先看背板总线带宽。比如S7-1200的背板带宽是1.5 Mbps,而S7-1500是10 Mbps。如果你在S7-1200上挂了太多高速模块(比如高速计数、运动控制),背板带宽可能会成为瓶颈。我见过一个项目,在S7-1200上挂了4个高速计数模块,结果数据刷新跟不上,计数丢脉冲。
其次,注意模块的供电能力。很多扩展模块需要从背板取电,比如数字量输入模块,每个通道大约需要5-10mA。如果挂的模块太多,背板总电流可能超限。这时候,就需要加一个电源扩展模块。
扩展模块搭配检查清单
- 背板带宽:计算所有模块的总数据量,确保不超过背板带宽的80%
- 供电电流:查看CPU和电源模块的额定输出电流,减去已用电流,留出余量
- 物理空间:导轨长度是否够?模块之间是否需要留散热间隙?
- 软件组态:确认TIA Portal或对应软件中,模块的固件版本是否支持
最后,说一个我踩过的坑:模拟量模块的精度问题。有一次,我用了一个普通的模拟量输入模块采集4-20mA信号,结果现场干扰大,读数跳得厉害。后来换成隔离型模拟量模块,问题才解决。所以,如果现场有变频器、大电机等强干扰源,建议选隔离型模块。虽然贵一点,但省心。
好了,这一章的内容就这些。CPU性能、通信协议、扩展模块,这三块是PLC选型的“铁三角”。你只要把这三块吃透了,选型基本不会出大问题。下一章,咱们聊聊变频器和伺服驱动器的选型,那又是另一番天地了。