AI画板不靠谱,查错却靠谱:PCB设计检查工具链实战
这一期 PiBox 设计日志 02,我先说结论:现阶段 AI 大模型不适合用来“画电路板”,但用来“查错”却比想象中靠谱。这个结论不是拍脑袋,而是因为在 PiBox 的原理图、PCB 布局和制板前检查中,真正拦住低级错误的,并不是让 AI 生成一张看起来像原理图的图片,而是一套能自动检查电气连接、线宽间距、封装匹配和 BOM 完整性的工具链。
PiBox 是一个以单板计算机为核心的 DIY 硬件盒子项目,设计日志系列会持续记录原理图设计、PCB 布局、结构件设计和固件调试的完整过程。这一期聚焦在电路板查错环节,核心回答三个问题:为什么 AI 画板子不靠谱;用什么工具做电路板查错最有效;AI 在硬件开发流程里到底该放在哪个位置。
这篇文章会带读者完成以下实操内容:搭建 KiCad 和立创 EDA 的本地检查环境;对一块 PiBox 电源模块做原理图 ERC、PCB DRC、3D 结构检查和 BOM 复核;用 Python 脚本批量检查 PCB 文件里的走线宽度与 BOM 缺项;最后输出一份可复制的制板前检查清单。
如果你正在做 PCB 设计,或者准备把 AI 引入硬件开发流程,建议先读完这一篇。这不是让你完全放弃 AI,而是告诉你 AI 的使用边界在哪里。
1. 核心能力速览
| 能力项 | 说明 |
|---|---|
| 项目类型 | PiBox 硬件设计日志第二期 |
| 核心工具 | KiCad 8+ / 立创 EDA 专业版 + Python 脚本 |
| 主要功能 | 原理图 ERC、PCB DRC、3D 结构检查、BOM 复核、Gerber 审查 |
| AI 定位 | 辅助生成检查脚本、整理 BOM、复核文档,不直接生成原理图与 PCB |
| 硬件门槛 | 普通办公电脑即可,KiCad 对显卡要求很低;立创 EDA 在线版建议 16GB 内存 |
| 显存占用 | 无;本流程不涉及 GPU 推理,如果需要本地跑 LLM 辅助,显存另行评估 |
| 支持平台 | Windows / macOS / Linux / 浏览器 |
| 启动方式 | KiCad 独立客户端;立创 EDA 网页版或专业版客户端 |
| API 与批量 | KiCad 支持 kicad-cli 命令行导出与 Python 脚本检查,可批量处理 Gerber、BOM、钻孔文件 |
| 适合场景 | PCB 投产前自查、低成本硬件迭代、原理图评审、教学验证 |
2. 为什么「AI 画电路板」不靠谱
最近经常能看到类似的问题:能不能把需求发给 ChatGPT,让它直接生成一份可生产的原理图和 PCB?结论是可以理解需求、可以给设计建议,但不能直接生成生产级电路板。
原因也很直接。AI 大模型本质上是在做概率性的文本生成,它的强项是“看起来合理”,而不是“物理上正确”。电路板设计是一个强约束的几何拓扑问题,每一个引脚、网络、封装、线宽、间距和孔径都必须精确对应。用自然语言描述一份原理图,模型给出的结果大概率是封装混乱、网络不闭合、电源和地处理错误。这种错误在生成的图片里看不出来,在真实打样回来的板子上会直接变成短路或者烧芯片。
更麻烦的是验证成本。如果 AI 生成一份看似完整的原理图,工程师需要逐网络去核对每一个芯片引脚、上拉电阻、去耦电容和电源引脚连接。这个核对过程比直接手动画原理图还要累,而且更容易漏看。说白了,AI 生成的电路板文件如果不能用,等于把一个需要精确性的设计问题转成了更大的排查问题。
那 AI 是不是毫无用处?也不是。从工程实践看,AI 真正合适的定位是辅助层:辅助生成检查脚本、辅助整理 BOM、辅助撰写测试文档、辅助对设计规则做常识性复核。把 AI 用在验算和资料整理上,效率提升明显;把 AI 用在生成核心设计上,风险很大。
3. 靠谱的电路板查错工具链
搞清楚了 AI 的边界,接下来看真正的核心:电路板查错工具链。这一套流程全部免费、基本不挑硬件配置,适合大多数硬件 DIY 项目和生产前检查。
3.1 原理图阶段:ERC 电气规则检查
原理图最容易出的问题是未连接引脚、单端网络、电源符号不匹配和输出引脚打架。这类问题在人工审查时很容易漏,但 ERC(Electrical Rule Check)可以自动扫出来。
KiCad 的 ERC 会检查整张原理图里每个引脚的网络归属,遇到未连接引脚会列出警告;立创 EDA 的 ERC 也是同样的逻辑。对于 PiBox 这种包含电源模块、主控、接口和外围小信号电路的板子,第一步就是跑通 ERC,把所有报错归零,再进入布局布线。
3.2 布局布线阶段:DRC 设计规则检查
DRC(Design Rule Check)负责检查 PC 铜箔的物理规则,包括最小线宽、最小间距、孔径大小、丝印覆盖和铺铜连接方式。
这一步会把前面手工不容易看出来的问题抓出来。比如电源线走太细、USB 差分对没做等长、铺铜间距太小导致制板厂无法生产。DRC 的规则可以在项目里自定义,按制板厂给出的工艺参数来填。常规两层板,最小线宽设 0.2mm,间距设 0.2mm,是一个比较稳妥的起点,但具体数值还是以你选择的制板厂工艺为准。
3.3 制造前检查:Gerber 审查和钻孔文件核对
PCB 设计完并不等于能直接打样,还要从 KiCad 或立创 EDA 导出 Gerber 文件和钻孔文件。Gerber 是制板厂识别铜箔、阻焊、丝印的通用格式,钻孔文件则定义每一个过孔和安装孔的位置与大小。
导出后不要直接发给工厂,先用 Gerber 预览工具打开看一遍。重点检查:每一层是否都导出完整、过孔是否落在正确位置、丝印有没有覆盖焊盘、板框线条是否闭合。这一环节很多初学者会忽略,结果就是打样回来的板子焊盘缺失、过孔偏移或者丝印压住了元件。
3.4 3D 查看器与机械干涉检查
布局完成后,用 KiCad 3D 查看器或者立创 EDA 的 3D 预览,把 PCB 模型和外壳叠加在一起看。PiBox 这类带外壳的硬件项目,最容易踩的坑是:接插件高度超出外壳、Type-C 座和外壳开孔不对齐、芯片散热区域被外壳压住。
3D 查看器不需要真实渲染效果,只要能把关键器件的外形尺寸和高度显示出来,就能避免一大批结构干涉问题。机械检查既可以在 PCB 设计阶段做,也可以在导出 STEP 文件后导入 Fusion 360 或 FreeCAD 里做更精确的装配验证。
3.5 BOM 复核与器件选型
BOM(Bill of Materials)是采购和焊接的依据。立创 EDA 可以直接导出包含 LCSC 编号的 BOM,KiCad 也支持自定义字段输出 CSV。拿到 BOM 后要核对四样东西:每个元件是否有对应的封装;封装是否能在库里找到;编号是否填写完整;数量是否和原理图一致。
BOM 质量问题通常不会在原理图上暴露,但是会在采购时直接卡住,比如一种电阻在 BOM 出现五次,却只采购了三条,或者某个电容的封装在库中根本不存在。这部分完全可以交给 Python 脚本辅助检查,后面第 5 节会有具体示例。
4. 环境准备与前置条件
这套查错流程对电脑要求不高,普通 Windows、macOS 或 Linux 机器都可以。以下是推荐的环境组合:
| 项目 | 建议 |
|---|---|
| 操作系统 | Windows 10/11、Ubuntu 22.04+、macOS 12+ |
| EDA 工具 | KiCad 8+ / 立创 EDA 专业版 |
| 浏览器 | Chrome / Edge,用于立创 EDA 在线版 |
| Python | 3.9+,用于 BOM 和 PCB 文件检查脚本 |
| Git | 建议安装,用于版本管理设计文件 |
| GPU | 无特殊要求,3D 查看是轻量渲染 |
| 内存 | 8GB 起步,16GB 更从容 |
KiCad 在 Ubuntu 上安装非常直接:
sudo apt update sudo apt install kicadWindows 用户从 KiCad 官网下载安装包,安装时建议选择完整组件,避免后续找不到部分插件和 3D 模型库。立创 EDA 可以不用安装,直接使用在线版,或者下载专业版客户端。在线版的好处是跟随官方更新,元件库可以直接检索,适合前期选型和快速验证。
版本控制建议加上。PCB 设计文件虽然不大,但迭代版本很容易混乱。用 Git 管理.kicad_pcb、原理图文件和 BOM 导出文件,每次改版前先提交一次,出问题可以快速回退。
5. 实操:用 KiCad 对 PiBox 电源模块做完整查错
这一节用一块 PiBox 电源模块作为样例,走一遍完整的查错流程。这里不会依赖具体某个板子,但每个检查点都适用于类似带电源、USB、MCU 的最小系统板。
5.1 原理图 ERC:先清零报错
打开 KiCad 的原理图编辑器,点击“检查 -> 电气规则检查”,运行 ERC。
实操中需要重点处理的报错类型:
- 未连接引脚:元件引脚画了线但没形成有效网络,或者引脚根本没接线。解决方向是回到原理图把对应引脚的网络标签补上。
- 单端网络:一个网络只有一个引脚连接,这在大多数情况下是有问题的,但如果是有意留的测试点,可以加 ERC 豁免。
- 电源符号冲突:同一个网络同时连接 VCC 和 GND,ERC 会直接报错。处理方式是检查电源符号是否选错。
判断标准很简单:把 ERC 的 Error 全部清零,Warning 逐条确认。如果 Warning 里的项目是有意设计的,比如悬空的 unused pin 或者测试点,可以在 ERC 排除列表里标注原因。
5.2 PCB DRC:线宽、间距和孔径检查
原理图跑通后,进入 PCB 编辑器,点击“检查 -> 设计规则检查”,运行 DRC。
检查项至少包含四类:
| DRC 检查项 | 常见报错原因 | 处理方式 |
|---|---|---|
| 最小线宽 | 电源线或信号线过细 | 加大线宽,电源线建议按电流需求加粗 |
| 最小间距 | 铜箔间距小于工艺能力 | 调整规则参数或重新拉线 |
| 孔径过小 | 过孔和焊盘内径小于制板厂要求 | 换更大孔径的过孔 |
| 丝印覆盖焊盘 | 丝印文字压到焊盘上 | 调整丝印位置,或者关闭该层丝印显示 |
DRC 报错多时不要慌。先按报错类型分组,优先处理短路类报错,再处理间距和丝印类问题。可以用 KiCad 的 DRC 面板把同一类型的错误全部选中,在布局中逐条定位。
5.3 3D 查看器:结构干涉检查
PiBox 是带外壳的设计,3D 检查不能省。在 PCB 编辑器里点击“查看 -> 3D 查看器”,加载后可以旋转、缩放、隐藏层。
重点看三个位置:
- 接插件是不是超出外壳限高。比如 USB 座、排针、凤凰端子,这类器件的高度往往会顶到外壳。
- 板边和螺丝孔的间距。螺丝孔旁边不要走线,否则拧螺丝时可能会刮伤铜箔,甚至造成短路。
- 发热元件周围有没有足够散热空间。电源模块里的 DCDC 芯片和电感如果贴着外壳,温度会明显偏高。
3D 查看器只能做粗略装配验证。如果需要精确验证外壳内部结构,把 PCB 导出为 STEP 文件,和外壳 STEP 一起导入 FreeCAD 或者 Fusion 360 做装配,就能精确检查干涉。
5.4 BOM 复核:用脚本批量检查缺项
BOM 检查是很多人的盲区。原理图再规范,BOM 缺料、封装选错都会让整个项目卡在采购环节。
下面这个 Python 脚本可以批量检查一个 CSV 格式的 BOM 是否有缺项:
import csv from pathlib import Path required_fields = ["Reference", "Value", "Footprint", "Quantity", "LCSC", "Supplier"] bom_path = Path("pibox_bom.csv") missing_rows = [] with bom_path.open(encoding="utf-8-sig") as f: reader = csv.DictReader(f) for i, row in enumerate(reader, start=2): miss = [k for k in required_fields if not row.get(k, "").strip()] if miss: missing_rows.append((i, miss, row.get("Reference", ""))) if missing_rows: print("发现 BOM 缺字段:") for row_no, miss, ref in missing_rows: print(f" 第{row_no}行 {ref}: 缺少 {miss}") else: print("BOM 字段完整")这段脚本会把缺少 Reference、Value、Footprint、Quantity、LCSC 或 Supplier 的行全部打印出来。跑通之后还可以根据自己的项目加规则,比如检查同一种容值电阻是否出现多次,或者检查某一类元件的封装是否符合设计要求。
5.5 制板文件输出前检查
导出 Gerber 和钻孔文件之前,先检查一遍 KiCad 的“制造输出”设置。推荐使用 kicad-cli 命令行导出,方便重复执行:
# 导出 Gerber 文件到 gerber 目录 kicad-cli pcb export gerbers pibox.kicad_pcb --output gerber/ # 导出钻孔文件 kicad-cli pcb export drill pibox.kicad_pcb --output gerber/ # 导出贴片坐标文件 kicad-cli pcb export pos pibox.kicad_pcb --output pick_and_place/导出完成后打开 Gerber 文件再检查一次。常见问题是:板框没有闭合、有铜箔延伸到板框外、丝印压住焊盘。这些在 Gerber 预览里都能直接看到。
6. AI 在查错流程中的正确用法
很多人在“AI 画电路板”上栽了跟头,就开始全盘否定 AI。其实换个角度来看,AI 在查错流程里非常有用,关键是放对位置。
6.1 用 AI 生成检查脚本
像第 5 节的 BOM 检查脚本,就是 AI 的典型应用场景。给 AI 一段自然语言描述,比如“帮我写一个 Python 脚本,读取 CSV 格式的 BOM 文件,检查每个元件是否都有 Value 字段,缺少的打印行号”,它就能生成可运行的脚本。
核心不是让 AI 做设计,而是让它帮工程师减少重复劳动。PCB 文件解析、BOM 格式转换、批量文件重命名、Gerber 压缩归档,这些工作用 AI 辅助写脚本,效率提升明显。
6.2 用 AI 整理 BOM 和预测缺料风险
BOM 整理阶段,可以从立创商城导出物料表,然后用 AI 脚本做去重、缺失检查、价格汇总。更进一步,可以把 BOM 里每个元件的 LCSC 编号列出来,用脚本批量拉起库存查询,标记出那些库存为 0 或备货周期长的物料。
这个操作在项目早期非常有价值。如果不做缺料检查,画完板子、导出生产文件,结果到下单时核心芯片没货,整个项目就得停下来。
6.3 用 AI 辅助原理图审查
AI 不能生成原理图,但可以辅助审查。操作方式是把原理图导出的网表文件转成文本,再把电源树、接口类型、关键参数整理成文本,让 AI 做一次常识性检查,比如“这个系统用的是 3.3V 逻辑,为什么有一个 5V 的网络直接连到 GPIO 上”。
这里要特别注意:AI 抛出的审查结果只能作为提示,必须回到原理图里人工确认。任何一个引脚连接问题如果只依赖 AI 的“感觉”,都有可能在硬件上烧芯片。AI 是辅助,不是裁决者。
6.4 原则:AI 结论必须人工复核
不管是用 AI 写脚本还是辅助审查,最终落地产出的环节必须有人工复核。原因是 AI 的幻觉问题依然存在,尤其是芯片引脚、网络标号和封装编号这类细节,AI 很容易生成一个看似合理但实际不能用的结果。
在 PiBox 项目里的操作习惯是:AI 生成的内容统一放在ai_draft/目录,人工审核通过后的版本才移动到正式目录。这样既保留了 AI 带来的提效,又避免 AI 内容混入正式设计。
7. 批量任务与脚本化检查
前面提到的查错流程如果只做一次,手动点击 GUI 也没问题。但 PiBox 这类项目会经历多次改版,每次改版都手点一遍 ERC、DRC、导出、检查,效率太低。更合理的做法是把检查流程脚本化,形成一键检查套件。
7.1 批量导出 Gerber 和钻孔文件
用 kicad-cli 可以把导出流程固定下来,然后写一个简单的 shell 脚本批量处理:
#!/bin/bash set -e rm -rf gerber pick_and_place mkdir -p gerber pick_and_place kicad-cli pcb export gerbers pibox.kicad_pcb --output gerber/ kicad-cli pcb export drill pibox.kicad_pcb --output gerber/ kicad-cli pcb export pos pibox.kicad_pcb --output pick_and_place/ echo "导出完成,文件列表:" ls -la gerber/每次改版后,只需重新运行一次脚本,就能得到最新的生产文件。这样不容易出现“画完板子忘记导出钻孔文件”这种低级问题。
7.2 用脚本检查 PCB 走线宽度
KiCad 的 PCB 文件是文本格式,可以直接用 Python 做规则检查,不依赖 GUI。下面这个示例脚本会扫描所有走线的最小宽度:
import re from pathlib import Path p = Path("pibox.kicad_pcb") content = p.read_text(encoding="utf-8") widths = re.findall(r"\(segment .*?\(width ([0-9.]+)\)", content) widths = [float(w) for w in widths] min_width = min(widths or [0]) print("走线段数:", len(widths)) print("最小线宽(mm):", min_width) if min_width < 0.2: print("警告: 存在小于0.2mm的走线,请确认制板厂工艺") else: print("OK: 线宽满足常规最低要求")这个脚本的价值在于:当 PCB 文件很大、走线数量很多时,人工去盯每一条线不现实,用脚本扫一遍就能快速发现是否存在低于工艺极限的走线。更完整的版本还可以检查某一层走线密度、未连接的焊盘等。
7.3 批量渲染 3D 视图
KiCad 的 3D 查看器支持导出当前视角的 PNG 图像。如果项目里有多块板卡,可以用命令行方式批量导出,再把所有 3D 截图放到一个目录里,方便统一检查。这类重复性工作不建议手动截图,因为每块板子的视角、层显示和颜色配置都容易不统一。
7.4 输出 Markdown 检查报告
脚本化检查最后一步是把结果汇总成 Markdown 报告。这样可以保留每次改版的检查记录,方便追溯。一个简单的做法是让检查脚本把结果写入 report.md:
# PiBox PCB 检查报告 检查时间: 2025-01-01 10:00 ## 线宽检查 - 走线段数: 120 - 最小线宽: 0.25mm - 结论: 通过 ## BOM 检查 - BOM 行数: 45 - 缺字段: 0 - 结论: 通过每次改版前跑一遍,把报告提交到 Git,就能形成完整的设计质量记录。
8. 资源占用与性能观察
这套工具链对硬件资源基本没有压力。KiCad 是轻量级桌面应用,打开大型 PCB 文件时,旋转、缩放操作在旧款 i5 和 8GB 内存的机器上也能保持流畅。如果用的是立创 EDA 在线版,浏览器内存占用会高一些,建议关闭多余标签页,否则长时间高负荷使用有可能页面变卡。
3D 查看器对显卡要求很低,不涉及复杂的实时光追,只要不是极老的核心显卡,都能正常旋转查看。比较大的 PCB 文件在首次加载 3D 模型时会卡几秒,这是正常的,属于加载缓存的阶段。
需要特别注意的不是 GPU,而是磁盘和版本管理。PCB 文件本身不大,但 3D 模型库、封装库和 Gerber 文件会随着项目迭代越来越多。建议把缓存目录和项目目录分开,避免把大量 3D 模型文件提交到 Git 仓库。
从资源占用角度看,这套流程比 AI 画板方案更务实。AI 画板如果走本地大模型路线,需要额外考虑显存、推理时间和输出精度问题;而传统 EDA 工具链几乎可以在任何办公电脑上无障碍运行。
9. 常见问题与排查方法
| 问题现象 | 可能原因 | 排查方式 | 解决方案 |
|---|---|---|---|
| ERC 报错太多 | 原理图网络标号不统一 | 逐个查看 ERC 列表,定位网络 | 统一网络名称,补齐电源符号 |
| DRC 报错多且分散 | 设计规则设置过严 | 按错误类型分组 | 调整规则参数,或逐类修复 |
| 3D 模型不显示 | 模型文件缺失或路径错误 | 检查封装库路径 | 重新指定模型路径或替换模型 |
| 导出 Gerber 缺层 | 输出选项未勾选完整 | 检查 Gerber 导出设置 | 勾选所有需要的层 |
| 钻孔文件偏移 | 板框坐标或原点设置异常 | 检查原点设置 | 重新定义原点再导出 |
| BOM 缺料 | 元件库信息填写不完整 | 用脚本检查缺字段 | 补齐 LCSC、Supplier 字段 |
| 打样回来不工作 | 原理图级错误或焊接问题 | 用万用表从电源入口逐级测量 | 先修复 ERC 报错,再检查焊接 |
| AI 生成的原理图不可用 | 网络连接和封装不匹配 | 逐网络人工核对 | 不要直接使用 AI 生成结果 |
在实际项目里,ER C 和 DRC 报错清零是打样前的基本门槛。如果这两个检查项还有大量报错,就不要急着导出 Gerber。另外,打样回来的板子如果上电后异常,先不要怀疑芯片,从电源入口开始逐级测电压,再检查每个芯片的供电引脚是否符合预期。大部分硬件问题都出在最基础的供电和地连接上。
10. 最佳实践与使用建议
- 第一次先小参数验证工具链。可以先创建一个小测试工程,跑一遍 ERC、DRC、3D 查看和 BOM 导出的完整流程,确认自己的操作方式正确,再切换到真实项目。
- 统一封装库与命名规范。所有元件尽量使用来源一致的封装库,命名规范保持统一,不要同一个电阻在 A 工程叫 R1、在 B 工程叫 RES_1。
- 分层检查,不要跳步。原理图 ERC、PCB DRC、3D 检查、Gerber 审查、BOM 复核,这五个步骤按顺序执行,每一步确认无误后再进入下一步。
- 脚本化所有重复操作。导出 Gerber、生成 BOM、检查线宽、生成检查报告,凡是需要重复执行的操作都写成脚本或命令行,避免手动遗漏。
- AI 内容单独放置,人工审核后转正。AI 生成的脚本、文档和检查逻辑放在独立目录,审核通过后再进入正式设计流程。
- 遵守设计合规要求。不要在没有授权的情况下复制商业板的设计文件;使用开源封装库时注意其许可证;采购元器件尽量选择正规渠道,避免使用来源不明的物料。
- 涉及结构和电源的板子要特别关注接地处理。电源模块的接地网络尽量使用完整的铺铜平面,避免地线绕远路,否则容易出现纹波和噪声问题。
11. 总结与下一步
这一期 PiBox 设计日志已经把“AI 画电路板”这个方向判断清楚了:生成式 AI 不适合直接画原理图和 PCB,因为电路设计是强约束的几何拓扑问题,AI 的误差在硬件上会直接变成烧板事故。取而代之的正确做法是,用 KiCad、立创 EDA 的 ERC/DRC、3D 查看器和 BOM 复核来构建一套可靠的查错流程,同时把 AI 放在脚本生成、BOM 整理和文档审查这类辅助任务上。
如果你准备在自己的板子上复现这套流程,最先应该验证的是 ERC 和 DRC 两个检查按钮,它们能挡住大约 80% 的低级设计错误。最容易踩的坑是完全信任 AI 生成的原理图或 PCB 文件,一定要把 AI 放到辅助位置,所有设计结论以人工复核为准。
后续的 PiBox 设计日志会继续沿着硬件开发主线走,下一期可以进入固件调试和生产文件管理,把这一期建立的检查流程进一步扩展成可持续迭代的硬件工作流。建议把本文收藏备用,做板子之前按最后一节的检查清单过一遍,能省掉大量返工时间。
