Altium Designer编译常见错误及解决办法

本文列举了电路设计中常见的错误类型及其解决方案,包括元器件标号重复、网络标号未正确放置、输入型引脚未连接等具体问题,并提供了详细的解决步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

错误类型

        Fatal error:重大错误;

        Error:错误;

        Warning:警告;

        No Report:不报告(即无错误)。

 

[Error]   Compiler      Duplicate Component Designators C19 at 668,972 and 795,650

元器件标号重复,这里给出了元器件标号和坐标

 

悬浮的网络标号

某个网络标签没有放置好还在漂浮(应该连接在导线或者引脚上面).  在放置网络标签时,当光标捕捉到导线时,光标上显示红色星行标签,此时单击鼠标放置.

在引脚放置忽略标记

 

Compiler      Floating Power Object GND

悬浮的电源接地元件

出现此类警告的原因:在POWER.SCH文件中电源标号Global Power-Object 3.3V和端口port重复定义.
解决的办法:对 POWER.SCH文件中去掉多余的电源标号Global Power-Object 3.3V

 

Compiler      Net AA10 has no driving source (Pin U11-A20,Pin U14-26)

输入型引脚未连接或没有信号出入

解法一:你使用的元件对应的引脚是输入的,可以改变原理图中对应元器件的引脚属性解决。
解答二:在protel,软件会检查你的输入管脚有没有连,这样的好处是提醒画图的人还有输入管脚悬空的,我们知道,在电路系统中,大部分输入管脚是不允许悬空.所以建议画图的人在做原理图库的时候尽量把元件管脚的属性加上,这样可以不让自己出错.如果有输入哪个管脚必须悬空的话,可以在上面添加忽略ERC检查.这样编译的时候就没有警告了!

解答三:在做元件封装的时候,管脚的electrical type有很多选择,一般情况下,选择passive就没事了

 

Compiler      Off sheet Pin -3 at 1594,608  

原理图图纸小了,换大一点的错误就会消失

 

Compiler      Extra Pin U31-1 in Normal of part U31A   

貌似是封装不可用,重新加载一下PCB封装

 

Compiler      Extra Pin U31-8 (Inferred) in Normal of part U31A

方法1:此方法偶尔可解决问题,尝试后发现原理图封装可能被删除

解决方法如图

问题可解决,原因可能是封装没做好,重新做封装也可解决

 

方法2:打开Project(工程)\Project Option(工程参数)\Option标签,在Net Identifier Scope(网络标识范围)一栏的四个选项(AutomaticHierarchicalFlatGlobal)中选择Global项,然后点确定就行了。
主要是使网络标签范围设定为全局范围(作者试验过,已成功~~)

 

封装管腿重复,修改管腿顺序即可解决

 

Compiler Extra Pin U31-33 (Inferred) in Normal of part U31B 

出现此类警告的原因:在 AUDIO.SCH文件中的所有电阻封装不可用。
解决的办法:对 AUDIO.SCH文件中的所有电阻从新调换

 

Compiler Unique Identifiers Errors: 1WR#R420071155725018684486W4BKBM found at 939,315 and718,316  

原因分析:当新建一个Sch文件,所有元器件的设计电路从一个页面复制到另一个页面时,就会出现这个问题。因为,新建一个Sch并编译后,在编译的页面的元器件的unique identifiers是确定的,当再次新建一个SCH文件,并将原来的电路图复制到这个新建的sch页面时,则元器件的unique identifiers属性将会保持,这样在不同的Sch页面便会出现相同的unique identifiersAltium Designer 在后期导入PCB文件时,会验证unique identifiers,一对一进行,而一个unique identifiers对应两个元器件,则会导致导入PCB出现元器件丢失等问题。

 

解决方法:Unique ID如果大量发生重复,SCH界面中的Tools » Convert » Reset Component Unique IDs能解决这个问题。(查了一下AD的帮助文件找到的方法)

 

Compiler Component U4 TL082 has unused sub-part (3)

这是你把一个元件分割成几部分,而原理图上只用到一个部分,所以会出现这样的警告。不过这并不是什么错误,生成PCB的时候封装库一样会完整的导入的。 比如lm324,要是只放了PartA,而后面的PartB--D没有放置的话,就会出现这样的警告。把另外的部分添加上去就不会有这样的警告了。有兴趣的话可以试一下。

### Altium Designer 原理图编译方法教程 #### 设置编译规则 为了确保原理图设计符合电气规则,在进行编译前需先设定好编译规则。这可以通过两种方式完成:一种是对项目面板中的整个工程右键选择“Project Options”,另一种是在菜单栏通过【工程】-【工程选项】进入设置界面[^3]。 #### 执行编译操作 当所有准备工作完成后,可以开始编译过程。在Altium Designer中,编译不仅会验证当前文档内的连通性问题,还会检查跨多个页面之间的连接情况以及层次化设计的一致性等问题。对于发现的问题,系统将以警告或错误的形式给出提示,便于设计师逐一排查修正[^1]。 #### 处理解析常见警告与错误 - **未连接/非连续**:如果遇到此类警告,则意味着某些节点之间存在断开的情况;应仔细核对各元件间的连线关系,必要时添加导线或将悬空引脚标记为无驱动状态(通常用X表示)。另外也可以借助于网络高亮功能——即按住`Alt`键并单击特定网标来查看其路径走向以便快速定位问题所在[^2]。 - **约束冲突 (Conflicting Constraints)** 和其他高层次结构相关联的错误如重复命名等,往往涉及到多页或多模块间协作不当引起。此时建议重新审视整体架构规划,并调整相应属性直至满足唯一性和一致性要求[^4]。 ```python # Python伪代码展示如何处理部分逻辑判断 def check_connection(node_list): disconnected_nodes = [] for node in node_list: if not is_connected_to_anything_else(node): # 判断是否与其他任何东西相连 disconnected_nodes.append(node) return disconnected_nodes disconnected_elements = check_connection(all_schematic_components) if len(disconnected_elements)>0: print(f"Warning: There are {len(disconnected_elements)} unconnected elements.") else: print("All connections checked and verified successfully!") ``` #### 使用封装管理器优化工作流程 针对批量更新组件封装的需求,可利用内置工具简化此环节。“工具”-> “封装管理器”的路径能够打开专门窗口实现高效筛选、排序乃至同步更改多项任务,极大提高了工作效率的同时减少了人为失误的可能性。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值