自动配料控制系统这个东西凡是接触粉体、颗粒物料生产线的工程师基本都绕不开。我最近刚完成一套基于三菱PLC的自动配料控制系统的设计开发和现场调试从需求梳理、硬件选型、程序编写到试运行整个过程走下来有不少值得记录的东西。这套系统的应用场景是某建材车间的干混料生产需要把水泥、砂子、粉煤灰和少量添加剂按配方自动称量混合对配料精度和生产节拍的稳定性要求都挺高。写这篇文章一方面是给自己做个复盘另一方面也给正在做或者准备做类似配料项目的同行一个参考。不管你是刚入门PLC的电气工程师还是已经在做非标自动化项目的老手这篇围绕系统整体架构、关键控制逻辑和现场调试经验展开尽量把细节说到位。1. 系统设计的前置思考配料需求与控制方案选型1.1 先把工艺需求拆明白自动配料系统的“自动”两个字听起来简单真正落地的时候才会发现每一处细节都对应着一个控制需求。我在动手之前先把现场工艺捋了一遍。这个项目是给某建材车间的干混砂浆生产线做配套原料大概是水泥、石英砂、粉煤灰和几样小料添加剂配料完成后进入搅拌机搅拌然后打包。整套系统要解决的问题可以归纳成三条顺序可控原料必须按配方规定的先后顺序进入称量斗不能“一拥而上”否则轻质原料会被压在下层影响混合均匀性也会造成称量干扰。重量准确大料砂、水泥单次配料量几十公斤到几百公斤误差要求控制在±0.5%以内小料添加剂用量很小要求就更高需要控制在±0.2%以内。配方灵活车间实际生产不可能一个配方打天下不同标号的砂浆原料配比不一样操作工要在触摸屏上随时切换配方最好还能单独调整某个原料的设定值。把这些需求写成技术语言就是多路给料设备的启停逻辑、称重信号的实时采集与判断、配方数据的存储与调用、报警与手自动切换再加上一个方便操作的人机界面。搞清楚需求再谈选型否则很容易被厂商和参数带着跑偏。1.2 控制器怎么选三菱FX3U的理由控制器的选择我几乎是没怎么犹豫就定了三菱FX3U系列。原因有几个。指令系统成熟步进梯形图指令STL做顺序控制非常顺手配料流程天然就是一个状态机用STL写比普通梯形图清晰得多。FX3U自带高速计数器和丰富的模拟量处理能力扩展一个FX3U-4AD模块就能接称重变送器的4-20mA信号不需要额外加复杂的外围电路。三菱PLC的市场保有量大电气人员上手门槛低后期客户自己维护也方便。这一点在项目交付阶段尤其重要客户方的电工对三菱编程软件多少都接触过出了问题不至于束手无策。当然也要反过来承认它的边界。FX3U毕竟是小中型PLC如果项目规模大到上百个I/O点、需要多轴运动控制、需要上位数据库追溯系统那可能得往Q系列或者L系列走。但就“配料称量”这种以顺序控制和模拟量采集为主的场景FX3U的性价比和稳定性是相当能打的。我也见过用单片机或者继电器搭的配料系统单片机开发周期长、抗干扰和维护都是问题继电器系统则根本做不了配方切换和数据追溯基本被淘汰了。1.3 系统整体架构怎么搭整套系统的架构从信号流的角度看是这样一个链条称重传感器 → 接线盒 → 称重变送器 → 4-20mA信号 → PLC模拟量模块 → CPU运算 → 输出控制给料机和阀门 → 状态反馈到触摸屏操作层是触摸屏主要负责配方设定、手动操作、实时重量显示、报警记录控制层是PLC负责所有逻辑判断和输出执行层是给料设备、卸料阀、搅拌机、振动器传感层除了称重传感器还有各料仓的料位开关、给料机的运行反馈等。这里我要特别说一句配料系统最容易忽略的其实是“称量斗”这个机械件本身。称量斗的悬挂结构必须保证传感器受力方向垂直斗体不能和其他管路有硬连接否则传感器的受力会被分流静态标定都做不准后面程序写得再漂亮也白搭。我在现场就遇到过进料口软连接被拉紧导致称重数值飘掉的情况这个后面调试部分会细说。2. 硬件配置与电气接线要点2.1 PLC和扩展模块的选型清单这台设备的I/O点不算多但考虑到给料设备比较多还要预留几个备用点我选了FX3U-64MT/ES主机。输出用晶体管类型原因有两个一是晶体管输出响应快给料机启停频繁继电器输出容易老化二是后面如果要接伺服或步进做精度更高的喂料晶体管输出可以直接发脉冲不用换PLC。这个决策后来也证明是对的现场有几个给料频率很高的点位继电器方案恐怕早就触点拉弧了。扩展模块方面配了一个FX3U-4AD模拟量输入模块负责采集称重变送器送来的4-20mA信号。如果不用4AD而是用带称重功能专用模块或者直接接称重仪表走RS485通讯也是方案但4AD的成本更低而且模拟量信号的实时性比通讯轮询好控制上更直接。触摸屏选的是一块国产10寸屏预算原因没有上原厂配屏通过RS485和三菱PLC通讯驱动通讯参数设置好之后读写地址非常方便。2.2 称重链路怎么搭称重链路是整个系统精度的心脏。我这边用的是三个称重传感器支撑一个称量斗三个传感器信号进接线盒并联再送给称重变送器变送器输出标准的4-20mA电流信号进PLC的4AD模块。这里有几个关键细节。传感器的量程选择要留余量称量斗自重加上满量程物料的总重最好落在传感器量程的60%到80%之间。余量太小过载容易损坏传感器余量太大小料配料的精度又会被牺牲掉。变送器到PLC之间的4-20mA信号线必须用屏蔽双绞线屏蔽层在PLC侧单端接地。我见过不接地导致半夜称重跳变十几公斤的怪问题查了两个通宵才找到是干扰。4AD模块内部的滤波时间要在程序里配好FX3U-4AD支持数字滤波设置一般配料称量场景我会把采样平均次数设成8次左右既滤掉机械振动的毛刺又不会让响应迟钝到影响控制。2.3 I/O分配与接线实操I/O分配这步看似简单但规划得好不好直接影响程序的可读性和维护效率。我这台设备的点表大概是这样的类型地址功能说明输入X0启动按钮输入X1停止按钮输入X2急停按钮输入X3手/自动切换输入X4称量斗卸料门开到位输入X5称量斗卸料门关到位输入X6搅拌机卸料门开到位输入X7搅拌机卸料门关到位输入X10-X13各料仓低料位开关输入X14-X17给料机运行反馈输出Y0-Y3给料机接触器输出Y4卸料门电磁阀输出Y5搅拌机正转输出Y6搅拌机反转输出Y7报警灯/蜂鸣器输出Y10振动器接线实操上我要提醒几个容易踩的坑。第一所有给料机的接触器线圈要加阻容吸收或者压敏电阻去浪涌否则每次启停都会在PLC输出口打出一个尖峰干扰轻则模拟量跳变重则烧输出点。第二强电和弱电的线槽要分开走至少隔开15到20厘米模拟量信号线绝对不能和动力线捆在一起。第三急停按钮要接成常闭点输入到PLC而不是用常开点。这样急停线路断线时系统能识别成急停状态这是安全设计的基本原则很多人一开始不注意真出事才后悔。3. 核心程序逻辑与实现细节3.1 程序架构把配料流程当成状态机配料流程如果用普通梯形图平铺着写到后面一定会乱尤其是要加各种联锁和报警条件的时候。我在这个项目里用的是三菱的STL步进梯形图指令把整个自动流程切成几个清晰的状态初始化状态上电后检查各阀门位置、料位信号满足条件后允许启动。配料状态按配方依次启停各给料机边称重边比较到达目标值后进入下一项。卸料状态所有原料称量完毕打开称量斗卸料门把物料放入搅拌机。搅拌状态关闭卸料门搅拌机按设定时间进行正转、反转、停止的搅拌循环。成品卸料状态搅拌完成打开搅拌机卸料门成品放出随后回到待机状态。用STL的好处是每个状态之间天然带步进互锁上一个状态的输出在进入下一个状态时会被强制复位不会出现两个状态同时激活的混乱。这比用M继电器加置位复位指令写出来的逻辑要省心得多出问题也好查看着步号就能定位程序跑到哪一步了。3.2 称重信号怎么变成重量值模拟量进到PLC之后首先要做工程量换算。FX3U-4AD的4-20mA信号对应的数字量范围是0到4000假设称重变送器的量程是600kg那么实际重量的计算公式就是实际重量 数字量 ÷ 4000 × 600举例来说如果PLC读到的数字量为2000那么实际重量就是2000÷4000×600300kg。程序里用浮点运算指令做这个换算再把结果存到D寄存器里触摸屏直接读这个寄存器显示实时重量。这里有一个容易忽略的点换算后的重量值要加一个去皮处理。称量斗自身有自重启动配料前要把当前重量作为皮重记录下来配料过程中的判断用“实际重量减皮重”的净重值。否则配料时判断的目标值会把斗自重也算进去那就全乱了。去皮动作一般在配料状态进入之前自动做一次也可以在触摸屏上给操作工一个手动去皮按钮方便设备检修后重新标定。3.3 双速给料与落差补偿这是配料精度的灵魂配料系统做得好不好核心看这里。物料从给料设备出来到落进称量斗中间有一段空间给料机停了但空中和管道里的物料还在继续下落这一部分就是落差。如果只靠简单的“到了设定值就停给料机”实际重量一定会超而且超多少取决于物料流量的瞬时大小极不稳定。我的做法是每个配料项都分两个阶段。快速给料阶段离目标值较远时给料机全速运行快速堆积物料提升生产效率。慢速给料阶段当净重快到目标值时切换到慢速给料现场用电磁振动给料机直接降频实现以较小的流量精确定位同时把给料机在停止后落下的物料量纳入补偿。程序里的判断就是两个比较点净重达到“快加切换值”时切慢速净重达到“目标值减落差补偿值”时停止给料。这两个参数我都开放到触摸屏上现场根据实际物料状态微调。快加切换值一般设为目标值的85%到90%剩下的10%到15%全靠慢速给料来磨虽然时间稍微长一点但精度能稳定在±0.3%以内。落差补偿值的确定有两种思路。固定值方案是手动配料一次记录实际稳定重量和停止时刻重量的差值把差值设为固定补偿值简单直观。自动补偿方案是PLC在每次配料结束后计算出本次实际重量与目标值的偏差按一定比例修正补偿值。自动补偿适合流动性受环境影响比较大的粉体物料我在这个项目里给大料用了自动补偿小料本身量小流量稳定用的是固定补偿。实际跑下来大料的稳定性明显比纯固定值要好很多。3.4 配方管理与安全互锁配方数据我用PLC的D寄存器来做每个配方占一段连续的数据区存各原料的目标值、快加切换值、落差补偿值、搅拌时间等参数。触摸屏上做好配方编号的选择界面操作工切到配方号PLC通过比较指令把对应数据区的参数刷新到当前运行参数区。这里要注意配方数据区要放在PLC的断电保持区内否则断电后配方参数全部归零现场操作工会很崩溃。互锁逻辑是整个程序的保命环节我做了几个必须有的。卸料门未关到位时禁止启动配料。搅拌机正在运行时禁止打开称量斗卸料门。急停触发后所有给料机、阀门的输出全部强制为OFF同时复位所有步进状态重新启动必须走完整的初始化流程确认条件。低料位开关触发时禁止启动对应给料机防止给料机空转磨损同时输出缺料报警。4. 现场调试实录常见问题与排查经验4.1 称重数值跳变和漂移调试第一晚就遇到了触摸屏上的重量数值在零点几公斤到十几公斤之间来回跳给料机一启动更明显。排查步骤是先把变送器输出端和PLC断开用万用表直接量变送器的电流数值稳定说明传感器链路没问题干扰是从变送器之后进来的。然后检查PLC模拟量信号线的屏蔽层发现屏蔽层在变送器侧和PLC侧都接地了形成了地环路改成单端接地后干扰明显减小。最后再看4AD的滤波设置把采样平均次数调上去之后剩余的小幅跳动基本被压住。这里补充一个经验不要指望单靠软件滤波解决所有干扰先把硬件和布线这些基础问题解决掉再去调软件滤波。否则滤波参数调得再激进指标也是假的批次之间的数据一致性上不去。4.2 落差补偿值总在变自动补偿功能加上之后大料配料精度好了很多但还是发现一个现象白天和夜间的配料偏差规律不一样。后来查下来是物料湿度随环境变化导致流动性不同同样的给料机频率下料速度能差20%以上。这不单是补偿值的问题还会导致快加切换值和慢速给料阶段的时间都不一样。我的处理方式是给慢速给料也加了一个时间窗口判断如果切换成慢速给料之后超过设定时间仍未达到停止点就再切回快速给料一小段时间继续加料避免因为流量太小导致配料周期被无限拉长。同时把自动补偿的单次修正幅度限制一下避免一次偏差过大导致补偿值来回振荡。4.3 给料机堵料和下料不畅粉体物料最头疼的其实就是堵料。调试中期有一台水泥给料机频繁堵料现象是给料机运行反馈正常但重量长时间不变等到发现时已经超出配方允许的等待时间。我加了一个重量变化监视逻辑启动给料机后如果在设定时间内重量变化量小于某个阈值就判定为堵料或者缺料先停止给料再打开振动器敲击同时报警提示操作工处理。这个逻辑有个细节要注意阈值不能设得太小因为刚启动给料机时物料下落还没到达称量斗重量变化会有几秒的延迟也不能设太大否则堵料严重了才被发现影响的不只是这一批次可能上一批次已经报废了。我最终取的是5秒内重量变化小于2kg才报警现场测试下来比较合适但不同物料特性不同这个参数最好开放到触摸屏上让调试人员现场微调。4.4 触摸屏通讯不稳触摸屏刚开始总是隔一段时间就出现数据闪烁甚至掉线尤其当给料机动作比较频繁的时候。查下来原因有两点一是RS485通讯线没有用屏蔽双绞线现场用的是普通线二是通讯参数里的协议格式和PLC设置不完全一致导致偶尔的通讯帧错误。换上屏蔽双绞线、确认两端波特率和数据格式一致、把485的终端电阻正确接上之后问题彻底消失。这件事再一次说明通讯系统的“玄学问题”十有八九是物理层没做扎实先把线缆和接地处理好了再谈协议。4.5 问题速查表现象可能原因处理方式重量值跳动屏蔽接地错误、模拟量滤波不足、接触器浪涌干扰单端接地、调大采样次数、输出端加阻容吸收配料结果偏高落差补偿值偏小增大补偿值或开启自动补偿配料结果偏低补偿值偏大或慢速给料流量太大减小补偿值、调小慢速给料频率给料机运转但重量不变堵料、缺料、传感器故障加重量变化监视联锁振动器并报警触摸屏数据闪烁通讯线不合格、参数不一致换屏蔽双绞线、核对通讯参数、接终端电阻断电后配方丢失配方区不在断电保持范围把配方D区改为断电保持区5. 项目落地后的几点体会这套系统从设计到稳定运行前后大概花了一个多月。期间被称重跳变折磨过也被落差补偿的反复调整折磨过但整套系统跑顺之后单批次配料时间比原本人工操作的方案缩短了将近一半配料精度稳定在工艺要求的范围内车间的操作工也表示触摸屏的操作逻辑很容易上手。如果让我说这个项目里最值得分享的经验排序大概是先把机械和电磁兼容做好再谈程序程序架构一定用状态机思路把所有可调参数都开放到触摸屏上给现场留出微调余地最后一定要有齐全的报警和联锁。自动化系统不是用来省掉人的而是把人的低级劳动换成人对异常情况的关注这一点想清楚了项目交付之后才能真正稳定运行。配料控制系统这个方向做完一套就会发现它是个很典型的小而全的自动化项目涉及开关量逻辑、模拟量处理、通讯、人机交互几乎把PLC应用的核心能力都覆盖了。有正在做类似项目的朋友如果这篇文章能帮你少走一两个弯路那这个总结就值了。