在将PADS设计文件导入Altium Designer(AD)过程中,常出现PCB上焊盘(PAD)对应的机械钻孔或过孔(via)在AD中不显示的问题。根本原因多为:① PADS导出的Gerber/Drill文件未包含完整的NC Drill(数控钻孔)数据,或未生成标准Excellon格式的.drill/.txt钻孔文件;② AD导入时未正确映射钻孔层(如“Mechanical 1”误设为非钻孔层),或未在“PCB Importer”中勾选“Import Drill Files”;③ PADS中钻孔信息仅隐含于焊盘属性(如Hole Size),但未生成独立钻孔图层,导致AD无法识别。该问题易被误判为焊盘缺失,实则钻孔定义丢失,直接影响后续CAM输出与PCB加工。建议导出前在PADS中执行“File → Export → NC Drill”,并核对AD的“Import Options”中Drill Layer Mapping是否指向有效机械层。
1条回答 默认 最新
揭假求真 2026-02-21 00:35关注```html一、现象层:AD中焊盘存在但钻孔“凭空消失”
典型表现为:导入PADS设计后,PCB视图中所有焊盘(SMD/TH)图形正常显示,但机械钻孔(PTH通孔、插件孔)及过孔(Via)无任何钻孔符号(如十字叉、圆环轮廓)、无Drill Drawing层内容,DRC不报错,但
View → Board Insight → Drill Table为空,CAM预览中缺失钻孔层——这并非焊盘丢失,而是钻孔定义未被AD识别。二、数据流层:PADS→AD钻孔信息传递的断裂点
- 导出侧断裂:PADS默认导出Gerber时不自动包含NC Drill文件;若未手动执行
File → Export → NC Drill,则仅生成.gbr而缺失.drl/.txt(Excellon标准格式) - 格式侧断裂:PADS导出的.drill若为非标准Excellon(如含自定义头注释、单位混用mm/mil、缺少
M48起始指令),AD解析失败且静默跳过 - 映射侧断裂:AD将Mechanical Layers(如Mech 1–16)视为通用层,需显式指定某层为“Drill Drawing”或“Drill Guide”,否则即使文件存在也不渲染钻孔
三、配置层:Altium Designer关键导入参数验证表
配置项 正确值 错误示例 验证方式 Import Drill Files ✅ 勾选 ❌ 未勾选(默认常关闭) PCB Importer对话框 > Options页签 Drill Layer Mapping Mechanical 1 → Drill Drawing Mechanical 1 → Non-Drill Layer Import Options > Drill Layers页签 Drill File Format Excellon (2.0) / ASCII Custom PADS-Internal / Binary 右键Drill文件 > Properties 四、根因层:三类技术性断链的深度归因
- 隐式定义陷阱:PADS中焊盘Hole Size=0.8mm仅定义“孔径”,但未生成独立钻孔图层(Drill Drawing),AD无法从焊盘属性反向推导物理钻孔位置与尺寸,必须依赖外部.drill文件
- 层语义失配:PADS的“Drill Drawing”层在导出Gerber时可能映射到AD的Mechanical 1,但AD默认不将Mechanical层视为钻孔层,需人工重映射
- 工具链盲区:部分PADS版本(如X2以上)导出NC Drill时若未勾选
Generate Drill Drawing和Output Excellon Format,输出文件实为无效占位符
五、验证层:结构化排错流程图
flowchart TD A[导入PADS设计] --> B{AD中Drill Table是否为空?} B -->|是| C[检查Import Options中Import Drill Files是否勾选] C --> D{.drl/.txt文件是否存在?} D -->|否| E[返回PADS执行File → Export → NC Drill] D -->|是| F[用文本编辑器打开.drl,验证首行含M48/INCH/UNIT等Excellon标识] F --> G{是否含标准Excellon语法?} G -->|否| H[用PADS重新导出,勾选Excellon 2.0 & Generate Drill Drawing] G -->|是| I[进入Import Options > Drill Layers,将对应Mech层设为Drill Drawing] I --> J[重新导入并刷新视图]六、实践层:PADS端强制保障钻孔导出的黄金操作
1. 在PADS Layout中:Tools → Options → Drafting → Drill Display → ✅ Show Drill Symbols
2. 执行:File → Export → NC Drill → 弹出对话框:
• ✅ Output Excellon Format
• ✅ Generate Drill Drawing
• ✅ Include Tool List
• Unit: Inches/Mils(与PCB单位一致)
3. 输出路径下确认生成:project_name.drl + project_name.txt + project_name.lst七、进阶层:AD中钻孔层的动态重映射脚本(Python API片段)
适用于批量处理场景,通过Altium Designer Scripting API自动修正映射:
// AD Script (.pas) 示例:强制将Mechanical 1设为Drill Drawing层
procedure FixDrillLayerMapping;
begin
PCBServer.SendMessage(0, 'PCB:Zoom', '', 0, 0);
PCBServer.SendMessage(0, 'PCB:ConfigureLayers', 'Layer=1;Type=DrillDrawing', 0, 0);
ShowMessage('Mechanical 1 now mapped to Drill Drawing');
end;八、交付层:CAM输出前必检清单
- ✅ 在AD中运行
Reports → Drill Report,确认孔数、孔径、坐标与PADS原始BOM一致 - ✅ 切换至
Drill Drawing层,全屏缩放验证所有钻孔符号可见(非仅焊盘轮廓) - ✅ 使用
File → Fabrication Outputs → NC Drill Files重新生成AD原生.drill,对比PADS源文件差异 - ✅ 将AD生成的Gerber+Drill包提交给板厂前,用GC-Prevue或CAM350加载验证钻孔层完整性
九、演进层:跨平台协同设计的长期建议
对于高频PADS↔AD协作团队,建议建立标准化工作流:① 统一使用IPC-2581替代Gerber/Drill作为中间交换格式(天然携带钻孔元数据);② 在PADS中启用
Export → IPC-2581,AD直接File → Import → IPC-2581,规避所有层映射与格式解析风险;③ 将NC Drill导出步骤固化为PADS Design Rule Check(DRC)后置动作,通过脚本自动触发。十、认知层:为什么老工程师总说“钻孔不是画出来的,是定义出来的”
本质在于:焊盘(Pad)是几何图形,钻孔(Drill)是制造指令。Gerber描述“哪里铺铜”,而NC Drill定义“哪里打孔、用多大钻头、钻多深”。二者在EDA中属于不同抽象层级——忽略此分层,即陷入“图形可见=制造可用”的致命幻觉。这也是为何IPC标准严格区分Gerber RS-274X与Excellon钻孔规范的根本原因。
```本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报- 导出侧断裂:PADS默认导出Gerber时不自动包含NC Drill文件;若未手动执行