搜索
bottom↓
回复: 17

AD15高难度问题:原理图与PCB标号不一致

[复制链接]

出0入0汤圆

发表于 2017-3-13 20:37:36 | 显示全部楼层 |阅读模式
我在改以前画的一个PCB,原理图是用以前做好的文件改的,PCB打算全部重画。

这是个多路相同电路的板子,用了分层次的画法方便布线。

这次对原理图增加内容后用了全局的自动重新编号,编号完成后导入PCB,发现PCB始终是使用旧的标号。

第一次尝试:
复位原理图的Unique ID,复位后导入PCB发现子图纸的编号不符合要求(默认是子图纸标号+图纸实例名称,如:R1_DO1),

我需要在“板级注释”里把命名方式改为全局标号(就是所有图纸都是按照数字顺序递增)。

改了命名方式后需要重新标注编号,标注完后又变成一开始的情况,PCB里的标号是小括号中那个,与原理图不一致。

第二次尝试:
我想,把所有标号复位为"R?"这种状态,那不就没有上一个标号了?这样做了后更变态,把子图纸命名方式改为全局标号后,居然生成了R?1、R?2这样的东东。

第三次尝试:
新建一个PCB文件来导入,不行。

第四次尝试:
新建一个工程,把图纸添加进去再导入,不行。

我该怎么办,各位英雄救我!!






本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2017-3-13 20:51:27 | 显示全部楼层
把pcb中的器件都删除,重新update,不可以吗?

出0入0汤圆

发表于 2017-3-13 23:17:02 | 显示全部楼层
括号内的位号才是实例化的,现在的状态应该没有错,只是你不适应这样的处理方式而已。

如果非要原理图中不出现括号(前提是元件在较为顶层的图纸),可以尝试调整annotate时的图纸优先级。

出0入0汤圆

 楼主| 发表于 2017-3-14 08:48:22 | 显示全部楼层
wychao 发表于 2017-3-13 20:51
把pcb中的器件都删除,重新update,不可以吗?

这样做过了,不行。

出0入0汤圆

 楼主| 发表于 2017-3-14 08:49:16 | 显示全部楼层
feiban001 发表于 2017-3-13 23:17
括号内的位号才是实例化的,现在的状态应该没有错,只是你不适应这样的处理方式而已。

如果非要原理图中 ...

对,我知道原理图跟PCB的对应关系是没有错的,但是原理图与PCB标号不一致,导出PDF后是看不出的,以后由其他人接收这个板子的时候也会有麻烦。

出0入0汤圆

发表于 2017-3-14 09:03:12 | 显示全部楼层
Chuda 发表于 2017-3-14 08:49
对,我知道原理图跟PCB的对应关系是没有错的,但是原理图与PCB标号不一致,导出PDF后是看不出的,以后由 ...

方便的话可以将工程发出来我帮你看看。最近很少采用这种复用的方式,手上没有可以测试工程文件。 以前也经常用这个功能。

另,可以尝试下AD17,AD17的Annotate功能和以前的版本不一样。

出0入0汤圆

发表于 2017-3-14 09:18:08 | 显示全部楼层
我经常用层次方法画图,可以发给我,我给你弄好再发给你。

出0入0汤圆

发表于 2017-3-14 09:18:39 | 显示全部楼层
我经常用层次方法画图,可以发给我,我给你弄好再发给你。

出0入0汤圆

发表于 2017-3-14 09:54:16 | 显示全部楼层
以前自己手动输“?”号的时候输成中文的?号,然后自动标号也是会有R?1,R?2的问题~~不过跟你这个应该不一样吧

出0入0汤圆

 楼主| 发表于 2017-3-14 09:54:51 | 显示全部楼层
feiban001 发表于 2017-3-14 09:03
方便的话可以将工程发出来我帮你看看。最近很少采用这种复用的方式,手上没有可以测试工程文件。 以前也 ...

