AD20生成Gerber文件完整流程:参数设置、OutJob与常见错误排查 AD20新手必看Altium Designer生成Gerber文件的完整流程附常见错误排查做硬件设计这几年我见过太多“设计一时爽打样火葬场”的场面。原理图明明没问题PCB也检查了好几遍结果板厂一封邮件甩过来说“Gerber文件打不开”或者“少层了”那一刻的心情谁遇到谁知道。其实问题的根源大多不在板厂而在我们交付文件的方式——直接把工程文件丢给工厂或者Gerber导出时参数设置稀里糊涂。这篇博文我就以Altium Designer 20以下简称AD20为例把从PCB设计完成到生成Gerber的完整流程、每个参数背后的逻辑以及我踩过的坑和排查方法一次性给你讲透。不管你是刚接触AD的学生还是准备第一次把板子送出去打样的硬件工程师照着这套流程走基本能避开90%的交付问题。1. 交付为什么只用Gerber而不是发工程文件很多新手会问我把整个工程文件夹压缩发给板厂不就行了为什么非得导Gerber这里面的门道其实不少。Gerber文件是PCB行业通用的制造数据格式它描述的是每一层“长什么样”相当于把PCB的每一层拍成一张精确定义的“图纸”。而AD工程文件.PcbDoc是设计源文件里面除了板子图形还包含了元器件库引用路径、规则设置、网络编号等一系列和制造无关、甚至可能干扰制造的信息。板厂拿到你的源文件首先得装对应版本的AD才能打开版本不兼容就直接傻眼。就算打开成功如果库文件路径缺失、规则设置混乱板厂还要花时间“猜”你的设计意图甚至可能因为理解偏差把板子做错。而Gerber文件是标准化的“死数据”每一层都固化了工厂拿到就是照图加工双方都省心。我个人的习惯是只要不是和板厂有特殊协议或需要返修调试一律交付Gerber同时附上钻孔文件和装配图PDF。如果确实需要板厂帮忙调阻抗、补泪滴这类操作再协商是否提供源文件但默认情况下Gerber就是最稳妥的交付形态。2. 导出前的准备工作比导出本身更重要2.1 先跑一遍DRC把“定时炸弹”全部拆掉别急着点导出先做设计规则检查。我见过太多人跳过DRC直接出Gerber结果板子做回来电流不够、间距短路甚至连网络都没连上。AD20的DRC入口在菜单栏Design → Rules Check或者直接用快捷键TDTools → Design Rule Check。运行前建议把“Report”区域的相关选项全部勾上尤其是“Short-Circuit”短路、“Un-Routed Net”未布线网络、“Width”线宽这几项这是最基础的底线检查。跑完DRC之后不要只看弹出来的绿色对勾就以为万事大吉。重点关注Messages面板里的Warning和Error信息逐条双击定位到PCB上的具体位置。很多Warning其实不影响制造比如丝印压焊盘、间距小于规则但大于板厂能力等这类可以手动确认后忽略但Error级别的尤其是短路和未布线网络必须处理干净。这里分享一个我自己的习惯原则上所有Error必须清零Warning逐条审查后再决定是否忽略。这个习惯帮我挡下了至少三次本该返工的板子。2.2 位号整理与镜像问题丝印出丑的重灾区位号Designator就是电阻、电容这些元器件旁边的那串文字标号比如R1、C5、U2。如果你直接把PCB默认的位号状态交给板厂那八成要出问题。常见问题有两个一是位号大小不一、位置东倒西歪打断丝印线二是位号方向不统一装配工人读起来费劲。更隐蔽的是位号镜像问题——在调整丝印时如果操作不当把位号翻转了板子上印出来的字就是反的这种错误在PCB实物上非常显眼一眼山寨。在AD20里整理位号可以这样操作选中所有位号用CtrlA选中全板然后在过滤器里只保留Designator或者用Edit → Select → All Text然后在Properties面板里统一调整字高、字宽、线宽和字体。我一般习惯将字高设为40mil左右、字宽按4:1比例缩线宽5~6mil这样既不占太多空间板厂印出来也清晰。位置调整可以用AD的“位号自动排列”功能选中元器件后右键选择Align Designators或者用APArrange Position of Component Designators快捷键让位号自动靠齐元件中心或指定方向。自动排列后仍需手动微调重点是避开焊盘和过孔保证每个位号都能被清晰识别。镜像问题的核心是丝印文字的方向永远要从顶层往底层看顶层和底层文字方向要求相反一般设计时保持顶层文字从左到右底层文字从右到左最终在实物上文字方向就统一了。这个细节建议在导出前用3D视图检查一遍翻转视图看看底层丝印的方向是否正确。3. AD20生成Gerber的完整操作流程3.1 Gerber Files设置逐项讲解进入导出界面最常用的路径是File → Fabrication Outputs → Gerber Files快捷键是FFG菜单路径 File → Fabrication Outputs → Gerber Files。我建议你用快捷键熟悉之后效率高很多。弹出来的“Gerber Setup”对话框有四个选项卡每一个都很关键。先看General选项卡。单位Units选择“Inches”格式Format选择“2:5”。这里解释一下2:5表示整数位2位、小数位5位精度为0.01mil这是绝大多数板厂的默认要求精度更高可以避免坐标舍入导致的误差。然后勾选RS-274X格式这是当前全球通用的标准Gerber格式兼容性最好。下面那个“Floating Origin”建议勾上它会把坐标原点设置为板子左下角方便板厂定位。接着是Layers选项卡这一步最容易出错。首先点击左上角的“Plot Layers”下拉框选择“Used On”可以自动勾选当前设计用到的所有层但这并不完全可靠。最稳妥的做法是手动逐项确认。制造需要的核心层包括Top Layer顶层走线层.GTL和Bottom Layer底层走线层.GBLTop Overlay顶层丝印.GTO和Bottom Overlay底层丝印.GBOTop Solder顶层阻焊开窗.GTS和Bottom Solder底层阻焊开窗.GBSKeep-Out Layer板框限制层.GKO这个层对板厂定外形非常重要如果是双面板及以上还需勾选对应的Mid-Layer和Internal Plane内电层如果需要贴片钢网还要勾选Top Paste顶层锡膏.GTP和Bottom Paste底层锡膏.GBP注意不要漏掉机械层里的板框信息。如果你的板框画在Mechanical 1层需要在“Mechanical Layers to Add to Plot”区域一并勾上。这个细节经常坑人板厂默认会从Gerber里的板框层来识别外形如果漏了板框层轻则板厂打电话问外形尺寸重则板子做出来缺一块。Drill Drawing选项卡用于生成钻孔图新手容易在这里犯迷糊。如果接下来你单独导出NC Drill文件钻孔数据这里的钻孔符号图Drill Drawing可以保留默认或只勾选“Drill Drawing Top”和“Drill Drawing Bottom”。如果不想出钻孔符号图甚至可以都不勾。但建议至少保留一层板厂做审核比对时会用到。Apertures选项卡保持默认“Embedded AperturesRS-274X”即可这个就是让AD自动把光圈数据嵌入到Gerber文件里省去手工管理光圈表的麻烦。Advanced选项卡里面Floating Origin保持和General一致即可。Film size胶片尺寸保持默认Alternate CAD Symbol 不勾选。设置完成后点击“OK”AD会生成一个CAM文件并在编辑器里打开这就是Gerber的预览。我在实际工作中会用这个预览快速扫一眼每一层是否有明显异常比如缺失走线、丝印飞出板外、铜皮断裂等。3.2 钻孔文件单独导出一个都不能少生成Gerber只是走了一半还差钻孔文件。钻孔文件NC Drill定义了板子上所有通孔、盲埋孔的位置和大小没有它板厂就不知道在哪里打孔。路径是File → Fabrication Outputs → NC Drill Files快捷键FFD。弹出的对话框里单位直接选“Inches”格式选“2:5”和Gerber保持一致。然后选“钻孔文件内容——由于我们前面生成过Drill Drawing这里只需要勾选“Combined”模式这样所有钻孔数据会合并到一个文件里板厂处理起来比较方便。点击OK后AD会弹出钻孔文件的预览窗口同时生成一个.TXT文件这就是板厂要的钻孔数据。有个细节值得强调Gerber文件和钻孔文件的精度和单位必须一致。如果Gerber用英制2:5钻孔却用公制或者精度不一致板厂在做数据对齐时就会产生坐标偏移导致孔位和焊盘对不上。这种情况在制作高密度板时尤其致命。为了保险我出文件前会专门检查这一点。3.3 IPC网表也顺手出一份飞针测试要用很多人不知道除了Gerber和钻孔文件还应该出一份IPC-D-356网表。这份文件是给板厂做飞针测试用的里面记录了板上每个网络的连通关系、焊盘坐标和孔信息。板厂拿到它之后用飞针测试仪比对实际PCB走线和网表是否一致就能快速检测出开路、短路缺陷。在AD20里路径是File → Fabrication Outputs → IPC-D-356。这个操作很快几乎不需要额外设置点一下生成即可。生成后记得把.IPC文件和其他Gerber文件一并打包。我个人的交付习惯是Gerber文件夹里放一份GTL/GBL/GTS/GBS/GTO等一堆层文件、一个TXT钻孔文件、一个IPC网表再加上一个PDF格式的装配图纸包含位号、极性标注最后压缩成一个带版本号的ZIP包。这样板厂拿到手所有信息一目了然基本不会有二次确认的麻烦。3.4 拿到Gerber之后自己先审一遍文件生成不等于万事大吉我强烈建议你在发送之前用AD自带的CAM编辑器或者第三方工具把Gerber再打开看一遍。AD里的CAM文件预览窗口可以直接切换层、测量距离、检查板框闭合情况。我习惯重点检查以下几项板框层是否存在且闭合Keep-Out或Mechanical 1每一层是否和PCB设计预期一致有没有漏层或少层丝印方向是否正确是否有位号超出板边钻孔文件是否有数据数量和设计是否匹配用测量工具抽查几个关键间距比如走线到板边的距离这一步看似麻烦但是花五分钟能避免一次“打样失败来回折腾一周”的惨剧。不要嫌多此一举文件交付前的自检是每个硬件工程师的基本职业素养。4. 用OutJob批量输出一次配置永久复用4.1 为什么AD16.1之后的版本我都在推荐OutJob如果你只是偶尔出一两次板手动导出Gerber也够用。但如果你和我一样需要在项目迭代中反复出文件或者同一个设计要同时输出Gerber、钻孔、PDF图纸、BOM表等多份文档那**OutJobOutput Job**绝对能让你效率翻倍。OutJob本质上是一个“输出任务配置文件”它把不同类型的输出Gerber、NC Drill、PDF、BOM等集中管理并且可以指定输出到同一个目录、统一命名规则。配置一次之后以后每次更新完PCB只需打开OutJob文件点一下“Generate Content”所有文件按设定格式一次性生成完毕。相比手动逐项导出省去了重复配置的麻烦还杜绝了漏导出某一个文件的可能。4.2 新建和配置OutJob的完整步骤在AD20里新建OutJob的路径是File → New → Output Job。创建后会弹出一个Output Job编辑窗口左侧是可用的输出类型右侧是当前任务列表。你可以右键点击右侧空白区域选择“Add New Output”来添加需要的输出。以Gerber输出为例右键选择Add New Output → Fabrication → Gerber Files然后双击新添加的条目打开“Gerber Setup”对话框按照前面讲到的参数配置好。接下来用同样的方式添加NC Drill Files、IPC-D-356和PDF输出用于装配图。每个输出条目上都有“设置”按钮第一次配置好之后这些设置会自动保存到OutJob文件里。在右侧任务列表的顶部有一个“Output Path”输出路径选项建议用一个规范化的文件夹路径比如.\ProjectName\Production。然后设置文件名格式AD支持自动添加日期和版本号比如%SourceFile%_%ProjectName%这种变量。这样每次运行OutJob时文件名自动带上工程名和版本号不会覆盖旧文件方便追溯。4.3 一键输出与版本迭代的高效配合配置完成后只要点一下窗口底部的“Generate Content”按钮或者选中多个输出后右键选择“Run Selected”AD就会按照你设定的路径把所有的Gerber、钻孔、PDF自动生成并归档。如果某一块设置需要修改直接在OutJob里调整不需要重新走一遍菜单。我实测下来用OutJob管理输出之后每次发板前的时间从原来的二十分钟压缩到三分钟。更重要的是它有“批次输出”的能力。比如某个项目同时要更新多块子板的设计我在同一个OutJob里配置多个PcbDoc对应的输出任务一键全量生成这个体验是手动导出完全给不了的。而且OutJob还支持“Report Outputs”可以把BOM、贴片坐标等一并导出交付给贴片厂时尤其方便。5. 常见错误与排查实录5.1 unknown pin报错原理图和PCB库的“接点”出问题了“Unknown Pin”是AD里一个高频报错常见场景有两个一是在原理图中给元件添加引脚时提示二是在PCB导入变化时提示。新手遇到这个一头雾水其实原理很简单——AD为每个引脚分配了一个唯一的标识符DesignatorPin Number当原理图库和PCB库的引脚编号不一致、或者引脚在封装里没有对应焊盘时就会出现Unknown Pin。排查思路分三步第一步检查原理图库中的引脚编号Pin Number与PCB封装焊盘编号Designator是否一一对应。比如一个原理图里的三极管引脚叫1、2、3但PCB封装里焊盘叫B、C、E就会出现Unknown Pin。第二步检查PCB封装中是否存在多余的焊盘或者焊盘编号有重复这两种情况也会导致匹配失败。第三步用Project → Compile编译工程打开Messages面板定位到具体的U1、R5这类元器件上“双击”报错信息可跳转到对应位置然后打开对应的原理图库和PCB封装对照调整。我自己还遇到过一个特殊情况从外部导入的PCB封装里焊盘编号大小写不一致比如“pad1”和“Pad1”系统严格区分大小写导致连接失败。这种情况在别人的库文件里很常见排查时可以留意一下。5.2 位号镜像和丝印方向反了怎么检查和修复丝印做反了虽然不影响电气性能但在装配和可维护性上是个大问题。如果在Gerber预览里发现底层丝印的字是反的基本就是镜像错误。修复方法很简单在PCB中选中底层丝印的位号文本打开Properties面板往里找到“Mirror”选项取消勾选即可。但我更想说的是预防方法。平时画板时底层的丝印文字习惯上应该从Bottom视角看是正常的“从左到右”。AD默认情况下当你切换到底层视图时视图本身就做了翻转所以你看到“正常”的文字在实物上反而是反的。解决办法是在设计时用3D视图或者视图翻转功能从顶面向下和从底向上分别检查一遍。如果你使用的是机械层丝印而非顶层/底层丝印也要确认对应的层设置和镜像属性。为了省事很多人会干脆把底层位号直接删掉只在顶层放一次位号这种做法虽然不标准但在一些简单板子上反而省心前提是板厂接受。5.3 导出的Gerber缺少某些层板厂说文件不全这个问题多半出在Gerber Setup的Layers选项卡里。很多人习惯点“Used On”就以为全选完了但“Used On”只勾选当前设计中有实际内容的层。如果你的板框画在一个未添加任何铜箔的机械层上或者某个内电层没有网络分配它就可能不会被自动勾选。解决办法在Layers选项卡中逐个核对所有机械层和特殊层手动勾选需要输出的层。还有一个常见情况是板框画在了“Keep-Out Layer”但勾选时漏掉了Keep-Out或者画在了机械层却忘记勾选那个机械层。我通常的做法是板框同时画在Keep-Out和Mechanical 1两层并在Gerber里把这两层都输出这样板厂不管是按传统的Keep-Out识别还是按Mechanical 1识别都能拿到正确的外形数据。另一个让文件“看起来缺层”的原因是预览模式设置问题。AD的CAM编辑器默认可能只显示部分层需要你在右侧的层列表里手动勾选需要显示的层。不要因为预览里看不到就认定文件缺失先用层列表对照一下再下结论。5.4 AD20运行时间越长内存占用越大怎么缓解有网友反馈“Altium designer 原理图设计过程中,电脑内存使用量越来越多,时间长了内存不足”这个现象我在AD20上也遇到过尤其是工程比较大、元器件库加载多的时候。AD20本身是32位程序单进程内存上限大约3.8GB一旦触及红线轻则操作卡顿重则直接崩溃。缓解办法有几个。第一个是定期重启软件这是最粗暴也最有效的方法。画图前开一个大型工程两三个小时后保存关闭重新打开工程内存占用能从2GB降到几百MB。第二个是关闭不用的面板和视图在原理图上把“Inspector”、“Properties”这类占内存的面板收起来用的时候再打开。第三尽量避免在原理图中频繁预览3D模型因为每一块3D渲染都非常吃内存。第四如果工程里有大量高精度图片或图表可以压缩分辨率后重新插入。如果内存问题频繁导致崩溃建议检查是否使用了旧版本的库文件较大的库文件特别是带3D封装的也会增加内存压力。还有一个亲测有效的做法把工程里的临时文件清理掉AD在某些情况下会生成较大的缓存文件在“Temp”目录或者工程目录下删除以“~”开头的临时文件后再打开工程内存表现会好一些。5.5 用Gerber Viewer做最终把关把隐患扼杀在发送前导出Gerber之后强烈建议用独立的Gerber Viewer再检查一遍防止AD自带预览出现偏差。常用的工具有AD自带的CAMtastic也可以直接用AD打开已生成的CAM文件外部工具可以用Gerbv开源、GC-Prevue等。我个人习惯用AD打开生成的CAM文件做第一遍检查再用第三方的Gerbv做第二遍确认毕竟两个工具渲染的细节可能不同交叉验证更可靠。重点查看的内容前面已经在3.4提到了这里我再补充一点把顶层和底层的阻焊层调成半透明显示检查是否有铜箔被阻焊覆盖导致开窗缺失。很多时候焊盘上要上锡的位置被阻焊盖住了板子回来出现“上不了锡”的诡异问题元凶就在这里。用Gerber Viewer把阻焊层和走线层叠加对比一眼就能发现异常。总之在点击“发送给板厂”之前任何可疑之处都值得花时间查清楚这比板子做回来再返工省钱省力得太多。6. 写在最后的几条个人经验从刚接触AD时只会用默认设置导出到现在能用OutJob一键管理所有交付文件这个过程中我踩过不少坑也积累了一些小习惯分享给大家。第一把所有加工相关的配置Gerber、钻孔、PDF沉淀成OutJob模板每次新项目直接套用效率和准确率都高不少。第二规划好命名和归档规则我会在每次发板前创建一个以日期命名的文件夹例如“20250612_ProjectName_V1.0”里面放Gerber、NC Drill、IPC和PDF所有文件打成一个ZIP文件名中也包含版本号这样永远不会混淆。第三交货前一定让板厂知道价格、层数、板厚、表面处理这些关键信息这些虽然不在Gerber里但会直接影响打样结果。导出Gerber这件事说起来简单实际做起来细节多到让人头大但老话说得好细节决定成败。你在导出时遇到的每一个报错都是AD在帮你提前发现问题别嫌麻烦排查清楚再发出去远好过板子做回来再去改。上面这些内容基本覆盖了从AD20导出Gerber到最终交付的完整链路如果你在实操中还碰到别的异常报错或诡异现象欢迎在评论区把它具体描述出来尤其是报错原文和操作步骤我们一起对照排查。希望这篇长文能帮你在AD20上顺利走完“设计到制造”的最后一公里做出让自己满意的板子。