阅读视图

AD原理图添加ROOM及模块复制的方法(PCB更新不删除)

这次终于不拖延了,教程来了!已在AD15和AD22中亲测有效,界面略有差异,但步骤都是通用的。

核心思想是在原理图设置class分类,通过class自动添加room,通过room实现模块批量布局走线。

AD原理图添加ROOM

第一步:修改工程设置

点击顶部“类生成”的选项卡,自动生成的全部取消(解决了每次画PCB都有一个初始ROOM的问题,这个ROOM不会再自动生成了),用户自定义的全部勾选,注意看下方小字,提示你在哪里定义,ClassName是器件的一个parameter参数,不是description也不是comment。

下一步就是批量选中一个模块的所有器件,增加一个parameter参数。

注意过滤掉线等杂质,只选元器件,然后新增的参数名叫ClassName(不区分大小写),这个单词是固定的,不能乱改,至于具体的类别名称随便取,比如我这里取名叫“模块1”。

模块2、模块3同样的操作……

然后就是激动人心的更新PCB时刻了。

更新列表会自动添加相应的ROOM,以后再更新也不会被删除,列表干干净净,强迫症大快人心。

模块批量复制(自动布局布线)

下面讲讲模块复制的方法,也就是ROOM COPY。前提是第一个模块得自己画好。

首先把每个模块都用ROOM包裹起来,如果ROOM尺寸过大可以用自动包裹调整一下,一般是器件周围的最小矩形块。

然后就是最关键的一步,通道复制。

上面这张图全是重点,首先你要找到PCB LIST这个面板,一般在右下角菜单。

然后选中第一个模块的所有器件,过滤器筛选出元器件,然后按照位号排序。(注意:这要求你在原理图编号的时候保证每个模块内部的元器件编号排序是一一对应的,不要求编号完全一致,但相对顺序要一致,否则你就要找别的办法来排序,比如空间位置什么的,也可以手动对应,就是比较麻烦)

然后复制Channel Offset那一列到下一个模块粘贴,有的AD版本可能要打开edit模式。(注意,这是AD自动布局的核心逻辑:只要通道一致布局布线就完全一致。)

然后就是ROOM COPY(快捷键DMC),先点击模板ROOM,再点击要布局的ROOM。

这个界面的参数需要自己摸索,不同的复制方式细节有所不同。

得到理想的结果,大功告成↓

如果失败了,大概率是通道编号不对,没有对应上,再检查检查吧~

如果元器件封装丝印翻转到背面了,那可能是软件bug,需要自己更新一下封装库,或者手动调整一下。

本文发表于鸦鸦的巢穴,感谢您的订阅!如需评论请前往AD原理图添加ROOM及模块复制的方法(PCB更新不删除)

  •  

Altium Designer 重拾指南 | 菜鸟救星

这个软件真是见了鬼了,隔一段时间不用就归零,永远半生不熟。

由于新换了电脑,笔者又从头安装了一遍AD,没有任何第三方元件库,所以能够较完整地反映本菜鸟的摸索过程。

装哪个版本?

软件越新,安装包就越大,曾经我对安装包大小比较敏感,以为这种软件都和微软的Office一样,随便找个稳定的年份都差不多……

但是幸好这次我任性了一回,直接装了2022年最新版本,被一个叫Manufacture Part Search的面板惊艳到了!有了这玩意,还要啥第三方库啊?它直接就能放置元器件厂商的原理图、封装且含3D模型!另外元件的封装预览可以在2D和3D视图之间切换,非常直观!而我以前用过的2019版本似乎是没有这个功能的。

既然都是搞电的,这玩意装一个最新版不过分吧?

当然了,EDA软件也不是只有AD一家,KiCad还是免费开源的呢,立创那个在线EDA也不错,不是非得在一棵树上吊死!

先建工程还是先建原理图?

一个Project主要就两种文件,Schematic和PCB,顶多再加上各自的元件库。

从零新建的时候还是直接建工程吧。别单个单个建。

首次新建建工程,建完之后可以单个单个添加。缺啥添啥。

顺序搞错了也问题不大,自由文件可以直接拖动到工程里。


原理图篇

第一个元件咋画?

好了,终于要开始画原理图了,不管你画的什么,电阻总是有的吧?

那么问题来了,第一个电阻从哪里找?这直接关系到后面所有电阻的画法。

假设没有第三方元件库,直接从Components面板自带的Miscellaneous Devices库搜res,这样会不会太草率了?

