今年年初,浙江温岭一家五金件厂找到了我们。他们主要做五金冲压件和紧固件,有3000多种物料,年产值大概一个多亿。听起来规模不小,但仓库管理一直是个头疼的问题。
说几个具体现象:每个月末盘货,全厂要停两天生产,20个人趴在地上数螺丝、清垫片、对台账。盘完发现库存对不上是常态——要么账上有的实际没有、产线领料时发现料架是空的;要么账上没有的实物堆了一堆,资金全压在库存上。最严重的一次,因为一种规格的螺丝实际库存远低于系统显示,产线直接停了一天等料。
老板跟我说了一句话:\"我有3000多种料,但我不知道仓库里到底有什么。\"
这篇文章不是什么成功学故事,就是记录我们实际做了什么、踩了哪些坑。
一、现场情况摸底
去工厂的仓库看了两次,记录了几个关键问题:
- 仓库布局:一个2000平米的室内主仓库,外加两个露天堆场。主仓库分料架区(小件)和托盘区(大件),料架大概280列、每列4-6层
- 物料特性:90%是金属件(碳钢、不锈钢、铝件),规格从M3螺丝到50kg冲压件都有。金属对RFID信号天生不友好——反射、吸收、干扰很严重
- 现有管理方式:用Excel台账+ERP系统,出入库靠员工扫码枪扫描纸质条码。但实际执行中,很多员工嫌麻烦,批量领料时直接\"先拿走、后补单\",补单又漏填,两三天下来账就乱了
- IT条件:仓库没有WiFi覆盖,ERP服务器在办公室,仓库只有一台台式机连局域网
- 人员情况:3个仓管员,年龄偏大(最大53岁),对数字化工具接受度不高
这些条件决定了方案方向:不能太复杂、最好不用员工主动操作、金属环境要考虑RFID的特殊问题、网络不能依赖云端。
二、方案设计
走了几个方向之后,最终确定的方案分四层:标签层、读取层、边缘处理层、业务应用层。
标签层:RFID标签选型
这个是整个项目花时间最多的地方。金属环境的RFID和普通环境完全不是一回事。
一开始我们买了普通的无源RFID标签(2毛钱一张那种),贴在金属料箱上——结果读不到任何信号。原因是金属表面会反射射频信号,形成\"镜像效应\",标签天线和它的镜像互相抵消,读取器根本收不到标签回复。
后来换了三款不同类型的抗金属标签做对比测试:
- 柔性抗金属标签(约1.5元/张):薄,可以贴在小件料盒上,读取距离约0.5-1米。测试下来600mm以内读取率约95%,超过1米掉到60%
- 硬质陶瓷抗金属标签(约3元/张):读取距离2-3米,但比较厚(3mm),不适合贴在小料盒上。适合贴在大件/托盘上
- PCB抗金属标签(约2元/张):性能介于两者之间,读取距离约1.5米
最终方案是混用:小件料盒贴柔性标签(约15000张),托盘和大件贴硬质陶瓷标签(约500张)。每张标签写入物料编码+批次号+入库日期。
踩坑教训:不要相信标签厂家标称的读取距离。他们在实验室里用自由空间测的,放在金属上直接打折到三分之一甚至更低。一定要用实际物料和实际包装做现场测试。
读取层:天线部署方案
在小件料架区,每两列料架中间装一根RFID天线(UHF频段,860-960MHz),高度与料架第三层对齐,每个天线覆盖两侧各3层。总共装了约30根天线,每根天线通过同轴电缆连接到RFID读写器。
在托盘区,装了4台龙门式天线架——类似超市防盗门的结构,叉车经过时自动读取托盘标签。这里有个技术细节:天线角度必须向下倾斜约15度,否则信号的零区(null zone)正好落在托盘高度上,导致读不到。
露天堆场的条件更麻烦——没有电源、没有网络、室外环境。最后选了太阳能供电的4G RFID读写器,每半小时上报一次数据。虽然实时性不如室内,但露天堆场的物料周转慢,半小时读一次也够用。
边缘处理层:本地数据清洗和过滤
仓库部署了一台边缘AI网关,干几件事:
- 接收所有RFID读写器上报的原始读取数据
- 去重和滤波:一个标签在30秒内被读到10次,只记录一次(过滤重复读数)
- 异常检测:某类物料的标签突然大量消失(可能被盗/被误搬),或某区域标签数量异常激增(可能放错位置),推告警
- 本地缓存7天的库存数据——断网了也能继续盘点
- 每5分钟同步一次库存摘要到云端
数据清洗比想象中重要。原始RFID数据噪声很大——同一个标签可能被多个天线读到、一个区域的临架标签可能\"串扰\"被读到、叉车经过时高速移动导致信号抖动。网关里写了三套消抖逻辑才把原始数据\"洗\"干净。
业务应用层:AI Agent自动盘点与差异消除
边端数据处理好之后,AI Agent做了两件主要的事:
自动盘点:每天凌晨3点,网关整理一次全库RFID读取结果,生成当前实际库存清单,自动和ERP系统中的账面库存做差异比对。差异报表早上8点自动推送到仓管主管的企业微信。
差异消除建议:对于账实差异,AI Agent根据历史数据给出差异的可能原因——是出入库漏登记、还是物料放错位置、还是上次盘点记错了。仓管主管确认后,Agent自动同步调整ERP库存记录。
起初老板担心\"AI自动改ERP数据\"有风险,最后妥协的方案是:Agent只生成调整建议,需要人工点一下确认按钮才会写入ERP。运行一个月后,90%以上的调整建议直接被接受——因为Agent的准确率确实比人工回忆靠谱。
三、实施过程
第一周:标签绑定和初始化
先做了一件事:把3000多种物料和对应的RFID标签绑定。每个料盒/托盘贴一个标签,在系统里记录\"标签ID→物料编码→批次号\"的映射关系。
听起来简单,实际干起来很痛苦。15000张标签要一张张贴、一张张扫描绑定,3个仓管员加我们两个人,贴了整整4天半。中间发现有些小料盒面积太小,柔性标签贴上去后折叠导致读取失败——后来换成更小的标签(30×15mm)才解决。
另外提醒一下:标签写入数据时一定要写防碰撞参数(Q值),否则多个标签同时读到时会冲突,读取器只能识别部分标签。厂家默认的Q值一般偏低,我们调整到Q=6(约64个时隙)后,一次读取50个标签没问题。
第二周和第三周:天线安装和调试
天线安装的硬件活两天就干完了——架支架、走线缆、接读写器。但调试花了整整一周。
主要问题有两个:
- 信号串扰:相邻天线的信号覆盖范围重叠,同一个标签被多根天线读到,网关收到的数据\"这个标签在A区、又在B区\"。解决方案是调整天线发射功率从30dBm降到26dBm,同时做了天线分时轮询——A天线工作的时候B天线休眠,轮流发射
- 金属密集区的信号盲区:料架中间的金属板和满装的金属件形成了一个\"法拉第笼\",信号进不去。解决办法是在料架背面加装辅助天线,同时把主天线的极化方向从水平改为圆极化(圆极化对多路径反射的适应性更强)
踩坑教训:RFID天线部署不是装上去就行。信号覆盖要现场实测,不能靠理论计算。我们拿了一个手持式RFID测试仪,走遍整个料架区逐格测试,才把盲区找全。
第四周:AI Agent联调和试运行
联调阶段的核心工作是消抖逻辑的调优和AI Agent盘点算法的校准。
刚开始自动盘点时,每天凌晨跑出来的差异报表有200-300条,仓管主管根本看不过来。分析下来大部分差异是以下原因:
- 标签在料架深处被遮挡,凌晨安静时段读不到——但白天震动后读到了。处理方式:凌晨盘点做三次重复读取,三次都读不到才标记为\"缺失\"
- 处于出入库流程中的物料——员工下午领料但还没来得及在ERP中录出库单,Agent凌晨盘点时发现\"料不在架子上\"。处理方式:AI Agent不再直接比对实时数据,而是比对近24小时的平均读数,留出出入库缓冲窗口
- 少量标签因磨损或脱落无法读取——金属料盒边角锋利,部分柔性标签在摩擦中损坏。处理方式:标签外层覆了一层透明胶保护,同时设定\"超过7天未被读取的标签\"为需检查标签,推送提醒给仓管
经过一周的反复调优,差异报表从200-300条缩到了每天20-30条。这20-30条是真正需要人工关注的异常——比如某物料实际库存比账面少了20%、某区域出现不认识的标签等。
第一个月:员工培训和习惯培养
这一步花的精力不比技术实施少。三个仓管员年龄都偏大,对\"系统自动盘点\"的理解就是\"电脑抢我饭碗\"。
前两周的工作节奏是:每天早上的差异报表到了之后,我们带着仓管一起看、一起分析、一起确认调整。让他们看到系统报的差异确实和实物对得上,慢慢建立信任。
到第三周,仓管主管主动说了一句话:\"以前一个月盘一次、盘完又乱了。现在每天都有个'系统'帮我去看了,我心里反而踏实了。\"
转折点是有一次系统提前发现了一批料架上螺丝的标签信号越来越弱——不是标签坏了,而是那批螺丝快被领完了,只剩下零散几盒,所以读到的标签数在持续减少。仓管根据这个趋势判断\"该采购了\",避免了第三次停料。这件事之后,仓管对系统的态度从怀疑变成了接受。
四、实际效果
系统上线运行2个月后,统计了几个关键数据:
月初和月中的差异报表显示,账实匹配度从过去的\"基本对不上\"变成了\"大部分对得上\"。关键的A类物料(价值高、用量大的)准确率超过了98%。
以前全厂停产20人盘两天,现在盘货只是对一下系统报表和重点物料做抽样复核。而且不是月末才盘,是每天都在盘。
项目上线后的两个月内没有再发生过因库存信息不准导致的停料。实际上第二次差点又停——但系统提前3天做了低库存预警,采购补上了。
其他收获:
- 仓管员的工作强度降低了——以前每天上班要花1-2小时翻台账对库存,现在主要精力变成了处理异常和做入库验收
- 非A类物料也有了管理——以前没人管的C类料(包装辅材、低值易耗品)现在自动盘点后也有数据了,采购不再\"凭感觉下单\"
- 仓库利用率提高了——知道每一格架子上有什么,不用\"翻箱倒柜\"找料,找料时间平均缩了约70%
五、遇到的问题和解决办法
问题一:露天堆场的标签大规模掉线
上线第二周,露天堆场的读取率从95%降到了40%。排查发现是标签的耐候性问题——普通RFID标签在阳光下晒了一周后胶层老化,部分标签翘边脱落。解决方案:换成工业级耐候标签(IP68,紫外线和防水),单价贵了1块多,但后续未再出现大规模掉线。
问题二:叉车遮挡导致托盘区读取不稳定
龙门式天线装在通道两侧,叉车经过时会遮挡信号。有时候叉车载着托盘经过,读取器读到的是叉车本体的金属反射,不是托盘标签的信号。解决方式:在叉车上加装了一个小型辅助天线,叉车经过龙门时激活——车载天线离托盘更近,读取率从70%提升到98%。
问题三:同一物料不同批次的混放问题
AI Agent一开始假设\"一个料盒只放一个批次\",但仓库实际操作中,同一个料盒里可能混着两个批次的同种物料。Agent识别为标签重复,导致盘数不准。解决方式:修改Agent逻辑,遇到同物料的多个标签在同一料盒,识别为\"同料混批\",在报表中标注给仓管线下处理。
问题四:边缘网关在一次雷击中断4小时
温岭春夏之交雷雨多,一次雷击导致网关断电。虽然有UPS,但UPS只撑了2小时。后续在网络机柜加了防雷模块,并把网关的UPS升级到支持4小时的配置。
六、个人的思考
这个项目做完之后,我自己的几个感受:
仓库数字化难的不是技术,是\"习惯\"。RFID技术本身很成熟了,真正难的是标签怎么贴(员工不配合贴歪了怎么办)、员工为什么不用扫码枪(嫌麻烦)、为什么补单漏填了(流程设计没堵住漏洞)。技术解决\"能不能\"的问题,流程解决\"愿不愿\"的问题。
金属环境下的RFID,方案复杂度比预想高一个量级。同样一套方案,放在非金属仓库可能两周就搞定了,在金属件仓库里做了六周。抗金属标签、天线布置、功率调优、信号消抖——每一个环节都比纸面上复杂。如果你也在做类似的金属件仓库项目,请至少预留两倍于预期的时间。
数据资产的价值。上线两个月后,仓库积累的数据本身成了新资产。仓管主管开始问:能不能分析哪些物料消耗最快、哪些季节用量波动大?能不能根据领料规律调整安全库存水位?有了数据之后,这些问题不再是\"凭经验拍脑袋\",而是可以量化分析的。
AI Agent在仓库场景里最适合的是\"异常发现+处理建议\",不是\"自动全盘接管\"。我们最开始的设计是Agent自动对账、自动调整ERP。但在实际运行中,发现很多差异需要人的业务判断(比如某物料正在退货流程中、正在质检区等)。后来改成Agent提建议、人确认的模式,效率和信任度反而更高了。
七、给你的建议
如果你也在考虑类似的RFID仓库数字化项目,几点实在的建议:
- 先做一个小范围POC再铺开。选一条通道或者一个料架区先试点,测试读取率、消抖逻辑、标签耐用性。POC跑通后再扩到整个仓库。
- 金属环境一定要用抗金属标签。普通标签贴金属上读不到,不是贴法问题,是物理原理。不要省这个钱。
- 标签绑定是个大工程,安排好人力。15000张标签贴4天半听起来慢,但实际上这就是正常速度。给仓管加班费或者找短期工,不要在标签绑定上省时间——这里马虎了,后面所有数据都是错的。
- 不要绕过仓管员做自动化。仓库数字化最怕的是\"系统和实际脱节\"。让仓管参与方案设计、让他们觉得系统是帮他们不是替他们,项目成功率会高很多。
- 先解决账实一致,再追求实时可视。很多公司一上来就想做\"实时库存看板\"。但库存数据都不准,看板只是\"实时展示错误数据\"。先把准确率从80%拉到95%以上,再上可视化。