多彩编程 多彩编程MZPH · CODE BLOG
ARTICLE DETAIL

文章详情

深耕前端与后端开发技术的一线实战笔记与踩坑复盘。

Altium Designer 24 坐标文件输出全攻略:从设置到避坑

Altium Designer 24 坐标文件输出全攻略:从设置到避坑 1. 坐标文件到底是个什么东西坐标文件英文一般叫 Pick and Place File也有人叫它贴片坐标文件、SMT 坐标文件。名字听着挺唬人其实本质就是一张表格告诉贴片机板子上每一个需要贴装的元器件在 PCB 上的精确 X、Y 坐标是多少旋转角度是多少在哪一面。就这么简单。你可以把它理解成一张“元器件座位表”。贴片机就像个超级快的机器人手臂它拿到这张座位表之后才知道去料带里抓哪个料然后放到板子上的哪个位置、朝哪个方向放。没有这张表贴片机就是瞎子根本不知道往哪儿贴。那为什么 Altium Designer 输出坐标文件这件事值得单独拿出来讲因为在实际工作中这个环节出问题的概率高得离谱。我见过太多次板子画完了Gerber 也出了钢网也开了结果到了贴片厂那边坐标文件一打开元器件位置全偏了或者角度全错了或者干脆少了一半器件。贴片厂那边停线等你老板在群里催那滋味真的不好受。坐标文件的核心要素其实就几个Designator位号、Layer层、X 坐标、Y 坐标、Rotation旋转角度。有些格式还会包含 Comment注释通常是值或型号、Footprint封装名等信息。不同贴片厂的设备不一样用的格式也不一样但万变不离其宗就是这几个核心字段。Altium Designer 从早期的 AD6、AD09 到现在的 AD24输出坐标文件的入口和选项一直在变但底层逻辑没变过。2024 版本在输出配置上做了一些调整界面更现代了但有些默认设置如果不注意照样会踩坑。这篇文章我就把 AD24 输出坐标文件这件事从头到尾讲透包括每一步为什么这么做、参数怎么选、出了问题怎么排查。注意坐标文件的准确性直接决定贴片质量输出前务必核对原点和单位设置这是最容易出问题的地方。2. 输出前的准备工作2.1 确认 PCB 原点设置原点这个东西说起来简单但它是坐标文件的基准。所有元器件的坐标都是相对于原点来计算的。原点设在哪里坐标文件里的数值就完全不一样。AD24 默认的原点是板子的左下角绝对原点但实际工作中贴片厂通常希望你用板子的某个特定位置作为原点。常见的选择有板子左下角的某个 Mark 点、板子的几何中心、或者板框的某个角。为什么因为贴片机的坐标系和 PCB 设计软件的坐标系不一定一致如果原点对不上贴片厂那边就要做偏移补偿增加了出错的风险。设置原点的方法在 PCB 编辑界面菜单栏选择Edit → Origin → Set然后点击你想要设为原点的位置。我个人的习惯是设在板框左下角这样所有坐标都是正值看起来直观贴片厂那边也容易核对。设完原点之后你可以通过Edit → Origin → Location来查看当前原点的坐标值确认一下是不是设对了。这个步骤花不了几秒钟但能避免后面一大堆麻烦。2.2 检查元器件属性完整性坐标文件里每个元器件的信息都来自它的属性。如果属性不完整输出的文件就会有问题。重点检查这几个字段Designator位号每个元器件必须有唯一的位号不能有重复也不能有空缺。我遇到过有人复制粘贴元器件之后忘了改位号结果两个 R1 同时存在贴片厂那边直接懵了。Footprint封装封装名要规范最好和实际使用的物料对应上。有些封装名是“RES-0603”这种通用名有些是“R0603_1K”这种带参数的建议统一风格。Comment注释通常填元器件的值或型号比如“10K”、“100nF”、“STM32F103C8T6”。这个字段在坐标文件里不是必须的但贴片厂有时候会用来核对物料建议填上。Layer层元器件在哪一面Top Layer 还是 Bottom Layer。这个字段决定了贴片时先贴哪面、后贴哪面。检查方法在 PCB 界面按ShiftF或者用Panels → Properties面板逐个查看元器件属性。更高效的方式是用Reports → Bill of Materials生成一份 BOM在 BOM 里检查位号、封装、注释是否完整。BOM 和坐标文件是配套使用的BOM 有问题坐标文件也好不到哪去。2.3 确认单位和精度坐标文件的单位通常有两种毫米mm和密尔mil。国内贴片厂绝大多数用毫米少数用密尔。精度一般保留到小数点后 3 位或 4 位毫米单位下 0.001mm 的精度已经足够了。AD24 输出坐标文件时单位是在输出配置里选的。我的建议是先问贴片厂要什么格式、什么单位、什么精度然后按他们的要求来。不要自己拍脑袋决定也不要觉得“差不多就行”。坐标这东西差 0.1mm 可能就是贴偏和贴准的区别。提示如果贴片厂没有明确要求默认用毫米、小数点后 3 位这是最通用的配置。3. AD24 输出坐标文件的完整操作流程3.1 找到输出入口AD24 输出坐标文件的入口和之前版本略有不同。在 PCB 编辑界面菜单栏选择File → Fabrication Outputs → Component Placement。这个路径和 AD20、AD21 是一样的但 AD24 在界面布局上做了一些优化选项更集中了。点击之后会弹出一个配置对话框这就是坐标文件输出的核心配置界面。整个界面分为几个区域格式选择、单位设置、输出选项、文件路径。下面我逐个拆解。3.2 格式选择CSV 还是其他AD24 支持多种坐标文件格式常见的有格式扩展名适用场景特点CSV.csv通用绝大多数贴片厂纯文本逗号分隔易读易改Text.txt部分老设备空格或制表符分隔Excel.xls需要人工核对的场景带格式方便查看IPC-2581.xml高端设备全流程数据包含更多制造信息国内贴片厂 90% 以上要 CSV 格式所以这篇文章重点讲 CSV。CSV 的好处是通用性强任何贴片机都能读而且你可以直接用 Excel 打开检查出了问题一眼就能看出来。在格式选择区域勾选CSV其他格式按需勾选。如果你不确定贴片厂要什么格式就只勾 CSV然后问清楚再说。3.3 单位与精度设置在配置对话框里找到Units选项选择Millimeters。精度选项通常叫Precision或Decimal Places选3或4。我一般选 3因为 0.001mm 的精度对于绝大多数 PCB 来说已经绰绰有余了。除非你的板子特别小、器件特别密集否则没必要用 4 位小数。这里有个细节AD24 的单位设置是独立的不会跟随 PCB 界面的当前单位。也就是说你 PCB 界面显示的是 mil坐标文件照样可以输出 mm。所以每次输出前都要确认一下这个选项别想当然。3.4 输出选项详解配置对话框里有一堆勾选项每一个都影响输出内容。我挑几个关键的讲Include DNP Components是否包含 DNPDo Not Populate不贴装的元器件。这个选项要特别注意。如果你的板子上有些器件是不贴的比如调试用的预留位这些器件不应该出现在坐标文件里否则贴片厂会以为要贴结果料带上没有就出问题了。所以一般情况下不要勾选这个选项除非你明确知道自己在做什么。Include Testpoints是否包含测试点。测试点通常不需要贴装所以一般不勾。Include Mechanical Components是否包含机械件。比如螺丝孔、定位柱这些它们不是电气元器件不需要贴片机处理一般不勾。Include Board Outline是否包含板框信息。这个选项看贴片厂要求有些厂需要有些不需要。Use Designator as Reference用位号作为参考标识。这个必须勾否则贴片厂不知道哪个坐标对应哪个器件。还有一个隐藏的坑镜像层Bottom Layer的坐标处理。AD24 默认会把底层器件的坐标做镜像处理也就是说X 坐标会取反。这是符合贴片机逻辑的因为贴片机从正面看板子的时候底层的器件是镜像的。但有些贴片厂要求底层坐标不做镜像这时候你就要在配置里找到Mirror Bottom Layer之类的选项把它关掉。具体怎么设一定要和贴片厂确认。3.5 输出路径与文件命名配置对话框底部有输出路径设置。默认路径是 PCB 文件所在目录下的Project Outputs for [项目名]文件夹。你可以改成任何你想要的路径。文件命名建议包含项目名和日期比如MyProject_20240315_Placement.csv。这样做的目的是方便版本管理避免不同版本的坐标文件混在一起。我见过有人把 V1.0 和 V2.0 的坐标文件搞混了结果贴片厂贴的是旧版坐标整批板子全废了。设置好之后点击OK或者GenerateAD24 就会生成坐标文件。生成之后一定要用 Excel 打开检查一遍这是最后一道防线。4. 坐标文件内容解读与核对4.1 CSV 文件字段说明用 Excel 打开生成的 CSV 文件你会看到类似这样的表头Designator,Layer,Comment,Footprint,Mid X,Mid Y,Rotation R1,TopLayer,10K,RES-0603,25.400,30.200,0 C1,TopLayer,100nF,CAP-0603,30.100,30.200,90 U1,TopLayer,STM32F103C8T6,LQFP-48,50.000,50.000,270各字段含义Designator位号和原理图、BOM 里的位号一一对应。Layer所在层TopLayer 或 BottomLayer。Comment注释通常是值或型号。Footprint封装名。Mid X / Mid Y元器件中心的 X、Y 坐标单位是你在配置里选的单位。Rotation旋转角度单位是度。有些版本的 AD 输出的字段名可能略有不同比如Center-X、Center-Y、Ref-X、Ref-Y等。Ref-X/Ref-Y 是元器件参考点的坐标Mid-X/Mid-Y 是几何中心的坐标。贴片机通常用 Mid 坐标但有些老设备用 Ref 坐标。这个也要和贴片厂确认。4.2 核对坐标是否合理打开 CSV 之后快速扫一眼坐标值。如果板子尺寸是 100mm × 80mm那所有坐标应该在 0 到 100 和 0 到 80 之间假设原点在左下角。如果看到某个坐标是负数或者特别大那说明原点设错了或者有元器件跑到板框外面了。再检查一下旋转角度。常见的角度是 0、90、180、270偶尔有 45 度。如果看到一堆奇怪的角度比如 37.5、123.8那可能是元器件在放置的时候没有对齐到栅格或者旋转的时候没有用精确角度。这种情况贴片厂可能会要求你重新输出因为他们的设备可能不支持任意角度。还有一个容易忽略的点位号排序。有些贴片厂希望坐标文件按位号排序方便核对。AD24 默认是按元器件在 PCB 上的位置排序的你可以在 Excel 里手动排序或者在输出配置里找排序选项。4.3 与 BOM 交叉核对坐标文件和 BOM 是配套的两者必须一致。核对方法很简单把坐标文件里的位号列复制出来和 BOM 里的位号列对比一下看看有没有多出来的或者少掉的。我遇到过一种情况PCB 上有个器件被删了但 BOM 里还有结果坐标文件里没有这个器件贴片厂按 BOM 备料多备了一份料最后发现贴不上去。反过来也有PCB 上有个器件是后来加的BOM 没更新坐标文件里有但贴片厂没备料贴到一半发现少料停线等料。所以输出坐标文件之前先更新 BOM确保两者同步。这个习惯能省掉很多麻烦。注意坐标文件和 BOM 的位号必须完全一致任何一个不一致都会导致贴片异常。5. 常见问题与排查技巧5.1 坐标全部偏移这是最常见的问题。现象是坐标文件里的数值看起来都正常但贴片厂反馈说所有器件都偏了偏的量还都一样。原因通常是原点不一致。你的 PCB 原点设在了板子左下角但贴片厂以为原点在板框左下角两者差了一个板框的厚度或者一个工艺边的宽度。解决办法和贴片厂确认原点位置然后在 AD24 里重新设置原点重新输出。还有一种可能是单位搞错了。你输出的是 mil贴片厂以为是 mm那坐标就差了 25.4 倍偏得离谱。所以单位一定要在文件名或者邮件里写清楚。5.2 角度不对现象是位置对了但器件旋转了。比如电阻本来应该是横着的结果贴成了竖着的。原因通常是旋转角度的定义不一致。AD24 里元器件的旋转角度是相对于封装本身的但贴片机的角度定义可能不一样。比如 AD 里 0 度是封装的默认方向但贴片机可能认为 0 度是某个特定方向。这个差异需要和贴片厂沟通看他们是否需要做角度补偿。另外底层器件的角度处理也容易出问题。底层器件在镜像之后角度可能会变。比如顶层 0 度的器件放到顶层是 0 度放到顶层镜像之后可能变成 180 度。这个逻辑要搞清楚。5.3 缺少元器件现象是坐标文件里少了一些器件。原因可能有几个一是这些器件被设成了 DNP输出时没勾选 Include DNP Components二是这些器件在 PCB 上被隐藏了或者锁定了输出时被过滤掉了三是这些器件的 Layer 属性不对比如设成了 Mechanical Layer 而不是 Top/Bottom Layer。排查方法在 PCB 界面用Panels → PCB Filter或者Navigator面板查看所有元器件的列表逐个核对。也可以生成一份 BOM和坐标文件对比。5.4 CSV 打开乱码这个和 AD24 关系不大但经常有人问。CSV 文件用 Excel 打开时如果编码不对中文会显示成乱码。AD24 输出的 CSV 默认是 ANSI 编码如果 Comment 字段里有中文用 Excel 打开可能会乱码。解决办法用记事本打开 CSV另存为 UTF-8 编码然后再用 Excel 打开。或者在 Excel 里用“数据 → 从文本/CSV”导入手动选择编码。不过说实话Comment 字段里最好别用中文。用英文或者拼音通用性更强也避免编码问题。5.5 常见问题速查表问题现象可能原因排查方法解决方案坐标全部偏移原点不一致核对原点设置重新设置原点重新输出坐标全部偏移单位搞错检查输出单位确认贴片厂要求重新输出角度不对角度定义不一致对比几个器件的角度和贴片厂沟通补偿方案缺少元器件DNP 未勾选检查 DNP 设置勾选 Include DNP 或确认是否该贴缺少元器件Layer 属性错误检查元器件 Layer修正 Layer 属性CSV 乱码编码问题用记事本查看转 UTF-8 编码位号重复复制未改位号检查位号唯一性修改重复位号6. 实操心得与避坑经验6.1 建立标准化的输出流程我做了这么多年 PCB最大的体会就是标准化能救命。每次输出坐标文件都按同样的步骤来不要跳步不要凭记忆。我的标准流程是这样的确认 PCB 原点位置和贴片厂要求一致。检查所有元器件属性确保位号唯一、封装正确、Layer 正确。更新 BOM确保 BOM 和 PCB 一致。打开 Component Placement 配置选择 CSV 格式、毫米单位、3 位小数。确认 DNP、Testpoint、Mechanical 等选项设置正确。生成坐标文件。用 Excel 打开核对坐标范围、角度、位号数量。和 BOM 交叉核对位号。把坐标文件和 BOM 一起打包发给贴片厂邮件里写清楚单位、原点位置、角度定义。这个流程看起来繁琐但做熟了之后也就几分钟的事。比起出了问题之后返工的时间这几分钟太值了。6.2 和贴片厂沟通的要点很多坐标文件的问题根源在于沟通不到位。以下是我总结的沟通要点格式CSV 还是 Excel要不要 IPC-2581单位毫米还是密尔小数点后几位原点板框左下角还是 Mark 点有没有工艺边角度0 度定义是什么底层要不要镜像字段需要哪些字段位号、坐标、角度、封装、注释命名文件命名有没有要求这些问题在第一次合作的时候就要问清楚后面就省事了。如果贴片厂说“随便”那你就要小心了最好按最通用的配置来并且在邮件里写清楚你的配置让对方确认。6.3 版本管理的重要性坐标文件一定要做版本管理。我的做法是每次输出都带上日期和版本号比如MyProject_V1.2_20240315_Placement.csv。同时在项目文件夹里建一个Fabrication子文件夹把所有制造文件都放进去包括 Gerber、BOM、坐标文件、钢网文件等。这样做的好处是任何时候你都能找到最新版本的文件不会发错。我见过有人把 V1.0 的坐标文件发给了贴片厂结果贴出来的是旧版板子整批报废。这种错误一次就够你记住一辈子。6.4 一个容易被忽略的细节Mark 点Mark 点是贴片机用来定位的基准点。坐标文件里通常不包含 Mark 点的坐标但 Mark 点的位置会直接影响贴片精度。如果 Mark 点位置不对或者 Mark 点被遮挡了贴片机就找不到基准贴出来的板子全是偏的。所以输出坐标文件之前顺便检查一下 Mark 点位置是否在板边、是否对称、周围有没有其他元素干扰、表面处理是否和焊盘一致。这些细节看起来和坐标文件无关但实际上会影响整个贴片流程。6.5 最后一道防线人工抽查不管自动化工具多先进人工抽查永远是最后一道防线。我的习惯是生成坐标文件之后随机挑 5 到 10 个元器件在 PCB 上找到它们的位置然后和坐标文件里的数值对比。如果这几个都对得上那大概率整体没问题。抽查的时候重点看这几个板子四个角的器件、最密集区域的器件、底层器件、旋转角度非 0/90/180/270 的器件。这些是最容易出问题的地方。提示人工抽查花不了几分钟但能发现很多自动化检查发现不了的问题。7. 坐标文件后续还可以这样用坐标文件不只是给贴片厂用的。在实际工作中它还有很多其他用途。比如你可以用坐标文件来做组装图。把坐标文件导入到 CAD 软件里加上板框和器件轮廓就能生成一张组装图方便人工焊接或者维修的时候定位。还可以用来做测试点坐标提取。如果你需要做在线测试ICT或者飞针测试测试点的坐标可以从坐标文件里提取出来导入到测试程序里。另外坐标文件也是设计评审的好帮手。把坐标文件里的器件位置和原理图对比可以快速发现布局是否合理、有没有器件放错位置、有没有器件重叠等问题。我甚至还见过有人用坐标文件来做热仿真的输入。把器件的坐标和功耗信息导入到热仿真软件里就能分析板子的温度分布。这个用法比较小众但确实可行。总之坐标文件是 PCB 设计数据的一个缩影它的价值远不止“给贴片厂”这一个用途。把坐标文件管理好对整个硬件开发流程都有帮助。我个人在实际操作中的体会是坐标文件这件事技术含量不高但细节特别多。每一个细节出问题都可能导致严重的后果。所以宁可多花几分钟检查也不要赶时间跳过步骤。踩过的坑多了你就会明白慢就是快。
返回列表