不会,电阻的原理图无非就两种,要么长方形要么尖刺形,难道还能画出花来?

可是封装怎么办,现在不都流行贴片吗?自带的Res1好像是那种又大又粗的直插电阻诶?会显得很LOW吧?

封装可以改的!拖出来之后可以改!或者嫌麻烦的直接用Res3,它是贴片0603封装。

找不到XX面板怎么办?

仔细看右下角有个Panels,绝大多数的面板都可以在这里找到。

封装怎么修改?

双击元件打开元件的Properties属性面板,拉到下面有个Footprint,先把它显示出来,然后点击小笔笔🖊图标,小笔笔是编辑,或者add也可以。

选Any,再点Browse。

库选择Miscellaneous Devices,里面有一些常见的封装,包括贴片的0402、0603等等。

上面的做法只改了单个元件的封装,要是有很多元件都要改怎么办呀?如何批量修改封装?

修改封装的步骤是相同的,只不过需要选中所有同类元件。

如何选中所有同类元件?

以电阻为例,先选中一个元件,右键Find Similar Objects,匹配规则里面把有代表性的特征改为Same就行,至少一个相同特征就行,不必全改,最后记得勾上Select Matching,并且是在整个Project Documents里查找。

贴片封装一般选什么型号?

从小到大排序:0201<0402<0603<0805<1206<1210<1812<2010<2512

现在常用的的电阻、电容、电感、二极管都有贴片封装。贴片封装用四位数字标识,表明了器件的长度和宽度。[29]

贴片电阻封装形式有英制和公制之分,不过业内常以英制表示。实际应用中如果是简单元器件较少的项目中应用相对较多的是0603、0805和1206,因为在绘制完PCB做回板子之后都会有调试的过程,在调试时如果小于0603手工焊接难度大,大于1206浪费板子资源还会使板子尺寸增加,当然如果是对板子尺寸有严格要求,或者项目较为复杂元器件数量多还是封装越小越好,小封装用机器焊接出错率也小。[30]

如果不是做产品,随便画画的话,笔者prefer 0603,因为之前我用过0402画PCB的时候非常小,不放大很难选中,拖放比较麻烦,需要频繁缩放……所以单纯从画图方便角度考虑,下次我选择0603。如果手工焊那就更难了。

Surface-mount technology (SMT) is a method in which the electrical components are mounted directly onto the surface of a printed circuit board (PCB). An electrical component mounted in this manner is referred to as a surface-mount device (SMD).[31]

不想自己画元件有哪些途径白嫖?

电阻是挺容易画的,但是像开关管、放大器、集成芯片那种怎么办呀,不太好弄了吧?

下面介绍几种本人已知的元件库来源。

淘宝闲鱼CSDN那种一大包的第三方库就不说了。那种动辄几个G,下载安装都挺费劲的,关键是你想要的某个元器件型号还不一定有!就像拆盲盒一样。

至于AD官网,好像也挺麻烦的,要邮箱注册什么的。而且更新不一定及时吧,人家厂商新出了个什么器件难道还会向AD通报吗?

下面介绍几种精准搜索单个元器件原理图或封装的方法。

来源1:AD自带的Manufacture Part Search面板(最方便)

这个功能需要登录后才能下载或放置,否则只能查询。

以OPA2140AID为例,直接输型号搜索,有绿色图标的大概就是有模型,右键Place,直接一步到位原理图封装3D模型全搞定,但Place这种操作是一整套捆绑在一起的,后续不能改封装啥的,如果只需要单独使用其中某个部分,就选Download。

另外它还带有筛选功能,左上角那个图标可以筛选参数和元器件厂商。

来源2:从立创EDA导出

以OPA2140AID为例,直接在立创商城里搜型号,点数据手册会显示原理图和封装,找一个看的顺眼的,点立即使用,先在它的在线EDA里面打开。然后分别导出原理图和封装。

导出之后在AD里打开,是个PCB文件,还不能直接用,要先转换为封装库,怎么转?菜单-Design-Make PCB Library。原理图库同理。3D模型好像也是类似的。

来源3:元器件厂商官网

我比较喜欢德州仪器,因为它官网比较简洁,最主要的是有中文……把菜鸟的心理拿捏的死死的。

还是以OPA2140AID为例,先在官网搜型号,进入到具体产品页,找到设计和开发-CAD/CAE符号,点击下载下面的了解详情。

检查原理图错误

菜单Project-Validate PCB Project XXX.PrjPcb,之后会有信息在Messages窗口显示,如果没有这个窗口,右下角Panels里可打开。


