电源电压过冲

news2024/11/26 1:58:28

前言:

前段时间突然想起来以前的一个问题,这个问题相信大家也都遇到过,甚至是解决过,或者没解决,也就不了了之,今天这篇文章,主要来讲下这个问题,看完喜欢的欢迎给我留言或者点赞,谢谢!

正文:

问题描述:

DC适配器 or USB设备插入瞬间,对应的端口电压会有一个大的瞬间过冲。

潜在危险:

造成电容损坏,设备不能识别或者宕机等问题。

下面实际上图:

图片

从图中可以看到:插入DC19V适配器瞬间,用示波器抓取对应的波形,发现存在一个峰值为38.4V的脉冲电压。

原因分析:

由于适配器线中寄生的串联电感、AC 适配器输出端电容板子端输入电容,在适配器的热插拔的过程中,会给对应的电容进行充电,而其电压的过冲大小取决于线与板的寄生电感、寄生电阻、电容等。

电感:

图片

电阻:欧姆定律

电容:I=C*du/dt

通过上面三个公式,完全可以解释为什么19V的适配器插入瞬间,有个38.4V的脉冲电压。

采用措施:

图片

上图是加入了RC Snubber后抓取的。可以清晰知道,这个措施是简单有效的。

当然我们第一步应该想到的是加入TVS(Transient Voltage Suppressor:瞬态抑制二极管)。当然加入TVS也是有讲究的,其中最重要的便是它的额定工作电压,越靠近我们所在的电压轨电压越好。

另外一种简单有效的方法便是以前文章一直有讲到的:RC Snubber电路。

磁珠

snubber电路

总结:

为了有效减小该过冲电压,提高系统设计的鲁棒性,可以考虑在端口增加一个TVS 管或一个RC Snubber,甚至可以考虑同时加入二者。

图片

当然也有一些利用软启动来限制插拔时的浪涌电流,从而来减低过冲电压。

最后建议:

建议大家也量量自己的DC输入端口或USB口插拔设备时候的电压波形图。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Linux】常见指令

🌇个人主页:平凡的小苏 📚学习格言:别人可以拷贝我的模式,但不能拷贝我不断往前的激情 🛸C专栏:Linux修炼内功基地 家人们更新不易,你们的👍点赞👍和⭐关注⭐…

EasyYapi插件—快速生成API接口文档

EasyYapi插件—快速生成API接口文档 1. 功能 导出http到(Controller注解类) YapiPostmanmarkdown导出RPC到 YapimarkdownCall api调用API接口 注意点: 注释中可以使用module标注模块所属的模块。表示接口会发布到yapi模块下;只…

生存分析利器:Python 中的 Kaplan-Meier Fitter 类详解

KaplanMeierFitter是lifelines库中用于计算生存分析的一个类。使用KaplanMeierFitter类,我们可以对我们的数据进行不同组之间的生存分析,比如根据年龄、性别、治疗手段等分类变量进行分组分析。 该类包含许多方法和属性,其中最常用的是fit()…

FPGA复位信号设计讨论

复位概述 复位作为电子系统中最常见的信号同时也是最重要的信号,它对工程师整体的设计表现有着极大的影响。复位信号可能深刻影响设计的性能表现,功耗,面积等等。对于一个优秀的系统设计,很难不把复位信号当成一个关键信号来设计。…

【车载基础软件 |ASF中间件 系列二】— 国产汽车生态平台ASF的生态框架

本文主要介绍国产基础软件开发平台架构下基于ASF的生态框架。 背景信息 随着E/E架构演进,从最初传统的分布式架构,由独立功能的ECU通过CANLIN等高实时性 总线通讯。诼渐演进到当前分域集中式结合车联网功能的结构,车载以大网逐渐步入了整车电子电器架构之中,除了高实时性…

【AIGC使用教程】论文阅读神器 SciSpace 从注册到体验

欢迎关注【AIGC使用教程】 专栏 【AIGC使用教程】论文阅读神器 SciSpace 从注册到体验 【AIGC使用教程】Microsoft Edge/Bing Chat 注册使用完全指南 【AIGC使用教程】GitHub Copilot 免费注册及在 VS Code 中的安装使用 【AIGC使用教程】GitHub Copilot 免费注册及在 PyCharm …

golang第一个简单项目实战+源码(gin+gorm)

创建项目并新建包 点击file->settings->GOPATH,把当前项目加进GOPATH目录中,然后点击apply, 点击加号完成之后,在左边选择go build 新建数据库 编写配置信息 这里将数据的信息都写在了配置文件里面 dns的内容为&#x…

二叉树概念结构,以及画图加代码分析二叉树遍历,创建,销毁,层序遍历,判断是否完全二叉树等等