今天早上摸索了下,用了个折中的方法暂时搞定。
1、复位Unique ID,复位后子图纸恢复到未被编译状态,子图纸各个实例里元件的编号与图纸是相同的。如子图纸DO,有个电容C1,那实例DO1里该电容也叫C1。
2、编译工程,编译后DO1里的电容C1变成C1_DO1。
3、在“板级注释”里将子图纸配置成全局标号,并在对话框里做重新标注的动作,此时切记不要勾选顶层图纸。

执行以上操作后,顶层原理图还是原来的标号,子图纸重新标注,经抽查,标号与原理图是一一对应的。

因为我的图纸只有2层,可以这样凑合一下。如果用了三层结构,就不知道是否可行了。

出0入0汤圆

 楼主| 发表于 2017-3-14 09:56:26 | 显示全部楼层
NFC 发表于 2017-3-14 09:18
我经常用层次方法画图,可以发给我,我给你弄好再发给你。


因为是公司的图纸不方便外发,能把方法大概说一下吗?以后有网友遇到相同问题也能看到这个帖子。

还是非常感谢您愿意帮忙。

出0入0汤圆

发表于 2017-3-14 10:04:19 | 显示全部楼层
本帖最后由 mcu_mouse 于 2017-3-14 10:06 编辑
Chuda 发表于 2017-3-14 09:54
今天早上摸索了下,用了个折中的方法暂时搞定。
1、复位Unique ID,复位后子图纸恢复到未被编译状态,子 ...


改原理图前先在PCB中Link原理图。再复位一次原理图中的Unique ID。然后编译同步到PCB。都保存一下。再修改原理图

出0入0汤圆

 楼主| 发表于 2017-3-14 10:45:44 | 显示全部楼层
mcu_mouse 发表于 2017-3-14 10:04
改原理图前先在PCB中Link原理图。再复位一次原理图中的Unique ID。然后编译同步到PCB。都保存一下。再修 ...

是不是这样Link,Link完后再改原理图更新,还是不对应。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2017-3-14 11:52:02 | 显示全部楼层
Chuda 发表于 2017-3-14 10:45
是不是这样Link,Link完后再改原理图更新,还是不对应。

Link完后的原理图和PCB能不能对应起来呢。然后再在原理图里面复位Unique ID,保存、编译,再同步到PCB。然后再修改原理图呢。

出0入0汤圆

 楼主| 发表于 2017-3-15 17:03:51 | 显示全部楼层
mcu_mouse 发表于 2017-3-14 11:52
Link完后的原理图和PCB能不能对应起来呢。然后再在原理图里面复位Unique ID,保存、编译,再同步到PCB。 ...

Link完后也是对应不起来的。
我上面的截图,自动识别的对应关系是PCB U9就跟原理图的U9,这个是不对的。

出0入0汤圆

发表于 2017-3-13 20:37:37 | 显示全部楼层
本帖最后由 dr2001 于 2017-3-15 20:49 编辑

一句总结:
原因:用了Multi Channel Design和Board Level Annotation这两个略高级的功能。
解决:出SCH图的时候,用OutJob,用Project Physical Documents选项输出原理图。

详细解释:
当使用Multi Channel之后,原理图实际上是两套(两个层次):
1、高层次的,Logical Design:用户编辑输入的,没有Compile的,没有进行多通道展平的图。代表了用户的设计思路和模块复用。
2、底层的,展平后的Physical Design:对应PCB板,不可编辑(但可以用Variant修改器件参数,Fit/Not Fit)。

这二者表现为SCH编辑器在Project Compile之后,SCH编辑页面底部的Tab,第一个是用户可编辑的Logical;其它Tab是Physical,只能用于Variant修改。

显然,Board Level Annotation针对的是Physical Design,而不是Logical Design。(菜单上分成两类也是因为这个,Annotaion针对的SCH实际上是不一样的。)
在BLA之后,你看到的Logical Design的Designator和Physical Design的Designator实际上就没啥关系了,在SCH的不同Tab可以看到;和PCB对应的是Physical的Designator。
Desinator的对应关系可以在Project的View Channels看到。

