Altium Designer 18中原理图DRC编译和PCB DRC检查-AD DRC
一、原理图编译
原理图检查的主要内容有:
1、元件位号冲突。也即多个元件编号相同,例如两个电容在原理图中都被命名为C2,显然肯定是无法生成PCB的。
2、网络悬浮。也即网络标号没有附着在电气走线上,一般这种是人操作失误,又容易被忽视。如果注意不到会造成生成的PCB中某些线连接不上。
3、电源悬浮。也即图中有些VCC和GND跟谁都不连接。。
4、单端网络。例如MCU上有一个引脚引出的电气线标注了网络标号I2C1_SCL,但在图中仅此一个标号,一般这种是人疏忽忘记连接对应的元件了,建议检查。(除非设计人员故意就是想要一个单端网络)。
以上这些是日常设计时容易出错的几个地方,建议把这些检查内容设置为“严重警告”或“致命错误”,以便让AD帮我们自动识别这些易错点。除了以上这些,还有一些别的致命错误,AD都已经默认使能了,不再赘述。
1、右击目录树中的工程,选择工程参数,如下图。或者点击菜单栏->工程->工程参数。
2、把下图的检查项改成“致命错误”。
3、右击工程,选择编译。
4、在原理图右下角Panels–>Messages会显示报错的报告。
然后AD会把检查的结果,按照上一步骤的设置,给报告出来。如下图所示。
我的MCU很多引脚没有连东西,AD报告了很多“单端网络”的错误,双击这条错误,可以看到原理图区高亮了这个没有被连接的MCU引脚。
参考原文:《Altium designer原理图检查(编译检查)》
二、PCB DRC检查
DRC就是检查设计是否满足所设置的规则。需要检查什么,其实都是和规则相对应的,在检查某个选项时,请注意对应的规则是否使能打开。
(1)执行菜单命令“工具-设计规则检查(快捷键“TD”),如图11-1所示,打开如图11-2所示的设计规则检查器。
图11-1 打开DRC设置命令
图11-2 设计规则检查器
① 创建报告文件:执行完DRC之后,Altium Designer会创建一个关于DRC的报告,对报错信息会给出详细的描述并会给出报错的位置信息,方便设计者对报错信息进行解读,如图11-3所示。
图11-3 DRC详细报告内容
② 停止检测50000冲突找时:表示当系统检测到50000个DRC报错的时候直接停止再检查,系统默认设置一般是500,但是设置到500时有些DRC会进行显示,有些DRC不会进行显示,只有修正已存在的错误,再次DRC的时候才会显示,这样对于大板设计非常不方便。
(2)设置DRC检查选项,如图11-4所示,选择需要检查的规则项,在“在线”和“批量”栏中勾选使能检查。
① 在线:当PCB设计当中存在DRC报错时可以实时地显示出来。
② 批量:只有手工执行DRC时,存在问题的报错才会显示出来。
一般来说,需要进行DRC的时候两者都进行勾选,方便实时检查和手动检查同时进行。
图11-4 设置DRC检查选项
DRC不是说所有的规则都需要检查,设计者只需要检查自己想要检查的规则即可,不想检查的规则对应的“在线”和“批量”取消勾选就好了。下面对常见的几种DRC进行详细的描述。
电气性能检查
电气性能检查包括间距检查、短路检查及开路检查,如图11-5所示,一般这几项都需要勾选,对应的常见问题报错如图11-6所示。
图11-5 电气性能检查设置
(a)间距报错
(b)开路报错
(c)短路报错
图11-6 常见电气性能DRC报错
布线检查
如图11-7所示,布线检查包含阻抗线检查、过孔检查、差分线检查,当设置的线宽、过孔大小及差分线宽不满足规则约束要求时就会提示DRC报错,让设计者注意。
图11-7 阻抗线检查、过孔检查、差分线检查设置
一般在设计中,过孔的类型不要超过两种,这样再生产的时候可以少用钻头类型,提高生产效率。
Stub线头检查
虽然我们会对走线进行一些优化,但是考虑到还要人工进行布线处理,难免会对走线的一些线头有遗漏,这种线头简称Stub线头。Stub线头在信号传输过程中相当于一根“天线”,不断地接收或发射电磁信号,特别是高速的时候,容易给走线导入串扰,所以有必要对Stub线头进行检查,并在设计中进行删除处理,如图11-8所示。
图11-8Stub线头检查
天线公差:设置“天线”长度报错范围,一般设置为1mil。
丝印上阻焊检查
阻焊是防止绿油覆盖的区域,会出现露铜或者露基材的情况,当丝印标识放置到这个区域时,会出现缺失的情况,需要对丝印上阻焊进行例行检查,如图11-9所示,需要对其规则进行设置,并且勾选DRC检查选项。
(1)检查到裸露铺铜的间距:检查丝印到铜皮的间距。
(2)检查到阻焊开窗的间距:检查丝印到阻焊开窗的间距,一般选择设置这项。
(3)对象与丝印层的最小间距:丝印到阻焊的最小间距,一般设置为2mil。
图11-9 丝印上阻焊的设置与检查
元件高度检查
因为考虑到PCB布局存在限高要求,这种情况须对高度等进行例行检查。元件高度检查需要元件封装设置好高度信息、设置好高度检查规则及适配范围(全局还是局部),并勾选高度检查,如图11-10所示。
图11-10 元件高度检查
元件间距检查
大部分板子设计都是手工布局,难免存在元件重叠的情况,需要对元件间距进行检查,防止后期元件装配时出现干涉,如图11-11和图11-12所示。
(1)最小水平间距:元件与元件的最小水平间距,一般设置为2mil。
(2)最小垂直间距:元件与元件的最小垂直间距,一般设置为2mil。
对上述常见的DRC检查选项设置勾选之后,执行DRC菜单左下角的“运行DRC”命令,运行DRC,等待几分钟之后,系统会生成一个DRC报告,详细列出错误内容及位置,如图11-13所示;或者回到PCB设计交互界面,在右下角执行命令“Panels-Messages”,如图11-14所示,同样可以查看DRC类型。一般情况下都是采用第二种方法来进行查看。
图11-11 常见的元件重叠情况及元件间距规则设置
图11-12 元件间距检查
图11-13 DRC报告
图11-14 Messages报告
用鼠标双击Messages里面的DRC报告选项,可以弹跳到PCB报错位置,可以有针对性地对这个DRC报错修正,可以接受的DRC报错可以直接忽略。例如,焊盘在禁止布线层边线上,会出现间距报错,这种可以直接忽略不管。
重复上述步骤直到所有DRC报错更改完成,没有DRC报错或者所有DRC报错可以忽略为止,即完成DRC。PCB电路设计通过DRC,可以进行下一步骤。
参考原文:《硬件工程师基本功:DRC设置要点详解》
相关文章:

