这就像两个人结婚,一个说中文,一个说德语,中间得有个翻译。WMS 和输送线之间,这个翻译叫 MFC。

MFC,Material Flow Controller,料流控制器。你可以理解为:WMS 负责"想"(要发哪个订单、从哪个库位拣),PLC 负责"动"(电机转、气缸推),MFC 负责在中间把"想法"翻译成"动作"——把 WMS 的任务指令,拆成输送线、提升机、分拣机听得懂的控制命令,再把设备的状态回传给 WMS。

我见过太多项目,WMS 厂商和输送线集成商在会议室里互相甩锅:"我的接口没问题,是你没调对。""我的设备没问题,是你指令发得不对。"这时候,你就知道缺了个 MFC。

四层架构,各管一摊

先把原理讲透。现代自动化仓的软件,分四层:

  • WMS:管库存、管订单、管任务。粒度是"订单"和"库位"。
  • WCS(Warehouse Control System):管设备群的调度。粒度是"任务",比如"把 A 托盘从 1 号口送到 3 号口"。
  • MFC:管料流的实时控制。粒度是"动作",比如"2 号输送机启动、3 号分拣机摆轮转向"。
  • PLC:管单个设备的电气动作。粒度是"信号",电机正反转、传感器有无料。

你可以理解为:WMS 是大脑,WCS 是调度员,MFC 是工头,PLC 是工人。

选型分界线:什么时候需要独立 MFC

这是最常被问的问题。答案分三档:

第一档:单条输送线、简单流程——比如一条直线输送 + 一个扫码点。这种规模,WCS 直接调 PLC 就够了,单独上 MFC 属于杀鸡用牛刀,伪需求,直接开炮。

第二档:多设备联动、中等复杂度——输送线 + 提升机 + 分拣机,有合流、分流、异常剔除。这时候需要 MFC 做实时料流控制。分界线信号:当你发现 WCS 的任务队列里,一半的任务是在处理"设备状态异常"而不是"业务任务",就是该上 MFC 的时候。

第三档:多品牌设备混跑——A 家的输送线、B 家的分拣机、C 家的提升机。每家的 PLC 协议都不一样,WCS 要直接对接等于学三门外语。MFC 在这里当"统一翻译官",往下屏蔽设备差异,往上给 WCS 标准接口。

维护的坑

坑一:MFC 和 WCS 的边界没划清。任务调度到底归谁?原则:带业务逻辑的归 WCS(比如波次优先级),纯设备状态驱动的归 MFC(比如光电开关触发)。边界写进合同附件,别口头约定。

坑二:异常处理链太长。一个卡件,从 PLC 报到 MFC,再报到 WCS,再报到 WMS,操作员 5 分钟后才知道。要求:MFC 层必须有本地 HMI(人机界面),现场 30 秒内能看到、能处理。

坑三:备件和备人。MFC 通常是工控机+专用软件,坏了不像换 PLC 模块那么简单。备一台整机,或者跟集成商签 4 小时到场 SLA。别等停了线才想起这事。

这钱花得值不值,看这一个数

算一下:因为没有 MFC,WMS 和设备"语言不通"导致的停线,一年发生几次、每次多久、每小时损失多少。很多仓一算吓一跳:一年停线损失够买两套 MFC。

MFC 不是万能药,简单项目上了就是浪费。但复杂度过了分界线还没有 MFC,你就是在拿整条线的稳定性赌博。

这钱花得值不值,看这一个数:你一年为"接口扯皮"和"异常停线"付了多少学费。

作者:大刘|自动化设备工程师