如果你最近在关注硬件开发相关的 AI 工具,大概率刷到过这类演示:把一句“帮我画一个 STM32 最小系统板”丢给 AI,几秒钟后生成一张花花绿绿的电路板图。乍看很唬人,但只要你真正做过 PCB,几乎一眼就能发现里面的问题,封装是错的,电源网络没连上,或者根本就是一张“看起来像电路板的图”。
在 PiBox 的设计过程中,我也有过同样的尝试,结果:AI 画出来的板子基本不能用。但后来换了个思路,让 AI 去查错,反而解决了好几个实际项目中容易漏掉的问题。
这篇文章就以 PiBox 的设计日志为背景,聊聊为什么 AI 不适合画电路板,以及把它用在“查错”上为什么更靠谱。换句话说,AI 在硬件开发里的正确位置,可能不是上游的内容生成者,而是中下游的“审查员”和“排错引导员”。
1. 为什么“让 AI 画电路板”是一个伪需求
先说结论:PCB 设计不是一个“生成”问题,而是一个“约束满足”问题。这个判断决定了 AI 在其中的角色边界。
如果你让 AI 写一首诗,它只要生成一串语法正确、意象合理的文字就行,哪怕意思模糊一点,人也能脑补出美感。但电路板不行。PCB 上的每一根走线宽度、过孔位置、网络连接、焊盘尺寸、间距规则,都是为了满足物理约束和制造规则,这些规则并不是“看起来对”就可以。
具体来说,PCB 设计至少包含这几类约束:
- 电气规则:哪些网络必须连在一起,哪些网络绝对不能短路。
- 物理规则:线宽要能承受对应电流,过孔大小要匹配工艺能力,器件间距要满足焊接要求。
- 制造规则:最小线距、最小孔径、板厂工艺极限、拼板与工艺边。
- 电磁兼容:高速信号的回流路径、参考平面完整性、去耦电容摆放。
这些约束集合起来是一个非常严密的系统。而 AI 生成文字或图片时,缺乏这类强约束下的“精准落子”能力。它可以输出一版看起来结构完整的 PCB 版图,但在网络关系、封装对应、制造规则上,几乎必然存在错误。更麻烦的是,这些错误非常隐蔽,设计者如果不够仔细,反而可能被“看起来很专业”的图误导。
所以,当有人说“AI 能画电路板”的时候,真正要问的问题是:这里说的“画”是指生成一张示意图,还是交付一版可以送厂打样的文件?如果是后者,至少在现有的技术条件下,AI 还远没有准备好。PCB 设计的一整套流程,从原理图到网表,再到 Layout 和 DRC 检查,本质上是一个工程严谨性极强的流程,AI 目前更适合介入的环节,是在这个流程中参与检查、分析和辅助判断。
2. AI 在硬件开发里真正能提供价值的环节
既然不能画板,那 AI 在硬件开发里到底能干什么?从 PiBox 的实践来看,价值集中在四个方向:
2.1 第一步:审查类工作
AI 特别擅长从一堆信息里找矛盾和不一致。比如 BOM 里位号重复、封装缺失、连接关系前后不匹配,这些都是查错场景中非常典型的问题。人眼逐行核对很容易疲劳,但 AI 可以基于规则做一遍地毯式扫描,再配合脚本,效率提升非常明显。
2.2 第二步:知识问答与数据处理
原理图和芯片数据手册,是硬件开发中最花时间的阅读材料之一。AI 可以快速回答“这个芯片的引脚定义是什么”“这颗 LDO 的 dropout 电压是多少”“I2C 上拉电阻应该选多大”这类问题。它不一定比权威手册更可靠,但能帮你快速定位到手册中的关键页,减少大海捞针的时间。
2.3 第三步:焊接和上电调试的排查引导
板子焊完不上电、上电短路、某个引脚电压不对,这类问题很多人第一反应是拿着万用表到处戳。AI 可以扮演一个“有经验的同事”,根据你描述的现象,给出结构化的排查顺序:先量电源入口、再查 LDO 输出、然后查复位时序。这种方法比盲目乱试要高效得多。
2.4 第四步:固件与硬件配合问题
很多硬件问题其实出在软件配置和硬件不匹配上,比如 I2C 地址算错、ADC 参考电压选错、引脚复用配置不对。AI 在代码审查和配置检查方面的能力,已经相当可用,尤其是在芯片参考手册和 SDK 资料比较完善的情况下。
这些方向的共同点是:AI 不负责最终决策,也不负责生成最终交付物,它负责提高人在查找、核对和定位问题时的效率。画电路板需要的是确定性,而查错需要的是“怀疑一切”的扫描能力,后者反而更适合当前 AI 的模型特性。
3. PiBox 项目里的查错场景:一个真实硬件设计的问题集合
PiBox 是一个带有主控、传感器、显示和电源管理的硬件项目。它的设计难度不算高,但正因为“不算高”,反而容易在细节上翻车。这里的经验对很多做硬件原型设计的开发者都有参考价值,尤其是那些从软件背景转向硬件的人。
在 PiBox 的迭代过程中,我们实际遇到的错误大致可以分成这几类:
- 电源树设计问题:某个模块的工作电压和 LDO 输出不匹配,导致上电后模块不工作。
- 封装错位:原理图里用的封装与实际采购的器件引脚不匹配,焊接时才发现。
- BOM 数据混乱:出现重复位号、缺少封装信息、数量与装配图不一致。
- 网络连接遗漏:原理图里某个引脚悬空,或者连到了错误的网络上。
- 焊接工艺问题:手工焊接时,热敏器件旁边放了发热严重的 LDO,导致虚焊。
这些问题的共同点是:它们不是设计者的能力问题,而是在数十个器件、上百个网络的复杂度下,人工核对很难做到 100% 不遗漏。AI 的价值在这里体现得非常直接——它是一个不知疲倦的第二双眼睛。
在一开始,我们也试过让 AI 直接输出原理图,甚至“脑补”一个 PCB 布局,结果都不理想。后来调整了思路:让 AI 参与审查和排错,而不是生成。这个转变让整个开发流程顺畅了很多。
4. 电路板查错到底在查什么:四级检查法
许多硬件新手拿到一块板子后,不知道从哪里开始查错。这里分享一套在 PiBox 项目中用到的四级检查法,从原理图到焊接上电逐级推进,每一级都能对应到 AI 可以发挥价值的地方。
4.1 第一级:原理图检查
原理图是电路板的大脑,也是最容易藏问题的阶段。检查重点是:
- 电源网络命名是否统一?VCC_3V3 和 3V3 是不是被当成两个网络了?
- 每个 IC 的电源引脚旁是否有去耦电容?电容容值和耐压是否合适?
- 复位引脚是否有上拉或下拉电阻?悬空的复位脚很容易受干扰。
- I2C 总线的上拉电阻是否遗漏?
- 使能引脚是否设置了正确的默认电平?
这个阶段非常适合用 AI 进行规则审查。你只需要把原理图的网络连接关系整理成文本,或者用截图配合清晰的检查清单,AI 就能找出不少问题。相比于人眼逐条读网络表,AI 的处理速度要快得多。
4.2 第二级:PCB 版图检查
版图是物理层的实现。这一阶段检查的重点是:
- 线宽是否满足电流要求?例如电源走线太细,会导致压降和发热。
- 地平面是否完整?有没有被信号线割裂成几块?
- 去耦电容是否靠近 IC 电源引脚?放得太远等于没有。
- 高速信号线是否有完整的回流路径?
- 过孔数量是否足够?电源或地回路上的过孔太少会引入较大寄生电感。
这一级 AI 的直接生成能力还不够,但可以配合 EDA 工具的 DRC 报告进行分析,快速解释每条 DRC 错误背后的含义,并给出修改优先级。
4.3 第三级:BOM 与装配检查
BOM 是原理图到实物之间的桥梁。很多返工都源于 BOM 错误,典型问题包括:
- 位号重复或缺失。
- 封装不匹配,比如原理图用 0603,实际买的是 0805。
- 器件耐压或功率不满足应用条件。
- BOM 数量与 PCB 上的焊盘数量不一致。
这一级非常推荐用脚本配合 AI 做自动化检查。因为 BOM 是结构化数据,适合用代码做格式校验,再用 AI 做逻辑判断。后面会给出一个可用的检查脚本示例。
4.4 第四级:焊接与上电检查
板子焊完不能直接上电乱戳。一个稳妥的流程是:
- 目检:用放大镜或显微镜检查焊点、桥连、虚焊。
- 电源短路测试:上电前用万用表量电源和地之间的阻值,排除短路。
- 分步上电:先只给电源部分上电,测量各输出点电压是否正常。
- 模块逐个启用:确认电源稳定后,再逐个检查传感器、显示、通信等模块。
AI 在这一级的主要作用是“排错引导”。你描述现象,AI 给出排查顺序。比如“板子上电后电流异常偏大”,AI 会先建议断开负载测电源,再逐路排查是哪一路短路。这种引导非常实用,尤其适合刚接触硬件的开发者。
5. 让 AI 查错落地的第一步:写一份给 AI 的“查错清单”
很多人让 AI 查电路板时效果不好,问题往往不是 AI 能力不够,而是提示词太笼统。“帮我检查一下这块板子”这种问题,AI 根本不知道从哪里入手。
更好的方式是先建立一份结构化的查错清单,把它作为提示词的一部分提供给 AI。这样 AI 的输出不只是“这里可能有问题”的模糊判断,而是对应到具体检查项目、风险等级和处理建议。
下面这份清单是 PiBox 项目里常用的一份模板,可以直接复制使用:
你是硬件电路审查助手。请按照下面的检查清单逐项审查我提供的原理图或 PCB 描述文本,输出“问题描述 / 风险等级 / 修改建议”。 检查清单: 1. 电源树:输入电压范围是否匹配所有器件,各电源轨电压是否与器件工作电压一致。 2. 去耦电容:每个 IC 电源引脚附近是否有 0.1uF 去耦电容,电容耐压是否满足要求。 3. 地网络:是否存在单点接地、地平面分割、模拟地与数字地处理不当的问题。 4. 信号完整性:高速信号是否跨越参考平面分割,差分信号是否等长,是否需要端接电阻。 5. 元件位号:是否存在重复位号、空封装、BOM 数量与装配图不一致。 6. 引脚方向:二极管、电解电容、LDO、稳压管方向是否接反。 7. 上下拉电阻:I2C 总线上拉电阻是否缺失,复位引脚、使能引脚是否悬空。 8. 热与工艺:发热器件是否靠近敏感器件,焊盘间距和最小线宽是否满足板厂工艺能力。 9. 功率与热量:电源走线是否满足电流要求,是否存在过孔载流不足。 10. 结构干涉:板边器件是否可能被安装螺丝或外壳压到。 注意:对不确定的信息,输出“需要人工确认”,不要武断下结论。使用这份清单时,把原理图的关键信息(网络列表、器件列表)整理成文本,或者直接贴截图,AI 就能输出比较有参考价值的检查结果。当然,AI 的检查不能替代 EDA 工具的 DRC 和人工评审,但可以作为一个前置筛查手段,把明显问题先过滤掉。
6. 用脚本 + AI 做一个真实的查错示例
查错不能只靠“感觉”,对于 BOM 和网络表这类结构化数据,脚本检查往往是性价比最高的方式。这里分享几个 PiBox 项目里实际用过的检查脚本,你可以根据自己的项目格式做相应调整。
6.1 BOM 检查:重复位号与缺失封装
BOM 表可以从立创 EDA、Altium Designer 或 KiCad 中导出,格式大同小异。下面这个脚本基于 CSV 格式的 BOM,检查重复位号和缺少封装的问题。
# 文件路径:tools/check_bom.py import csv import sys from collections import defaultdict def check_bom(csv_path): refs = defaultdict(list) missing_footprint = [] total = 0 with open(csv_path, newline='', encoding='utf-8') as f: reader = csv.DictReader(f) for row in reader: ref = row.get('位号') or row.get('Reference') fp = row.get('封装') or row.get('Footprint') value = row.get('数值') or row.get('Value') if not ref: continue total += 1 refs[ref].append(value) if not fp or fp.strip() in ('', 'unknown', '待定'): missing_footprint.append(ref) dup = {ref: vals for ref, vals in refs.items() if len(vals) > 1} print(f"BOM 总器件数: {total}") print(f"缺少封装的位号: {missing_footprint}") if dup: print(f"重复位号: {dup}") else: print("重复位号: 无") if __name__ == '__main__': check_bom(sys.argv[1])运行方式:
python tools/check_bom.py bom.csv这个脚本的逻辑并不复杂,但能快速发现人工核对容易漏掉的问题。重复位号在原理图导入 PCB 时经常导致封装错乱,缺少封装则会让采购和贴片环节直接卡住。
6.2 网络表检查:悬空网络与单点网络
网络表是原理图连接关系的结构化表达,也是 PCB 布线的基础。针对网络表做脚本检查,可以提前发现悬空引脚、单点网络等风险。
# 文件路径:tools/check_nets.py # 输入:从 EDA 导出的网络表 CSV,至少包含 net_name、pin_ref、pin_name、direction 四列 import csv import sys from collections import defaultdict net_pins = defaultdict(list) with open(sys.argv[1], newline='', encoding='utf-8') as f: for row in csv.DictReader(f): net = row['net_name'].strip() pin = row['pin_ref'].strip() direction = row.get('direction', '').strip() net_pins[net].append((pin, direction)) for net, pins in net_pins.items(): unique_pins = set(p[0] for p in pins) if len(unique_pins) == 1: print(f"[WARN] 网络 '{net}' 只连接了 {pins[0]},疑似悬空") elif len(unique_pins) == 2: print(f"[INFO] 网络 '{net}' 只有两个端点: {list(unique_pins)},请人工确认是否为测试点或跳线")运行方式:
python tools/check_nets.py nets.csv如果你的项目有多路电源,建议重点关注电源网络。很多上电不工作的故障,本质上是某个电源引脚在网络表里根本没连上,而原理图看起来是连着的,这种问题肉眼很难分辨,但脚本可以精准暴露。
6.3 结合 AI 做结果分析
脚本输出的检查结果通常是一堆原始字符串,此时可以让 AI 帮忙解读。例如将脚本输出粘贴给 AI,并附上问题:
这是我用脚本检查 BOM 得到的结果: (粘贴脚本输出) 请帮我分析哪些问题是必须修复的,哪些是提示性的,并列出修复优先级。这种方式相当于让 AI 担任“初级审查员”,先把风险分级,你再根据分级结果决定是否深入处理。对开发者来说,减少的是机械核对的时间,而不是减少最终决策的责任。
7. 常见误区与排查方法
在实际应用“AI 查错”的过程中,很多开发者会踩到一些坑。这里整理 PiBox 项目里遇到过的问题,供参考。
| 问题现象 | 可能原因 | 排查方式 | 解决方案 |
|---|---|---|---|
| AI 输出的检查结果太泛化,没有具体到器件的建议 | 提示词里的检查清单不够具体,AI 只能用“可能存在问题”来回答 | 补充更明确的检查项,例如“检查 U1 的 VCC 引脚是否有 0.1uF 去耦电容” | 使用结构化查错清单,让 AI 按固定格式输出 |
| 脚本检查 BOM 时报编码错误 | CSV 文件不是 UTF-8 编码,可能是 GBK | 检查文件编码 | 将 CSV 转为 UTF-8,或在脚本中指定编码方式 |
| 网络表检查发现大量“单点网络” | 原理图中存在悬空引脚,或你使用的 EDA 导出了包含测试点的网络表 | 对照原理图逐个确认 | 如果是测试点,可忽略;如果是悬空引脚,需要重新连接 |
| AI 给出的封装参数与实际器件不符 | AI 训练数据中存在过时或不准确的信息 | 交叉核对器件数据手册 | 以官方数据手册为准,AI 结果仅作为参考 |
| 上电后电流异常偏大 | 可能存在焊接桥连、电容方向接反、电源短路 | 用万用表测量电源与地之间的阻值,观察是否接近短路 | 先目检焊点,再分步断开负载定位短路点 |
这里要特别提醒一点:AI 查错输出的是“建议”,不是“事实”。尤其是在封装参数、电气规格这类数据上,AI 有可能给出看起来很合理但实际上错误的答案。比较好的做法是:AI 负责快速筛查和风险提示,人负责最终确认。凡是涉及要修改版图、更换器件的决定,都必须回到数据手册和 EDA 工具里验证。
8. AI 硬件查错的工程建议与风险边界
如果要把 AI 真正用进硬件开发的日常流程,有几个工程层面的建议值得参考。
8.1 建议一:把 AI 查错固定成流程节点
不要只在出了问题的时候才想起 AI,而是把“AI 预审”变成项目节点的一部分。例如:原理图完成后,导出网络表和 BOM,跑一遍脚本检查,再让 AI 根据查错清单输出风险报告。这个过程通常只需要十几分钟,但能有效降低后期改版次数。
8.2 建议二:安全边界要清晰
AI 在硬件开发中真正需要警惕的是“过度信任”。一些开发者拿到 AI 的答案后不经过验证就应用于电路设计,结果往往很惨。更稳妥的态度是:把 AI 当作一个经验丰富但偶尔会犯错的同事。它的优势是见多识广、回答速度快,但也可能把数据手册里的某个参数张冠李戴。
尤其是在涉及高压、大电流、电池供电等场景时,必须坚持“人工复核”的原则。任何 AI 给出的电气参数、器件选型建议,都要回到官方数据手册验证,涉及安全的关键电路,建议请有经验的硬件工程师评审。
8.3 建议三:善用 EDA 工具的 DRC 与仿真
AI 无法替代 EDA 工具的 DRC(设计规则检查)和仿真功能。DRC 能检查线宽、间距、过孔等物理规则是否满足制造要求;仿真能验证信号完整性和电源完整性。AI 更适合的是解释这些检查报告,告诉你某个 DRC 错误意味着什么,而不是替代工具去生成版图。
8.4 建议四:持续维护自己的查错清单
每一次项目复盘后,都可以把新踩的坑补充到查错清单里。比如某个项目里发现“LDO 的散热焊盘没打地孔导致温度过高”,就可以在清单里增加一条“电源芯片散热焊盘是否打过孔”。随着清单越来越完善,AI 查错的质量也会随之提高。
9. 回到 PiBox:一个更现实的 AI 硬件工作流
PiBox 项目最终沉淀下来的 AI 工作流,可以概括为一个循环:
- 用脚本检查结构化数据(BOM、网络表),先过滤掉确定性问题。
- 用 AI 做规则审查,用查错清单驱动,输出风险分级报告。
- 对 AI 输出的风险项,回到数据手册和 EDA 工具中逐条验证。
- 把项目中遇到的真实问题补充进查错清单,进入下一个迭代。
这个流程不追求让 AI 直接产出最终交付物,而是把 AI 嵌入到“人机协作”的查错环节。从实际效果看,它比“让 AI 画电路板”要靠谱得多,也更符合当前 AI 能力边界。
如果你也在做硬件项目,建议从今天开始做一个调整:下次不要再让 AI 直接画电路板,而是试试把 BOM 导出来,让 AI 先查一遍。你会发现,它可能不是你想象中的全能设计师,但却是一个非常不错的“审查搭档”。