机械设计课上的边缘侧本地数据运算处理:卡了半个月的坑怎么填上的

上周三教研室改项目报告,翻到智能分拣机械手那组的日志,头两页全是红笔圈的“延时过高”“识别超时”,字都快戳破纸了。这组人卡了半个月。一开始谁都没往方向错了想,不就是AI识别瑕疵吗?大家不都是把数据传云端算?

惯性踩坑:默认云端才有足够算力

他们做的是小型轴承表面瑕疵分拣,要求每秒走两个工位,我第一次去看调试的时候,工位停下来等识别结果,一等就是快三秒,工人要是线下干,都分拣十个了。网络稍微卡一点,直接断连,整个机械手停在半空不动。我问为啥不把运算放本地?领头的学生抬头看我,一脸懵:“本地那点开发板算力,跑得动识别模型吗?”

哦,原来是这么回事。大家上课记知识点,都记得边缘计算是啥,真上手做项目,第一反应还是往云端堆,好像不用云端就不够高级。这么多年的教学惯性,学生这么想,其实我之前带的上几届学生,也这么干。

树莓派机械臂边缘运算模块实物接线图
树莓派机械臂边缘运算模块实物接线图

我翻了他们的运算日志,传一张原图3MB,云端推理要1.2秒,传回结果又要半秒,加起来快两秒,再加上机械手的运动延时,可不就超时了。核心问题根本不是算力不够,是把不需要出门的数据,非要绕一大圈跑到千里之外的服务器去算。

砍完才爽:固定场景根本不需要云端

逼着他们改方案,先把整个运算流程拆了。哪些是固定规则的运算,全部留在本地。灰度变换、边缘提取、轮廓筛选,这些步骤根本不需要动态推理,写死在本地模块里就行,FPGA加速一下,单步耗时不到十毫秒。最后只需要把有没有瑕疵、瑕疵在哪个位置这几个数字传出去,几十个字节就搞定。

说实话,改完第一次测试的时候我都不敢信。延时从平均1.8秒干到了67毫秒,差了快三十倍!断网十分钟,机械手照样分拣,一点不耽误。哦对,识别准确率?反而降了0.2个百分点,根本不影响工业使用,谁会在意一个不到零点几的误差?现场用,稳和快比那点准确率值钱多了。

边缘侧机械臂瑕疵识别数据流向图
边缘侧机械臂瑕疵识别数据流向图

之前我带竞赛,见过好多队硬蹭云端大模型,现场网络一波动,直接出局,说白了就是没想明白,自己的场景到底需要什么。边缘侧本地处理,不是什么高大上的黑科技,就是帮你把该放本地的东西放回去,省了带宽,降了延时,还稳。

调完教学:把这个坑放进新课纲里

调完教学:把这个坑放进新课纲里
调完教学:把这个坑放进新课纲里

这次之后,我直接把原来大纲里一笔带过的内容,改成了边缘侧本地数据运算处理必做设计练习,要求每个做智能机械项目的组,必须拿出本地运算和云端运算两个方案,对比延时、成本、稳定性三个指标,写取舍报告。

之前上课,我总喜欢讲概念,讲架构,现在才发现,学生不踩一次延时的坑,永远不知道为什么要做本地运算。哦,还有一个意外收获,原来用云端每个月要掏服务器钱,学生买个一百多块的边缘开发板,一次投入就搞定,成本降了快一半,对学生做毕设太友好了。

不过话说回来,很多人提起这个技术,就觉得要很贵的硬件,其实不是,现在几十块的开发板,跑个固定场景的工业任务,完全够用。我们做机械设计的,核心从来不是堆技术,是解决问题。现场流水线停一分钟,可能就是几千块的损失,你云端再准,延时一秒,人家也不会用你。

我现在改学生方案,第一句话就问:哪些运算可以放本地?别一上来就往云端跑。舒服。真的舒服。少绕那么多弯路,项目稳得不是一点半点。这半年教下来,学生做的项目掉链子的少了好多,原来一半的组会遇到网络问题,现在不到十分之一。很多学生做完说,原来还有这么爽的解法,之前怎么没想到。对啊,就是打破惯性而已。没那么复杂。

免责声明:市场有风险,选择需谨慎!此文仅供参考,不作买卖依据。如有侵权请联系删除。
文章名称:机械设计课上的边缘侧本地数据运算处理:卡了半个月的坑怎么填上的
文章链接:https://www.yqhljx.com/list_9/3650.html