PCB篇

如何由原理图生成PCB?

画PCB前应当确保所有元件都指定了正确的封装。如果没有的话后面肯定是要返工的,不过问题不大,多返工几次就熟能生巧了嘛。

先新建一个PCB文档,菜单Design-Import Changes From XXX.PrjPcb

PCB自动布局

想得美,AD好像没有那么智能,关于元器件的摆放,最多只能按矩形排列。菜单Tools-Component Placement-Arrange Within Rectangle。

所以,如果我没有理解错的话,主要还得靠手工排列和对齐。

至于经验的话,我只记住了强弱电要分开,数字模拟要分开,至于为什么,其实我也讲不太清楚,别问,问就是电磁干扰……具体怎么干扰?

名称微分形式积分形式
高斯定律${\displaystyle \nabla \cdot \mathbf {E} ={\frac {\rho }{\varepsilon _{0}}}}$${\displaystyle \oint _{\mathbb {S}}\ \displaystyle \mathbf {E} \cdot \mathrm {d} \mathbf {s} ={\frac {Q}{\varepsilon _{0}}}}$
高斯磁定律${\displaystyle \nabla \cdot \mathbf {B} =0}$${\displaystyle \oint _{\mathbb {S} }\ \displaystyle \mathbf {B} \cdot \mathrm {d} \mathbf {s} =0}$
法拉第电磁感应定律${\displaystyle \nabla \times \mathbf {E} =-{\frac {\partial \mathbf {B} }{\partial t}}}$${\displaystyle \oint _{\mathbb {L} }\ \mathbf {E} \cdot \mathrm {d} {\boldsymbol {\ell }}=-{\frac {\mathrm {d} \Phi _{\mathbf {B} }}{\mathrm {d} t}}}$
安培环路定律${\displaystyle \nabla \times \mathbf {B} =\mu _{0}\mathbf {J} +\mu _{0}\varepsilon _{0}{\frac {\partial \mathbf {E} }{\partial t}}\ }$${\displaystyle \oint _{\mathbb {L} }\ \mathbf {B} \cdot \mathrm {d} {\boldsymbol {\ell }}=\mu _{0}I+\mu _{0}\varepsilon _{0}{\frac {\mathrm {d} \Phi _{\mathbf {E} }}{\mathrm {d} t}}}$
麦克斯韦方程组(真空)

麦克斯韦方程组第三个式子,也就是法拉第电磁感应定律,${\mathcal {E}}=-N{{d\Phi _{B}} \over dt}$,封闭电路中感应电动势的大小,等于穿过这一电路磁通量的变化率;

麦克斯韦方程组第四个式子,也就是安培环路定律,$\oint _{{{\mathbb {L}}}}{\mathbf {B}}\cdot {\mathrm {d}}{\boldsymbol {\ell }}=\mu _{0}I$,$\oint _{{{\mathbb {L}}}}{\mathbf {H}}\cdot {\mathrm {d}}{\boldsymbol {\ell }}=I$,电流在一个曲面上的通量,等于磁场沿着曲面的边缘闭合回路的路径积分。

通俗理解的话,电流越大→磁场越强→磁通越大→磁通量的变化率大→感应电动势大→电磁干扰越强,所以信号线应当远离电源线,因为电源线是大电流;数电的话比较好理解,从0到1的跳变du/dt或者di/dt肯定很大→磁通量的变化率大→感应电动势大→电磁干扰越强,所以数字模拟要分开。

交叉选择模式

对了,在布局的时候,有一个非常实用的功能我不允许你不知道,那就是菜单Tools-Cross Select Mode。

板子规划视图 & 3D视图

布局完成之后,板子大小、形状基本应该确定了,当然也可以一开始就画好外形再布局,实际上是双向调整的过程,没必要分个谁先谁后。

菜单View-Board Planning Mode。第二种视图就是原来的2D视图,平时看到的就是在第二种视图下,调整完了之后也是在这里切回去。值得注意的是,3D视图也在这个菜单下。

菜单Design下有若干选项可对板子外形做调整。调完后如果有强迫症的话可以在Keep-Out层画个边框。

但这种方法调来调去基本都是方形的,如果是异形板要怎么办呢?

如何绘制出任意形状的PCB?

先在Keep-Out层画出你要的形状,比如圆形。

在2D视图下,菜单Design-Board Shape-Define Board Shape from Selected Objects。[32]

如何画出直角?