二叉树 树的概念及结构树的概念树的相关概念树的表示 二叉树的概念及结构概念特殊的二叉树二叉树性质二叉树的存储结构 二叉树的实现二叉树顺序结构的实现二叉树链式结构的实现二叉树的遍历前序遍历中序遍历后序遍历 二叉树结点数量叶子结点数量求树高求k层结点数量 二叉树创建…

SpringMVC第一阶段:SpringMVC的介绍和使用

1、SpringMVC的概述 Spring MVC框架是一个开源的Java平台,为开发强大的基于JavaWeb应用程序提供全面的基础架构支持,并且使用起来非常简单容易。 Spring web MVC框架提供了MVC(模型 - 视图 - 控制器)架构,用于开发灵活和松散耦合的Web应用程…

【原创】创建Vue3 ts项目

文章目录 创建Vue3 ts项目工作空间创建vue 项目进入项目目录启动项目 & 停止项目访问成功 创建Vue3 ts项目 工作空间 进入工作空间目录:D:\workspace\vue 创建vue 项目 vue create vt #创建vt项目vue test 选择手动进行配置: 选中下面几个核心…

利用 Mybatis-Plus 的动态数据源实现多数据源配置

目录 一、导入依赖 二、Application.yaml配置文件 三、切换数据源 四、其他方法 4.1 配置多个数据源 4.2 定义Datasource和EntityManager 4.3 在需要使用数据源的地方注入不同的EntityManager 官网:https://baomidou.com/pages/a61e1b/#dynamic-datasource …

vue2实现路由跳转后隐藏底部固定导航栏Tabber的一种方式

在使用vue路由的时候,跳转到某些页面上是不需要展示底部固定的导航栏的,所以在某些特定的页面跳转时候,就需要隐藏底部的导航栏 这里用了一种方式去解决这个问题 1、前提 这里我把底部导航栏做了一个组件的封装,然后在App.vue里…

玩转 LLMs 之基础设施「利刃出鞘」

LLMs 时代已经到来,这个由 ChatGPT 开始的全球化技术浪潮,所经之处,风起云涌。LLMs 之于当下,更像是 iOS 、Android 之于移动互联网时代。开发者沸腾,投资机构争抢,与赛道相关的基础设施建设自然也成为整个…

IOC容器中的核心容器ApplicationContext

文章目录 1 环境准备2 容器2.1 容器的创建方式2.2 Bean的三种获取方式2.3 容器类层次结构2.4 BeanFactory的使用 前面已经完成bean与依赖注入的相关知识学习,接下来我们主要学习的是IOC容器中的核心容器。 这里所说的核心容器,大家可以把它简单的理解为…

聊聊我在三家IT公司的工作经历,C++程序员都在做什么?

我想分享一些关于C程序员工作的经验。我先自我介绍一下:我是一名毕业于普通985大学的程序员,已经工作了5年,但是我曾在三家互联网公司工作过,这些公司都还算是比较有名的互联网公司。 好了,不多说了,进入正…

真题详解(自顶向下)-软件设计(七十六)

真题详解(传引用)-软件设计(七十五)https://blog.csdn.net/ke1ying/article/details/130695214 计算机软件著作权,正确的是_____。 非法进行拷贝、发布或更改软件的人被称为软件盗版者 循环冗余CRC校验,设数据位为k位…

KVM网络管理-创建桥接网络

KVM网络管理-创建桥接网络 分类 网络: nat isolated 接口: bridge 虚拟交换机: linux-bridge(linux) ovs(open-Vswitch) NAT网络拓扑图 仅主机模式网络拓扑图 桥接模式网络拓扑图 在Linux主机上开启vm1,从交换机上把…

第五章 面向对象-6.内部类

内部类 内部类分为: 成员内部类、静态嵌套类、匿名内部类(直接new 抽象类,直接new 接口)$1 $2。 如果是函数式接口,可以使用lambda表达,这样可以避免new 接口产生内部匿名类 内部类仍然是一个独立的类,在…

接口测试要测试什么?怎么测?我来告诉你

目录 本文主要分为两个部分: 第一部分: 第二部分: 备注: 本文主要分为两个部分: 第一部分:主要从问题出发,引入接口测试的相关内容并与前端测试进行简单对比,总结两者之前的区别与…

SGI STL(四)——_S_chunk_alloc函数解析

情况一&#xff1a;内存池剩余空间的大小不满足需要分配的内存空间 假设调用为 _S_chunk_alloc(8, 20), 即希望分配8个20B的内存小块构成的chunk块 代码如下 template <bool __threads, int __inst> char* __default_alloc_template<__threads, __inst>::_S_chu…