所以,出图的时候就不能出Logical Design的SCH,而是要出Physical Design的SCH。
可惜的是File菜单的导出默认只能导出可编辑的Logical Design。

基本的正确方法是建立Output Job,在其中增加一个SCH输出,输出的类型是[Project Physical Documents],这样获得的是Physical Design。选All Document则会输出Logical Design。
如果有DNI器件等等,最好建立一个Variant,这样输出的DNI器件/BOM会比较好看。

此外,要注意:
1、Logical的Designator是保存在SCH文件里的;Board Level Annotation的结果是保存在独立的Annotation文件里的Physical ID -> Channel + Logical ID(实际上是UUID)的对应关系,这个文件千万别删除。
2、一旦进行了Board Level Annotaion,对于Logical Design的Annotation就要格外小心,一旦改了Logical的,就可能导致Physical的对不上了,很容易出错。建议是进行Board Level之前锁定掉Logical的ID,之后小心的进行增量式修改;如果要大改还要保持和以前BLA结果的兼容,是非常困难的。

如果你觉得这么干有点困难或者不符合你的要求,在Project Settings里修改一下MultiChannel命名,把Channel名称挂前边,或者就是Logic ID + Channel ID的形式好了。。。是一个更容易让人接受一点的方案。


具体的可以搜一下,印象中AD有Help讨论相关问题。

出0入0汤圆

 楼主| 发表于 2017-3-16 17:56:31 | 显示全部楼层
本帖最后由 Chuda 于 2017-3-16 17:58 编辑

非常感谢您的长回答。

按照您的意思,我是需要导出原理图到其他文件,例如PDF文件的时候,选择导出Physical Design。

但是在我使用AD来阅读SCH源文件时,展示的还是Logical Design的Designator。

其实我在最顶层图纸里也是有具体的电路元件的,而并不全是封装好的子图纸,所以我的工程在编译后顶层图纸是没有TAB的。

那么是不是说,只要我让顶层图纸没有具体元件,而只是各子图纸的连接,那么在编译后,每个子图纸的Tab里都能看到Physical Design的Designator?

出0入0汤圆

发表于 2017-3-16 20:22:04 | 显示全部楼层
本帖最后由 dr2001 于 2017-3-16 20:25 编辑
Chuda 发表于 2017-3-16 17:56
非常感谢您的长回答。

按照您的意思,我是需要导出原理图到其他文件,例如PDF文件的时候,选择导出Physica ...


点回复,否则别人看不到消息提醒,也就不一定会有进一步的回复。

再看看我说的内容,全局的考虑一下AD的PCB Project的构成逻辑,你才好理解为什么。怎么用的问题已经说了,就是outjob。
全局而言,PCB Project的SCH对PCB是一对多的关系;SCH构成的元件/互联关系在一个PCB Project中是确定的;一个Project的PCB可以存在不同的布局布线实现以及使用同名但实际不同的封装/3D模型。
一般而言,AD认为一个Project的一堆SCH对应一块PCB板。

用了Multi Channel,导出就要用Physical SCH。没用Multi Channel的话,Logical和Physical的SCH导出结果一致。
只要层次图中一个SCH被例化大于1次,就是用了Multi Channel。

打开SCH默认编辑Logical,由于没编译,此时不会有Physical的TAG,AD也不会缓存编译的结果,每次打开Project都要重新来;
编译的过程是把Logical展平成Physical的过程(层次、立体的图展平成PCB的平面结构);
编译之后才会有Physical的TAB。

无论哪个图,哪怕只有一张SCH的Project,编译后都是这个结果。
编译的快捷键是C-C。
编译必须在PCB Project中,因为编译/展平的过程需要Project Option中的配置信息。

Logical和Physical的Designator和你怎么放元件没毛关系。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-20 09:19

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表