ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

AD19 PCB设计全流程:原理图、布局布线与Gerber输出技巧

AD19 PCB设计全流程:原理图、布局布线与Gerber输出技巧 接手一块四层板从原理图整理、库维护、布局布线一路做到 Gerber 和钻孔文件出图全程只用 Altium Designer 19 一套工具走完是很多硬件工程师的日常。但 AD19 这个版本有点特殊它是 64 位架构稳定下来之后的第二代产品界面逻辑和 AD18 一脉相承同时又把层叠管理器、Draftsman、Manufacturer Part Search 这些模块补得比较完整。结果是功能极多而常用功能其实只占其中很小一部分剩下的大量能力藏在菜单深处不知道的人永远不会去点。这篇内容整理的就是我自己在 AD19 里长期形成的一套流程和技巧覆盖工程搭建、原理图、库与封装、布局、布线、规则检查、输出交付以及踩过的坑。刚上手 AD 的新人可以照着搭一遍流程做过几年板子的人也可以挑其中几个批量操作和规则配置的思路来验证特别是那些手动点一百次和一条表达式搞定之间的差距。1. AD19 工程骨架从建工程那一刻就该定下的几件事1.1 工程结构与目录命名别让三个月后的自己骂人AD19 的工程是工程文件 若干文档的结构.PrjPcb 只是索引原理图、PCB、库、输出文件都是独立文件。很多人图省事把所有东西堆在一个目录里半年后要做版本对比或者交接时就得靠文件名猜。我自己的固定套路是分四个目录SCH、PCB、LIB、OUT工程文件放在根目录。OUT专门放 Gerber、钻孔、BOM、装配图这些生成物并且每次出图带上日期后缀原因是板厂反馈问题时经常需要确认你到底发的哪一版有日期目录就不用来回拉扯。命名上我强制自己遵守两条文件名不用空格和中文位号、网络名不出现特殊字符。看着像强迫症但 Altium 的部分脚本和外部工具对空格路径处理得并不好等你要用脚本批量改丝印的时候才发现这个问题返工成本会很高。另外AD19 里推荐用工程 子文件夹归档的方式管理子模块。如果一块板子上有电源、MCU、接口三个部分可以拆成多张原理图而不是一张大图。理由很实际一张 A2 图纸塞满元件编译一次要等好几秒而多张图可以并行编辑编译报错定位也更精准。1.2 Preferences 里值得先改的几项默认值AD19 的默认配置是面向演示的不是面向连续工作八小时的。装完软件我会先动几个地方这些设置一次改完后面每一块板子都受益。单位与精度PCB 里按Q可以在 mil 和 mm 之间切换显示。我的习惯是布局阶段用 mm 思考器件尺寸走线和规则里用 mil 思考线宽和间距因为多数板厂的能力值是按 mil 给的切换成本并不高。网格把默认网格通常是 10 mil 或 0.5 mm和细网格分别设好用G循环切换。布局用粗网格微调丝印和过孔用细网格不需要每次都进对话框。自动平移与缩放Preferences里把滚轮行为调顺——滚轮上下平移、配合 Ctrl 缩放是我用下来最不容易误操作的组合。默认的拖拽平移偶尔会误触发尤其用触控板的人。显示项把不需要的层关掉比如机械层只留必要的几个丝印层在布线阶段可以临时隐藏。层数越多重绘越慢这在四层以上板子上感知非常明显。这些改动的逻辑是一样的把高频操作变成一次按键把低频显示项关掉。AD19 的功能数量决定了你不可能记住所有菜单能记住的必须是最常用的那二十个。1.3 自动备份与本地历史出事之前先铺好退路AD 系软件最让人心痛的事故是文件损坏尤其是 PCB 文件在保存瞬间断电或者网络盘断连。AD19 有两套兜底机制都要提前配好。第一套是自动备份。在Preferences的Data Management分类下能找到备份相关选项建议把备份间隔设成 5 到 10 分钟备份数量保留足够多份。默认值偏保守真出问题时往往只剩一个很旧的副本。第二套是工程本地历史也就是工程目录下的隐藏历史目录。它记录了每次保存的快照可以在面板里浏览、对比、回滚。这套机制的价值在于对比而不只是恢复——你可以清楚地看到昨天到今天规则到底被谁改动了。注意如果工程放在网络盘或同步盘里历史记录和备份的可靠性都会下降。我自己的做法是本地磁盘工作阶段性再同步到共享位置避免写入冲突导致文件异常。2. 原理图阶段AD19 里真正省时间的几组操作2.1 快捷键体系默认的记一半自定义的补一半AD 的快捷键是两段式的先按一个字母打开子菜单再按第二个字母执行命令。这种设计的好处是不用记组合键坏处是每个命令要按两次。常见的高频命令我建议直接背下来比如放置导线、放置网络标签、放置电源端口这一组几乎每次画图都要用几十次。真正拉开效率差距的是自定义快捷键。AD19 里可以把某个命令直接绑到单键或者组合键上具体入口在工具栏右键菜单的自定义对话框里不同小版本的入口位置略有差异有的整合进了 Preferences。我给自己的设定原则是只给小键盘附近的键因为左手小键盘区离鼠标最近操作不需要抬手。自定义键位有两个坑要避开。一是不要覆盖软件内置的高频键比如网格切换、单位切换这类覆盖之后会非常别扭二是团队协作时把自定义键位导出成配置文件共享能让所有人的操作习惯对齐排查问题时沟通成本会低很多。2.2 Find Similar Objects 与 Properties 面板批量改参数的组合拳这是我在 AD19 里最依赖的一组功能没有之一。场景很典型一百个电阻要统一改成 0402 封装或者所有电源网络的走线要加粗或者所有过孔要统一尺寸。手动做法是一个个双击改一百次点击还容易漏。正确做法是用查找相似对象在 PCB 或原理图里选中一个样板对象通过右键菜单的查找相似对象命令打开对话框把要匹配的属性设成相同比如封装类型相同或者网络相同确认后所有匹配对象会被选中。此时再打开属性面板修改的数值会一次性应用到全部选中对象。这里有个细节值得说查找相似对象之后会生成一个过滤器界面下方的状态提示会显示当前过滤条件。改完之后记得清除过滤器否则后续的选择操作会被过滤条件干扰表现为怎么点都选不中东西新手经常在这里卡住。PCB 里还有更强的用法——用过滤器表达式配合列表面板。比如想看所有走线宽度小于 6 mil 的线可以写一条关于线宽的表达式结果会以列表形式呈现逐条跳转修改。这个组合在处理别人的旧工程时特别有用因为旧工程的规则往往一团乱全靠肉眼找是找不完的。2.3 网络类、差分对和 Room 在原理图里就定义好很多人是在 PCB 阶段才开始设规则这一步其实应该提前到原理图。AD19 支持在原理图上直接放置参数集这类指示对象给网络或者网络类打标签。这样做的好处是规则跟着原理图走换一块 PCB、重画一遍布局规则不用重新配。差分对也是同理。在原理图里用带后缀的命名方式一对网络的末尾分别用 P 和 N 之类的约定定义差分对进入 PCB 后可以直接在差分对编辑器里看到。如果不提前定义等到 PCB 里手工配对几十对差分线配下来眼睛都花了而且还容易配错极性。多通道或重复模块的设计建议在原理图里用 Room 或者重复子模块的方式组织。这一步做对了PCB 阶段能用复制 Room 格式把一块子模块的布局布线整体复制到其他实例上省下的是成小时的工作量。这一条我在第 4 节会展开讲。2.4 编译报错的分类处理与常见假报错AD19 的原理图编译会报出很多问题新手容易被吓到实际上要分三类看。第一类是真实错误比如网络只有一个连接点、电源端口悬空、器件位号重复。这类必须改尤其是单端网络它在 PCB 阶段会变成一段孤立的飞线如果没注意板子做出来就是断的。第二类是结构提示比如元件没有封装、引脚类型冲突两个输出引脚直接对接。前者必须补封装后者看情况有些器件的引脚类型本来就该是双向的是库建错了。第三类是假报错典型的是网络被多个电源端口驱动。当你在同一网络上放了两个不同的电源符号编译就会报冲突但实际电路上这是完全合法的比如两个不同的电源域通过零欧电阻连接网络名却写成了同一个。处理办法是把网络名区分开用物理连接表达连通关系而不是靠同名网络。我自己的习惯是编译之后逐条过一遍把可以忽略的报错在工程选项里关掉让报错列表保持干净。一个常年有几十条黄色警告的工程等于没有警告。3. 库与封装AD19 的库管理选型与封装自检清单3.1 集成库、本地库、数据库库该怎么选AD19 支持几种库形态选择逻辑我总结成下面这张表判断标准是团队规模和是否需要版本管理。库形态适用场景优点代价原理图库 PCB 库分离个人、单项目改起来最直接随工程走多项目复用靠复制容易分叉集成库小团队、模块化交付原理图符号与封装绑定交付一个文件修改要走反编译再编译流程略绕数据库库多人协作、有统一物料库元件参数集中管理BOM 一致性强需要维护数据库和驱动配置个人和两三个人的小团队我建议从集成库起步因为它把符号—封装—参数绑成了一个文件发给别人不会丢东西。团队到了一定规模元件参数厂家型号、料号、替代料需要在 BOM 里保持一致时数据库库的价值才体现出来否则你会陷入三个人三个 BOM的混乱。3.2 封装自检焊盘编号、原点、3D 与丝印封装是整条链路上最容易出错、后果又最贵的一环。我在 AD19 里给自己定了一份自检清单画完一个封装必过一遍焊盘编号与原理图符号引脚一一对应。这一步最容易被跳过做封装时按数据手册画完就算完结果符号那边引脚编号是 1、2、3封装这边是 A、B、C。上板才发现只能改板。原点位置。建议放在器件中心或者第一脚并保持全库一致。原点乱放会导致布局时对齐非常别扭而且机械装配图里的坐标也是乱的。焊盘尺寸带公差余量。数据手册给的往往是标称值实际要按板厂工艺给一点余量特别是细间距器件焊盘太窄会立碑太宽会连锡。丝印不压焊盘。丝印压到焊盘上板厂一般会做裁剪处理但裁剪的结果不可控器件名可能只剩半个。3D 模型。AD19 的 3D 视图质量已经足够做装配检查尤其是连接器、按键、屏蔽罩这类有高度限制的器件画个 3D 体哪怕只是用长方体近似能提前发现撞壳问题。提示封装库里最贵的错误是脚序镜像。做封装时如果从顶视图和底视图搞混焊盘顺序会整个反过来这种错误用 DRC 是查不出来的只能靠 3D 视图或者打印一比一纸样比对。3.3 BOM 输出与参数化元件的对应关系BOM 的准确性完全取决于原理图里的参数填写而不是输出那一刻的操作。AD19 输出 BOM 的入口在报表菜单里可以选 Excel 或者 CSV 格式还能套用自定义模板来控制列的顺序和显示方式。我的建议是把 BOM 模板固定下来列包括位号、数量、值、封装、厂家、厂家型号、备注。模板的意义在于每次输出格式一致采购和工艺看惯了一份格式就不容易误读。模板文件需要提前准备格式是一份带占位符的表格文件配置一次之后长期复用。另一个容易被忽略的点是不贴器件的处理。测试点、预留位、调试用的跳线这些在 BOM 里应该明确标注否则采购会把不需要的料也算进去产线也会困惑。我通常用一个自定义参数来控制比如加一列是否贴装输出时在模板里体现出来。4. 布局阶段规则先行还是手感先行4.1 规则顺序先建网络类再写间距与线宽关于规则先行还是先布局我的答案是结构件和接口位置先摆规则同时开始建不要等布完线再补规则。原因是 AD19 的在线规则检查是实时的规则建好之后你一边摆器件一边就能看到违规提示等于有个老师傅在旁边盯着。规则建立有一个合理的顺序乱了会反复返工先分网络类。电源、地、高速、模拟、高压各自一类。很多规则只需要按类设置一次性覆盖几十个网络。再设间距规则。默认间距按板厂能力给通常是最小值加一点余量然后对高压网络类单独设更大的间距。然后设线宽规则。同样按类设置电源类粗线、信号类默认线宽个别大电流网络再单独设。最后设特殊规则。差分对、阻抗、过孔尺寸、区域约束这些属于锦上添花前面三条没建好就设这些是本末倒置。关于阻抗AD19 的层叠管理器已经能做阻抗计算可以按目标阻抗反推线宽和介质厚度并且能把这些参数与规则联动。如果板子有明确的阻抗要求比如常见的单端 50 欧、差分 90 或 100 欧这一步一定要在建层叠的时候做而不是布完线再回来调。因为线宽一变整个布线密度和过孔规划都要跟着变。4.2 交互式布局与 Cross Select 的联动布局阶段最有效的操作是让原理图和 PCB 联动。AD19 支持交叉选择模式打开后在原理图里框选几个元件PCB 里对应的元件会同步高亮直接拖动摆放就行。比起在 PCB 里对着位号找元件效率差好几倍。配合分屏使用效果更好把原理图和 PCB 两个窗口并排左边选模块、右边摆位置一个功能模块几分钟摆完。我习惯按功能模块顺序来先摆结构和接口因为位置被外壳定死了再摆电源再摆主控最后是小信号和外围。顺序反了的话后面每摆一个模块都要挪前面的东西。还有一个 AD19 里很实用的功能是按 Room 排布。如果原理图里用了 Room 或者多通道结构PCB 里可以对某个 Room 内的元件执行自动排布把它们在给定区域内规则排开作为布局的起点然后再手工微调。自动排布的结果不会很好看但从零开始摆变成改一个半成品心理成本低很多。4.3 多通道设计的 Room 复用布局布线的批量复制多通道设计是 AD 相对有优势的一块。典型场景是一块板子上有 8 路相同的采集通道每一路的布局布线完全一样。手工做八遍第一遍三小时后面七遍加起来也得十几个小时而且容易有细微不一致。正确流程是原理图里把通道做成重复子模块或者用 Room 标记PCB 里对第一路精心布局布线然后用复制 Room 格式把这一路的布局和布线整体复制到其余七路。复制时可以勾选具体复制哪些内容——器件位置、走线、过孔、铺铜。注意复制之后要检查网络映射是否正确尤其是跨 Room 的公共网络电源、地、总线复制出来的走线需要重新连接。这个功能我用下来的体会是复制一次能省两三个小时但如果原理图端的 Room 结构没组织好复制出来的东西会错位。所以真正的工作量在原理图阶段这一步偷懒后面全都要还回来。5. 布线AD19 交互式布线器与铜皮管理5.1 布线模式与推挤策略的取舍AD19 的交互式布线器有个很容易被忽略的特性布线过程中可以切换走线模式。常见的几种模式包括绕行、推挤、紧贴、忽略障碍。切换方式是在布线状态下用组合键循环或者进布线器偏好里设默认值。这几种模式该怎么选我的经验是这样推挤适合密度适中、走线还没铺满的区域。它会把你正在走的线之外的东西推开走起来很爽但密度一高就会把旁边的线推得乱七八糟甚至推出规则。绕行适合已经布得比较满的区域它会自动绕开障碍。缺点是绕出来的形状经常很难看而且会增加线长对时序敏感的信号要小心。紧贴适合需要贴着障碍外侧走线、控制回路面积的场景比如开关电源的功率环路。忽略只在你明确知道自己在干什么的时候用比如故意穿过某个区域之后再手工修剪。把默认模式设成推挤、需要时切绕行是我用下来最顺的组合。另外强烈建议开焊盘入口方向的引导——走线进入焊盘时的角度模式可以让焊盘连接更整齐也方便后续手工修线。5.2 差分对与等长xSignals 与长度调谐差分对的处理分两步定义和走线。定义在原理图端做前面说过走线时用差分对布线命令两条线会一起走自动保持间距遇到障碍一起绕。规则里可以约束差分对的线宽、间距、最大长度差。等长是更麻烦的一类。常见于并行总线和时钟组。AD19 里有专门用于定义信号组的功能可以把源端、末端、过孔路径都纳入长度计算比单纯看网络长度准确得多。分组之后用长度调谐命令走蛇形线界面上会实时显示当前长度和目标长度差多少一目了然。关于蛇形有两个实操经验调谐的振幅不要太小。有些人为了省空间把蛇形走得又密又小结果相邻线段之间产生串扰反而比不等长更糟。调谐位置靠近接收端。一般建议放在靠近负载的一端这样反射和串扰的影响更可控。5.3 铺铜、割铜与重铺的效率技巧铺铜在 AD19 里有两个绕不开的问题慢和乱。慢的原因是铺铜是重绘开销的大头。一块四层板铺完铜缩放和拖动会明显卡顿。我的处理办法是在布线阶段把铺铜的显示改成轮廓模式只看边界不看填充进入最终检查阶段再恢复实心显示。这个切换在视图配置里可以改是 AD19 里性价比最高的性能优化之一。乱的原因是重铺之后铜皮形状会变。每次改完走线或者加过孔都要重铺全部铜皮如果每次都全量重铺一块板子改十次就要等十次。技巧是局部修改时只重铺受影响的铜皮全量重铺留给最终检查前做一次。铺铜管理器面板里能看到所有铜皮的列表重铺顺序、优先级、是否被搁置都能控制。割铜在铜皮上挖洞用于隔离不同网络或者开窗。常见错误是挖完之后忘记重铺铜皮上还是旧形状或者挖的形状和走线安全间距不够。我的习惯是割铜之后立刻重铺该块铜皮并跑一次局部检查。5.4 过孔缝合与丝印收尾地过孔缝合是高速板和射频板的常规操作AD19 里有专门的命令可以沿指定网络通常是地在铜皮上按间距批量打过孔并连接到该网络。设置里要控制几个参数过孔间距、是否沿板边、是否避开已有过孔和走线。间距设得太密就是浪费钻孔成本一般按波长或者按屏蔽需求来定。丝印收尾是很多人敷衍的一步但装配和维修的体验全在这上面。我的几条固定规则位号统一朝向同一方向的可读方向、不压焊盘、不压测试点、极性器件的标记清晰、接口的引脚定义标出来。AD19 没有原生的丝印自动避让只能手工调整或者用外部脚本处理。既然要手工那就在布局阶段把位号一次性摆好别留到最后。6. DRC、输出与交付最后一道关怎么过6.1 DRC 的取舍哪些报错必须改哪些可以放跑 DRC 之前先想清楚一件事DRC 报出的每一条是真的会出问题还是规则设得太严。下面这张表是我对常见报错的分类处理习惯。报错类型常见原因处理建议安全间距违规走线太近、规则过严优先改线确实无法避让时和板厂确认能力后再放宽短路不同网络重叠必须改这是真问题未布线网络漏连、电源未接必须改逐条确认丝印覆盖焊盘位号位置不当一般改板厂可能会裁掉导致位号缺失焊盘与铜皮间距铺铜设置改铺铜规则或者加大隔离带器件间距规则设了严格值看工艺要求非必须可放宽需要强调的是在最终出图前必须先把在线检查关掉或者把规则调到与最终一致否则你会一边改一边被新报错淹没。另外DRC 结果是和当前规则绑定的出图前把规则导出留档下次改版要能复现同样的检查结果。6.2 Gerber、钻孔与 BOM 的输出参数输出这一步最怕的是文件看起来生成了板厂说不能用。AD19 的输出入口在制造输出菜单下Gerber 和钻孔是两套独立的输出参数必须对齐。几个关键点单位与格式。Gerber 常用的组合是英寸单位配合较高的格式精度钻孔的单位和格式必须与 Gerber 一致。两边不一致是板厂最常见的退回原因之一。嵌入孔径表。勾选之后孔径信息直接写在 Gerber 文件里减少板厂读错的可能。层映射。输出前确认每一层映射到了正确的 Gerber 层名特别是机械层和丝印层不要出现该出的没出、不该出的出了。最简单的验证方式是生成后逐层打开看一眼。钻孔表。单独输出一份钻孔表放在交付包里方便板厂核对孔数和孔径种类。阻抗说明。如果板子有阻抗要求交付时附一份说明写清楚哪些层、哪些线、目标阻抗是多少。指望板厂从 Gerber 里猜是不现实的。BOM 的输出前面说过了补一句BOM 和坐标文件最好同一次生成保证版本一致。坐标文件用于贴片如果和 BOM 不是同一版产线会出现料对了但位置对不上的尴尬。6.3 Draftsman 与 3D PDF给结构和装配的交付物AD19 的 Draftsman 是一个独立文档类型可以从 PCB 自动生成装配图、尺寸标注图、层叠示意图输出成 PDF 或者通用图纸格式。对硬件工程师来说它的最大价值是不用再开另一个软件画装配图尤其是需要给结构工程师或者产线提供装配示意的时候。我常用的几样东西顶层/底层的元件装配视图、板框尺寸和关键开孔位置、层叠结构表。这三样放在一份文档里交付给结构、工艺、产线都够用。另外 3D 视图可以直接导出成 PDF里面可以旋转、剖切、隐藏零件。这个格式给结构工程师做干涉检查特别方便对方不需要装 EDA 软件就能看。导出前记得把 3D 模型都挂上缺模型的器件用简单的长方体替代总比什么都没有强。7. AD19 使用中踩过的坑与性能优化7.1 文件异常与恢复历史记录怎么找回来我遇到过两次 PCB 文件打开报错的情况一次是保存过程中断一次是文件放在同步盘上被占用。两次都是靠本地历史救回来的。恢复路径是打开工程时选择恢复历史版本或者进工程目录找到历史目录从里面挑一个时间点最近的副本另存出来。有几点经验值得记下来历史记录的粒度取决于保存频率。如果你习惯两小时保存一次那历史记录的价值就会大幅下降。我后来改成阶段性主动保存重要节点手动另存一个版本号。不要只依赖一个位置。本地历史 定期另存到另一个磁盘两条腿走路才稳。出现异常后先别反复打开。反复打开同一份损坏文件有可能覆盖掉可用的历史副本先把目录整体复制一份再操作。7.2 卡顿显示、在线 DRC 与铺铜的代价AD19 卡起来的原因基本就三类定位方法很简单——逐个关掉看效果。第一类是显示负担。层数多、铜皮多、元件多的板子每次缩放都重绘全部内容。解决办法是分层显示把无关层隐藏、把铺铜改为轮廓显示、关掉不必要的高亮和透明度效果。这三条叠加效果通常立竿见影。第二类是在线规则检查。它会随着你的每次操作重新计算板子越大越慢。在高密度区域布线的阶段可以临时把在线检查关掉或者放宽规则进入检查阶段再打开。但要建立习惯关掉在线检查的这段时间不能一直延续到出图。第三类是原理图编译和网络同步。原理图元件特别多的工程每次同步都慢。拆成多张图之后这个问题会缓解不少。我的建议是不要在卡顿里硬扛。一次性能优化花十分钟能省下后续几十个小时的等待而且修改参数时的心态完全不一样。7.3 跨版本协作的现实方案最后说一个团队一定会遇到的事AD 的版本兼容是单向的低版本打不开高版本工程高版本打开低版本工程需要转换转换之后某些特性可能失真。团队里有人用 AD19有人用更高版本是最容易出问题的组合。我用下来最稳的方案是三条一起上团队统一版本。这是根本解安装包和补丁版本号都统一能用同一套库和模板。跨版本靠中间格式。如果必须传给别人导出成通用的图纸格式原理图 PDF、装配图 PDF用于沟通实际协作还是要求对方升级或者自己降级处理。指望直接互传工程文件不出问题基本是运气。库和模板独立于版本管理。把库、BOM 模板、输出配置集中放在一个位置用版本控制工具管理起来这样即使换版本配置也能复用。说到底AD19 这套工具的能力上限很高但真正决定效率的不是它有多少功能而是你有没有把常用的那几十个操作变成肌肉记忆把重复劳动交给规则、批量操作和模板。我自己从一个个双击过渡到写表达式批量处理中间走了不少弯路最大的感受是每次遇到一个要重复做三遍以上的操作就应该停下来想想有没有更省力的办法这个习惯比记住任何一个快捷键都值钱。
返回列表