Altium Designer PCB设计全流程详解:从原理图到Gerber文件输出
1. 项目概述:从零到一,用AD完成一块PCB的设计
如果你刚接触硬件设计,或者从其他EDA工具(比如立创EDA、Cadence Allegro)转过来,面对Altium Designer(简称AD)这个功能强大但界面略显复杂的“老牌劲旅”,可能会有点无从下手。网上教程很多,但往往只讲某个点,比如怎么画封装、怎么布线,缺乏一个从新建工程到最终发板生产的完整、连贯的流程梳理。我自己带过不少新人,发现他们最需要的不是某个炫酷的高级功能,而是一份清晰、按部就班的“地图”,能指引他们避开初期最常见的坑,顺利走完PCB设计的全流程。
这篇文章,我就结合自己多年用AD(从AD6.9到现在的AD23)画板子的经验,为你拆解一个完整的、细节拉满的PCB设计流程。它不仅仅是“点击这里,再点击那里”的操作指南,更重要的是,我会告诉你每个步骤背后的“为什么”——为什么这个参数要这么设?为什么这个操作顺序不能乱?以及那些只有踩过坑才知道的“注意事项”。无论你是学生做课程设计,还是工程师开发产品原型,这套流程都能帮你建立起规范的设计习惯,少走弯路,高效地产出可靠的PCB文件。
2. 设计前准备:磨刀不误砍柴工
在打开AD软件,兴奋地开始画图之前,充分的准备工作是保证后续设计顺畅、避免返工的关键。这个阶段的核心是“想清楚”和“准备好”。
2.1 明确需求与规划
动手画原理图之前,必须对项目有全局性的认识。这不仅仅是电路功能,还包括物理上的约束。
- 功能与性能指标:你的板子要实现什么功能?主控是什么(比如STM32, RK3588)?需要哪些外设接口(USB, Ethernet, HDMI)?工作电压、电流范围是多少?信号频率有多高?这些决定了后续的元器件选型、电源设计和布局布线策略。例如,一个高速的RK3588核心板和一个简单的51单片机控制板,其设计复杂度和关注点天差地别。
- 机械与结构约束:这是新手最容易忽略,也最容易导致后期重大修改的地方。你需要明确:
- 板框尺寸和形状:最终PCB的精确外形。最好能有结构工程师提供的DXF或DWG文件,直接导入AD作为板框。
- 安装孔位置与大小:用于螺丝固定的孔。
- 接插件和按键的定位:USB口、开关、屏幕接口等必须精确对准外壳的开孔。
- 限高区域:板子上方或下方是否有外壳、散热片或其他部件,导致某些区域不能放置过高的元件(如电解电容、电感)。
- 设计规范确认:如果是公司项目,是否有内部的PCB设计规范?比如线宽线距、过孔大小、阻抗控制要求等。个人项目也需要自己定下基本规则。
2.2 工程创建与库管理
混乱的库管理是项目混乱的根源。一个良好的开端是从建立规范的工程文件结构开始。
- 创建工程:打开AD,
File->New->Project->PCB Project。建议立即将工程保存到一个独立的、有明确命名的文件夹中。这个文件夹里只放与本项目相关的所有文件。 - 建立并关联库文件:在工程上右键,
Add New to Project->Schematic Library和PCB Library。分别用于存放原理图符号和PCB封装。强烈建议为每个项目创建专属的库文件,而不是直接使用不可靠的公共库或临时从网上下载。这能确保项目的可移植性和可靠性。 - 整理已有资源:如果公司有统一的元件库,将其路径添加到AD的库搜索路径中。对于从网络(如元器件官网、SnapEDA)下载的库文件,务必先仔细检查其正确性,再复制到项目库中使用。
注意:很多新手喜欢在原理图里直接使用AD自带的
Miscellaneous Devices.IntLib等集成库里的元件,或者从别人工程里复制。这非常危险!因为这些元件的封装可能不匹配,或者参数不准确。务必养成“使用前检查,关键元件自建”的习惯。
3. 原理图设计:逻辑的基石
原理图是设计的逻辑描述,它必须准确、清晰、无歧义。
3.1 绘制原理图符号
对于在项目库中找不到的元件,需要自己绘制。绘制时要注意:
- 引脚属性:
Designator(标识符,如R1, U1)和Comment(注释,如10k, ATmega328P)要设置好。Electrical Type(电气类型)要正确设置,如Passive(无源),Input,Output,Power等,这会影响后续的电气规则检查(ERC)。 - 符号美观与标准:尽量符合行业习惯,电源引脚通常放在顶部,地引脚在底部。复杂的IC可以分
Part绘制。 - 链接封装:在符号的
Properties面板中,点击Add Footprint,为它指定一个PCB封装。这是连接原理图和PCB的桥梁。
3.2 绘制原理图
- 放置元件与连线:从库中放置元件,使用
Place Wire进行电气连接。避免使用Place Line(只是图形线,无电气属性)。 - 电源与地网络:使用
Place Power Port放置电源和地符号(VCC, 3V3, GND等)。确保整个项目中相同网络名的电源/地符号是连接在一起的。 - 使用网络标签:对于远距离连接或总线连接,使用
Place Net Label。相同名称的网络标签在电气上是相连的。这对于整理图纸、提高可读性至关重要。 - 层次化设计:对于复杂电路,可以使用
Sheet Symbol创建层次化原理图,将不同功能模块放在不同的子图纸中。 - 注释与编译:
- 使用
Tools->Annotation->Annotate Schematics对所有元件进行自动位号排序。 - 使用
Tools->Parameter Manager可以批量管理元件参数。 - 绘制完成后,点击
Project->Compile PCB Project进行编译。AD会检查电气连接错误,如未连接的引脚、单端网络等。必须确保ERC报错为零或所有报错都已明确原因并被豁免,才能进入下一步。
- 使用
3.3 生成物料清单与网络表
- BOM(Bill of Materials):
Reports->Bill of Materials。在这里可以定制BOM表的输出格式,包含位号、参数、封装、数量、制造商料号等信息。导出为Excel方便采购。实操心得:在绘制原理图时,就在元件的
Comment或Parameters里填好准确的型号和关键参数(如电阻阻值、电容容值电压),这样生成的BOM才可直接用于采购,避免二次整理。 - 网络表:编译工程后,网络表已自动生成并关联。这是原理图信息向PCB传递的载体。
4. PCB布局:规划决定成败
PCB布局是物理实现的蓝图,好的布局是成功布线的一半,甚至更多。
4.1 板框定义与层叠设置
- 导入板框:如果已有结构DXF文件,在PCB文件中,
File->Import导入。然后使用Place->Line在Mechanical 1层(或专门的板框层)沿着导入的图形绘制闭合的板框。最后,选中所有板框线段,Design->Board Shape->Define from selected objects。 - 层叠管理器:
Design->Layer Stack Manager。这是高速设计和多层板的核心。- 确定层数:根据电路复杂度、信号速率、成本决定。简单双面板,复杂些的四层板(Top-GND-Power-Bottom),高速数字或密集模拟的可能需要六层或以上。
- 设置材质与厚度:常用FR-4, 1.6mm板厚。介电常数(Er)通常设为4.2-4.5。
- 规划电源地层:对于四层板,中间两层通常设为GND(地层)和Power(电源层)。完整的参考平面能为高速信号提供清晰的返回路径,并减少电磁干扰(EMI)。
4.2 导入元件与预布局
- 导入更改:在PCB文件中,
Design->Import Changes From ...。将原理图的网络和元件封装导入PCB。所有元件会堆积在板框外。 - 模块化预布局:不要急着把元件拖进板框。先在板框外,按照原理图的功能模块(如电源模块、MCU及外围、传感器接口、通信接口等)将元件分组摆放。这能帮助你理清布局思路。
- 核心器件优先定位:
- 接插件:根据结构约束,首先固定好USB、电源插座、按键、屏幕接口等位置。它们通常不可移动。
- 主控芯片:放置在板子中心或靠近主要接口和存储器的位置,考虑散热和信号流向。
- 电源路径:电源输入->防护/滤波->DC-DC/LDO->负载。布局应遵循电流流向,尽可能短而粗,减少压降和干扰。
4.3 详细布局原则
- 信号流导向:布局应使信号路径尽可能直接、顺畅。例如,传感器信号->调理电路->ADC->MCU。
- 模拟数字分区:如果板上有模拟和数字电路,应在布局上物理分隔。地平面也可以通过磁珠或单点连接进行分割。
- 去耦电容就近放置:每个IC的电源引脚附近(理想情况是焊盘背面)必须放置一个0.1uF(或更小,如0.01uF)的陶瓷去耦电容,为芯片提供瞬态电流。大容量的储能电容(如10uF, 100uF)可以放在电源入口处或区域中心。
- 发热器件处理:功率MOS管、LDO、DC-DC芯片要考虑散热。预留足够的空间,可能需要添加散热孔(Via)连接到内层或背面铜皮散热。
- 考虑可制造性:元件之间留出足够间距,便于焊接和维修。特别是手工焊接的区域。贴片元件尽量朝向一致。
5. PCB布线:连接的艺术
布局完成后,就进入了具体的连线阶段。布线是技术活,也是经验活。
5.1 布线规则设置
在布线之前,必须设置规则。Design->Rules。这是AD强大且核心的功能。
- 电气规则:
Clearance(间距规则)。设置不同网络之间的最小间距,如普通信号6mil, 电源到其他网络可设12-20mil。 - 布线规则:
Width(线宽规则)。可以针对不同网络设置不同线宽。例如:All: 默认信号线宽,如8mil。Power: 电源网络,根据电流大小计算。常用公式:线宽(mil)≈ 电流(A) / (温升系数 * 铜厚(oz))。例如,1A电流, 1oz铜厚, 温升10°C, 约需10mil线宽。实际中,电源线会尽可能加粗,如20-40mil甚至更宽。GND: 地线通常也尽可能宽,或通过铺铜实现。
- 过孔规则:
Routing Via Style。设置过孔尺寸。常用外径/内径如24/12mil(0.6mm/0.3mm)。高速信号可能需要更小的过孔。 - 铺铜规则:
Polygon Connect Style。设置铺铜与焊盘的连接方式,通常电源铺铜用Direct Connect(直接连接),信号铺铜用Relief Connect(十字花连接,便于焊接)。 - 类规则:可以对特定的网络类(如
DDR数据线、USB差分对)设置更严格的规则(等长、差分对)。
5.2 关键信号布线
- 电源线优先:先布通主要的电源网络。因为它们需要更宽的线,先布可以避免被其他细线挤占空间。对于大电流路径,可以考虑用铺铜代替走线。
- 关键信号线:时钟、高速差分对(USB, HDMI, MIPI)、模拟小信号等。这些线需要优先考虑,走线尽量短、直,避免锐角,参考平面完整。
- 差分对布线:使用
Place->Differential Pair命令,并配合Design->Classes创建差分对类,在规则中为其设置独特的线宽、间距和等长公差。
- 差分对布线:使用
- 一般信号线:在电源和关键信号布通后,再处理低速的GPIO、普通数字信号等。可以使用
Auto Route->Fanout/Route进行自动布线,但强烈建议手工调整或完全手工布线,自动布线的结果通常不够优化。 - 地线处理:对于双面板,地线可能也需要专门布线。但更好的方法是,在大部分信号线布完后,通过大面积铺铜(
Place->Polygon Pour)来构建地平面。铺铜时选择GND网络,并设置合适的清除间隔(如10mil)。
5.3 布线技巧与检查
- 避免直角和锐角:走线拐角使用45度角或圆弧,可以减少信号反射和电磁辐射。
- 使用过孔:换层时使用过孔。避免在敏感信号(如晶振)附近打过孔。
- 等长布线:对于DDR、高速并行总线等,需要做等长处理。使用
Tools->Interactive Length Tuning工具,通过蛇形走线来调整长度。 - 3D视图检查:按
3键切换到3D模式,检查元件是否有高度冲突,布局是否美观。 - DRC(设计规则检查):布线完成后,
Tools->Design Rule Check。运行DRC,检查所有违反预设规则的地方,并逐一修正,直到报错为零。
6. 后期处理与生产文件输出
布线完成并通过DRC,并不意味着设计结束。最后一步的输出文件决定了工厂能否正确制造你的板子。
6.1 丝印与标识调整
在Top Overlay和Bottom Overlay层调整元件位号(Designator)和注释(Comment)的位置和大小。原则是清晰、不重叠、朝向一致(通常从左到右,从上到下阅读),并且不会被焊盘或过孔盖住。可以添加公司Logo、板子名称、版本号、日期等信息。
6.2 铺铜与泪滴
- 铺铜:如果之前没有铺,现在进行大面积铺铜(通常是GND)。铺铜后,执行
Tools->Polygon Pours->Repour All来更新铜皮,确保覆盖所有区域且没有死铜(孤立的铜皮区域,可右键Polygon Actions->Shelve暂时隐藏或Remove删除)。 - 泪滴:
Tools->Teardrops。在焊盘和走线连接处添加泪滴,可以加强连接强度,防止应力集中导致断裂,在高可靠性设计中常用。
6.3 生成生产文件(Gerber & Drill)
这是交付给PCB工厂的标准文件集。File->Fabrication Outputs->Gerber Files。
- Gerber设置:
General: 单位选Inches, 格式选2:5(精度更高)。Layers: 选择要绘制的层。通常包括:Top Layer,Bottom Layer(线路层)Top Overlay,Bottom Overlay(丝印层)Top Solder Mask,Bottom Solder Mask(阻焊层, 决定哪里露铜)Top Paste Mask,Bottom Paste Mask(锡膏层, 用于SMT钢网)Mechanical 1(或多层, 用于板框)Keep-Out Layer(如果用它定义了板框)
Drill Drawing: 生成钻孔图。Apertures: 保持默认Embedded apertures (RS274X)。- 点击
OK后,会在项目文件夹生成一个Gerber Files的文件夹,里面包含所有.G*文件。
- 钻孔文件:
File->Fabrication Outputs->NC Drill Files。设置与Gerber一致(单位Inches, 格式2:5)。生成.TXT和.DRR文件。 - 文件检查:使用免费的Gerber查看器(如GC-Prevue, CAM350)打开生成的Gerber和钻孔文件,从工厂的视角检查每一层是否正确,有无缺失、错位。这一步至关重要!
6.4 生成装配图与坐标文件
- 装配图:在PCB文件中,通过层显示设置,只打开丝印层、机械层和位号,然后打印或导出PDF,用于指导手工焊接。
- 坐标文件:
File->Assembly Outputs->Generates pick and place files。生成元件中心坐标文件(.csv或.txt),用于SMT贴片机的编程。
7. 常见问题与深度排查指南
即使按照流程操作,新手也难免遇到各种问题。这里汇总一些高频问题及其解决方法。
7.1 原理图与PCB同步问题
- 问题:在原理图修改后,更新到PCB时出错,或元件/网络丢失。
- 排查:
- 确保工程已编译且无致命ERC错误。
- 检查原理图元件的
Designator(位号)是否唯一。重复的位号会导致更新混乱。 - 在PCB更新对话框中,仔细查看
Modifications列表,理解每一项更改(添加、移除、修改)。不要盲目全部执行。 - 如果出现大量无法匹配的错误,可能是库文件路径变更或封装名不一致。回到原理图,检查问题元件的封装链接。
7.2 DRC报错与布线瓶颈
- 问题:DRC报出成千上万的间距或线宽错误;布线时感觉空间不够,无法布通。
- 排查与解决:
- 规则设置是否过严:检查
Clearance和Width规则是否设置合理。对于密度高的板子,可能需要将默认间距从10mil降到6mil或8mil(需咨询板厂工艺能力)。 - 布局是否合理:布线困难的根本原因往往是布局不佳。尝试:
- 调整核心元件朝向。
- 将关联紧密的元件再靠近一些。
- 使用更小的封装(如0402电阻电容替换0603)。
- 考虑增加板层数(从双面到四层)。
- 过孔使用策略:善用过孔“跳线”。在密集区域,可以通过打孔换层来绕过障碍。但避免在高速信号路径上滥用过孔。
- 扇出:对于BGA等密集封装,在布局后立即使用
Auto Route->Fanout功能进行扇出(从焊盘引出短线并打过孔),可以为后续布线创造极大便利。
- 规则设置是否过严:检查
7.3 生产文件相关错误
- 问题:发板给工厂后,被告知文件有问题(如孔未对齐、丝印上焊盘、漏层)。
- 预防与排查:
- 自己用Gerber查看器检查:这是铁律!肉眼在AD里看到的和实际生成的Gerber可能有差异。
- 孔对齐问题:确保
Drill Drawing层和实际钻孔文件(.TXT)中的孔位置和大小一致。有时Drill Drawing的符号比例设置不当会导致视觉偏差。 - 丝印上焊盘:在PCB文件中,将丝印层和所有焊盘层(Top/Bottom Layer, Solder Mask)叠加显示,仔细检查是否有丝印文字覆盖了焊盘。工厂的阻焊开窗通常比焊盘大一点,但丝印上焊盘仍可能导致焊接不良。
- 漏层:核对输出的Gerber层列表是否完整。特别是
Mechanical层(板框)和Keep-Out Layer,必须有一层正确定义了板子外形。
7.4 软件性能与操作技巧
- 问题:PCB文件太大,操作卡顿;不熟悉快捷键,效率低下。
- 解决:
- 文件太大:通常是由于历史操作数据堆积、过多的铺铜碎片、未清理的覆铜区域导致。可以尝试
File->Database->Compact来压缩数据库。定期使用Tools->Polygon Pours->Repour All并移除死铜。 - 熟练使用快捷键:这是提升效率的关键。几个最常用的:
P->T: 放置走线。P->V: 放置过孔。Ctrl+M: 测量距离。Q: 切换单位(mil/mm)。Shift+S: 单层模式切换(排查布线时极其有用)。Ctrl+W: 交叉选择模式(在原理图和PCB间高亮关联对象)。
- 使用“Room”和“规则类”:对于重复的模块(如多个相同的LED驱动电路),可以先布局布线好一个,做成一个
Room,然后复制Room格式,可以快速完成相似布局。将需要特殊规则的一组网络(如DDR)定义为Net Class,可以批量管理规则。
- 文件太大:通常是由于历史操作数据堆积、过多的铺铜碎片、未清理的覆铜区域导致。可以尝试
画PCB是一个不断权衡和折中的过程:在性能、成本、可靠性、可制造性、开发时间之间寻找最佳平衡点。这套详细的AD流程,就像一份登山地图,它标出了主要的路径和关键的路标,但路上的碎石和陡坡(具体的问题)还需要你自己去体验和克服。我的建议是,对于第一个板子,不要追求完美,先追求“做出来”和“能工作”。在调试和测试中,你会发现哪些地方布局不合理,哪些信号需要特别处理,这些经验远比任何教程都宝贵。养成每个步骤都规范操作的习惯,用好DRC和Gerber检查,多向有经验的同事请教,你的PCB设计能力就会在这一个个项目的迭代中快速成长起来。最后,别忘了在板子空余处打个Logo和版本号,当它成功点亮的那一刻,你会觉得所有的折腾都是值得的。