AD的直线工具很难画出直角,都是45°线,这在布线时很实用,但是画板子外形时简直要了命,建议把磁吸工具全部打开,提高吸附能力,这样在沿着板子外边缘描线时或许可以画得更直一点。

其实还有更靠谱的方法——愚蠢的我刚刚发现了矩形工具……

放置尺寸

切换到Mechanical 1机械层,菜单Place-Dimension-Linear。

放置尺寸时按空格键可旋转尺寸方向。

放置螺丝孔

也是在Keep-Out层画圈,画好后菜单Tools-Convert-Create Board Cutout from Selected Primitives。

这种方法放置的孔洞是没有镀铜的,另外还有一种做法是把焊盘当作螺丝孔,这样做出来的螺丝孔孔壁有铜。

至于螺丝的尺寸,常用的是M3螺钉,M3螺钉本体直径3mm,为了避免螺丝放不进去,至少加0.1mm的余量。即3.1mm的孔径,5mm的外径。也有人说M3螺钉对应3.5mm的孔径。所以3.1~3.5mm之间应该都可以,我比较倾向于3.2mm。

怎么设置螺丝尺寸?双击圆形,跳出属性界面,注意这里的单位是英制的mil(密耳),不是mm。

1 mil = 0.0254 mm
126 mil = 3.2004 mm

其实,只要输入数字的时候带上单位,也会自动转换,不带单位默认mil。

另一个需要注意的是这里的尺寸是半径和线宽,不是内径和外径。半径63mil相当于直径3.2mm。

除了M3以外,还有M2、M2.5、M3、M4、M4.5、M5、M6等螺钉尺寸,M后面的数字代表直径(mm)。

PCB自动布线

这个功能真的是菜鸟救星!菜单Route-Auto Route-All。其他布线方式暂时还没有研究。

滴泪

菜单Tools-Teardrops…

覆铜

在覆铜前应将布线规则中的Clearance改为20mil。

菜单Place-Polygon Pour…

顶层和底层都应该覆铜,且连接到GND,至于是否应该去除死铜,我也不太确定,只知道去除死铜的同时能够去除超出板子边缘的铜,如果画铜层时一不小心超出了板子边缘的话。

覆铜完成后,应将布线规则中的Clearance改回初始值,一般为10mil。

原理图改动之后PCB怎么办?

菜单Design-Import Changes From XXX.PrjPcb。

如果PCB全部变绿,使劲缩小,看整个PCB的左下角是不是有一个Room,删掉即可。

重做布线、滴泪、覆铜。

检查PCB错误

菜单Reports-Board Information,勾选Routing Information。

若还有导线没连接,回到PCB,按Shift+S,就可以查看哪些导线没连接。[33]


尾声

自动生成的乱七八糟的文件能不能删?

保存的核心就是自己建的那几个文件,多余的删了没啥影响。(亲测)

本文发表于鸦鸦的巢穴,感谢您的订阅!如需评论请前往Altium Designer 重拾指南 | 菜鸟救星

  •  

PCB进阶指南

前置知识:Altium Designer 重拾指南 | 菜鸟救星 – 鸦鸦的巢穴 (crowya.com)

以下经验主要适用于开关电源等既有功率线又有信号线的场景。

多层板布局

以六层板为例,最外两层走功率,次外两层铺地,中间两层走信号。

功率线放在最外层,是因为散热好。

把信号线夹在地层中间,有利于屏蔽外部干扰。

增加或减少层数是在菜单Design-Layer Stack Manager这里操作(快捷键DK)。

右键插入一个新的信号层。

或者,用AD预设的六层板。

个人还是喜欢自己右键插入新板。

这里涉及到一个正片(Signal)和负片(Plane)的概念:

Signal就是走线的地方敷铜,Plane是默认敷铜,走线的地方挖空。

走线宽度

信号线一般10mil或者20mil就可以了,但是涉及驱动、电源的线要适当加粗,比如40mil、50mil[17]

主功率的走线肯定要宽得多,可以用这个算:PCB走线载流计算器

以15A为例,可以看到所需的外层线宽比内层小得多,这也是为什么前面说最外层走功率。

一层线不够宽的话可以分两层走,比如顶层200mil,底层200mil,加起来就够了。

确定了宽度之后可以对功率线单独设置一个走线规则,在菜单Design-Rules这里(快捷键DR)。

网络类别(Class)的设置是在菜单Design-Classes这里(快捷键DC)。

需要注意的是每次从原理图更新PCB时不要把Class删掉。

驱动线、电源线同理。

绝缘间距

