Allegro PCB设计:SMT贴片坐标文件导出全流程与避坑指南
2026/9/6 5:40:17 网站建设 项目流程

最近在做一个四层板项目,从原理图到PCB布局布线都走完了,准备发出去贴片。结果工厂那边问我要坐标文件,我一下子有点懵。在Allegro里找了半天,发现“坐标文件”这个说法其实对应着好几个不同的输出,比如给SMT机器用的贴片坐标、给钢网用的Gerber坐标,还有BOM里的器件位置。网上搜了一圈,资料要么太老(还在讲16.6的菜单),要么只讲一步操作,缺了前后的关键设置和常见坑点,导致导出的文件要么缺单位,要么少角度,工厂根本没法用。

这篇文章,我就结合自己踩过的坑,把在Cadence Allegro中输出坐标文件(特别是SMT贴片坐标文件)的完整流程、不同格式的差异、关键参数设置以及避坑指南,系统地梳理一遍。无论你是刚接触Allegro的新手,还是偶尔需要出坐标文件的老手,都能按照步骤一步步操作,得到一份准确、可用的坐标文件。

1. 背景与核心概念:为什么需要坐标文件?

在PCB设计流程中,坐标文件(通常指贴片坐标文件)是连接设计(EDA软件)与制造(SMT贴片机)的关键桥梁。简单来说,它是一份文本文件,告诉贴片机:“在PCB板的哪个位置(X, Y坐标),以什么角度(旋转角度),贴上哪个元器件(位号)”。

1.1 坐标文件的常见格式

虽然都叫“坐标文件”,但根据工厂设备和要求的不同,主要有以下几种格式:

  1. IPC-D-356:一种标准格式,包含网络、器件、引脚等信息,功能强大但有些工厂不用。
  2. CSV/TXT:最通用、最常见的格式。通常包含RefDes(位号),Footprint(封装),Mid X,Mid Y,Rotation,Layer(顶层/底层)等列。用Excel就能打开查看和编辑。
  3. Excel (XLS/XLSX):本质和CSV一样,只是用Excel格式保存,更方便阅读。
  4. Gerber 坐标:有时工厂会要求从Gerber文件中提取坐标,这通常用于验证或特定工艺,不是主流SMT贴片方式。

对于绝大多数SMT贴片需求,我们导出的是CSV或Excel格式的贴片坐标文件。

1.2 Allegro中坐标相关的几个重要概念

在Allegro中操作前,需要理解几个术语,否则导出时容易选错:

  • RefDes: 元器件位号,如R1,C2,U3
  • Footprint: 封装名,如0603,SOIC-8
  • Mid X/Y: 元器件中心的坐标。这是最常用的坐标,因为贴片机吸嘴对准的是元件中心。
  • Pin X/Y: 元器件某个引脚(通常是第1脚)的坐标。某些特定检查或旧式设备可能用到。
  • Rotation: 旋转角度。这是最容易出错的地方!Allegro和不同贴片机对角度零点和旋转方向的定义可能不同。
  • Layer: 元件所在层,TOPBOTTOM。这决定了元件是贴在哪一面。

理解了这些,我们就知道导出坐标文件,核心就是要准确、完整地获取每个贴片元件的RefDes,Mid X,Mid Y,Rotation,Layer信息。

2. 环境准备与前置检查

在开始导出坐标之前,必须确保你的设计环境是正确的,否则导出的坐标毫无意义。

2.1 软件版本说明

本文演示基于Cadence Allegro 17.4。这是目前企业中使用非常广泛的稳定版本。其他版本(如16.6, 22.1, 23.1等)操作逻辑基本一致,只是部分菜单的位置或对话框样式可能有细微差别。

重要原则:如果你使用的是其他版本,请以你软件中的实际菜单为准。核心思路是找到“导出位置信息”或“报告生成”功能。

2.2 设计文件状态检查

