
1. 一个多工位电池产线项目为什么值得专门聊PLC选型与控制前阵子接了个电池生产线的控制项目设备结构不复杂但工位多、节拍要求紧、工艺参数还经常要根据不同电芯型号切换。甲方一开始给的方案就是用PLC把各工位串起来等真到出电气图纸的时候才发现问题全集中在控制层怎么选型才能既有性价比又不牺牲扩展性多工位之间的协同到底用 EtherCAT 还是 CC-Link主站和远程站的数据刷新率能不能跟上产线节拍这些问题不解决设备装好了也是一堆联动故障等着擦屁股。最后定下来的方案是三菱 FX5U 加 Q 系列混合使用。FX5U 负责具体工位的顺序控制和本地逻辑Q 系列作为整线的中央控制大脑承担数据汇总、配方管理、联锁逻辑和与 MES 的对接。这套组合在中小规模电池产线里非常常见很多同行可能也正在纠结类似选型。这篇就按我实际做下来的流程把 FX5U/Q 系列在多工位电池生产线里的分工逻辑、硬件配置、程序结构、关键功能实现和现场调试经验完整过一遍。需要说明的是我下面提到的软硬件配置和程序思路是基于我自己的项目实践总结出来的通用做法。每个产线的工艺细节和客户要求不同直接照搬未必合适但选型思路和程序框架可以复用。2. FX5U和Q系列在多工位电池产线里到底怎么分工2.1 为什么不是单一系列走全场很多刚接触这类项目的工程师会问一个问题既然 FX5U 本身就能通过 EtherNet/IP 或者 CC-Link IE Field 组网也能带远程 IO为什么还要再加一台 Q 系列直接全部用 FX5U 不更简单理论上确实可以但电池产线有个特殊性工位多、数据量大、节拍节奏由中央逻辑统一调度。FX5U 的单机处理能力强但作为整线主站时程序量一旦上到几千步还要同时处理配方管理、历史数据缓存、与上位机频繁通信扫描周期就会明显抖动。而 Q 系列特别是带多 CPU 或者带高性能电源模块的配置在数据吞吐和指令处理速度上更稳适合承担整线调度中枢这个角色。我在这条产线里的实际分工是每台FX5U只负责一个物理工位比如极片裁切工位、卷绕工位、焊接工位、注液工位、化成分容工位的电芯夹具控制等。它接收来自Q系列的指令比如启动暂停复位切换配方执行完把状态反馈回去。Q系列做整线主站汇总所有FX5U的状态执行全线的流程状态机手动/自动/待机/急停下发节拍指令处理配方数据并通过以太网接口和MES系统交互。这种两层架构的好处是单个工位出问题不会把整条线的程序搞崩溃因为工位逻辑在本地PLC里跑Q系列只管联锁和调度逻辑清晰调试时定位问题也快。代价是多了一台PLC的硬件费用但换来的是维护性和稳定性值。2.2 硬件配置怎么定以实际项目为例我这条产线一共12个工位其中6个工位需要独立PLC控制其余工位用远程IO站。整线配置如下表大家可以参考项型号数量说明中央主站Q03UDVCPU1整线调度、数据汇总、MES通信电源Q61P1主站供电以太网模块QJ71E71-1001与MES/上位机通信CC-Link IE Field主站LJ71GF11-T21连接各FX5U和远程IO工位控制FX5U-32MT/ES6每台对应一个工艺工位远程IOAJ65SBTB1-32D若干用于简单信号点位的采集看到这里你可能注意到我没用Q系列自身的远程IO模块去接所有点而是把复杂逻辑工位单独用FX5U处理。这样做的原因很实在远程IO只能做信号收发不能跑工艺逻辑而像卷绕工位的张力控制、焊接工位的能量监控需要独立CPU实时计算远程IO根本带不动。网络层面Q系列作为主站和6台FX5U之间就是走CC-Link IE Field一个主站模块就能全部拉通AI/DI点、寄存器数据都可以映射到主站内存里。站号规划上我给每台FX5U分的站号是按照产线物理位置顺序排的比如裁切是1号、卷绕是2号这样Q系列里做数据映射时一目了然对应关系不会乱。3. 多工位电池产线的控制程序核心模块怎么拆3.1 主状态机整线协调的关键多工位电池产线程序里最核心的不是某个工位的逻辑而是整线的主状态机。Q系列里的程序我把它分成四个大状态ST_STANDBY待机、ST_AUTO_RUN自动运行、ST_MANUAL手动调试、ST_ALARM报警暂停。每个状态之间的切换条件要严格定义尤其是从自动运行切到报警暂停时所有工位的动作必须在规定时间内完成停止否则会出工艺事故。举一个实际的联锁场景焊接工位在自动运行中突然报警比如焊头温度超限Q系列的主状态机会立刻把状态切到ST_ALARM同时向所有FX5U下发暂停指令。但是注意这里不能只下发一条指令就完事因为上游的极片裁切工位一旦停下来裁切刀可能正好停在某个中间位置下一次启动如果不先回原点就裁切极片尺寸就错了。所以我在主状态机里加了一个停机后位置确认的逻辑报警触发后Q系列先等待所有工位上报已安全停止信号再根据当前工位的运行阶段决定是否需要在报警复位后执行回原点动作。这个看起来简单但很多现场问题都出在这——只做了急停没做急停后的复位和再启动流程导致每次报警恢复都要人工干预半天。3.2 FX5U单工位程序标准化可复用FX5U的程序我强烈建议按标准模板来写不要每个工位都从头搭一遍。我的做法是把单工位程序分成以下模块输入/输出映射区物理IO点映射到内部软元件后续逻辑统一操作内部软元件。这样换IO点、改接线时只需要改映射区不用动主逻辑。手/自动切换逻辑所有工位必须支持手动和自动两种模式自动模式下由Q系列指令驱动手动模式下本地按钮直接控制。本工序流程比如注液工位就是夹具夹紧→注液针下降→注液→保压→注液针上升→夹具松开这六步用步进梯形图或者SFC写都行关键是状态清晰。报警处理FX5U本地采集到的报警如气缸到位超时、真空压力不足上报给Q系列Q系列统一弹窗和记录。本地手动操作面板方便单个工位调试用。这里有个很重要的设计习惯FX5U内部要有独立的运行/停止控制位不能完全依赖Q系列指令。比如Q系列断线了或者主站PLC故障现场工人通过本地面板也要能手动操作单个工位完成基本调试动作。这样做还有一个好处单个工位程序在车间单独调试时不需要把整条线都跑起来效率高很多。3.3 配方管理不同电芯型号的切换电池产线里同一台设备往往要做好几种规格的电芯。比如同一卷绕工位不同型号的极片宽度、卷绕圈数、张力设定值全不一样。如果每次换型都去PLC程序里改参数既不安全也没效率。我在Q系列里做了配方管理功能配方数据存储在Q系列内置的软元件文件里或者存在CF卡里按配方号读取。每个配方包含以下信息配方编号和名称各工位的关键工艺参数卷绕张力、焊接功率、注液量、压力设定等各工位的运行速度参数工位之间的节拍配合参数比如裁切工位缓存区空时前段速度需要降速换型时操作员在触摸屏上选择配方号按下配方下发按钮Q系列会将对应的参数批量写入每台FX5U的指定寄存器里。FX5U在收到配方更新信号后要做一次参数生效确认把接收到的值与本地设定范围做比对如果发现异常比如注液量超上限就拒收并报警。这一步双保险非常有必要因为配方数据在以太网传输中一旦受到干扰数值错了而程序没发现这不是闹着玩的。4. 关键工艺控制从单体电芯到多工位协同的细节4.1 裁切工位的伺服定位与速度同步电池极片裁切工位对定位精度要求很高我用的是FX5U内置的高速脉冲输出控制伺服。FX5U-32MT本体自带4轴200kHz脉冲输出对于这种单轴定位的裁切应用完全够用不需要额外加定位模块。定位控制程序里面的核心是原点回归方式的选择。我用的是近点狗Z相回归方式丝杠找零点这样每次开机回原点后机械位置的重复精度能保持在正负一个脉冲以内裁切长度才稳定。实际调试中发现如果不做Z相找零点仅靠近点狗停止伺服停止位置误差可能达到几个脉冲这对极片裁切来说直接导致后续卷绕对齐度变差。速度同步方面裁切工位和前面放卷工位之间的速度匹配在电池产线里容易出问题。我这里的做法是放卷工位不是单独控速而是把裁切工位的运行状态作为放卷速度的参考通过FX5U之间的数据交换经Q系列中转实现速度微调。初学者容易犯的错是每个工位按自己的节奏跑结果中间缓存区要么堆料要么拉断。4.2 卷绕工位的张力控制需要独立控制回路卷绕张力控制是电池产线里最讲究的环节之一。张力太松卷芯内部松散电芯后续容易变形张力太紧极片拉伸变形甚至断裂。FX5U本身不带模拟量张力控制专用功能但可以通过模拟量特殊适配器读取张力传感器信号经过PID运算后输出给磁粉离合器或者伺服电机做张力调节。我用的是 FX5U-4AD 加内置PID指令的方式。PID参数整定花了好几天最后是先纯P再逐步加ID基本不用的经验法则得出的。张力控制回路需要注意一个启动和停止时的处理技巧产线启动瞬间卷径从静止到运动张力会突然跳动此时PID输出需要做预置处理——在启动前先把输出设到当前张力设定值对应的初始输出上再切自动模式这样能把启动冲击降到最小。4.3 焊接工位的能量监控与数据上报电池极耳焊接工位对焊接能量的一致性要求很高。焊接逆变电源一般自带通信接口我通过Q系列的串口通信模块或者以太网模块如果电源支持实时读取每个焊头的实际焊接能量值存入Q系列的数据寄存器。关键的监控逻辑是每个电芯焊接完成后Q系列把焊接能量值与设定范围做对比如果超出上下限就判定为不合格焊点同时记录下当前焊接的是哪一工位的哪一个电芯通过追溯编码实现。这些数据后续要上传MES作为电芯质量追溯的一部分。注意这里的数据采集一定要用块读取异或校验的方式不能一条一条地轮询否则产线节拍快的时候通信根本来不及。5. 通信与数据交互把Zeus拉上神坛的CC-Link IE Field5.1 为什么选CC-Link IE Field而不是普通以太网FX5U本身自带以太网口Q系列也有以太网模块理论上我可以通过Socket通信自己写协议来交换数据。但实际项目中我坚定地选了CC-Link IE Field总线原因有三条第一实时性有保障。CC-Link IE Field的刷新周期可以设到1ms级别而我用Socket自己写协议数据刷新周期能做到几十毫秒就算不错了。电池产线里焊接工位和裁切工位的联动数据刷新慢了整个节拍就压不下来。第二数据映射不需要写协议。组态完成了以后通信数据直接映射到内容寄存器地址程序和访问本地软元件没区别。自己写协议的话要处理分包、组包、重传光这部分代码量就能堆一摞。第三诊断功能强大。某个从站断线、通信超时总线上自动报错主站可以看到具体是哪个站出问题了。这个对现场排查网络故障帮助非常大。5.2 数据映射表怎么设计通信组态里每台FX5U和Q系列之间都建立数据映射区。我设计了一张标准的数据映射表每台从站统一格式RWw 0~9从站→主站工位状态、当前工序编号、报警代码、当前计数、设备速度、张力读数等RWw 10~19主站→从站运行指令、暂停指令、复位指令、配方编号、速度设定、节拍参数等RWr 0~9主站→从站联锁信号上游允许出料/下游请求来料RWr 10~19从站→主站工位就绪信号、来料请求、完成信号这套表看起来简单但实际最值钱的地方是映射地址和物理工位号的对应关系一定要固定并且写进文档。现场调试时如果某个信号不通直接查这个表就知道是哪一段的问题不用对着程序一行行翻。5.3 与MES系统的接口设计电池产线不可避免要跟MES对接传输数据包括生产计划、配方参数、产量统计、不良品数据、设备状态、报警记录等。我在Q系列里专门做了一个数据中转区MES通过以太网访问Q系列模块读写这个中转区不和PLC主程序直接打交道。这样做的好处是MES通信异常时不会影响PLC的核心控制逻辑。我在通信程序里做了超时处理和通信失败重试机制如果MES长时间不响应PLC继续按本地逻辑跑生产模式降级为半自动保证产线不会因为上位机故障停摆。6. 现场调试这套系统最常见的坑和我的排查手段6.1 通信断线后FX5U和Q系列的假死现象我在现场遇到过一个特别典型的坑某个工位的FX5U和Q系列之间的CC-Link IE Field连接正常但偶尔会出现某台FX5U的数据不再刷新其他站都正常。排查了很久才发现问题出在从站程序死循环。FX5U里有一段报警判断程序因为一个小错误在某些边界条件下进入无限循环虽然PLC还在跑但通信刷新功能被占用了导致这个站的数据一直不更新。主站侧看这个站并没有报通信错误因为硬件连接正常但数据就是不动。排查手段是这样的先在Q系列主站侧看每个从站的通信状态标志确认硬件链路正常然后逐一对比从站数据的上次更新时间戳如果发现某站的时间戳长期不变直接去该站程序里找问题。后来我在这台FX5U里加了一个看门狗定时刷新计数器每扫描周期自加一次Q系列可以监视这个计数器的变化来判断PLC程序是否真的在正常运行。这个经验在处理类似问题时非常有用。6.2 急停按钮的接线与程序联锁多工位产线的急停回路设计很多初学者会忽略一点急停按钮不能只接PLC的输入点还必须直接串在伺服使能回路和气缸电磁阀电源回路上。PLC程序里做急停逻辑只是第一步如果伺服驱动器的使能信号由PLC输出控制的话万一PLC程序跑飞或者通信异常急停就形同虚设了。我在这条产线的设计里急停采用的是双回路方式硬回路急停按钮直接切断24V电源到所有伺服使能继电器、所有电磁阀电源模块。按下急停设备物理上断电停机。软回路急停信号同时接到Q系列的输入点PLC程序检测到急停后进入ST_ALARM状态记录报警禁止任何自动启动操作。调试时还发现一个细节多工位产线的急停按钮分布在好几个位置每个急停按钮的触点必须串联而且要用常闭触点接到安全电源回路。如果用了常开触点某个急停按钮松了或线路断了会完全不起作用。6.3 节拍优化找到瓶颈工位整线节拍没达到设计值是这种多工位产线调试阶段最常遇到的问题。最开始是裁切工位速度上不去后来是注液工位夹具动作太慢。我当时用Q系列里的时间戳记录功能在每个工位的工序开始和工序结束处打点统计每个工位实际运行时间。把各工位时间排序后发现瓶颈在卷绕工位它单个电芯要14秒其他工位只要8到10秒。优化手段包括卷绕工位的加减速参数重新整定把加速时间从0.5秒压到0.3秒同时把卷绕工位的等待入料时间和出料完成时间压缩通过提前准备缓存区的方式减少等待。最后整线节拍从单件20秒压到了14.8秒勉强达标。这个过程提醒我一个道理节拍优化要找真瓶颈不能凭感觉平均加速平均加速的结果往往是设备过度磨损但整体节拍没快多少。7. 程序备份与版本管理产线维护里最容易忽视的痛点电芯产线一旦投产程序版本管理就是个大问题。我听不少同行说过现场调试完的程序和出厂备份的对不上设备坏了换个PLC下载进去的程序因为没有最新备份导致整个产线要重新调一遍。我这边的习惯是每个工位的FX5U程序备份文件命名规则统一为“项目号-工位号-日期-版本号”比如“B202401-CJ-V2.1-20240512”代表裁切工位2024年5月12日的版本。Q系列主站程序单独备份除了整套程序还额外导出一份软元件注释和参数配置表。每一次现场调试修改必须在当天结束时完成新版备份并且在上位机里记录修改内容。我吃过亏有一次改了一个定时器参数过了两周才想起来要对比旧版本还好当时有备份不然根本记不住改在哪。触摸屏程序、运动控制模块参数、伺服驱动器参数这些也都属于系统配置的一部分必须和PLC程序一起备份。很多项目就是只备份了PLC程序伺服参数没备份结果伺服驱动器一坏换新的上去因为参数没匹配设备动起来完全不是原来的手感。8. 这套架构后面的扩展从单线到多线从本地到云端这套 FX5U Q系列 的架构做下来之后后面客户又把另外两条线也接进了同一个Q系列系统。扩展时主要增加了CC-Link IE Field从站数量、在Q系列里增加了对应的数据映射区、调整了MES接口的地址范围其他核心逻辑基本不用动。如果你后面有更进一步的计划想把这套系统的数据往云端送三菱的方案是在Q系列模块上来做数据采集转发通过标准的以太网MQTT或者HTTP方式。我这边给客户的二期规划里就是让每台FX5U把工位数据、产量数据和设备健康数据直接汇总到Q系列再由Q系列按照一定周期上传云端。这样从设备层到边缘层再到云端整个数据链路就是通的。我个人在实际操作中的体会是不管是FX5U做单工位控制还是Q系列做整线调度这套系统架构只要前期的选型和划分想清楚了后面的编程、调试和维护都顺理成章。千万别一上来就扎进程序里写代码先把数据流和状态流图画明白比什么都重要。