
最近给一家老食品厂做包装线视觉检测改造,现场的工控机还是五六年前的赛扬J4125,4G DDR3内存,只有核显,装的Windows 10 LTSC。原来的上位机都是C#写的逻辑和界面,现在要加一套包装破损检测的AI视觉,预算有限,换硬件要走层层审批,周期特别长,只能想办法在现有机器上跑起来。一开始直接拿YOLOv12n的ONNX模型,按默认方式套进C#项目里,一跑直接傻眼:CPU直接拉满到95%以上,上位机界面卡到拖动都费劲,PLC通信时不时丢包,单帧推理要200多毫秒,算上预处理后处理,一秒钟也就4-5帧,根本跟不上产线速度。跑半个小时内存还能涨到2G多,时不时GC卡顿一下,连带着产线数据都掉。当时差点就放弃了,想着只能打报告换工控机。后来沉下心来从模型、推理引擎、系统调度、工程剪裁四个层面一层层抠优化,前后调了两周,最终做到了单帧全流程60-75ms,稳定15帧检测,CPU占用控制在40%以内,内存稳定在800M左右,原来的上位机业务完全不受影响,不用加硬件就顺利上线了。很多做工业视觉的朋友一遇到低算力设备,第一反应就是加显卡、换工控机。但实际上大量存量工控机都是低算力配置,只要优化到位,轻量AI模型完全能跑起来,还不影响原有业务。今天把这套完整的四级优化方案分享出来,都是实打实调出来的经验,做边缘AI、工控机视觉的朋友可以参考。