首先涉及到两个概念:

  • 爬电距离:表面距离
  • 电气间隙:空间距离

这个比较头大,标准比较杂乱捋不明白。我也不太清楚,就按污染等级2材料组别III来查表吧。

IEC60335-1:2001 表17-基本绝缘的最小爬电距离[18]

还有一种简单粗暴的说法是每100V按1mm来估算,300V大约3mm的样子。

确定了绝缘间距之后就可以为功率线设置一个专属的规则了,同样是在菜单Design-Rules这里(快捷键DR)。

100mil=2.54mm
250mil=6.35mm

过孔直径

还是在菜单Design-Rules这里(快捷键DR)。

一般都是通孔,直径差不多就可以了,大点小点问题不大,比如我这里外径28mil内径14mil。

功率地与信号地

菜鸟曾经搞不清如何接地。甚至忘记焊0Ω电阻,怎么调都不对劲。现在大概知道了。

不隔离的话,一般只有两个地,功率地(PGND)和信号地之间分开铺地,最后通过0Ω电阻相连。

隔离的话,原边两个地,副边两个地,至少就有四个GND了,如下图,两边分别通过0Ω电阻相连。

有时候模拟地(AGND)和数字地(DGND)也会分开,但最终也是要连在一起的。

 功率地和信号地为什么要分开?
减小公共阻抗。你想想功率地线上回流的电流有多大,哪怕导线只有一点点阻抗,也会产生压降,如果这个压降叠加到信号回路里,那就不准了。同样,模拟地和数字地分开也是为了减小公共阻抗。
 那为什么又要用0Ω电阻相连?
提供相同的零电位基准。如果不连,两个回路之间是可能存在电位差的,是“悬浮”的,可能会导致一系列玄学问题。那直接用一根导线相连不就好了吗?还是前面的问题,如果你在原理图里直接用线连接,AD是无法区分出功率地和信号地这两个节点的,但是加一个0Ω电阻,就变成两个节点了,方便画PCB。

总而言之,分开的是路径,连接的是电位。殊途同归。同归于零。

至于控制回路应该和原边共地还是副边共地,怎么方便怎么来。

铺铜

铺铜不是GND的专利哦,有些粗的功率线也可以用铺铜的方式来画。可以理解为画图中的油漆桶工具。

一共有三个工具涉及铺铜,工具条里的Polygon Pour是智能铺铜,有避障功能的,还有一个Fill是绘制方块铜皮,Solid Region是绘制多边形铜皮。选中区域重新铺铜的快捷键是TGR。

一般GND是单独铺整层,因为连接GND的节点很多,毕竟很多模块都需要零电位参考嘛,电源负端也要连GND,所以这个节点是地下水源,很多地方都需要连它,那索性修到家家户户门口嘛,实在够不着打口井(过孔)就能接到地了。

理论上凡是电位稳定的节点都可以铺铜,因为铺铜还有一个附带的好处就是可以屏蔽干扰,但是大多数节点的电位肯定都不如零电位的GND那么稳定,所以铺地是最常见的,其他节点的铺铜就比较少见,除非是为了拓宽走线面积。

快捷键

Ctrl+W 连线

Ctrl+M 测量(比放置尺寸好用)

Shift+S 仅显示单层布线(比小眼睛图标好用)

元件布局

  • SPACE 旋转
  • X 水平翻转
  • Y 垂直翻转

元件对齐(强迫症必会)

  • Ctrl+Shift+L 左对齐
  • Ctrl+Shift+R 右对齐
  • Ctrl+Shift+T 上对齐
  • Ctrl+Shift+B 下对齐
  • Ctrl+Shift+H 水平均分
  • Ctrl+Shift+V 垂直均分

字母键组合(菜单下划线字母)(英文输入法下)

  • DR:Design-Rules 规则设置
  • DC:Design-Classes 类别设置
  • DK:Design-Layer Stack Manager 层管理器
  • TGR:Tools-Polygon Pours-Repour Selected 选中部分重新铺铜

潜规则

  1. 滤波电容布局时靠近芯片引脚
  2. 驱动芯片布局时靠近MOS管
  3. MOS管靠近边缘排布有利于散热结构设计(但是不方便走线)
  4. 尽可能减小环路面积,比如U形回路
  5. 信号线夹在地层中间
  6. 强电、弱电分开布局
  7. 功率地、信号地、数字地、模拟地分开
  8. 放不下的元器件可以放反面

本文发表于鸦鸦的巢穴,感谢您的订阅!如需评论请前往PCB进阶指南

  •