PCB布线为什么不能走直角或锐角-笔记

PCB布线为什么不能走直角或锐角-笔记

  • 摘要
  • 一.PCB走线在直角转弯的地方,信号前后部分相互影响
  • 这几个理由我们来一一分析一下
    • 传输线的直角带来的寄生电容
    • 从阻抗的角度来看
    • 直角的尖角产生放电或者电磁辐射
    • 走线直角的工艺问题

摘要

有一定熟悉画过PCB板的人或者PCB教学里都会给出避免出现直角或锐角,但是一个最简单、最直观的反驳理由就是过孔,当走线通过过孔换层时经过过孔的铜箔不正是直角转弯了吗?有甚至还180°原地掉头冷! 究竟直角走线对信号传输有多大影响,不能走直角有以下几个理由

一.PCB走线在直角转弯的地方,信号前后部分相互影响

在这里插入图片描述
1.导致分布电容增加;
2.对信号上升沿和下降沿有延缓影响;
在这里插入图片描述
3.从阻抗的角度来说,就是走线在直角处宽度变宽,因而阻抗不连续会造成信号反射,从而影响信号的完整性;

在这里插入图片描述
4.直角的尖角容易产生放电;

在这里插入图片描述
直角的地方会聚集腐蚀液,容易造成铜箔过度腐蚀而出现断线。

这几个理由我们来一一分析一下

传输线的直角带来的寄生电容

可以由下面这个经验公式来计算,假设一条特征阻抗为 50 Ω,宽度为 4 mil的PCB走线。
请添加图片描述

请添加图片描述
一个直角带来的分布电容(变化)大概是 0.01 pF ,可见直角走线带来的电容效应。

从阻抗的角度来看

在这里插入图片描述
在直角的地方阻抗会发生变化,原来走线的阻抗为Z0,突然出现直角阻抗为Z’。

我们知道传输线的阻抗不连续会产生信号反射,但这个反射有多大呢?
在这里插入图片描述
可以根据公式来计算反射系数,一般直角走线导致的阻抗变化会在7%到20%之间 ,因而反射系数最大为 0.1 左右。

所以直角或者锐角走线可能造成的阻抗变化,其实是很微小的,对信号影响不大 。
无论使用45度拐弯还是直角拐弯,甚至任何角度拐弯都没有什么区别。

直角的尖角产生放电或者电磁辐射

请添加图片描述
尖角产生放电首先电压要足够高,能够击穿空气或者电路板的绝缘层,但是没有几千上万伏的普通电路是不太可能出现这种情况的,认为尖角容易发射或者接收电磁波产生EMI,也没有什么实锤的证据,因为实在是太微弱了。

走线直角的工艺问题

以前的PCB生产工艺采用酸性腐蚀液,确实存在尖角处容易出现腐蚀过度的问题。早就采用了更先进的腐蚀液和光刻胶,已经不存在这个问题了。
总的来说 PCB布线不能走直角这条规则似乎没有什么充足的理由了,在 10GHz 以的电路板中,走线的转折角度无论是直角还是锐角对信号产生的影响微乎其微。

反而是元件布局,地线设计,线宽和过孔等设计参数影响更大。值得重点考虑,但为什么我们还会被教导不要走直角呢?
一方面走直角没有什么坏处,但也没有什么特别的好处,走135度钝角更加保险。逐渐形成的行业习惯和美学观点,除非要表现特立独行的个性,已经很少有人走直角和锐角了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/235176.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

模拟算法【2】

文章目录 🥘6. N 字形变换🍲题目🫕算法原理🥣代码实现 🥗38. 外观数列🍿题目🧂算法原理🧈代码实现 🥘6. N 字形变换 🍲题目 题目链接:6. N 字形变…

VUE2+THREE.JS辉光设定和解决辉光导致背景变暗的问题

THREE.JS辉光设定和解决辉光导致背景变暗的问题 THREE.JS 辉光设定THREE.JS 辉光导致背景变暗的问题1.设定背景图片2.初始化辉光3. animate 一直渲染辉光 THREE.JS 辉光设定 给我的设计好的fbx模型,已经设定好了模型发光材质,所以直接添加辉光效果,就可以自动发光 blender模型生…

经典策略梯度算法

经典策略梯度算法 DDPG算法 DDPG 算法被提出的初衷其实是 DQN 算法的一个连续动作空间版本扩展。深度确定性策略梯度算法( deep deterministic policy gradient,DDPG),是一种确定性的策略梯度算法。 由于DQN算法中动作是通过贪…

pythonselenium自动化测试实战项目

说明:本项目采用流程控制思想,未引用unittest&pytest等单元测试框架 一.项目介绍 目的 测试某官方网站登录功能模块可以正常使用 用例 1.输入格式正确的用户名和正确的密码,验证是否登录成功; 2.输入格式正确的用户名和不…

【vue实战项目】通用管理系统:信息列表,信息录入

本文为博主的vue实战小项目系列中的第六篇,很适合后端或者才入门的小伙伴看,一个前端项目从0到1的保姆级教学。前面的内容: 【vue实战项目】通用管理系统:登录页-CSDN博客 【vue实战项目】通用管理系统:封装token操作…

使用 kubeadm 部署 Kubernetes 集群(一)linux环境准备

一、 初始化集群环境 准备三台 rocky8.8 操作系统的 linux 机器。每台机器配置:4VCPU/4G 内存/60G 硬盘 环境说明: IP 主机名 角色 内存 cpu 192.168.1.63 xuegod63 master 4G 4vCPU 192.168.1.64 xuegod64 worker 4G 4vCPU 192.168.1.62 xuegod62 work…

【【带Micro Blaze的 AXI GPIO 控制LED实验】】

带Micro Blaze的 AXI GPIO 控制LED实验 AXI GPIO IP 核为 AXI 接口提供了一个通用的输入/输出接口。AXI GPIO 是一个软核(Soft IP),是由用户通过配置芯片的逻辑资源来实现的一个功能模块。 实验任务 : 本章的实验任务是通过调用…

JavaScript中数据类型的转换

前端面试大全JavaScript中数据类型的转换 🌟经典真题 🌟数据类型转换介绍 🌟强制转换(显式转换) Number( ) String( ) Boolean( ) 🌟自动转换(隐式转换) 自动转换为布尔值 …

Java 的第二十章:多线程

创建线程 继承Thread 类 Thread 类时 java.lang 包中的一个类,从类中实例化的对象代表线程,程序员启动一个新线程需要建立 Thread 实例。 Thread 对象需要一个任务来执行,任务是指线程在启动时执行的工作,start() 方法启动线程&am…

koa2项目中封装log4js日志输出

1.日志输出到控制台 npm i log4js -D 封装log4js文件: 注意:每次都要重新获取log4js.getLogger(debug)级别才能生效 const log4js require("log4js");const levels {trace: log4js.levels.TRACE,debug: log4js.levels.DEBUG,info: log4js.…

CSS 在性能优化方面的实践

前言 CSS(层叠样式表)是一种用于描述网页外观和格式的语言。随着网页变得越来越复杂,CSS文件的大小也随之增加,这可能会对网页性能产生负面 .box {width: 100px;height: 100px;transition: transform 0.3s; }.box:hover {transf…

MySQL之binlog日志

聊聊BINLOG binlog记录什么? MySQL server中所有的搜索引擎发生了更新(DDL和DML)都会产生binlog日志,记录的是语句的原始逻辑 为什么需要binlog? binlog主要有两个应用场景,一是数据复制,在…