开关电源电路拓扑是指功率器件和电磁元件连接在电路中的方式,而磁性元件设计、闭环补偿电路以及所有其他电路元件的设计都依赖于拓扑。 拓扑可分为:开关型和非开关型两大类。其中开关型拓扑又可以进一步分成两类——直流变换器和交流变换。
常见的开关电源拓扑大约有10种,每种拓扑都有自己的特点和适用场合。 在选用时需要注意哪些问题呢?首先是输入电压范围:一般情况下,输入电压为220V,240v或380v.其次是负载容量大小及供电方式。 选择的原则取决于它是大功率还是小功率,输出低压输出高压输出还是低,以及是否需要尽可能少的器件。
因此,要正确选择拓扑,必须熟悉不同拓扑的优缺点及其适用范围。 错误的选择可能会从一开始就给电源设计带来厄运。 正确选择并合理应用各种拓扑对于整个电路设计来说至关重要。本文将对常见的开关电源基本拓扑进行详细介绍,让读者能够更快更好地了解和使用这些拓扑。 开关电源的10基本拓扑结构,帮助系统掌握各个电路的工作原理和基本特点。
八种开关电源常见的基本拓扑结构:

在不考虑带有寄生参数的RLGC模型的情况下,一般我们的计算步骤如:
Von * Ton=Voff * Toff –>Vout=D * Vin(占空比D在输出电压设置时已决定)
输出电感L计算:Von * D/f=L * ΔI(ΔI为所允许的电感纹波电流)
输出电容CDC计算:ΔU=ΔQ/C=CI * T/8C(ΔU为所允许的输出纹波电压)
BUCK 降压电路特点:
将输入电压调低至较低。
也许是最简单的电路。
电感/电容滤波器滤平开关后的方波。
输出总是小于或等于输入。
输入电流不连续 (斩波)。
平滑输出电流。