导出坐标前,请务必完成以下检查,这是保证坐标文件可用的前提:

  1. 板框(Outline)必须已正确绘制并定义:坐标的原点(0,0)通常与板框的某个顶点或中心有关。在Manufacture -> Dimension/Draft -> Create Detail中可以查看和编辑板框。确保板框是一个闭合的Outline层图形。
  2. 所有器件必须已完成布局:器件必须放在板框之内(或工艺边之内),不能有器件飞在板外。使用Display -> Status查看Placement状态,确保没有未放置的器件。
  3. 原点(Origin)设置正确:这是最关键的一步。贴片坐标的原点必须与PCB制造使用的原点一致,通常设置为板框的左下角或某定位孔的中心。
    • 如何设置?点击菜单栏Setup -> Change Drawing Origin,然后用鼠标左键在PCB上点击你想要设置为(0,0)的点。强烈建议设置为板框左下角的内角点
    • 如何验证?移动光标,查看Allegro底部状态栏的坐标值,确认原点位置是否符合预期。
  4. 单位(Unit)确认:坐标的单位必须是毫米(mm)或英寸(mil)。国内工厂普遍使用毫米(mm)。在导出前,通过Setup -> Design Parameters... -> Design -> User Units进行设置和确认。

3. 核心操作:分步导出标准SMT坐标文件

现在开始核心操作。我们将通过Allegro的Tools -> Reports功能来导出最通用的坐标文件。

3.1 打开报告生成器

  1. 在Allegro PCB Editor中打开你的设计文件(.brd)。
  2. 点击顶部菜单栏:Tools -> Reports...。 会弹出Reports对话框,这里列出了所有可生成的报告。

3.2 选择并配置“Placement”报告

  1. Reports对话框左侧的Available Reports列表里,找到并双击Placement报告。它会出现在右侧的Selected Reports框中。
  2. 确保Placement报告被选中,然后点击右下角的Setup...按钮。这是配置输出内容的关键步骤

3.3 详细配置报告选项

点击Setup...后,会弹出Placement Report Setup对话框。我们需要在这里精心配置。

  • General标签页:

    • Report: 保持Placement
    • Sort By: 选择排序方式,按Ref Des排序比较常见,方便查找。
    • Output:选择File,这样会生成一个文件。文件名和路径可以稍后设置。
  • Fields标签页(最重要): 这里决定你的坐标文件包含哪些列。建议至少勾选以下字段:

    • Ref Des(必选)
    • Symbol(或Footprint,显示封装名)
    • Mid X(必选)
    • Mid Y(必选)
    • Rotation(必选)
    • Layer(必选,区分TOP/BOTTOM)
    • Part Number(可选,如果BOM里有)
    • Value(可选,元件参数值)

    注意:确保Mid XMid Y被选中。Pin X/Y通常不需要,除非工厂特殊要求。

  • Format标签页:

    • Separator: 选择分隔符。推荐选择Comma(逗号),这样生成的是标准的CSV文件,用Excel打开方便。
    • 其他格式选项保持默认即可。
  • Filter标签页:

    • 可以在这里过滤器件。例如,如果只想导出顶层器件,可以在Layer里选择TOP。通常我们导出所有贴片器件,所以可以不用过滤。

配置完成后,点击OK关闭设置对话框。

3.4 生成并保存坐标文件

  1. 回到Reports主对话框,点击Generate Report按钮。
  2. 此时会弹出一个Save As对话框,让你选择保存路径和文件名。
    • 文件名:建议使用有意义的名称,如SMT_Placement_TOP_BOTTOM.csvProjectName_XY_Data.csv
    • 保存类型:由于我们选择了逗号分隔,保存为.csv文件即可。也可以保存为.txt.prn,本质一样。
  3. 点击保存。Allegro会在后台生成报告,并自动打开一个文本查看器(通常是Report Browser)显示内容。
  4. 不要关闭这个查看器!我们首先要验证它。

3.5 验证生成的坐标文件

Report Browser中,你应该能看到一个类似下表的文本内容:

Ref Des,Symbol,Mid X,Mid Y,Rotation,Layer C1,0603,12.345,45.678,90.000,TOP R2,0402,23.456,56.789,0.000,TOP U3,SOIC-8,34.567,67.890,270.000,TOP C4,0603,45.678,78.901,180.000,BOTTOM ...

请立即检查以下几点:

  1. 单位:查看Mid XMid Y的数值。如果小数点前有3-4位,单位很可能是mil(如1234.5)。如果小数点后有多位,单位很可能是mm(如12.345)。确认这是工厂要求的单位。
  2. 坐标正负:所有坐标应为正数。如果出现负数,说明你的绘图原点可能不在板框左下角,需要调整(见2.2节)。
  3. 角度值:检查Rotation列。0, 90, 180, 270是常见值。确认其定义是否符合工厂要求(见4.1节)。
  4. 层信息TOPBOTTOM是否清晰区分。