Altium Designer 18中原理图DRC编译和PCB DRC检查-AD DRC
一、原理图编译 原理图检查的主要内容有: 1、元件位号冲突。也即多个元件编号相同,例如两个电容在原理图中都被命名为C2,显然肯定是无法生成PCB的。 2、网络悬浮。也即网络标号没有附着在电气走线上,一般这种是人操作失误&…...
zipfile — 访问 ZIP 压缩文件
zipfile — 访问 ZIP 压缩文件 1.概述 zipfile 模块可用于操作 ZIP 存档文件,.zip 是 PC 程序 PKZIP 推广的格式 2.测试数据 为了演示用,你需要创建以下三个文件 1.README.txt 内容如下,注意最后一行为空行 The examples for the zipfil…...

检查nmos管是否损坏
NCEP85T14 功率mos管为例 以NMOS举例,只用万用表二极管档测量MOS管的好坏-电子发烧友网 NMOS的D极和S极之间有一个寄生二极管,方向为S到D,利用二极管单向导电性以及MOS管导通时寄生二极管截止的特性,可以快速测量MOS好坏。 1、测…...

第七章 - 聚合函数(count,avg,sum,max,min)和一些数学函数
第七章 - 聚合函数使用别名 ascount() 计数avg() 平均值sum() 求和max() 最大值min() 最小值一些数学计算函数Abs()Cos()Exp()Mod()Pi()radians()Sin()Sqrt()Power()Ceil()Floor()使用别名 as 在SQL中可以使用 as 来为一个字段或者一个值设置新的别名下面聚合函数的使用中就会…...