计算公式如下:
Von * Ton=Voff * Toff –>Vout= (Vout- Vin)/ D
输出电感L计算:L=(Vin/(f*ΔIL)) * (1-Vin/Vo+Vd)
输出电容CDC计算:ΔU=(Io/(f*Co)) ((1-Vin/Vo+Vd) +(((Vo+Vd)/Vi) * Io+(Vi/2fL) (1-Vin/Vo+Vd))*ESR
BOOST 升压电路特点:
把输入提高到较高的电压。
与降压相同,但重新排列了电感、开关及二极管。
输出总是比大于或者等于输入(忽略二极管的正向压降)。
平滑输入电流。
输出电流不连续 (斩波)。

计算公式如下:
BUCK-BOOST 降压电路-升压电路特点:
另一种排列电感、开关及二极管方法。
兼有降压电路和升压电路的缺点。
输入电流是不连续的(斩波)。
输出电流也是不连续的(斩波)。
输出相对于输入一直是反向的(注意电容的极性),但是振幅可以小于或者大于输入。
“反激”变换器实际上是一种降压-升压电路隔离(变压器耦合)。

计算公式如下:
FLYBACK 反激电路特点:
工作原理类似于降压-升压电路,但电感有两个绕组,既充当变压器,又充当电感。
输出可以是正的,也可以是负的,这取决于线圈与二极管的极性。
输出电压可以大于或者小于输入电压,取决于变压器的匝数比。
这是最简单的隔离拓扑结构。
可以通过添加次级绕组和电路来获得多个输出。

计算公式如下:
PUSH-PULL 推挽电路特点:
开关(FET)的驱动不同相,进行脉冲宽度调制(PWM)以调节输出电压。
变压器磁芯利用率较高—在2.5个周期中都传输功率。
全波拓扑结构,因此输出的纹波频率是变压器频率的两倍。
施加于FET的电压为输入电压的2倍。

计算公式如下:
HALF BRIDGE 半桥电路:
在较大功率转换器中最常用的拓扑结构。
开关(FET)被驱动在不同的相位和脉冲宽度调制(PWM)进行调节的输出电压。
变压器磁芯利用率较高—在2.5个周期内输送电力。采用双极性晶体管作为开关器件时,可获得较高的效率;而采用单极性晶体管作开关器件时则不能实现这一目标。这是因为这种开关器件有可能导致损耗增大和开关损耗增加。 初级绕组的利用率高于推挽电路。
全波拓扑结构,因此输出的纹波频率是变压器频率的两倍。
施加在FET上的电压和输入电压相同。

计算公式如下:
Vout=(D/2*n)*Vin
FULL BRIDGE 全桥电路特点:
最常用于较大功率转换器的拓扑结构。
开关(FET)沿对角线方向驱动,采用脉冲宽度调制(PWM)来调节输出电压。
变压器磁芯利用率高—在2.5个周期内传输功率。
全波拓扑结构,因此输出的纹波频率是变压器频率的两倍。
施加于FETs的电压与输入的电压相同。
在给定功率下,初级电流是半桥的一半。

计算公式如下:
SEPIC 电路特点:
输出电压可以比输入电压大或小。
与升压电路一样,输入电流平稳,但输出电流是不连续的.
通过电容将能量从输入转换为输出。
需要两个电感。
我想将html转换为纯文本。不过,我不想只删除标签,我想智能地保留尽可能多的格式。为插入换行符标签,检测段落并格式化它们等。输入非常简单,通常是格式良好的html(不是整个文档,只是一堆内容,通常没有anchor或图像)。我可以将几个正则表达式放在一起,让我达到80%,但我认为可能有一些现有的解决方案更智能。 最佳答案 首先,不要尝试为此使用正则表达式。很有可能你会想出一个脆弱/脆弱的解决方案,它会随着HTML的变化而崩溃,或者很难管理和维护。您可以使用Nokogiri快速解析HTML并提取文本:require'nokogiri'h
给定一个复杂的对象层次结构,幸运的是它不包含循环引用,我如何实现支持各种格式的序列化?我不是来讨论实际实现的。相反,我正在寻找可能会派上用场的设计模式提示。更准确地说:我正在使用Ruby,我想解析XML和JSON数据以构建复杂的对象层次结构。此外,应该可以将该层次结构序列化为JSON、XML和可能的HTML。我可以为此使用Builder模式吗?在任何提到的情况下,我都有某种结构化数据-无论是在内存中还是文本中-我想用它来构建其他东西。我认为将序列化逻辑与实际业务逻辑分开会很好,这样我以后就可以轻松支持多种XML格式。 最佳答案 我最
Unity自动旋转动画1.开门需要门把手先动,门再动2.关门需要门先动,门把手再动3.中途播放过程中不可以再次进行操作觉得太复杂?查看我的文章开关门简易进阶版效果:如果这个门可以直接打开的话,就不需要放置"门把手"如果门把手还有钥匙需要旋转,那就可以把钥匙放在门把手的"门把手",理论上是可以无限套娃的可调整参数有:角度,反向,轴向,速度运行时点击Test进行测试自己写的代码比较垃圾,命名与结构比较拉,高手轻点喷,新手有类似的需求可以拿去做参考上代码usingSystem.Collections;usingSystem.Collections.Generic;usingUnityEngine;u
目录前言滤波电路科普主要分类实际情况单位的概念常用评价参数函数型滤波器简单分析滤波电路构成低通滤波器RC低通滤波器RL低通滤波器高通滤波器RC高通滤波器RL高通滤波器部分摘自《LC滤波器设计与制作》,侵权删。前言最近需要学习放大电路和滤波电路,但是由于只在之前做音乐频谱分析仪的时候简单了解过一点点运放,所以也是相当从零开始学习了。滤波电路科普主要分类滤波器:主要是从不同频率的成分中提取出特定频率的信号。有源滤波器:由RC元件与运算放大器组成的滤波器。可滤除某一次或多次谐波,最普通易于采用的无源滤波器结构是将电感与电容串联,可对主要次谐波(3、5、7)构成低阻抗旁路。无源滤波器:无源滤波器,又称
最近在学习CAN,记录一下,也供大家参考交流。推荐几个我觉得很好的CAN学习,本文也是在看了他们的好文之后做的笔记首先是瑞萨的CAN入门,真的通透;秀!靠这篇我竟然2天理解了CAN协议!实战STM32F4CAN!原文链接:https://blog.csdn.net/XiaoXiaoPengBo/article/details/116206252CAN详解(小白教程)原文链接:https://blog.csdn.net/xwwwj/article/details/105372234一篇易懂的CAN通讯协议指南1一篇易懂的CAN通讯协议指南1-知乎(zhihu.com)视频推荐CAN总线个人知识总
深度学习部署:Windows安装pycocotools报错解决方法1.pycocotools库的简介2.pycocotools安装的坑3.解决办法更多Ai资讯:公主号AiCharm本系列是作者在跑一些深度学习实例时,遇到的各种各样的问题及解决办法,希望能够帮助到大家。ERROR:Commanderroredoutwithexitstatus1:'D:\Anaconda3\python.exe'-u-c'importsys,setuptools,tokenize;sys.argv[0]='"'"'C:\\Users\\46653\\AppData\\Local\\Temp\\pip-instal
文章目录git常用命令(简介,详细参数往下看)Git提交代码步骤gitpullgitstatusgitaddgitcommitgitpushgit代码冲突合并问题方法一:放弃本地代码方法二:合并代码常用命令以及详细参数gitadd将文件添加到仓库:gitdiff比较文件异同gitlog查看历史记录gitreset代码回滚版本库相关操作远程仓库相关操作分支相关操作创建分支查看分支:gitbranch合并分支:gitmerge删除分支:gitbranch-ddev查看分支合并图:gitlog–graph–pretty=oneline–abbrev-commit撤消某次提交git用户名密码相关配置g
您将如何构建一个简单的Sinatra应用程序?我正在制作,我希望该应用具有以下功能:“应用程序”更像是一个包含所有信息的管理仪表板。然后另一个应用程序将通过REST访问信息。我还没有创建仪表板,只是从数据库中获取东西session和身份验证(尚未实现)您可以上传图片,其他应用可以显示这些图片我已经使用RSpec创建了一个测试文件通过Prawn生成报告目前的设置是这样的:app.rbtest_app.rb因为我实际上只有应用程序和测试文件。到目前为止,我已经将Datamapper用于ORM,将SQLite用于数据库。这是我的第一个Ruby/Sinatra项目,所以欢迎任何和所有建议-我应
我完全不是程序员,正在学习使用Ruby和Rails框架进行编程。我目前正在使用Ruby1.8.7和Rails3.0.3,但我想知道我是否应该升级到Ruby1.9,因为我真的没有任何升级的“遗留”成本。缺点是什么?我是否会遇到与普通gem的兼容性问题,或者甚至其他我不太了解甚至无法预料的问题? 最佳答案 你应该升级。不要坚持从1.8.7开始。如果您发现不支持1.9.2的gem,请避免使用它们(因为它们很可能不被维护)。如果您对gem是否兼容1.9.2有任何疑问,您可以在以下位置查看:http://www.railsplugins.or
我正在构建一个应用程序,想知道是否将未使用的对象设置为nil是生产级编码中的常见做法。我知道这只是垃圾收集器的提示,并不总是处理对象。 最佳答案 根据这个thread如果您使用完一个成员对象,将其设置为nil将引发被引用对象被垃圾回收。如果它是局部变量,方法exit将做同样的事情。也就是说,如果您要求将成员显式设置为nil,我会质疑您的设计。 关于ruby-将对象设置为nil是否很常见?,我们在StackOverflow上找到一个类似的问题: https://