Altium Designer应用技巧2: 功能模块在同一文件中的复用
本帖最后由 轻舞飞扬 于 2015-5-24 16:42 编辑日志《Altium Designer功能模块的复用方法》介绍了同一电路图在不同工程项目中反复复用的方法,这篇日志将介绍功能模块在同一文件中的复用方法。
我们在使用Altium Designer进行电路图设计时,常会遇到在一个电路图上绘制多个相同功能的子模块,例如下面的例子,我们电路要求进行6路4-20mA电流采样,这6路电路从原理图功能到PCB设计上均一样。按照常规的设计,我们需要手画6遍才能完成,如何能够简化这个过程,提高效率呢?可以采用下面的方法来完成。
1、绘制4-20mA电流采样原理图文件,并加入相应的端口。
2、选中所有器件,右键-片段-从选择的对象产生片段。
3、将片段加入到相应的功能目录中。
4、按照此原理图生成PCB。
5、绘制PCB。
6、以上是准备工作,下面我们来看看在同一文件中多次复用同一功能模块的方法。新建PCB工程项目(包括原理图和PCB),并加入相应的原理图和PCB库。
7、在原理图中放置器件放置器件图表符。
8、选择我们刚才绘制的4-30mA采样电路。
9、加入器件图表符后,按照下图进行相应的更改,Repeat是Altium Designer提供的复用关键字,Repeat(A,1,6)表示的意思是,该器件图表符名称为A,序号从1-6,也就是A1、A2、A3、A4、A5、A6。
10、利用Repeat关键字更改需要复用的引脚。
11、使用总线与其它器件进行连接,一定要采用总线的连接方式,下图中的网络标号缺一不可。
12、另一接口的连接。
13、在PCB图中引入4-20mA电流采样电路的PCB片段。
14、手工更改器件位号,就是在原先器件位号的后面加入_A1,其中A是器件图表符的名称,1是器件图表符的序号。
15、在原理图中,将其它器件导入到PCB中。
16、选择“拷贝room格式工具”,首先选择room A1,然后依次选择room A2-A6,这样A1-A6便具有相同的PCB布局和布线了。
17、如果感觉到位号占用的地方较多,可以把所有的位号均隐藏,在PCB进行标识即可。
至此完成,后面和普通的PCB绘制没有什么区别了。
轻舞飞扬的日志:http://user.qzone.qq.com/2756567163 {:smile:} 学习了,很多最小系统可以不重复画了=-= 正需要。 本帖最后由 foxpro2005 于 2015-5-24 18:03 编辑
呵呵,不错, 我以前在Protel中, PCB中是通过复制元件组 --> 修改它们的位号 --> 然后再从第一个走好线的组中,把走线复制粘贴过来。
现在使用AD更高级了。 学习了 感觉像原理图被封装成一个元件了 很详细的教程,感谢楼主 谢谢分享 感谢分享! 楼主提供的方案不错,顶! 请问下我片段后 找不到 我保存的啊 Very Good!
话说“片段”和层次原理图有什么区别?
“片段”是保存在哪里的?有没有类似library的数据文件,可否导出导入转移? LCRPN 发表于 2015-9-25 09:19
Very Good!
话说“片段”和层次原理图有什么区别?
Snippet可以近似理解为高级的“元件”,最终需要放置在SCH或者PCB中才可生效;类似于原理图库中的符号需要放在SCH,PCB封装要放在PCB中一样。
Altium的设计抽象关系大致是这样的:
1、SCH符号;PCB封装:对应一个元件的物理实体。
2、Snippet:SCH元件和互联关系以及对应的PCB表达。表述由少数元件构成的一个电路功能模块,有SCH和对应的PCB。
3、Device Sheet/SCH文件:具有一定独立、完整功能的复用。但是这层目前似乎没PCB对应。
4、层次图/扁平图是对于SCH文件(Device Sheet)的更高级的组织。
原理图到PCB的模块化复用,现在AD好像还是没有非常高效的方案。Snippet似乎并不是十分完善。
LCRPN 发表于 2015-9-25 09:19
Very Good!
话说“片段”和层次原理图有什么区别?
搜索Snippet Altium能找到很多帮助文件。
保存在一个用户指定的独立目录;和当前工程没关系。类似于库文件。 简单说几句,供想尝试该功能的参考:
Snippet实质上提供的就是SCH和PCB的Ctrl C和Ctrl V功能。没啥原则上的区别,当然,细节区别是存在的,一般可忽略。
对于Ctrl CV不好解决的问题,Snippet基本没提供更好的解决方案;Ctrl CV好搞的,Snippet也没省事儿太多。
Snippet对于SCH和PCB的联系是基于Designator的,而不是Unique ID。即,当原理图使用了Snippent之后,绝对不能对相关的模块进行Annotation,否则Designator对不上PCB的就完蛋。
这点的逻辑/应用顺序是:画图(应用Snippet),锁定Snippet的Designator,Annotate其它元件,在空PCB中加入对应的Snippet,建立Unique ID Link,解锁Snippet的Lock,这时候才可以随便Annotate和Board Level Annotate。
对于多通道设计,Board Level Annotation等会有很多额外的麻烦事儿,都是需要额外注意的,否则这套机制不能Work。
# 这就是为什么Snippet建立前,一般会使用一个非常大的Desinator ID,就是为了避免冲突,造成不Work。
总之,这个东西完全不是那么好用。
如果要高效复用,目前我知道的最好的方法是:
1、画好模块化的原理图和PCB。
2、把PCB中元件的坐标信息导出,保存在SCH的Parameter中;Track等独立信息保存在单独的PCB文件里。
3、新图画好后,用定制的BOM模板抓取PCB布局信息,直接粘贴或者用Pick Place完成布局。
4、Ctrl CV PCB文件的布线数据。 dr2001 发表于 2015-9-25 10:31
简单说几句,供想尝试该功能的参考:
Snippet实质上提供的就是SCH和PCB的Ctrl C和Ctrl V功能。没啥原则上 ...
你用的是什么AD版本?你说的Pick and Place是Protel的功能吧 又学了一招,多谢了! jamesdeep 发表于 2015-9-29 10:13
你用的是什么AD版本?你说的Pick and Place是Protel的功能吧
Pick and Place文件,新版可以用这个进行元件布局,但是不支持正反面。 dr2001 发表于 2015-9-25 10:31
简单说几句,供想尝试该功能的参考:
Snippet实质上提供的就是SCH和PCB的Ctrl C和Ctrl V功能。没啥原则上 ...
能否详细说下你的做法,如果10个通道都一样,我要改一个通道的阻值,岂不是可能全乱了? LQS1200 发表于 2015-9-29 13:50
能否详细说下你的做法,如果10个通道都一样,我要改一个通道的阻值,岂不是可能全乱了? ...
具体化你的需求。
AD的复用解决方案并不是一揽子一次性实现的;而是随着软件的发展逐步完善的。
因此,一般来说会有不同的路径实现用户的需求,可以讨论的是哪种方案更好,直观和方便;但基本上没有非常一致、完善的方案。
对于你的问题而言(当然,问题本身不够详细),有两个实现路径:
1、用Repeat快速实现多通道;用Variant实现器件值的变化。
2、不用Repeat实现多通道,用Sheet Parameter把参数从高层SCH传到下层SCH,完成赋值。
区别至少有:
1、出SCH图(PDF)的时候,图不完全一致。Variant需要出Physical图才能看出区别;非Repeat可以直接看到。
2、如果用Comment标记元件信息,在PCB上,元件Comment带有的信息是不一致的,如果用Comment做Assembly Guide的图(方便焊接、器件值检查),Variant的PCB图和器件值会不一致。
感谢分享! 这个很是方便哦 留个脚印学习 有时间试试看 揣到裤兜里。 用AD的会用得着
页:
[1]