大家好!我是小纬。
一个完全不懂前端的硬件工程师,靠AI编程搭子30分钟搞定了一个专业级BOM对比工具。这篇文章手把手教你复刻。
1/先说痛点:BOM查错有多痛苦?
做过电子硬件的朋友都知道,BOM(Bill of Materials,物料清单)是每个项目的命根子。
一块PCB板子上,少则几十个元器件,多则上千个。每次改版、每次换料、每次对接供应商,都要核对BOM。
常规的做法是什么?
打开两份Excel,左边一份右边一份,眼睛来回扫:
• 这个电容从100nF改成了470pF,改了没?✅
• 那个电阻封装从0201换成0402了,对了没?✅
• 位号C18到底是电容还是电阻?等等,怎么两边不一样?❌
一份60行的BOM,人工对比至少要30分钟。
而且最要命的是——人眼会漏。
漏掉一个电容值的差异,可能就是一批板子报废。漏掉一个封装的变更,可能就是贴片机停线。
我就想:这种重复劳动,AI能不能帮我搞定?
2/30分钟,从想法到上线
我不是程序员,我是个硬件工程师。
但我有个AI编程搭子——我跟它说了我的需求:
"我想做一个BOM查错对比工具,上传两份Excel,自动找出差异。"
然后我把我的BOM文件发给它,它自动分析了文件结构:
列名:序号、物料编码、物料名称、型号、参数描述、位号、数量、单位、封装、品牌、备注
接着它问了我三个关键问题:
1. 用什么字段做匹配?→ 型号
2. 最关心哪些差异?→ 数量、型号、位号、封装、参数描述
3. 部署到哪?→ GitHub Pages(免费托管)
然后……代码就写好了。
没错,我全程没写一行代码。
3/工具长什么样?
打开网页,你会看到一个清爽的界面:
第一步:上传两份BOM
左边放基准版本(比如V1.0),右边放对比版本(比如V1.1)。支持 .xlsx 和 .csv 格式,拖进去就行。
上传后,工具会自动识别BOM格式,告诉你它认出了哪些字段:
识别到的字段映射:
型号 ← Comment型号
位号 ← Designator位号
封装 ← Footprint封装
这里有个很酷的设计:它能自动识别不同格式的BOM。
公司内部BOM有11列,立创EDA导出的BOM只有3列,列名还不一样。但工具能智能匹配,不用你手动配置。
第二步:选择对比维度
勾选你关心的字段:
☑️ 型号(元器件型号变了没?)
☑️ 位号(位号对得上吗?)
☑️ 封装(封装改了没?)
☑️ 数量(数量对吗?)
☑️ 参数描述(规格描述一致吗?)
第三步:一键对比
点击「开始对比」,结果秒出:
🟡 有差异:5项
🟢 B独有:2项(新增的物料)
🔴 A独有:1项(删掉的物料)
⚪️ 一致:52项
差异项会高亮显示,A和B的值并排对比,一眼就能看出哪里不同。
第四步:导出报告
点「导出报告」,自动生成一份Excel对比报告,发给同事或存档都方便。
4/技术揭秘:纯前端,零后端
这个工具的技术方案非常简洁:
• HTML + CSS + JavaScript,一个文件搞定
• SheetJS 库解析Excel文件
• 纯浏览器端处理,你的BOM数据不会上传到任何服务器
• GitHub Pages 免费部署,全球可访问
为什么选择纯前端?
1. 数据安全 — BOM是公司机密,不能传到别人的服务器上
2. 部署简单 — 不需要买服务器,不需要搞数据库
3. 使用方便 — 打开网页就能用,不用安装任何软件
5/核心代码解析
如果你也想学,这里是最核心的几段逻辑:
1、智能识别BOM格式
不同来源的BOM,列名千奇百怪。我们用一个别名映射表来统一:
const FIELD_ALIASES = {
'型号': ['型号', 'Comment型号', 'Comment', 'Value'],
'位号': ['位号', 'Designator位号', 'Designator', 'Reference'],
'封装': ['封装', 'Footprint封装', 'Footprint', 'Package'],};
上传文件后,自动扫描表头,匹配到对应的标准字段名。
这就像给不同方言装了个翻译器,不管你说"型号"还是"Comment",我都知道你在说同一个东西。
2、自动检测表头位置
公司BOM前面有4行标题信息,立创BOM第一行就是表头。怎么办?
扫描前20行,找到包含2个以上已知字段名的行,就是表头。不用手动指定,工具自己找。
3、对比算法
用匹配主键(比如型号)建立索引,然后逐项对比:
• A有B没有 → A独有(可能被删了)
• B有A没有 → B独有(可能是新增的)
• 都有但值不同 → 有差异(重点关注!)
• 都有且值相同 → 一致(放心)
简单粗暴,但非常有效。
6/实际使用效果
我用公司的一份主板BOM(60+行物料)和立创EDA导出的BOM做了对比:
以前:人工对比30分钟,还不确定有没有漏
现在:上传 → 点对比 → 3秒出结果,差异一目了然
省下来的时间,够我多喝两杯tea了 ☕️
7/你也可以拥有
工具已经开源,免费使用:
🔗 在线使用:https://daiwei191413.github.io/bom-compare/
🔗 源码地址:https://github.com/Daiwei191413/bom-compare
使用方法:
1. 打开链接
2. 上传两份BOM文件
3. 勾选要对比的字段
4. 点击「开始对比」
5. 查看差异,导出报告
完全免费,数据不上传,放心使用。
写在最后
很多人觉得"AI编程"离自己很远,觉得要先学会写代码才能用AI。
其实不是的。
你只需要知道自己要什么,AI来帮你实现。
就像这个BOM对比工具,我从头到尾没写一行代码,但我清楚地知道:
• 我的痛点是什么(BOM对比太痛苦)
• 我的数据长什么样(Excel格式,哪些列)
• 我想要什么效果(上传、对比、高亮、导出)
把这些告诉AI,它就能帮你搞定。
这就是AI时代的超能力:不是会写代码,而是会提需求。
如果你也有类似的工作痛点,不妨试试用AI来解决。说不定30分钟后,你也能拥有一个专属工具。
💬 互动时间:
1. 你在工作中有什么重复性的痛苦操作?评论区告诉我,我来帮你想想AI能不能搞定
2. 电子工程师朋友们,你们平时用什么工具对比BOM?有没有更好的方案?
3. 如果你试用了这个工具,欢迎反馈体验,我会持续优化
觉得有用的话,转发给你的硬件工程师朋友们吧!👇
关注我,一个用AI解决实际问题的硬件工程师。下期预告:用AI做一个元器件选型助手,输入参数自动推荐替代料。
生命不止、折腾不休的终身学习者!期待和一群志同道合的家人们,持续精进AI的每一天。在科技浪潮中破茧成蝶。
夜雨聆风