1. 为什么直接发PCB文件这条路走不通刚入行那会儿我干过一件现在想起来都脸红的事画完板子把.PcbDoc文件往群里一甩跟对接的工厂说文件发你了帮我做出来。对方回了一句打不开我还以为是网络问题又发了一遍。后来才知道工厂的CAM工程师用的是另一套软件体系人家根本不认Altium Designer的原生工程文件。这件事的根源在于PCB设计软件和PCB生产制造之间存在一道语言鸿沟。你用的AD、嘉立创EDA、Allegro、PADS各说各的方言而工厂的钻孔机、光绘机、贴片机只认一套行业通用的普通话——这就是Gerber文件和坐标文件。Gerber文件RS-274X格式描述的是每一层铜箔、阻焊、丝印、钻孔的几何图形相当于把你这块板子拍扁成一层层胶片。坐标文件Pick and Place简称PP或贴片坐标则告诉贴片机哪个元件、在哪个坐标、什么角度、贴在哪一面。这两样东西配合BOM表才构成一套完整的、可以直接投产的交付物。直接发原生工程文件的问题在于版本兼容性不可控AD19打开AD24的文件可能丢元素、工厂没有你的软件授权、你的设计规则和自定义层设置对方无法解析、封装库路径在你电脑上而对方没有。更现实的是很多中小工厂的CAM工程师一天要处理几十套文件你发一个需要他猜的工程文件等于把沟通成本转嫁给了对方返工率极高。所以这篇内容要解决的就是从AD里把Gerber和坐标文件干净利落地导出来并且避开那些让工厂反复找你确认的坑。适合刚画完第一块板准备打样的新手也适合打过几次样但总被工厂挑毛病的老手。下面我按实际操作顺序把每一步的意图、参数和踩坑点都摊开讲。2. 导出前的三项自检别让工厂替你发现低级错误导出Gerber之前有几个检查如果跳过后面大概率要返工。我见过太多人导出文件后直接打包发走结果工厂回来说你的丝印压焊盘了你的钻孔和铜皮短路了。这些问题在AD里明明能提前发现只是没人提醒你去看。2.1 DRC检查必须跑到零错误Design Rule Check是导出前的第一道闸门。在AD里按T然后D或者菜单Tools → Design Rule Check把电气规则、间距规则、线宽规则全部勾上跑一遍。关键点在于不要只看错误数量要看错误类型。间距违规Clearance和短路Short-Circuit是硬伤必须清零而丝印重叠Silk to Solder Mask这类属于警告可以酌情处理但最好也清掉因为丝印压到焊盘会导致焊接时字符模糊甚至影响上锡。我自己的习惯是DRC跑完后把报告导出来存一份万一工厂反馈问题我能快速对照是不是我这边漏了。另外提醒一句DRC规则里的最小间距要和你实际找工厂的工艺能力匹配。嘉立创的常规工艺是6mil线宽/间距如果你按4mil画了DRC可能不报错因为你的规则设得松但工厂做不出来。2.2 层设置和叠层顺序要跟工厂对齐AD默认是双层板设置如果你画的是四层板必须在Layer Stack Manager里把叠层加出来并且确认每一层的类型Signal、Plane、Mixed和顺序正确。工厂是按你Gerber文件里的层名来对应压合的如果层名混乱压出来的板子可能内层顺序颠倒。这里有个容易被忽略的细节AD里的层名和Gerber输出时的文件名要能对应上。比如你的Top Layer输出成Gerber_TopLayer.GTLBottom Layer输出成Gerber_BottomLayer.GBL这是行业惯例后缀。如果你自定义了层名导出时最好在文件命名里体现清楚否则CAM工程师要一个个打开看效率低还容易搞错。2.3 原点设置坐标文件的基准点坐标文件的原点位置直接决定了贴片机能不能对上。AD默认的原点是图纸左下角但这个位置往往和你板子的实际机械原点不一致。正确做法是在板子上找一个明确的基准点比如板子左下角的定位孔中心或者板边的一个直角把原点设在那里。操作路径Edit → Origin → Set然后点选你想要的基准位置。设完之后坐标文件里所有元件的X/Y坐标都是相对于这个点的。如果你不设工厂贴片时可能整体偏移尤其是拼版的时候偏移会累积。提示原点一旦设定导出Gerber和坐标文件之前不要再移动板子或元件否则原点会跟着变前面白设。3. Gerber导出从参数配置到文件命名这是整个流程的核心环节。AD导出Gerber的入口在File → Fabrication Outputs → Gerber Files但点进去之后的参数才是决定成败的地方。我按标签页顺序拆开讲。3.1 General标签单位与格式的选择逻辑打开Gerber Setup后第一个标签是General。这里有两个关键选项Units单位和Format格式。单位选Inches还是Millimeters我的建议是跟工厂确认。嘉立创的系统中Gerber文件用英制Inches和公制Millimeters都能识别但如果你同时提交坐标文件坐标文件的单位要和Gerber保持一致否则贴片机会按错误的比例移动。我个人的习惯是统一用Millimeters因为现在大部分元件封装数据都是公制减少换算误差。Format选项里2:4和2:5是常见选择。2:4表示整数部分2位、小数部分4位精度是0.0001英寸2:5精度更高。对于常规PCB2:4足够如果是高密度板线宽线距小于4mil建议用2:5。但要注意精度选高了文件体积会变大不过现在这点体积无所谓。还有一个选项是Embedded Apertures嵌入光圈RS-274X格式默认勾选保持默认即可。这个选项决定了光圈信息是写在文件内部还是外部嵌入式的兼容性更好。3.2 Layers标签哪些层要输出哪些不要Layers标签是新手最容易出错的地方。AD会列出所有层你需要勾选实际要输出的层。常规双层板的输出清单如下层名输出文件后缀作用Top Layer.GTL顶层铜箔走线Bottom Layer.GBL底层铜箔走线Top Solder Mask.GTS顶层阻焊开窗Bottom Solder Mask.GBS底层阻焊开窗Top Overlay.GTO顶层丝印字符Bottom Overlay.GBO底层丝印字符Keep-Out Layer.GKO禁止布线区/板框Drill Drawing.GD1钻孔图可选Mechanical 1.GM1机械层/板框这里有几个坑第一板框到底放哪层很多人把板框画在Keep-Out Layer也有人画在Mechanical 1。嘉立创的规范是板框优先识别Keep-Out Layer如果Keep-Out没有会去找Mechanical 1。我的建议是两层都画一份完全重合的板框这样无论工厂按哪层识别都不会错。但注意如果两层板框不重合工厂会以其中一层为准可能导致尺寸偏差。第二阻焊层是负片逻辑。Gerber里的阻焊层描述的是哪里不开阻焊也就是开窗区域。AD会自动处理这个逻辑你不需要手动反相。但如果你在阻焊层上画了额外的图形要确认这些图形确实是你要开窗的位置。第三丝印层不要包含元件焊盘。AD导出时有个选项叫Mirror镜像底层丝印需要镜像输出否则字符是反的。这个在Layers标签的底层丝印那一行有个Mirror勾选框记得勾上。3.3 Drill Drawing与钻孔文件别漏了钻孔Gerber Setup里还有一个Drill Drawing标签但这里输出的只是钻孔的图形表示真正给钻孔机用的是NC Drill File入口在File → Fabrication Outputs → NC Drill Files。NC Drill的配置要点单位同样要和Gerber一致格式选2:4或2:5Suppress Leading Zeros和Suppress Trailing Zeros要跟工厂确认。嘉立创的系统通常能自动识别但如果你不确定选Suppress Leading Zeros是较通用的做法。钻孔文件的后缀通常是.TXT或.DRL。输出后建议用文本编辑器打开看一眼里面应该是一行行坐标和孔径代码。如果打开是乱码说明格式选错了。3.4 文件命名与打包让CAM工程师一眼看懂导出完成后AD会在你指定的输出文件夹里生成一堆文件。这时候不要直接压缩发走先做两件事一是检查文件完整性。对照上面的表格确认每一层都有对应的文件没有遗漏。特别是阻焊层和丝印层新手经常忘了勾。二是重命名。AD默认的文件名可能是TopLayer.GTL这种但工厂更习惯看到带项目名的命名比如MyBoard_Top.GTL。如果多层板内层要标明Inner1、Inner2。命名清晰能大幅减少工厂的确认邮件。打包时把Gerber文件、NC Drill文件、坐标文件、BOM表放在一个文件夹里压缩成ZIP。不要用RAR有些工厂的系统解压RAR会出问题。ZIP是通用性最好的。4. 坐标文件导出贴片机的地图怎么画坐标文件Pick and Place是给贴片机用的它告诉机器每个元件的位置和角度。AD导出坐标文件的入口在File → Assembly Outputs → Generates Pick and Place Files。4.1 坐标格式CSV还是TXTAD支持输出CSV和TXT两种格式。CSV通用性更好Excel能直接打开检查TXT更轻量。我一般输出CSV方便自己核对。输出时有两个选项Units单位和Format格式。单位同样建议和Gerber一致用Millimeters。Format里选CSV或Text然后勾选你要输出的面Top、Bottom或Both。4.2 坐标文件里到底有什么打开CSV后你会看到类似这样的列Designator, Layer, Mid X, Mid Y, Rotation, Comment, Footprint R1, Top, 25.4, 30.5, 0, 10K, 0603 C1, Top, 30.2, 30.5, 90, 100nF, 0603 U1, Top, 40.0, 35.0, 0, STM32, LQFP48关键列是Mid X / Mid Y元件中心坐标和Rotation旋转角度。贴片机就是按这两列来定位的。这里有个大坑Rotation角度的基准。AD里元件的旋转角度是相对于你放置时的初始方向但不同工厂的贴片机对0度的定义可能不同。比如有的机器认为元件的Pin1在左上角是0度有的认为是右下角。这个差异会导致元件贴反。解决办法是导出坐标文件后自己先核对几个关键元件。比如IC的Pin1位置、二极管的正负极方向对照你的PCB布局图看一遍。如果发现角度不对可以在AD里调整元件的旋转属性或者直接告诉工厂以丝印方向为准。4.3 拼版时的坐标处理如果你做了拼版Panelization坐标文件要特别注意。AD的拼版功能Embedded Board Array会把多个板子合成一个但坐标文件默认只输出单个板子的元件坐标。如果你直接发拼版文件给工厂贴片机不知道每个小板的位置。正确做法有两种一是让工厂自己按拼版间距计算坐标需要你提供拼版参数二是你在AD里用Multi-Board方式拼版然后导出整体坐标。我一般选第一种因为工厂的CAM软件处理拼版坐标更专业我只需要把拼版间距和排列方式写清楚。注意拼版时如果加了工艺边Breakaway Tab工艺边上的定位孔和Mark点也要在Gerber里体现坐标文件里不需要包含这些但要在说明里写清楚。5. 那些让工厂反复找你的坑我踩过的五个真实案例前面讲的是标准流程但实际操作中真正让人头疼的是那些看起来没问题工厂却说不行的情况。我挑五个印象最深的坑把排查过程还原出来。5.1 坑一阻焊层多画了一条线导致焊盘被盖住有一次我导出Gerber后工厂反馈说你的U1焊盘全部被阻焊盖住了没法焊接。我打开AD看阻焊层上确实没有多余图形。后来发现问题出在我在Top Solder Mask层上画了一条走线——当时是为了做某个测试点随手画在了阻焊层结果这条线覆盖了U1的焊盘区域。排查方法在AD里单独打开Top Solder Mask层用Layer Display只显示这一层然后放大看每个焊盘位置。阻焊层的逻辑是有图形的地方不开窗所以任何多余的图形都会导致该区域被阻焊覆盖。修复删掉阻焊层上的多余图形重新导出。如果确实需要开窗应该用Place → Fill或Place → Region在阻焊层上画一个精确覆盖焊盘的形状。5.2 坑二钻孔文件单位不一致孔径全错这个坑更隐蔽。我导出Gerber时用了Millimeters但导出NC Drill时忘了改默认还是Inches。结果工厂按Gerber的公制读按钻孔的英制读所有孔径都差了25.4倍。0.3mm的孔变成了7.62mm板子直接报废。排查方法用文本编辑器打开NC Drill文件看里面的坐标数值。如果数值很大比如几百说明是英制如果数值在几十到几百之间可能是公制。更可靠的方法是在AD的NC Drill设置里确认单位并且和Gerber的单位对照。修复重新导出NC Drill单位选Millimeters格式和Gerber保持一致。5.3 坑三坐标文件里元件角度和实际不符前面提过Rotation的问题我具体说一次踩坑经历。我画了一个SOT-23封装的MOS管AD里放置时旋转了180度。导出坐标文件后Rotation显示180。但工厂贴片时机器按0度贴结果MOS管贴反了源极和漏极对调上电就烧。排查方法在AD里打开PCB用3D视图或者Assembly View看元件的实际方向然后对照坐标文件里的Rotation值。如果发现某个元件的Rotation和你在3D视图里看到的不一致说明AD的旋转基准和你的直觉有偏差。修复在AD里选中该元件按空格键旋转到正确方向重新导出坐标。或者在给工厂的说明里附上一张元件方向示意图标注每个IC的Pin1位置。5.4 坑四板框不闭合工厂无法识别尺寸板框必须是闭合的连续线条。我有一次用Place → Line画板框画到最后一段时手抖起点和终点差了0.1mm没接上。AD里看不出来但导出Gerber后工厂的CAM软件识别板框时失败提示轮廓不闭合。排查方法在AD里用Reports → Board Information查看板子尺寸如果尺寸显示为0或者异常值说明板框有问题。更直接的方法是在Keep-Out Layer上选中所有线条看属性里的Length总和是否等于你预期的周长。修复用Place → Line重新画板框确保起点和终点重合。或者用Design → Board Shape → Define from selected objects来自动生成板框。5.5 坑五丝印字符太小工厂印不出来嘉立创的丝印工艺能力是最小线宽0.15mm最小字符高度0.8mm。我有一次把元件位号设成了0.6mm高导出后工厂说丝印太细印出来会糊。虽然不影响电气性能但调试时看不清位号很麻烦。排查方法在AD里用Find Similar Objects选中所有丝印文本查看Height属性。如果小于0.8mm批量改大。修复全选丝印文本在属性面板里把Height改成1.0mmStroke Width改成0.15mm。重新导出Gerber。6. 交付清单与工厂沟通的实用话术文件导出完打包发走之前我建议做一份交付清单随文件一起发给工厂。这份清单不需要多复杂但能省掉大量来回确认的时间。6.1 一份标准交付清单包含什么项目内容备注板子尺寸例如 50mm x 40mm和Gerber里的板框一致层数双层/四层四层要注明叠层顺序板厚1.6mm常规默认铜厚1oz常规默认阻焊颜色绿色嘉立创免费的是绿色丝印颜色白色默认表面处理喷锡/沉金沉金加钱但焊接性好最小线宽/间距6mil/6mil和你的设计一致钻孔文件单位Millimeters和Gerber一致坐标文件单位Millimeters和Gerber一致拼版方式无/2x2如果有拼版要说明特殊要求阻抗控制/盲埋孔常规板不需要这份清单可以直接写在邮件正文里或者做成一个TXT文件放在压缩包里。6.2 和工厂沟通的几个实用话术关于文件格式附件是GerberRS-274X、NC Drill和坐标文件单位都是Millimeters请查收。——一句话把关键信息说清楚。关于坐标角度坐标文件里的Rotation是按AD默认基准输出的如果贵司贴片机基准不同请以丝印方向为准。——提前把可能的偏差说在前面。关于拼版如果需要拼版请按2x2排列工艺边5mmMark点放在工艺边上。——给出明确参数不要让工厂猜。关于阻抗J1到J2的差分线需要100欧姆阻抗线宽和间距在Gerber里有标注请按此控制。——阻抗板一定要提前说否则工厂按常规做阻抗不对。6.3 收到工厂反馈后的处理流程如果工厂反馈问题不要急着改文件重发。先问清楚是哪一层、哪个位置、什么问题。让对方截个图或者给个坐标你对照AD里的设计看。很多时候工厂说的问题其实是他们的CAM软件设置问题不一定是你的文件错了。比如工厂说你的钻孔和铜皮短路你先看DRC报告里有没有短路错误。如果没有可能是工厂的CAM软件在解析Gerber时把钻孔层和铜箔层叠加错了。这时候你可以让对方检查层对应关系或者你重新导出一次确认文件没问题。7. 导出之后的验证用免费工具自查一遍文件发走之前我强烈建议用免费工具自己先看一遍。AD本身有Gerber查看器File → Open选Gerber文件但功能比较基础。我更推荐用KiCad的Gerber Viewer或者在线Gerber查看器比如PCBWay、JLCPCB的在线预览。7.1 用Gerber查看器检查什么打开Gerber文件后重点看三样一是层对齐。把铜箔层、阻焊层、丝印层叠加显示看焊盘位置是否对齐。如果阻焊开窗偏了说明导出时层设置有问题。二是钻孔位置。单独显示钻孔层看每个孔是否在焊盘中心。如果孔偏了可能是原点设置不对。三是板框尺寸。用测量工具量一下板框的长宽和你设计的值对比。如果差了说明板框不闭合或者有多余线条。7.2 坐标文件的验证方法坐标文件用Excel打开做两件事一是排序检查。按Designator排序看有没有重复的位号。如果有说明BOM和坐标文件不一致。二是角度分布检查。看Rotation列的值如果大部分是0、90、180、270说明角度正常如果出现奇怪的数值比如45.3可能是元件放置时没对齐栅格。提示嘉立创的在线下单系统支持直接上传Gerber压缩包系统会自动解析并显示板子预览。上传后先别下单看预览图和你设计的是否一致。如果预览图里缺层或者尺寸不对说明文件有问题。8. 几个提高效率的AD快捷键和脚本技巧最后分享几个我常用的效率技巧能让你在导出和检查时快不少。8.1 常用快捷键TD打开DRC设置TG打开Gerber SetupFS打开Find Similar Objects批量选中同类元件ShiftC清除当前过滤L打开Layer Display快速切换层显示3切换到3D视图检查元件方向8.2 用OutJob批量输出AD的OutJob功能可以把Gerber、NC Drill、坐标文件、BOM表打包成一个输出任务一键生成所有文件。配置一次以后每次导出只需要点一下。配置路径File → New → Output Job File然后在里面添加Gerber、NC Drill、Pick and Place等输出项指定输出文件夹和文件名规则。配置好后点Generate就能一次性生成所有文件。这个功能特别适合需要反复打样的项目省去了每次手动勾选层的麻烦。8.3 脚本自动化检查如果你会一点Delphi Script或VBScript可以写一个简单的脚本自动检查丝印高度、焊盘间距、板框闭合等。AD支持脚本扩展网上也有现成的开源脚本比如GitHub上搜Altium script DRC。不过对于新手我建议先把手动流程跑熟再考虑脚本。毕竟脚本写错了可能比手动检查还慢。9. 关于嘉立创下单系统的几个实操细节既然标题里提到了嘉立创我补充几个和它下单系统相关的细节。9.1 上传Gerber后的自动解析嘉立创的下单页面支持上传Gerber压缩包系统会自动解析层数、尺寸、孔径。上传后你会看到一个预览图这时候要仔细核对板子尺寸是否和你设计的一致层数是否正确双层/四层预览图里有没有缺层比如阻焊层没显示如果预览图不对先检查压缩包里的文件是否完整再检查文件命名是否规范。9.2 坐标文件和BOM的上传嘉立创的SMT贴片服务需要你上传坐标文件和BOM表。坐标文件用CSV格式BOM表用Excel格式。上传后系统会自动匹配元件位号如果匹配不上会提示你手动调整。这里有个技巧BOM表里的位号要和坐标文件里的Designator完全一致。如果有空格、大小写差异系统可能匹配失败。我一般会在Excel里用TRIM函数清理一下位号列。9.3 阻抗计算工具的使用嘉立创有一个在线的阻抗计算工具输入你的叠层参数和线宽间距它会算出对应的阻抗值。如果你做的是阻抗板建议先用这个工具算一遍再和你的设计对照。如果算出来偏差大调整线宽或间距重新画。这个工具在嘉立创的官网可以找到搜嘉立创阻抗计算就行。不过要注意工具算的是理论值实际生产还会有偏差所以阻抗板最好留一定的调试余量。10. 我个人的经验总结导出Gerber和坐标文件这件事说难不难但细节特别多。我自己的习惯是每次导出前跑一遍DRC导出后用Gerber查看器看一遍打包前对照交付清单检查一遍。这三遍下来基本不会出大问题。另外和工厂的沟通很重要。不要觉得文件发过去就行了主动附上一份说明把单位、层数、特殊要求写清楚能省掉很多来回。我见过太多人因为懒得写说明结果工厂反复确认耽误好几天。最后说一个心态问题第一次导出Gerber出点小问题很正常。我第一块板子打样阻焊层忘了输出工厂做出来全是裸铜。后来每次导出我都把层清单打印出来贴在显示器边上勾一个划一个。现在虽然不用这么笨的办法了但那种逐项确认的习惯一直保留着。如果你按这篇的流程走一遍应该能避开大部分常见的坑。剩下的就是多练几次把流程变成肌肉记忆。等你能在十分钟内干净利落地导出一套完整的生产文件这块板子离做出来就不远了。