KiCad 6.0 Gerber文件生成全流程:从原理到实战,打通PCB制造最后一公里
1. 项目概述:从设计到制造的桥梁
作为一名折腾过上百块电路板的硬件工程师,我深知从EDA软件里那个完美的设计图,到手里那块实实在在的电路板,中间最关键的一步就是生成Gerber文件。这就像是把建筑师画的蓝图,转换成施工队能看懂的钢筋水泥施工图。很多新手朋友在KiCad里画完板子后,对着“如何发给工厂”这个问题一头雾水,其实核心就是搞定Gerber。Gerber文件本身并不复杂,它本质上是一系列用坐标和简单图形指令(画线、画圆、填充)来描述每一层PCB图像的文本文件。这种开放、中立的格式,让无论你用哪家EDA软件(KiCad, Altium, Eagle),最终都能输出一套标准“语言”,让全球任何一家PCB板厂的生产设备都能读懂。
KiCad 6.0在文件输出方面做了不少优化,流程比老版本更清晰。今天,我就以KiCad 6.0为例,手把手带你走通生成Gerber文件的全流程。无论你是打算把文件打包发给嘉立创、捷配这类专业板厂进行高品质批量生产,还是想用热转印法在家体验DIY蚀刻的乐趣,这篇文章都会涵盖。我会重点解释每个设置选项背后的含义,而不是机械地告诉你点哪里,这样你以后遇到任何板子都能举一反三。毕竟,理解为什么这么做,比记住操作步骤更重要。
2. Gerber文件核心解析与生成前准备
在动手点击“生成”按钮之前,我们有必要花几分钟搞清楚Gerber到底是什么,以及KiCad工程需要满足哪些前提条件。这能避免你产出无用的文件,或者更糟——导致工厂生产出废板。
2.1 Gerber文件:PCB的“分层写真集”
你可以把一套完整的Gerber文件集想象成一套PCB的“分层写真集”。PCB不是单层的一张纸,而是由多层材料压合而成的。每一层都需要一张独立的、高精度的“照片”来指导生产设备。一套标准的Gerber文件通常包含以下层:
- 铜层(Copper Layers):这是核心,包括顶层(F.Cu)、底层(B.Cu)和所有内电层。它定义了导线的走线、焊盘和覆铜区域。
- 阻焊层(Solder Mask Layers):通常是顶层阻焊(F.Mask)和底层阻焊(B.Mask)。它的作用是“开窗”,即定义出哪里不覆盖绿色的阻焊油墨,让焊盘露出来以便焊接。所以,阻焊层文件上的图形,实际对应的是要开窗露铜的地方。
- 丝印层(Silkscreen Layers):通常是顶层丝印(F.Silk)和底层丝印(B.Silk)。用于印刷元器件标号(如R1, C2)、图形边框和版本号等文字信息。
- 边框层(Edge.Cuts):定义PCB的物理外形和切割轮廓。板厂会根据这一层来给板子铣边或V-cut。
- 钻孔层(Drill Files):这通常不是Gerber格式,而是独立的Excellon格式文件。它包含所有孔(通孔、过孔、安装孔)的位置、大小和类型(镀铜或不镀铜)。这是PCB打孔机的“钻孔地图”。
注意:一个常见的误解是阻焊层和丝印层“画什么就有什么”。恰恰相反,对于Gerber输出,这两层通常采用“正片”思维:你画上去的图形,意味着在成品板上该区域是“有操作”的(阻焊开窗、丝印印刷)。但在有些EDA工具的默认设置或板厂的特殊要求下,也可能使用“负片”。KiCad默认是符合行业习惯的正片输出,这一点我们稍后在设置中会确认。
2.2 KiCad工程检查清单
生成Gerber前,请务必在你的PCB编辑器(Pcbnew)中完成以下检查,这能节省你后续和板厂客服扯皮的时间:
- DRC(设计规则检查)必须通过:在“检查”菜单下运行“设计规则检查器”。确保没有报错(如线距小于规则、未连接的网络、短路等)。警告可以酌情检查,但错误必须清零。这是保证电气可靠性的底线。
- 铺铜(Copper Pour)已重新填充:如果你使用了覆铜,确保在输出前右键点击覆铜区域,选择“铺铜管理器”,然后对所有覆铜执行“填充”或“全部重新填充”。否则,Gerber中的覆铜区域可能是空心或未更新的状态。
- 边框层(Edge.Cuts)闭合且明确:确保你的板框是一个完整的闭合图形,且只在Edge.Cuts层。不要用线条粗略勾勒,板厂会严格按照这个形状切割。
- 原点设置:建议将坐标原点设置在板子的一个角(通常是左下角)。在“放置”菜单下选择“网格原点设置”,将其定位到板框角点。这能让生成的Gerber坐标更整洁,有些板厂的工程软件对原点在板外的文件处理起来可能会有小问题。
- 丝印清晰度:检查丝印文字大小和线宽。我个人的经验是,高度不小于0.8mm,线宽不小于0.15mm,否则印刷出来可能模糊不清。在“编辑”->“文本与图形属性”中可以批量修改。
3. 生成标准Gerber文件集(用于专业板厂)
当你确认设计无误后,就可以开始生成用于商业制造的Gerber文件了。以下是按步骤的详细操作和原理说明。
3.1 进入绘图(Plot)界面与基础设置
在KiCad的PCB编辑器(Pcbnew)中,你有两种方式可以启动Gerber生成流程:
- 方式一:点击顶部菜单
文件->制造输出->Gerber文件。这是最直接的入口。 - 方式二:点击
文件->绘图。这个界面功能更集中,我们后续生成钻孔文件也会在这里。
两种方式都会弹出同一个“绘图”窗口。我们重点看这个窗口里的设置:
- 输出目录:建议新建一个以项目名和日期命名的文件夹,例如
ProjectName_Gerber_20231027。将所有生成文件放在这里,方便管理。绝对不要直接输出到桌面或项目根目录,文件多了会非常混乱。 - 绘图格式:在下拉菜单中选择
Gerber。这就是我们需要的行业标准格式。 - Gerber选项:
- 使用扩展的X2格式:务必勾选。这是现代Gerber格式(RS-274X),它包含了光圈定义(D-Code)等信息,所有数据都在一个文件里。老式的RS-274D格式需要单独的孔径文件,极易出错,早已被淘汰。勾选X2格式可以确保文件兼容性最好。
- 包含图层属性:建议勾选。它会在Gerber文件中嵌入图层名称等元数据,方便板厂CAM工程师识别。
- 禁用前导零:保持默认(通常不勾选)。坐标格式一般使用“前导零省略”更为通用,但具体需参考板厂要求。国内主流板厂(如嘉立创)对这两种格式都支持良好。
3.2 选择输出图层:勾选哪些是关键?
“包含的图层”列表是核心。你需要根据你的PCB层数,勾选所有需要制造的物理层。对于一个最常见的双面板,你应该勾选:
- F.Cu(顶层铜箔)
- B.Cu(底层铜箔)
- F.Mask(顶层阻焊)
- B.Mask(底层阻焊)
- F.SilkS(顶层丝印) - 注意是“SilkS”而不是“Silk”,前者是最终丝印层。
- B.SilkS(底层丝印)
- Edge.Cuts(板框层)
- F.Paste和B.Paste(锡膏层):如果你需要制作SMT钢网,才需要勾选这两个层。如果只是做PCB板子,不需要焊接厂的钢网,则不必勾选。它用于制作刷锡膏的钢板。
实操心得:我习惯在勾选时,使用“选中用于所有图层”上方的复选框,先全部取消,然后手动勾选以上必要的层。这样可以避免误输出一些内部工作层(如User.Drawings)。另外,对于简单的双面板,千万不要勾选
In1.Cu,In2.Cu等内电层,除非你的设计确实是4层或6层板。误勾选会导致板厂以为你要做多层板,价格和工期就完全不一样了。
3.3 生成钻孔文件:通孔与过孔的坐标集
光有线路层还不够,PCB上的孔洞信息在另一个独立文件中。在“绘图”窗口的右下角,点击生成钻孔文件...按钮,会弹出钻孔文件设置窗口。
钻孔文件格式:
- Gerber X2:同样,选择现代格式。在“地图文件格式”和“钻孔文件格式”下拉菜单中,都选择
Gerber。这将生成.gbr或.drl后缀的钻孔文件。 - 单位:选择
毫米(如果你的设计用的是毫米)。确保与设计单位一致。 - 精度:通常选择
3.3(即整数3位,小数3位)或4.4就足够精密。这表示坐标可以精确到微米级。
- Gerber X2:同样,选择现代格式。在“地图文件格式”和“钻孔文件格式”下拉菜单中,都选择
钻孔原点:建议与绘图原点保持一致。勾选“使用绘图原点”即可。
生成文件:设置好后,点击
生成钻孔文件。KiCad会生成两个关键文件:ProjectName.drl:主要的Excellon格式钻孔数据文件,包含所有钻孔的坐标、孔径和孔属性(镀铜/非镀铜)。ProjectName-drl_map.gbr(如果勾选了生成地图文件):这是一个可视化的钻孔图,用于人工校对孔的位置和大小,非常有用。
3.4 执行生成与文件打包
设置全部完成后,回到“绘图”窗口,点击绘图按钮。KiCad会为你之前勾选的每一个图层生成一个独立的.gbr文件。
现在,打开你设置的输出目录,你应该看到类似以下的一堆文件:
MyBoard-F_Cu.gbr MyBoard-B_Cu.gbr MyBoard-F_Mask.gbr MyBoard-B_Mask.gbr MyBoard-F_SilkS.gbr MyBoard-B_SilkS.gbr MyBoard-Edge_Cuts.gbr MyBoard.drl MyBoard-drl_map.gbr最后也是最重要的一步:将这些所有.gbr文件和.drl文件(不包括.drl_map.gbr,那是给你看的参考图)全部选中,打包成一个ZIP压缩包。这个ZIP包就是你最终需要提交给PCB制造商的“生产包”。
重要注意事项:永远不要单独上传散落的文件。板厂的自动化系统通常只接受一个ZIP压缩包,并自动解压识别内部文件。上传前,可以自己解压到另一个文件夹,用免费的Gerber查看器(如KiCad自带的GerbView,或在线查看器)检查一遍,确保每层图像都正确无误,没有缺失层或错层。
4. 为家庭DIY热转印准备文件
如果你不打算找板厂,而是想用热转印法自己在家制作PCB,那么流程就完全不同了。我们不需要生成分层的Gerber,而是需要能直接打印在热转印纸上的、黑白的、1:1比例的“镜像”图纸。
4.1 生成PDF打印文件
在KiCad的“绘图”窗口中,将“绘图格式”从Gerber改为PDF。对于热转印,我们通常需要打印铜层。
- 选择图层:在“包含的图层”中,仅勾选你需要转印的铜层。对于单面板,只勾选
F.Cu或B.Cu。对于双面板,你需要分别生成顶层和底层的PDF,然后分别转印到板子的两面。 - 关键设置——镜像:这是最容易出错的一步!热转印到覆铜板上时,图纸必须是镜像的,这样转印上去的墨粉才是正的。在“绘图选项”区域,找到“镜像”复选框,务必勾选。
- 比例与输出:确保“比例”为
1:1。然后点击“绘图”,生成PDF文件。
4.2 打印与转印技巧
用PDF阅读器(如Adobe Acrobat)打开生成的PDF文件进行打印。
打印机设置:
- 关闭任何缩放选项:在打印设置的“页面大小和处理”或“高级”选项中,确保缩放比例是“100%”或“实际大小”。绝对不能选择“适应页面”。
- 使用高质量设置:选择最高的打印质量(如1200 DPI),以确保墨粉足够黑、线条连续。
- 纸张选择:使用专用的热转印纸或光滑的杂志铜版纸。普通打印纸效果很差。
转印过程:
- 将打印好的图纸墨粉面朝下,贴在清洁过的覆铜板上。
- 用电熨斗或过塑机高温加热加压。温度和时间需要根据设备和纸张试验,通常电熨斗中高温档持续熨烫2-3分钟,均匀受力。
- 待板子冷却后,将纸浸湿并慢慢搓掉,墨粉图案就会留在铜板上了。
钻孔辅助文件:对于DIY,不需要复杂的钻孔文件。在“生成钻孔文件”的窗口中,你可以选择“生成地图文件”为
PDF。这样会生成一个带孔位和孔径标注的PDF图纸,你可以把它打印出来,贴在蚀刻好的板子上作为钻孔引导,或者直接用尺子量坐标。
DIY避坑指南:打印后,务必用游标卡尺测量一下PDF上某个已知尺寸(比如一个10mm x 10mm的焊盘)的实际打印尺寸,确认是1:1。哪怕有1%的缩放,都可能导致元器件插不进去。转印失败(线条断线)大多是因为温度不够、压力不均或板面清洁不净。多备几块空白板,做好翻车几次的心理准备,这是DIY的必经之路。
5. 高级设置与板厂工艺要求对接
当你把Gerber文件包发给板厂时,其实工作只完成了一半。让板厂完全理解你的设计意图,还需要一些额外的沟通和文件设置。
5.1 添加钻孔图与装配图
一个专业的Gerber包,除了必需的生产层,还应该包含方便人工审核的辅助文件。
- 钻孔图(Drill Drawing):在“绘图”窗口中,你可以额外生成一个包含所有孔位、孔径表(Drill Legend)的PDF或Gerber文件。方法是在“包含的图层”中,勾选
Drl.Drawing层(如果存在),或者更简单的方法是,用之前生成的-drl_map.gbr文件。将这个文件也放入ZIP包,方便板厂CAM工程师快速核对孔数。 - 装配图(Assembly Drawing):这对于贴片板尤其重要。在PCB编辑器中,你可以通过“文件”->“打印”,选择“F.Fab”和“B.Fab”(装配层)以及“F.SilkS”和“Edge.Cuts”,生成一个带有元器件轮廓和位号的PDF装配图。发给焊接厂或自己焊接时非常有用。
5.2 理解并填写板厂工艺要求
在板厂下单网站上传ZIP包后,你需要填写一系列工艺参数。理解这些参数,能帮你做出更合适的选择,避免浪费:
- 板厚:常见1.6mm。需要更坚固或更柔性的可以选1.0mm或2.0mm。
- 铜厚:常见1盎司(35μm)。如果电流较大,可以选择2盎司(70μm)加厚铜。
- 阻焊颜色:绿色最便宜也最普遍。其他颜色(蓝、黑、红、白等)可能稍有溢价。
- 丝印颜色:白色最普遍。黑色板子上常用黄色丝印。
- 表面工艺:
- 喷锡(HASL):最便宜,焊盘可焊性好,但表面不平整,不适合细间距元件。
- 沉金(ENIG):价格稍贵,表面平整、金黄,可焊性好且不易氧化,适合焊盘多、间距小的板子(如BGA)。
- 沉锡/沉银:也有应用,各有特点。对于大多数业余和普通商用项目,无铅喷锡或沉金是主流选择。
- 最小线宽/线距:这是由你设计决定的,但板厂会检查你是否达到了他们的工艺能力(通常普通板厂是6/6mil,即0.15mm/0.15mm)。在KiCad的DRC规则中设置好这个值,可以提前规避问题。
- 孔壁铜厚:通常默认即可。对于需要过较大电流的过孔,可以特别要求“过孔塞油”或“过孔盖油”,或者指定孔铜厚度。
与板厂沟通技巧:在压缩包内,额外放一个
README.txt文本文件,写明板子名称、层数、关键工艺要求(如“板边V-cut”、“特定位置做半孔”等)、你的联系方式和任何特殊说明。这能极大减少客服来回确认的时间,让生产更顺畅。对于复杂的设计,甚至可以提供简单的3D效果图(KiCad可以导出)或关键区域的截图。
6. 常见问题排查与文件验证
文件发出去不代表万事大吉。学会自己排查问题,是硬件工程师的必备技能。
6.1 文件生成失败或异常
- 问题:点击“绘图”或“生成钻孔文件”时,KiCad报错或无响应。
- 排查:
- 检查PCB文件是否保存在一个英文路径下。中文或特殊字符路径有时会导致软件异常。
- 检查工程是否完整,有无缺失的库文件。尝试关闭KiCad,重新打开工程。
- 如果板子非常大或非常复杂,生成可能需要一些时间,请耐心等待。
6.2 用查看器检查Gerber文件
永远不要假设自己生成的文件一定是正确的。用查看器检查是发板前的最后一道保险。
- KiCad自带工具:在KiCad主界面,有一个独立的
GerbView工具。打开它,将生成的所有.gbr和.drl文件拖进去。逐层检查:- 各层是否对齐?
- 阻焊层是否正确地露出了所有焊盘?
- 丝印文字有没有跑到焊盘上?(这会严重影响焊接)
- 钻孔文件(.drl)的孔是否和铜层上的焊盘中心对齐?
- 在线查看器:如“PCBWay Viewer”或“JLCPCB Gerber Viewer”。将ZIP包直接上传,它们会以更接近板厂CAM软件的方式显示,并且能进行DRC检查(最小间距、环孔大小等)。
6.3 板厂反馈问题与处理
收到板厂反馈邮件说文件有问题时,不要慌,按步骤处理:
- 确认问题:仔细阅读反馈,通常是“线距不足”、“孔距板边太近”、“丝印上焊盘”等。
- 定位错误:根据板厂提供的图片或描述,回到KiCad PCB编辑器中,使用“测量工具”和“DRC检查”定位到具体位置。
- 修改设计:调整走线、移动丝印或修改孔位。切记:修改后必须重新运行DRC,并重新生成整套Gerber文件,替换ZIP包中的所有旧文件。不能只替换某一层。
- 重新提交:将新的ZIP包重新上传给板厂。
一个非常典型的问题是“阻焊桥(Solder Mask Bridge)缺失”。当两个相邻的SMD焊盘(如贴片IC的引脚)距离很近时,阻焊层应该在它们之间留出一条油墨,防止焊接时连锡。如果设计时焊盘间距太小,或者阻焊层扩张(Solder Mask Expansion)设置过大,就会导致这个油墨桥消失。在KiCad中,你可以在焊盘属性里调整“阻焊层扩张”的数值,将其改小(甚至改为负数),以确保阻焊桥能保留。通常,对于0.2mm间距以下的IC,需要特别关注这一点。
生成Gerber文件是硬件设计从虚拟走向实体的临门一脚。这个过程本身并不复杂,但细节决定成败。掌握原理、仔细检查、规范操作,就能确保你的设计想法被准确无误地制造出来。多检查一遍文件,可能就省去了后面数周的改板时间和额外的打样费用。希望这份详细的指南能帮你扫清障碍,更自信地把你的电路创意变成现实。
