1. 先把简单两个字定义清楚我接触 ADAltium Designer画板子十几年最怕听到的一句话就是这块板子很简单随便画画就行。因为说这话的人脑子里的简单和手上要干的活往往不是一回事。一块只有电源指示灯和几个排针的板子确实简单但一块带 24V 转 5V、两路继电器输出、还要求隔离的板子也常被人叫做简单。所以我想先把这个前提摆出来所谓简单的 PCB指的是功能单一、层数不超过两层、没有高频和高速信号、没有严格的阻抗控制要求、器件总数在几十个以内的小板子。这类板子从画图到出 Gerber正常情况下我一天能干完一块慢也就两天。这篇文章想解决的就是从零开始把一块小板子从头画到尾这条链路上的所有坑。它适合三类人第一类是刚学完 AD 基础操作、能画原理图但一到 PCB 就发懵的同学第二类是常年焊板子、想自己画块转接板或者小模块的硬件爱好者第三类是从别的 EDA 工具转过来、想快速上手 AD 这套交互逻辑的工程师。我不打算讲那些菜单在哪儿、按钮叫什么这类说明书内容那种东西翻帮助文档更快。我要讲的是每一步为什么这么选、参数凭什么这么定、哪里容易翻车以及我踩过的那些坑。先给个整体判断画简单的 PCB真正花时间的不是走线这个动作而是前期想清楚这块板子要干什么。我见过太多人上来就拖器件、就开始连线画到一半发现电源走不过去、接口位置和外壳对不上、连接器的方向反了然后推翻重来。前期的十分钟思考能省掉后面两小时的返工。下面我按实际做项目的顺序来拆从工程结构、层叠规则、布局、走线铺铜一直到出图和排查每一段都尽量讲透。2. 开工前的准备工程结构、层叠与规则2.1 工程文件怎么组织才不会乱AD 默认建立的是一个 PCB Project里面至少包含一个原理图文件.SchDoc和一个 PCB 文件.PcbDoc。我的习惯是把原理图按功能拆成多个页比如电源页、主控页、接口页这样一个页面上不会挤成一团改起来也快。拆页有个前提网络标号要统一跨页连接靠的是网络标号Net Label和端口Port不是靠物理连线。新手最容易犯的错就是在同一页里用线连得好好的换页之后忘了加网络标号结果 PCB 里两个本该连在一起的网络是断开的DRC 也不报错因为 AD 认为它们本来就是两个网络。这个错误非常隐蔽等到板子打回来发现不通就晚了。工程文件的路径也有讲究。AD 对中文路径和特殊字符的容忍度一直不太好尤其是在生成 BOM、导出 Gerber、关联 3D 模型这些环节路径里带中文或者带空格经常会出现莫名其妙的报错。我的做法是给每个项目建一个纯英文的目录路径深度不要超过三层比如D:\proj\led_driver_v1\里面再分sch、pcb、out、doc四个子目录。这个习惯看起来有点强迫症但当你一年做二十块板子、回头要找三个月前那块板子的 Gerber 时就知道好处了。还有一点原理图里的器件参数别只填个位号就完事。注释Comment栏里写清楚具体型号比如不要写电阻写10K 1% 0603或者AMS1117-3.3 SOT-223。这个信息会直接进 BOM采购和焊接全靠它。我吃过亏一批板子上的分压电阻只写了10K贴片厂随手拿了 5% 精度的料结果那路采样电压偏差超出预期整批返工。从那以后我原理图上所有元件的 Comment 都写得死死的。2.2 层叠结构和板厚到底怎么选简单板子绝大多数是两层板这个没什么争议。真正需要决定的是板厚和铜厚。板厚最常见的是 1.6mm这个尺寸的机械强度、连接器适配性、打样价格都最友好除非你的结构件有特殊要求否则不用纠结就 1.6mm。我做过一个塞在很小外壳里的模块被迫用了 0.8mm结果是板子太软插件连接器插拔几次之后焊盘就开始起翘后来加了补强才解决。所以减薄这件事除非是被结构逼的否则不要主动做。铜厚方面打样默认是 1oz也就是 35μm。对于大多数信号和几百毫安的电流1oz 绰绰有余。只有当板子上有大电流路径时才需要考虑 2oz比如电机驱动、大功率 LED 阵列。2oz 的价格会比 1oz 高一些而且最小线宽/线距的工艺能力会收紧比如 1oz 能做到 6mil 线宽2oz 可能就要求 8mil 以上。所以我的原则是能用 1oz 解决就不上 2oz实在电流大优先考虑加宽走线或者开窗加锡而不是直接加铜厚。四层板在简单 PCB这个范畴里其实很少用到但有一种情况例外板子上同时有模拟小信号和数字开关信号而且模拟部分的精度要求不低。这时候用四层把中间一层整片做地平面能明显改善噪声。四层板的典型叠层是顶层信号、内层地、内层电源、底层信号总厚 1.6mm 的话芯板加半固化片的组合要让中间介质厚度合理一般地平面和电源平面之间放一张较薄的半固化片形成天然的平板电容对电源噪声有一定抑制作用。不过这是进阶话题如果只是画个转接板别给自己加戏。2.3 设计规则先设还是后设这个问题我被问过很多次。我的答案很明确在布局之前就把规则设好不要等到走线的时候发现线宽不对再回头改。规则设好之后布线时 AD 会自动套用你根本不用记每条线该多宽工具会帮你守规矩。必设的规则就那么几条安全间距Clearance、线宽Width、过孔尺寸Via、阻焊和丝印的扩展量。安全间距在简单板子上设 6mil 到 8mil 都能被绝大多数厂家做出来我个人习惯设 6mil留一点余量给厂家。线宽我会建三档信号线 8mil、电源线 20mil、大电流线 40mil 或者更宽用规则里的不同网络类Net Class来区分比如把所有 GND 和 VCC 归到一个 Power 类里统一给 20mil。过孔我习惯用 0.3mm 孔径配 0.6mm 焊盘这个尺寸在两层板上打样基本不额外收费而且占空间小。这里有个细节值得说安全间距不是越小越好。设成 4mil 确实能让你在密集区域走线更从容但厂家的蚀刻公差、钻孔公差都是有限度的间距太小容易出现蚀刻不干净导致的短路或者钻孔偏位打到旁边的铜。我见过有人的板子在 4mil 间距下良率只有七成改成 6mil 之后就没问题了。简单板子本来就不缺空间没必要去挑战工艺极限。3. 从原理图到 PCB把网络关系搬过去3.1 原理图检查与封装确认导入 PCB 之前有一件事必须做确认每个器件的封装都指定了而且指定的是你库里真实存在的那个。AD 里最坑的一种情况是原理图上的封装名字填了但库里根本没有这个封装或者名字差一个字母。导入的时候它不会报错但 PCB 上就是少那个器件你如果没仔细数很容易漏掉。我的做法是在原理图里用封装管理器Footprint Manager过一遍把所有器件的封装列出来一个个核对。封装的另一个大坑是引脚编号和实际器件对不上。比如 SOT-23 封装的 MOS 管不同厂家的引脚定义可能不一样有的把栅极放 1 脚有的放 2 脚。原理图符号是按某个厂家的数据手册画的如果换成另一家的料封装没跟着换板子做出来就是焊上去不工作。这个问题在二极管、三极管、稳压器上特别常见。我现在的习惯是封装库里的每个封装都自己对着数据手册画一遍不直接从网上下载。还有一点做完原理图之后要用编译功能Project - Compile PCB Project跑一遍它会检查重复位号、单端网络、未连接的引脚这些。单端网络Net with only one pin的警告一定要看那通常意味着你有一条线画了但没接到该接的地方。3.2 导入 PCB 与器件布局的土办法从原理图导入 PCB 是 Design - Update PCB Document点进去之后会弹出一个差异对比界面把原理图里的所有器件和网络都列出来。这里要养成一个习惯执行之前先点Validate Changes全部变绿了再点Execute Changes。如果出现红色的错误八成是封装缺失或者封装名不匹配回去改原理图不要硬着头皮点执行。器件导入之后会全部堆在板框外面接下来就是布局。布局这块我有个特别土但特别好用的方法先在纸上画一遍。不是用电容电感那些符号就是画方框把连接器、芯片、大器件的位置摆一摆标出接口朝哪边、电源从哪进、指示灯朝哪个方向能看见。纸上五分钟能想清楚很多在屏幕上看不出来的问题。真正在 AD 里布局时我的顺序是先定钉子户所有需要露在外面或者有机械约束的器件先放比如连接器、按键、指示灯、安装孔。这些位置一旦定了就不能动其余的器件围着它们摆。然后是核心芯片一般放在板子中间偏上的位置方便四周引线。最后是那些小电阻电容靠近它们服务的芯片引脚放。布局的时候有几个判断标准我列成表格方便对照判断项好的做法常见错误电源路径从输入到输出的器件排成一条直线或 L 形电源绕一大圈或者被其他器件挡住去耦电容紧贴芯片电源引脚走线尽量短放在芯片另一侧或者一堆电容挤在一起离芯片很远晶振靠近芯片下方不走其他信号线晶振放得远走线绕来绕去发热器件分散摆放留出散热空间几个发热器件叠在一起调试接口放在板边方便插线藏在板子中间被其他器件包围3.3 布局阶段就要想清楚走线通道布局和走线不是两个割裂的阶段好的布局已经把走线通道预留出来了。我在布局的时候会下意识地看一眼这个芯片的引脚出来往左走的信号要经过哪些器件有没有空间。如果发现某个方向被堵死了就挪一挪。举个例子一块带 16 路输出的板子主控芯片 32 个引脚左右各 16 个。如果把它放在板子正中间那么左右两边各需要 16 条通道引出去板子宽度不够就直接塞不下。这种情况我一般会把主控挪到偏一侧让它的一侧引脚短距离接去耦电容就结束另一侧引脚对着板子宽阔的方向引出去。这个调整看起来很小但能省掉后面大量的绕线。还有一种情况是模拟和数字要分开。虽然简单板子上不太讲究这个但有一条底线模拟小信号的地和数字开关信号的地不要混在一起走。我的做法是布局上就把模拟区域和数字区域各占一边中间用一条空隙隔开铺铜的时候两块地的连接点只留一个。这个做法在只有一层板的情况下效果有限但有两层板时底层专门走一块完整的地效果就很明显了。4. 走线与铺铜真正吃力气的部分4.1 线宽和电流的关系不是玄学新手最常问的就是我的线该画多宽。这个问题有标准答案网上流传的各种线宽电流对照表本质上是根据温升算出来的。我直接给你实操用的数值按 1oz 铜厚、允许温升 10℃ 来算单位都是毫米和安培线宽外层1oz大致载流能力典型用途0.2mm约 0.5A小信号、LED 指示0.3mm约 0.7A一般电源支路0.5mm约 1.1A主电源线1.0mm约 2.0A大电流路径2.0mm约 3.5A电机、大功率注意这张表是外层的情况内层因为散热差载流能力要打七折左右。另外超过 1A 的路径最好不要靠一条线硬扛可以考虑用几条线并联或者干脆不铺阻焊、在上面加锡。换算的时候有个经验公式可以用载流能力和线宽的平方根大致成正比。比如你知道 0.5mm 能过 1.1A那想估算 1.0mm就是 1.1 乘以根号 2约 1.55A。实际因为散热改善会略高于这个值表里的 2.0A 就是这么来的。这个估算方法够用了不用每次都去查标准表。有个坑必须提醒很多人把走线宽度算得很准但忘了过孔和焊盘颈缩的地方。一条 1mm 的线中间打了个 0.6mm 焊盘的过孔这个位置的等效宽度就只有 0.6mm 了大电流下这里就是瓶颈。我的做法是大电流路径上要么多打几个过孔并联要么用椭圆焊盘把长轴方向对着电流方向。4.2 走线避让、铜皮挖空与开窗走线避让这件事AD 的交互式布线器其实挺聪明的。按 PT 进入交互式布线它会自动推挤已经存在的线也会自动避开铺铜。但它的聪明是有代价的如果你在一个区域反复推挤最后出来的走线会很乱而且可能绕远路。所以我用推挤模式只在局部小范围调整时用长距离走线我一般关掉推挤自己手动规划路径。铜皮挖空Polygon Cutout是个很实用的功能。什么时候用最常见的是安规间距。比如板子上有 220V 输入和低压输出中间需要留足够的爬电距离这时候就在铺铜上用 Polygon Cutout 挖掉一条区域让高低压之间的铜皮彻底断开。另一个场景是减少寄生参数比如射频或者高阻抗节点下面不希望有铜也挖掉。做法是 Place - Polygon Pour Cutout画一个闭合区域然后右键铺铜选择 Repour。开窗Solder Mask Opening的用途比挖空更多。什么叫开窗就是让某块铜皮裸露出来不上阻焊这样可以直接在上面加锡或者用来做测试点、散热焊盘。在 AD 里做开窗有两种方式一是在阻焊层Top Solder / Bottom Solder上直接画 Fill 或 Region二是在铺铜的属性里把层设置为阻焊层。第一种方式更直观我一般用第一种。画的时候注意阻焊层的图形是负片逻辑你画上去的东西就是会被开窗的地方别搞反了。散热焊盘的开窗有个细节如果焊盘本身要过回流焊开窗的面积不要太大否则锡膏会摊开导致虚焊。一般开窗比焊盘单边大 0.05mm 到 0.1mm 就够了。如果是需要手工加锡散热的那可以开大一点甚至把旁边一圈铜都开出来方便用电烙铁堆锡。4.3 多边形填充和铺铜参数的取舍AD 里的铺铜有两种一种叫 Polygon Pour一种叫 Fill。很多人分不清其实用途完全不同。Fill 是实心的矩形/多边形不带网络属性适合用来做小面积的铜块比如散热片、跳线。Polygon Pour 是带网络属性的会自动和同网络的焊盘连通和不同网络的焊盘保持间距适合做整片的地或者电源平面。简单板子上用得最多的是 Polygon Pour。铺铜的参数里有几个关键的我逐个说。第一个是移除死铜Remove Dead Copper这个一定要勾上。死铜就是那些和任何焊盘都不连通的孤立铜块它们不参与电路还可能成为天线拾取噪声。第二个是移除孤岛Remove Islands含义类似阈值设成小于多少面积的铜块被移除。第三个是连接方式焊盘和铺铜的连接有直接连接Direct Connect和热焊盘Thermal Relief两种。热焊盘是四根细线连过去好处是焊接时散热慢、好焊坏处是载流和接地阻抗略高。我的原则是地网络用热焊盘电源和大电流用直接连接。铺铜的栅格Grid参数也值得调。默认是网格填充看起来像棋盘其实是为了减少计算量。现在的电脑性能足够我一般直接设成实心填充Solid视觉效果更接近实际板子。如果要调网格间距设得太大会导致铜皮上出现明显的空洞影响载流和屏蔽效果一般不要超过 10mil。还有一点容易被忽略铺铜完成之后要按 TG 或者右键 Repour 重新灌注一次因为如果你改了走线原来铺的铜不会自动更新必须手动重新灌。我习惯在出 Gerber 之前把所有的铺铜重新灌一遍确保万无一失。5. 收尾输出DRC、Gerber 与各种格式转换5.1 DRC 检查怎么读才不会漏掉真问题DRCDesign Rule Check是出板前的最后一道关。运行方式是 TD弹出来的报告里会列出所有违反规则的地方。新人看到一屏红字容易慌其实大部分是误报或者可以接受的。我教你一个读报告的顺序先看短路Short Circuit和断路Open Circuit这两个是致命错误必须零容忍。然后看间距违规Clearance Violation逐条看是不是真的有问题。最后看丝印压焊盘、焊盘间距这类可以酌情忽略。误报的典型来源是这些器件封装的丝印文本超出了丝印层范围这个无害铺铜和板框的间距违规如果板框本身在 Keep-Out 层上通常可以不管测试点或者安装孔和铜皮的间距如果是有意为之也可以放过。我的习惯是把这些已知无害的项加入排除列表这样报告里剩下的就都是要处理的。有一个错误一定要查清楚报Multiple Net Names on Pin说明同一个引脚上有两个网络标号通常是复制粘贴的时候带过来的会导致网络混乱。还有一种Net with only one pad说明某个网络只有一个焊盘那这条线等于没接功能上必然出问题。5.2 导出 Gerber、钻孔文件和 PDF出 Gerber 是 File - Fabrication Outputs - Gerber Files。弹出来的对话框里格式选 RS-274X单位选毫米精度一般选 4:4也就是 0.1μm 的精度够用。层要选哪些至少要有顶层线路、底层线路、顶层阻焊、底层阻焊、顶层丝印、底层丝印、顶层锡膏、底层锡膏再加板框。板框在哪一层要确认清楚有些厂家要求单独的机械层有些接受 Keep-Out 层这个提前问一下厂家。钻孔文件是 File - Fabrication Outputs - NC Drill Files格式和单位要跟 Gerber 保持一致否则叠图的时候会对不上。这个错误很隐蔽导出文件看起来都正常但厂家叠图之后钻孔和焊盘偏了做出来的板子孔全是歪的。判断方法很简单Gerber 用毫米钻孔也用毫米Gerber 用英制钻孔也用英制。混用必错。PDF 导出主要是为了存档和给别人看File - Smart PDF 向导走一遍就行。我一般会导出两份一份是只有顶层的一份是顶底叠合的前者用来看器件位置后者用来看走线关系。如果要给别人做焊接指导还可以导出位号图就是只显示丝印层和焊盘层的那种。3D 视图和 3D 文件导出是另一个常用功能。按数字键 3 可以切到 3D 视图前提是器件有 3D 模型。给元件添加 3D 封装有两条路一是用官方的 STEP 模型在封装属性里关联二是自己用 Extruded 3D Body 挤一个简单的立方体尺寸按器件高度来。后者虽然丑但对于检查高度干涉完全够用。我一般只给连接器、大电容、散热器这些高个子器件做 3D电阻电容那种 0603 的做不做影响不大。导出的 3D 文件是 STEP 格式可以给结构工程师做装配检查。5.3 外部文件导入的几种情况DWG 文件导入 AD。结构工程师给的板框通常是 DWG 格式。导入方式是 File - Import - DXF/DWG导入时选择放到哪一层一般选 Keep-Out 或者机械层。导入后经常发现图形是断开的线段不是闭合的多段线这时候要用 Design - Board Shape - Define from Selected Objects 重新定义板框。导入的坐标原点要对齐否则后面和结构件对不上。Gerber 转 PCB。AD 有这个功能走 File - Import Wizard 或者用 CAMtastic 打开。但我要泼一盆冷水这个转换出来的东西基本只能当参考底图用网络关系全丢了焊盘和走线都变成了没有网络的图形不能直接拿来改。真要用也就是把别人的 Gerber 导进来当背景自己对着重新画一遍。想直接改别人的 Gerber 来生产风险极高不建议。从其他 EDA 工具导入。比如从 Allegro、PADS 转过来的工程AD 的导入向导支持一部分但经常报版本太旧或者格式无法识别。这种时候最稳妥的办法不是硬转而是把原理图重新导一遍、PCB 重新画或者让对方导出通用格式比如 EDIF。转过来的工程最大的问题是封装库映射不上会出现大量器件缺失。6. 常见问题与排查技巧实录6.1 那些看起来像玄学的问题PCB 上的器件点不中、选不了。这个我遇到太多次了原因通常有两个。一是器件被锁定Locked了在属性面板里把 Lock 的勾去掉就行。二是过滤器Filter被改过比如只允许选中走线不允许选中器件按 ShiftC 清除过滤器或者检查一下右下角的 Filter 面板。还有一种情况是你当前在 3D 视图或者单层模式ShiftS下切回来就好了。文件打开到一半自动关闭或者报错。先别急着重装软件八成是文件本身损坏了。AD 会在同目录下生成一个.PcbDoc.htm或者历史版本可以从 History 文件夹里找备份。如果工程是从别人那里拿来的检查一下路径里有没有中文和特殊字符以及引用的库文件是不是还存在于原来的位置。库找不到的时候AD 有时会直接崩。铺铜之后走线走不过去。这是因为铺铜已经存在而你走的线属于不同网络会被间距规则挡住。解决办法是先在铺铜上划一条 Cutout或者临时把这块铺铜设成 Draft 模式只显示轮廓不显示填充走完线再灌铜。导入的 DWG 板框没法定义。前面说过多半是因为图形是散线段。可以全选这些线段然后用 Tools - Convert - Create Region from Selected Primitives 合并成一个区域再定义板框。6.2 值得刻进肌肉记忆的快捷键我把自己天天用的快捷键整理了一张表都是我实际操作中真的会按的那些一辈子用不到两次的就不列了快捷键功能使用场景PT交互式布线最常用走线主力PP铺铜画完线铺地PG多边形填充局部补铜PL画线画板框、画机械线ShiftS单层显示切换检查某一层走线CtrlShift滚轮切换层快速换层走线L打开层设置改层颜色和显示JC定位到元件快速找到某个器件TD设计规则检查出板前必按TM复位错误标记DRC 报错清除后ES选择配合各种选择方式CtrlM测量距离核对尺寸关于快捷键我有个个人体会不要一开始就背一大堆先把 PT、PP、ShiftS、TD 这四个练熟这四个能覆盖八成以上的操作。其他的等用到的时候再查查三次自然就记住了。另外 AD 支持自定义快捷键我把自己最常用的铺铜改成了单键 F因为原始组合 PP 要按两次一天下来手指也累。6.3 打样前的最后自查清单这块内容我认为是全文最有价值的因为再好的设计出板前不检查一样可能翻车。我每次出 Gerber 之前都会走一遍这个清单板框是不是闭合的尺寸对不对安装孔位置和孔径对不对。所有器件的封装是不是都指定了有没有漏掉的。DRC 里的短路和断路是不是都清干净了。铺铜是不是都重新灌注过了有没有死铜残留。网络连接性检查用 Tools - Netlist - Configure Physical Nets或者干脆用从原理图更新 PCB再看一遍差异确认没有未同步的改动。丝印有没有压到焊盘上位号有没有被遮挡。Gerber 和钻孔文件的单位和格式是不是一致的。导出之后用 Gerber 查看工具打开看一遍确认层没少、图形没缺。这个清单我用了很多年中间也翻过车。有一次就是漏了最后一条导出的 Gerber 里少了一层阻焊板子做出来整块板都是绿油盖住焊盘的完全没法焊。那次之后我把用查看工具打开看一遍加进了死规矩里不管多急都要做。6.4 一些关于工具选择的实在话最后说说工具本身。AD 是个功能很全但也挺重的软件画简单板子有点杀鸡用牛刀的意思。如果你只是偶尔画个转接板、小模块我觉得国产的在线 EDA 工具其实够用了浏览器打开就能画元件库现成出 Gerber 一键搞定学习成本比 AD 低很多。它们的短板在于复杂板子、多层板、团队协作和脚本扩展上但如果你做的事情没到那个复杂度就不必受那份罪。AD 真正的优势在哪一是库管理成熟一个公司可以维护一套统一的库所有人都用同一套封装出错的概率大幅下降。二是规则系统强大复杂的间距、差分、阻抗规则都能表达。三是脚本和自动化的生态批处理改丝印、批量导出、自动对齐这些都能用脚本搞定。所以如果你打算长期在硬件这行做下去AD 值得花时间学透如果只是应付一两次需求那找个轻量工具先把板子做出来更划算。我个人实际画板子这些年下来最大的一个体会是画简单 PCB 的难点从来不在软件操作上软件操作顶多占两成剩下的八成是想清楚这块板子怎么用、会被装进什么样的壳子、会被谁焊接、会在什么环境下工作。把这些搞明白了AD 里那点操作只是把你的想法翻译成图形而已。反过来如果你心里没想清楚再熟练的快捷键也救不了你画出来的板子该出问题还是出问题。所以每次开新项目之前我都愿意多花十分钟在纸上把这块板子将要面对的现实世界先过一遍。
阅读完成 · 觉得有帮助?