验证无误后,你可以将这个文本查看器中的内容全选、复制,粘贴到一个新建的Excel文件中,或者直接用Excel打开刚才保存的.csv文件,进行进一步的整理和排序(例如将TOP层和BOTTOM层分开保存成两个文件,这是很多工厂的要求)。

4. 关键问题深度解析与避坑指南

仅仅导出文件还不够,以下几个问题是导致坐标文件无法使用的“重灾区”。

4.1 旋转角度(Rotation)的“坑”

这是最大的一个坑。Allegro的0度方向、角度增加方向(顺时针/逆时针)可能与贴片机的定义不同。

  • Allegro的角度定义:在Allegro中,0度方向是元件朝向“东”(East),即水平向右。角度增加是逆时针方向。所以,一个竖着放的电阻(长边垂直),在Allegro里旋转角度是90度。
  • 贴片机的角度定义:不同品牌贴片机(如西门子、富士、松下)可能有自己的定义。常见的是:0度方向是元件朝向“北”(North),即垂直向上,角度增加为顺时针方向。

解决方案:

  1. 首次合作,务必询问工厂:直接向PCB工厂或SMT厂索要他们的《坐标文件格式要求》文档,里面会明确规定角度的基准和方向。
  2. 角度转换:如果工厂要求的角度定义与Allegro不同,你不能直接在Allegro里改,而应该在导出的Excel文件中进行公式转换。
    • 例如,工厂要求0度朝北,顺时针增加。那么转换公式可能是:新角度 = (360 - Allegro角度 + 90) % 360
    • 更稳妥的做法:在Excel里单独列出一两个典型器件(如一个在Allegro中显示90度的芯片),截图发给工厂技术人员,问他们这个器件在你的文件里应该填多少度。以此来确定转换关系。

4.2 顶层与底层坐标的差异

对于底层(BOTTOM)的器件,Allegro导出的Mid X, Mid Y坐标是基于**当前视图(即顶层朝上)**的。这对于贴片机来说通常没问题,因为贴片机会自动镜像或翻转来处理底层元件。

但是,你需要明确告诉工厂:

  1. 在提供的坐标文件中,用Layer列清晰标出TOPBOTTOM
  2. 最好将TOP层和BOTTOM层的坐标分别保存到两个不同的文件中,并在文件名中注明,例如XY_TOP.csvXY_BOTTOM.csv。这是很多工厂的明确要求,可以避免混淆。

4.3 如何导出特定层或特定类型的器件?

有时你只需要导出贴片器件,而不需要插件器件。可以通过Filter设置:

  1. Placement Report SetupFilter标签页。
  2. Property栏,你可以添加过滤条件。例如,想只导出顶层器件:
    • 点击Add...Property选择LAYERValue输入TOP,关系选择==
  3. 更复杂的过滤(如只导出某类封装)可能需要结合Symbol属性或自定义属性。

4.4 使用Skill脚本或第三方工具导出(进阶)

对于需要频繁导出、或有特殊格式要求(如需要包含物料编码、客户编号等)的用户,可以考虑:

  • Allegro Skill脚本:网上有一些现成的、功能更强大的导出坐标Skill脚本,可以进行更复杂的格式定制。需要加载Skill环境。
  • CAM350/Valor等DFM软件:这些后期处理软件也可以从Gerber或ODB++文件中提取非常精确的坐标,常用于高精度或复杂板子的验证。

对于绝大多数常规需求,使用内置的Reports功能完全足够。

5. 完整实战案例:从零导出一份合格的坐标文件

假设我们有一个名为Demo_Board.brd的简单双面板,需要导出坐标文件给SMT厂。