Typescript的原始据类型和Any类型
最新的ECMAScript标准定义了8中数据类型: 7种原始类型: BooleanNullUndefinedNumberBigintStringSymbol和 Object 除 Object 以外的所有类型都是不可变的 (值本身无法被改变》。例如,与C语言不同JavaScript 中字符串是不可变的 (译注: 如,Ja…...
[python入门㊼] - python类的高级函数
目录 ❤ 类的高级函数 ❤ __str__ ❤ __getattr__ ❤ __setattr__ ❤ __call__ ❤ 类的高级函数 今天来为大家介绍几个类中的高级函数,它们也是类中的内置函数。通过使用它们, 会让我们在进行类开发的时候更加的顺手,接下来我们就…...

【Windows】使用Fiddler 工具对手机进行接口监听
目录 工具下载 配置Fidder 手机端获取证书 过滤指定接口 工具下载 CSDN下载地址 其他下载地址 配置Fidder 安装后,打开进入如下界面 在fiddler菜单项选择Tools -> Options -> HTTPS 勾选【Decrypt HTTPS traffic 】 下拉框默认:【from al…...

SpringCloudAlibab-nacos
一、介绍注册中心配置中心的整合SpringCloudAlibaba中文地址:https://github.com/alibaba/spring-cloud-alibaba/blob/2.2.x/README-zh.md下载地址:https://github.com/alibaba/nacos/访问:http://localhost:8848/nacos/二、使用1、添加依赖&…...

从一致性角度考虑推荐冷启动长尾推荐问题(二)
前言:在推荐系统中user&item emb往往是最重要的特征之一,在冷启动和长尾优化的工作中,往往也是优化的重点,相当一部分工作是围绕着emb优化展开,所以这里单独开了一章。4)emb分布一致性主要思路在于冷启内容emb和高…...

电脑c盘满了怎么清理,c盘空间清理
电脑c盘满了怎么清理?电脑C盘满了可能是因为您的操作系统、程序文件、下载文件、临时文件、垃圾文件等占用了太多的存储空间。所以,我们就需要进行一些操作和清理。 一.清理电脑C盘的方法 清理临时文件和垃圾文件。在Windows上,您可以使用系…...
vite的基本使用
vite 浏览器原生支持模块化 浏览器原生加载的缺点 1.必须明确的写上后缀名 2.如果某一个模块 加载跟多其他的js文件 那么这些js文件都需要被依次加载 浏览器需要将所有的js文件请求下来 发送跟多的http请求(效率也是非常低的) 3.如果代码中由typescrip…...
JavaScript 字符串(String) 对象
JavaScript 是一种流行的编程语言,可以用于开发各种 Web 应用程序和移动应用程序。在 JavaScript 中,字符串是一种非常常见的数据类型,可以使用 JavaScript 字符串(String)对象来处理。本文将详细介绍 JavaScript 字符…...

小知识点:Mac M1/M2 VMware Fusion 安装 Centos 7.9(ARM 64 版本)
最近换了 Mac M2 芯片的笔记本,用原来的 Centos 镜像安装虚拟机直接报错 “无法打开此虚拟机的电源,因为它需要使用 X86 计算机架构,而该架构与此 Arm 计算机架构主机不兼容。” 安装流程前置一、下载镜像二、安装虚拟机三、配置静态 IP四、安…...

Nginx 新增模块 http_image_filter_module 来实现动态生成缩略图
前言 通过 nginx 的 HttpImageFilterModule 模块裁剪过大的图片到指定大小,这个nginx自带的模块是默认关闭的,所以需要重新编译nginx加上此模块。 一、编译 nginx 1.查看 nginx 模块 由于nginx 是之前装好的,这里需要先看一下是否安装了H…...

detach,主线程终止后子线程会结束吗
此前,我对detach的理解是,当主线程退出后,子线程能够继续存在。实际上,当主线程退出后,子线程也随之结束了。先看一个例子: #include <iostream> #include <thread> #include <unistd.h>…...

2023年云计算的发展趋势如何?还值得学习就业吗?
一、2023年云计算的发展将迎来新篇章 随着政策的正式放开,2023年的经济开始慢慢复苏,云计算在疫情期间支撑了复工复产,那么在今年对于云计算发展的限制将进一步的放开。Gartner的数据显示,到2023年,全球公共云支出将达…...
ROS2 入门应用 请求和应答(C++)
ROS2 入门应用 请求和应答(C)1. 创建功能包2. 创建源文件2.1. 服务端2.2. 客户端3. 添加依赖关系4. 添加编译信息4.1. 添加搜索库4.2. 增加可执行文件4.3. 增加可执行文件位置5. 编译和运行1. 创建功能包 在《ROS2 入门应用 工作空间》中已创建和加载了…...
华为机试题:HJ73 计算日期到天数转换(python)
文章目录博主精品专栏导航知识点详解1、input():获取控制台(任意形式)的输入。输出均为字符串类型。1.1、input() 与 list(input()) 的区别、及其相互转换方法2、print() :打印输出。3、整型int() :将指定进制…...

将springboot项目生成可依赖的jar,并引入到项目中
1、将springboot项目生成可依赖的jar包的方法 SpringBoot项目默认打包的是可运行jar包,也可以打包成不可运行的jar包。 能打成可运行的jar包是因为,Spring Boot 项目引入了 spring-boot-maven-plugin 依赖包。 spring-boot-maven-plugin具有repackage …...
小红书搜索关键词布局指南,这4种词一定要把握好
在小红书搜索关键词布局,是提升搜索推流的重要方法,今天跟你讲清楚小红书搜索关键词布局怎么做~做小红书的都知道,小红书的主要流量来源一个是推荐,另一个就是搜索,关键词决定了你的精准人群,那…...
基于大模型的 UI 自动化系统
基于大模型的 UI 自动化系统 下面是一个完整的 Python 系统,利用大模型实现智能 UI 自动化,结合计算机视觉和自然语言处理技术,实现"看屏操作"的能力。 系统架构设计 #mermaid-svg-2gn2GRvh5WCP2ktF {font-family:"trebuchet ms",verdana,arial,sans-…...

AI Agent与Agentic AI:原理、应用、挑战与未来展望
文章目录 一、引言二、AI Agent与Agentic AI的兴起2.1 技术契机与生态成熟2.2 Agent的定义与特征2.3 Agent的发展历程 三、AI Agent的核心技术栈解密3.1 感知模块代码示例:使用Python和OpenCV进行图像识别 3.2 认知与决策模块代码示例:使用OpenAI GPT-3进…...
Qt Widget类解析与代码注释
#include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this); }Widget::~Widget() {delete ui; }//解释这串代码,写上注释 当然可以!这段代码是 Qt …...

跨链模式:多链互操作架构与性能扩展方案
跨链模式:多链互操作架构与性能扩展方案 ——构建下一代区块链互联网的技术基石 一、跨链架构的核心范式演进 1. 分层协议栈:模块化解耦设计 现代跨链系统采用分层协议栈实现灵活扩展(H2Cross架构): 适配层…...

学习STC51单片机31(芯片为STC89C52RCRC)OLED显示屏1
每日一言 生活的美好,总是藏在那些你咬牙坚持的日子里。 硬件:OLED 以后要用到OLED的时候找到这个文件 OLED的设备地址 SSD1306"SSD" 是品牌缩写,"1306" 是产品编号。 驱动 OLED 屏幕的 IIC 总线数据传输格式 示意图 …...

2025 后端自学UNIAPP【项目实战:旅游项目】6、我的收藏页面
代码框架视图 1、先添加一个获取收藏景点的列表请求 【在文件my_api.js文件中添加】 // 引入公共的请求封装 import http from ./my_http.js// 登录接口(适配服务端返回 Token) export const login async (code, avatar) > {const res await http…...

中医有效性探讨
文章目录 西医是如何发展到以生物化学为药理基础的现代医学?传统医学奠基期(远古 - 17 世纪)近代医学转型期(17 世纪 - 19 世纪末)现代医学成熟期(20世纪至今) 中医的源远流长和一脉相承远古至…...

初探Service服务发现机制
1.Service简介 Service是将运行在一组Pod上的应用程序发布为网络服务的抽象方法。 主要功能:服务发现和负载均衡。 Service类型的包括ClusterIP类型、NodePort类型、LoadBalancer类型、ExternalName类型 2.Endpoints简介 Endpoints是一种Kubernetes资源…...

【JVM面试篇】高频八股汇总——类加载和类加载器
目录 1. 讲一下类加载过程? 2. Java创建对象的过程? 3. 对象的生命周期? 4. 类加载器有哪些? 5. 双亲委派模型的作用(好处)? 6. 讲一下类的加载和双亲委派原则? 7. 双亲委派模…...

Unity中的transform.up
2025年6月8日,周日下午 在Unity中,transform.up是Transform组件的一个属性,表示游戏对象在世界空间中的“上”方向(Y轴正方向),且会随对象旋转动态变化。以下是关键点解析: 基本定义 transfor…...