1. 为什么装配图这件事值得单独拿出来讲
画过板子的人都清楚,PCB设计文件本身是给工程师看的,不是给产线、采购、结构或者客户看的。你给工厂一个.PcbDoc文件,对方大概率会回你一句“打不开”或者“版本不兼容”。而装配图(也就是大家常说的位号图)解决的就是这个问题——它把板子上每个器件的位置、位号、极性方向、封装外形,用一张图或者一份PDF说清楚,让不装AD软件的人也能看懂板子上哪个位置该放哪个料。
我在实际项目里踩过不少坑。有一次小批量试产,工厂拿着我给的坐标文件直接上贴片机,结果因为没给位号图,产线大姐把两个方向相反的二极管全贴反了,整批板子返工。从那以后,不管多简单的板子,我都会在发Gerber和坐标文件的同时,附上一份清晰的装配图。这东西看起来不起眼,但它是设计和制造之间的一道保险。
这篇内容主要面向刚接触AD(Altium Designer)的硬件工程师、在校做课设的学生,以及需要和产线对接的Layout新手。我会把AD里导出装配图的几种主流方法全部拆开讲清楚,包括顶层底层怎么区分、位号怎么显示、3D视图怎么用、PDF怎么输出、批量导出怎么搞,以及那些官方文档里不会写的细节坑。看完你至少能掌握三套可落地的方案,根据项目阶段和交付对象灵活选用。
2. 先搞清楚装配图到底要包含什么信息
2.1 装配图和位号图的区别与联系
很多人把装配图和位号图混着叫,严格来说两者有重叠但不完全一样。位号图的核心是“位号+位置”,重点在于告诉别人R1在哪、C2在哪、U3在哪。装配图的范围更大一些,除了位号,还要体现器件的轮廓、极性标识、引脚1的方向、连接器开口朝向,甚至有时候要标注螺丝孔、安装柱的位置。
在实际交付中,产线最关心的是三件事:这个位置贴什么料(位号)、器件方向对不对(极性)、器件会不会装反(封装方向)。所以一份合格的装配图,至少要包含位号、器件外框、极性标记和板框参考。如果板子上有连接器或者按键,最好把开口方向也标出来,不然结构件装上去才发现方向错了,那就麻烦了。
2.2 不同角色对装配图的需求差异
同一个板子,不同人看的装配图侧重点不一样。产线贴片工人需要的是大尺寸、高对比度的位号图,最好一个区域一张图,位号清晰不重叠。采购和物料管理需要的是带料号的BOM对照表,位号图作为辅助确认。结构工程师关心的是连接器、按键、指示灯的位置和高度,他们更想看3D视图或者带尺寸标注的装配图。客户或者项目经理要的是能直接看懂的整体示意图,不需要太技术化。
这就意味着,你可能需要针对不同对象导出不同版本的装配图。我的习惯是:给产线的是分区域的2D位号图PDF,给结构的是3D截图或者STEP模型,给客户的是带板框和主要器件的简化版PDF。AD本身支持这些输出方式,关键是你要知道在哪里设置。
2.3 装配图在什么阶段导出最合适
导出装配图的时机也有讲究。太早了,器件还没布局完,导出来没意义。太晚了,板子已经发出去生产了,再导也来不及。我的经验是在Layout完成、DRC检查通过之后,发Gerber之前导出装配图。这个时候布局已经冻结,位号也不会再变,导出的图可以直接用于生产确认。
如果项目有多次改版,每次改版都要重新导出装配图,并且在文件名里标注版本号和日期。我见过有人用旧版装配图去核对新板子,结果因为两个器件位置换了,产线贴错料,整批报废。这种低级错误一旦发生,损失是实打实的。
3. AD中导出装配图的三种主流方法
3.1 方法一:智能PDF导出(最常用)
智能PDF是AD里最直接的装配图导出方式,适合大多数2D位号图的需求。操作路径是:File→Smart PDF,然后按照向导一步步走。这里有几个关键设置点,我逐个说。
第一步是选择导出范围。默认是Current Document,也就是当前打开的PCB文件。如果你只想导出某一层或者某个区域,可以在后面的步骤里筛选。第二步是选择要包含的层。装配图通常需要包含顶层/底层丝印层(Top Overlay/Bottom Overlay)、顶层/底层阻焊层(Top Solder/Bottom Solder)、机械层(Mechanical Layer)和板框层(Keep-Out Layer)。丝印层用来显示位号和器件轮廓,阻焊层用来区分焊盘,机械层用来显示板框和安装孔。
第三步是设置输出颜色和分辨率。这里有个坑:默认的彩色输出在黑白打印机上会糊成一团。如果你的装配图是要打印出来给产线看的,建议在Advanced设置里把颜色方案改成单色或者高对比度方案。分辨率建议至少300 DPI,不然小封装的位号会看不清。
第四步是选择要导出的对象。在Final步骤之前,有一个Export Options的界面,可以勾选Holes、Texts、Tracks等。装配图必须勾选Texts,否则位号不会显示。如果你想让器件轮廓更清晰,可以勾选Tracks和Arcs。
注意:智能PDF导出时,如果位号被丝印覆盖或者重叠,导出的PDF里也会重叠。建议在导出前先在PCB界面里调整位号位置,把重叠的位号挪开。AD有一个
Position Overlay Text的功能,可以自动排列位号,但效果一般,手动调整更靠谱。
3.2 方法二:打印输出到PDF(适合精细控制)
如果你觉得智能PDF的选项不够灵活,可以用File→Print→Print Preview的方式。这个方法的优势在于你可以完全控制每一层怎么显示、用什么颜色、缩放比例是多少。
具体操作是:先打开Print Preview,在Layers选项卡里选择要打印的层。装配图通常选择Top Overlay、Top Solder、Mechanical 1(板框)和Multi-Layer(焊盘)。然后在Options选项卡里设置缩放比例,建议选择Scale 1:1或者Fit to Page。如果板子比较大,1:1打印会分页,这时候可以用Print Settings里的Tile功能,把大板子分成几页打印,拼起来就是完整装配图。
颜色设置是这一步的关键。在Print Preview里右键选择Configuration,可以给每一层指定颜色。我的习惯是:丝印层用黑色,阻焊层用浅灰色,板框用红色,焊盘用深灰色。这样打印出来层次分明,产线工人一眼就能看清位号和焊盘位置。
提示:打印输出到PDF时,建议先导出一份测试页,确认位号清晰、极性标记可见。特别是二极管、电解电容、IC的引脚1标记,一定要在装配图上能看出来。如果丝印层没有这些标记,可以在AD里手动添加文本或者用
Design→Rules里的Silk to Solder Mask规则检查一下。
3.3 方法三:3D视图截图或导出(适合结构确认)
对于需要确认器件高度、连接器方向、整体装配效果的场景,3D视图是最直观的。AD的3D视图可以通过快捷键3切换,或者从View→3D Layout Mode进入。
在3D视图里,你可以旋转、缩放、平移,从任意角度观察板子。如果要导出图片,直接用File→Export→Image或者截图工具截取即可。如果结构工程师需要更精确的模型,可以用File→Export→STEP导出整个板子的3D模型,然后在结构软件里打开确认。
3D视图的一个隐藏技巧是:可以在View Configuration里打开3D Bodies的显示,这样每个器件的3D模型都会显示出来。如果某些器件没有3D模型,可以在Properties面板里手动设置高度和形状。对于连接器、按键、显示屏这些结构敏感器件,建议一定要设置准确的3D模型,不然结构确认就是走过场。
注意:3D视图导出图片时,分辨率可能不够高。如果需要高清图,可以在
Preferences→Display里把Anti-Aliasing调到最高,然后用File→Export→Image导出PNG或者JPEG。如果是要放到报告里,建议导出PNG格式,背景透明,方便排版。
4. 位号显示与调整的核心技巧
4.1 位号不显示或者显示不全怎么办
这是新手最常遇到的问题:打开PCB文件,发现丝印层上只有器件轮廓,没有位号。原因通常是位号被隐藏了,或者位号所在的层被关闭了。
先检查View Configuration面板(快捷键L),确认Top Overlay和Bottom Overlay层是打开状态。然后检查每个器件的Designator属性,看看是不是被设置成了Hide。在Properties面板里选中器件,找到Designator一栏,确认Visible是勾选的。如果是个别器件不显示,可能是位号被挪到了板框外面,或者被其他丝印覆盖了。
还有一种情况是位号字体太小,打印出来看不清。AD默认的位号字体高度是1.0mm,对于0402、0201这种小封装,1.0mm的字体可能比器件本身还大,导致位号重叠。我的做法是把小封装的位号字体调到0.6mm到0.8mm,同时把位号挪到器件旁边空白区域。如果实在放不下,可以用引线标注的方式,把位号放在板子边缘,用细线指向器件。
4.2 批量调整位号位置的方法
一块板子上几百个器件,一个个手动挪位号是不现实的。AD提供了几种批量调整的方式。
第一种是用Tools→Component Placement→Position Overlay Text。这个功能会自动把位号排列到器件附近,但算法比较粗暴,有时候会把位号放到焊盘上或者板框外。用完之后一定要手动检查一遍。
第二种是用Find Similar Objects功能。选中一个位号,右键选择Find Similar Objects,在对话框里把Designator的Visible设为Same,然后点击OK。这样所有位号都会被选中,你可以在Properties面板里统一修改字体、大小、对齐方式。这个方法适合统一调整字体风格,但位置还是得手动微调。
第三种是用脚本或者第三方工具。网上有一些AD的脚本可以自动排列位号,原理是根据器件的包围盒计算最佳位置。我用过几个,效果参差不齐,有的会把位号排到板子外面。如果项目时间紧,建议还是手动调整关键器件的位号,比如IC、连接器、极性器件,其他阻容的位号可以稍微随意一些。
4.3 位号重叠和遮挡的处理经验
位号重叠是装配图最大的敌人。特别是BGA周围的小电容,位号挤在一起根本看不清。我的处理原则是:优先保证极性器件和IC的位号清晰,阻容的位号可以缩小字体或者用引线引出。
具体操作上,我会先把所有位号隐藏,然后逐个打开关键器件的位号,调整到合适位置。对于实在放不下的区域,可以在板子边缘画一个表格,列出位号和对应的器件位置,用细线连接。这种方式在密集板子上很实用,产线工人可以对照表格找位置。
还有一个技巧是用不同颜色区分顶层和底层的位号。顶层位号用黑色,底层位号用蓝色,这样在彩色PDF里一眼就能区分。如果是黑白打印,可以用不同的字体或者加下划线来区分。
提示:AD 21之后的版本支持在
Properties面板里直接设置位号的Mirror属性。底层器件的位号默认是镜像的,这样从背面看是正的。如果导出装配图时发现底层位号是反的,检查一下Mirror设置。
5. 底层装配图的特殊处理
5.1 底层视图的镜像问题
底层装配图和顶层不一样,因为从背面看板子,所有的方向都是反的。AD在处理底层视图时,默认会把底层丝印镜像显示,这样从背面看位号是正的。但导出PDF或者打印时,这个镜像关系可能会乱。
我的做法是:在导出底层装配图之前,先在View Configuration里确认Bottom Overlay层的Mirror属性是打开的。然后在Print Preview里选择Bottom视图,AD会自动处理镜像。如果导出的PDF里位号是反的,检查一下打印设置里的Mirror选项。
对于底层有极性器件的板子,底层装配图一定要标注清楚方向。比如电解电容的正极、二极管的阴极,在底层视图里方向是和顶层相反的。我通常会在底层装配图上加一个文字说明:“本图为底层视图,器件方向与顶层相反,请以丝印标记为准。”
5.2 底层位号的显示设置
底层位号的显示和顶层类似,但有几个细节要注意。底层位号默认是镜像的,字体方向也是反的。如果底层位号在PDF里看起来是正常的,那说明镜像设置正确。如果看起来是反的,说明镜像没打开。
在AD里,底层位号的镜像设置是在Properties面板里的Designator→Mirror选项。批量修改的话,可以用Find Similar Objects选中所有底层器件,然后统一设置Mirror为True。
还有一个问题是底层位号的颜色。如果顶层和底层位号用同一种颜色,在装配图上很难区分。我的习惯是顶层位号用黑色,底层位号用深蓝色,这样在彩色PDF里一目了然。如果是黑白打印,可以在底层位号旁边加一个小三角或者圆点作为标记。
5.3 底层装配图的导出实操
导出底层装配图的步骤和顶层基本一致,只是在Smart PDF或者Print Preview里选择Bottom视图。这里有一个坑:Smart PDF默认导出的是顶层视图,如果你直接导出,底层器件不会显示。需要在Smart PDF的Export Options里勾选Bottom Layer,或者在Print Preview里手动切换到Bottom视图。
我通常会把顶层和底层装配图导出到同一个PDF文件里,第一页是顶层,第二页是底层。这样产线工人不用来回翻文件。在Smart PDF的Final步骤里,可以选择Export to a single PDF file,然后手动调整页面顺序。
注意:如果板子两面都有器件,底层装配图一定要导出。我见过有人只导了顶层,结果底层器件贴反了,整批返工。特别是双面贴片的板子,底层装配图是必须的。
6. 批量导出与自动化处理
6.1 多板拼版的装配图导出
拼版是生产中的常见需求,一块大板上拼了多个小板,每个小板都要有独立的装配图。如果手动一个个导出,效率太低。AD支持在拼版文件里导出整体装配图,也支持导出单个拼版的装配图。
我的做法是:在拼版文件里,用Place→Embedded Board Array把单个PCB嵌入到拼版文件中。然后导出装配图时,选择Embedded Board Array作为导出对象,AD会自动把每个拼版的位号都显示出来。如果拼版数量多,可以在Print Preview里设置Tile,把大板分成几页打印。
还有一种情况是客户要求每个拼版单独一张装配图。这时候可以在拼版文件里复制多个PCB文件,每个文件单独导出装配图,然后在PDF软件里合并。虽然麻烦一点,但交付更清晰。
6.2 用OutJob批量输出装配图
AD的OutJob功能可以批量输出多种制造文件,包括Gerber、钻孔、坐标文件和装配图。配置好一个OutJob之后,每次改版只需要点一下Run,所有文件自动生成,省时省力。
配置OutJob的步骤是:File→New→Output Job File,然后在Outputs里添加Document Output→PDF。在PDF设置里选择要输出的层和视图,可以同时添加顶层和底层装配图。然后在Containers里指定输出路径,在Publishing里选择输出格式。
OutJob的一个好处是可以设置变量,比如版本号、日期,自动生成带版本信息的文件名。这样每次输出的装配图都有版本记录,不会搞混。
提示:OutJob配置好之后,建议保存为模板,下次新项目直接复制模板,改一下输出路径就行。我见过有人每个项目都重新配置OutJob,浪费大量时间。
6.3 脚本自动化导出装配图
如果项目特别多,或者需要频繁导出装配图,可以考虑用AD的脚本功能。AD支持Delphi Script、VBScript和JavaScript,可以写脚本自动完成导出操作。
一个简单的脚本思路是:遍历当前PCB文件的所有器件,获取位号和位置,然后生成一个PDF或者图片。这个脚本可以定时运行,或者绑定到快捷键上。网上有一些开源的AD脚本可以参考,但质量参差不齐,建议自己根据需求修改。
我用过的一个脚本是自动把位号排列到器件旁边,然后导出PDF。脚本的核心逻辑是:获取器件的包围盒,计算位号的最佳位置,然后设置位号的坐标。这个脚本处理简单板子效果不错,复杂板子还是得手动调整。
7. 常见问题与排查技巧实录
7.1 装配图导出常见问题速查表
| 问题现象 | 可能原因 | 解决方法 |
|---|---|---|
| 位号不显示 | 位号被隐藏或层被关闭 | 检查View Configuration和器件Designator属性 |
| 位号重叠 | 字体太大或位置太挤 | 缩小字体,手动调整位置,或用引线标注 |
| 底层位号是反的 | 镜像设置未打开 | 在Properties里设置Mirror为True |
| PDF里焊盘看不清 | 阻焊层未包含或颜色太浅 | 在导出设置里勾选阻焊层,调整颜色对比度 |
| 3D视图器件缺失 | 器件没有3D模型 | 在Properties里手动设置高度和形状 |
| 拼版装配图位号重复 | 拼版文件里位号未重新编号 | 使用Embedded Board Array或手动重新编号 |
| 导出PDF文件太大 | 分辨率设置过高 | 降低DPI到300,或压缩图片 |
| 打印出来位号模糊 | 分辨率太低或字体太小 | 提高DPI,增大位号字体 |
7.2 我踩过的三个典型坑
第一个坑是位号字体太小。有一次做了一块密集板子,0402封装用了0.5mm的位号字体,结果打印出来完全看不清,产线大姐拿着放大镜找位号。后来我把字体调到0.8mm,虽然有些重叠,但至少能看清了。教训是:位号字体不要小于0.6mm,否则打印出来就是一团糊。
第二个坑是底层装配图没导出。有一次双面贴片的板子,我只导了顶层装配图,结果底层的一个MOS管贴反了,整批板子返工。从那以后,双面贴片的板子我一定导出顶层和底层两份装配图,并且在文件名里标注清楚。
第三个坑是拼版装配图位号混乱。有一次拼了8个小板,导出装配图时发现每个小板的位号都是一样的,产线工人分不清哪个位号对应哪个板。后来改用Embedded Board Array,每个拼版的位号自动区分,问题解决。
7.3 产线反馈的装配图改进建议
和产线打交道多了,你会发现他们有一些很实际的需求。比如:位号图最好用A3纸打印,A4太小看不清;极性器件的标记要用红色圈出来;连接器的开口方向要用箭头标出来;板子边缘要标注尺寸,方便核对板框。
这些需求在AD里都可以实现。极性标记可以用Place→Text加红色文字,连接器方向可以用Place→Line画箭头,板框尺寸可以用Place→Dimension标注。虽然多花几分钟,但产线反馈会好很多,返工率也会下降。
提示:建议在装配图PDF的第一页加一个说明页,写清楚板子版本、日期、层数、器件数量、极性器件列表。这样产线工人拿到图就能快速了解板子概况,减少沟通成本。
8. 装配图交付的版本管理与文件命名
8.1 文件命名规范
装配图的文件命名一定要规范,不然版本一多就乱了。我的命名格式是:项目名_板名_装配图_顶层/底层_版本号_日期.pdf。比如PowerBoard_Main_TopAssembly_V1.2_20240515.pdf。这样一看文件名就知道是哪个项目、哪块板、哪一层、什么版本、什么时候导出的。
如果是拼版,在文件名里加上拼版数量,比如PowerBoard_Main_TopAssembly_4up_V1.2_20240515.pdf。如果是给不同对象的版本,加上对象标识,比如_ForProduction、_ForStructure、_ForCustomer。
8.2 版本记录与变更说明
每次导出装配图,建议在PDF里加一个版本记录页,写清楚这一版和上一版的区别。比如:“V1.2相比V1.1,调整了R15和C22的位置,增加了J3连接器的方向标记。”这样产线工人拿到新图,能快速知道哪里变了,不用重新核对整张图。
版本记录页可以用AD的Place→Text功能在PCB上添加,也可以在PDF软件里后期添加。我习惯在PCB上直接加一个文本框,导出PDF时自动带上。这样版本信息永远和PCB文件同步,不会出现图不对版的情况。
8.3 交付文件的组织方式
一个完整的交付包通常包含:Gerber文件、钻孔文件、坐标文件、BOM、装配图、测试说明。我习惯把这些文件按文件夹分类,比如Gerber/、Assembly/、BOM/、Test/。装配图文件夹里放顶层和底层装配图,如果有拼版,再放拼版装配图。
交付包最好压缩成一个ZIP文件,文件名带上项目名和版本号。在ZIP文件里放一个README.txt,写清楚每个文件夹的内容和注意事项。这样工厂收到文件,不用问就知道怎么用。
9. 一些提高效率的快捷键和操作习惯
9.1 常用快捷键
在AD里导出装配图,有几个快捷键能省不少时间。L打开View Configuration,快速切换层显示。3切换3D视图,2切换2D视图。Ctrl+P打开打印预览,Ctrl+Shift+P打开智能PDF。F11打开Properties面板,快速修改位号属性。
还有一个技巧是用Shift+C清除当前过滤,Shift+F打开Find Similar Objects。这两个快捷键在批量调整位号时特别有用。
9.2 操作习惯建议
我的习惯是:Layout完成之后,先花10分钟调整位号位置,把重叠的位号挪开,把极性标记加上。然后导出装配图,检查一遍,确认没问题再发Gerber。这个流程看起来多了一步,但实际上省去了后期返工的时间。
另外,建议在PCB文件里保留一个Assembly层,专门用来放装配图相关的标注,比如极性标记、连接器方向、版本信息。这样导出装配图时,直接选择Assembly层就行,不用每次都重新画。
9.3 团队协作中的装配图规范
如果是团队协作,建议制定一个装配图规范,写清楚位号字体大小、颜色、极性标记方式、版本命名规则。这样每个人导出的装配图风格一致,产线工人不用每次适应新的格式。
规范可以写在团队Wiki里,或者做成一个AD模板文件。新项目直接套模板,省去重复设置的时间。我见过一些团队用统一的OutJob模板,所有项目共用一套输出配置,效率很高。
10. 从装配图延伸到制造文件的整体交付
装配图不是孤立存在的,它是制造文件包的一部分。一份完整的制造文件包应该包含:Gerber(各层)、钻孔文件、坐标文件、BOM、装配图、测试说明。这些文件之间要相互对应,比如装配图上的位号要和BOM一致,坐标文件里的位号要和装配图一致。
我通常会在导出所有文件之后,做一次交叉检查。打开装配图PDF,对照BOM核对位号;打开坐标文件,对照装配图核对器件位置。这个检查花不了几分钟,但能避免很多低级错误。
如果项目有特殊要求,比如阻抗控制、盲埋孔、特殊工艺,还要在交付包里加一份工艺说明。装配图上也可以标注特殊器件的位置,比如“此区域有阻抗要求,请勿改动”。
说到底,装配图是设计和制造之间的桥梁。桥梁搭得好,沟通成本就低,返工率就低。花点时间把装配图做好,比后期返工划算得多。我在实际项目中的体会是:装配图这件事,做的时候觉得麻烦,不做的时候更麻烦。