5.1 步骤复盘

  1. 打开与检查:打开Demo_Board.brd。使用Display -> Status确认所有器件已放置。使用Setup -> Design Parameters确认单位为mm
  2. 设置原点:点击Setup -> Change Drawing Origin,移动光标到板框左下角内角点(确保光标捕捉到端点),单击左键。查看状态栏坐标,确认原点设置成功。
  3. 生成报告
    • Tools -> Reports
    • 双击Placement报告添加到右侧。
    • 点击Setup...
    • Fields页:勾选Ref Des,Symbol,Mid X,Mid Y,Rotation,Layer
    • Format页:Separator选择Comma
    • 点击OK
    • 点击Generate Report
    • 保存文件为Demo_Board_SMT_Coordinates.csv
  4. 验证与处理
    • 在弹出的报告浏览器中检查数据:单位是mm,坐标都是正数,角度有0/90/180/270等值,层信息正确。
    • 用Excel打开CSV文件。
    • Layer列进行排序,将TOPBOTTOM的行分开。
    • TOP层的数据复制到一个新工作表,另存为Demo_Board_XY_TOP.csv
    • BOTTOM层的数据复制到另一个新工作表,另存为Demo_Board_XY_BOTTOM.csv
  5. 交付文件:将这两个CSV文件、Gerber文件、BOM清单一起打包发给工厂。在邮件中明确说明:
    • 坐标单位:毫米(mm)。
    • 坐标原点:板框左下角。
    • 角度基准:Allegro标准(0度朝东,逆时针增加)。并附上一个带有典型角度的器件截图,请工厂确认是否需要转换。

6. 常见问题排查清单(QA)

问题现象可能原因排查与解决思路
导出的坐标全是0或非常小绘图原点设置不正确,可能设在了器件中心或很远的地方。重新执行Setup -> Change Drawing Origin,将原点设置到板框左下角。
坐标值出现负数部分或全部器件位于当前原点的左侧或下方。1. 检查原点位置,确保板框整体位于第一象限(X, Y为正)。
2. 如果板框本身关于原点对称,负数也可能正常,但需与工厂确认其设备是否支持负坐标。最稳妥做法是调整原点使所有坐标为非负。
找不到Placement报告软件版本或许可问题。某些精简版或配置可能不包含该报告。1. 尝试在Tools -> Quick Reports中寻找类似报告。
2. 使用File -> Export -> Placement功能尝试,但此功能可能不如Reports灵活。
3. 考虑使用Skill脚本。
打开CSV文件中文乱码文本编码问题。用记事本打开CSV文件,点击“文件”->“另存为”,在编码中选择“UTF-8”或“ANSI”,然后保存。再用Excel打开。
工厂说角度不对Allegro与贴片机的角度定义不一致。1. 与工厂沟通明确其角度定义(0度基准方向,旋转正方向)。
2. 在Excel中使用公式进行批量角度转换。
3.提供1-2个器件截图对照,是最高效的确认方式。
插件器件也出现在报告里报告默认包含了所有器件。Placement Report SetupFilter标签页中,添加过滤条件。例如,可以通过封装名(Symbol)过滤掉TH*(通孔)封装的器件,但需要你了解自己库的命名规则。更简单的方法是导出后,在Excel中手动删除插件行。

7. 最佳实践与工程建议

  1. 规范化原点设置:团队内部应统一原点设置规范(例如,一律设置为板框左下角内缘),避免不同工程师导出的坐标基准不同。
  2. 单位统一:在设计初期就确定使用毫米(mm)为单位,并与制造厂统一。避免设计用mil,而出图用mm导致的换算错误和精度损失。
  3. 坐标文件作为发布包的一部分:将坐标文件(分TOP/BOTTOM)纳入PCB发布包清单,与Gerber、BOM、装配图等文件一起进行版本管理。
  4. 首次与工厂合作必须沟通:不要想当然。务必发送坐标文件样本(前几行)和PCB截图,与工厂工艺人员确认格式、单位、角度、原点、层标识等信息是否正确无误。这能避免批量贴错的风险。
  5. 在PCB上添加光学定位点(Fiducial Mark):对于高精度贴装,必须在PCB板角或板边添加全局和局部光学定位点。并在坐标文件中,将这些定位点的坐标也一并提供给工厂,这能极大提高贴片精度。
  6. 输出文件命名清晰:使用包含项目名、版本、层别、日期的文件名,例如ProjectA_V1.2_XY_TOP_20231027.csv,便于追溯和管理。
  7. 归档设计源文件与输出文件:妥善保存生成坐标文件时对应的.brd文件版本。一旦生产发现问题,可以快速回溯检查。

导出坐标文件是PCB设计到制造的关键一步,操作本身不复杂,但细节决定成败。核心在于理解坐标、原点、角度、单位这些基本概念,并在导出前后做好检查和沟通。希望这篇详细的指南能帮你彻底掌握这个过程,下次出坐标文件时能够从容应对,一次做对。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询