3、理想开关模型搭建:使用理想开关搭建BUCK电路、开环仿真、波形分析
好,咱们进入正题。这一章,我带你用最干净的方式——理想开关模型,来搭建一个BUCK电路。
你可能会问:为什么非要用理想开关?直接用MOSFET的模型不香吗?
嗯,这里有个坑。我刚入行那会儿,也喜欢一上来就拽个高级模型,结果仿真跑得慢不说,波形还乱七八糟,根本分不清是电路原理问题还是模型参数问题。后来我学乖了——先用理想开关把原理跑通,再逐步替换成实际器件。这个习惯,我一直保留到现在。
3.1 理想开关模型长什么样?
说白了,理想开关就是一个三端器件:控制端、输入端、输出端。控制端给高电平,开关就闭合;给低电平,开关就断开。没有导通电阻,没有寄生电容,没有开关延迟——干净得像一张白纸。
在仿真软件里,比如LTspice或者Simplis,理想开关通常用SW模型来实现。我个人习惯用LTspice,它的SW模型参数很直观:
.model SW SW(Ron=1m Roff=1Meg Vt=2.5 Vh=0.1)
解释一下这几个参数:
- Ron:导通电阻,我设1毫欧,几乎就是短路
- Roff:关断电阻,1兆欧,基本就是开路
- Vt:阈值电压,2.5V,控制信号超过这个值就导通
- Vh:滞回电压,0.1V,防止控制信号抖动时来回切换
3.2 搭建BUCK电路——就四个元件
一个基本的BUCK电路,用理想开关搭起来其实特别简单。你想想看,核心就四个东西:
- 理想开关:代替上管MOSFET
- 二极管:代替下管(或者用另一个理想开关做同步整流)
- 电感:储能元件
- 电容:输出滤波
再加上输入电压源和负载电阻,齐活。
我画个电路连接关系给你看(别嫌我啰嗦,新手最容易在这里接错):
输入电压 VIN (12V) —— 理想开关SW1 —— 电感L —— 输出电容C —— 负载R
│
└—— 二极管D1 (阴极接SW1和L的节点,阳极接地)
控制信号加在SW1的控制端上,用PWM波驱动。占空比决定输出电压。
3.3 开环仿真参数设置
好,电路搭好了,咱们来跑开环仿真。开环的意思就是没有反馈,PWM占空比固定。我常用的参数如下:
| 参数 | 数值 | 说明 |
|---|---|---|
| 输入电压 VIN | 12V | 典型值 |
| 开关频率 fsw | 100kHz | 低频,方便观察波形 |
| 占空比 D | 0.5 | 50%,理论输出6V |
| 电感 L | 100μH | 保证连续导通模式 |
| 输出电容 C | 100μF | 带ESR 50mΩ |
| 负载 R | 10Ω | 输出电流约0.6A |
仿真时间我一般设5ms,足够让电路进入稳态。瞬态步长设1μs,这样每个开关周期有100个点,波形足够平滑。
3.4 波形分析——看什么?
仿真跑完,咱们来看波形。我一般会拉出四路信号:
- SW节点电压(开关和电感连接点)
- 电感电流
- 输出电压
- 输入电流
先看SW节点电压。理想情况下,SW节点应该是一个方波,在0V和12V之间跳变。但实际仿真中你会发现,波形边缘有点斜——这不是开关的问题,是仿真器的数值计算导致的。别慌。
再看电感电流。占空比50%,理论输出6V,电感电流应该是三角波,平均值0.6A,纹波峰峰值大约:
ΔI_L = (VIN - VOUT) * D * T / L
= (12 - 6) * 0.5 * 10μs / 100μH
= 0.3A
嗯,算出来是0.3A。仿真结果应该跟这个吻合。如果不吻合,先检查你的占空比是不是真的50%,再检查电感值对不对。我遇到过好几次,仿真波形不对,结果发现是PWM信号没接对——控制端悬空了,开关一直关断。
输出电压呢?理想情况下应该是6V,但实际仿真中会有纹波。纹波大小取决于电容和ESR。100μF电容、50mΩ ESR,纹波大约:
ΔV_OUT ≈ ΔI_L * ESR = 0.3A * 0.05Ω = 15mV
再加上电容充放电产生的纹波,总纹波大概20mV左右。这个数值在仿真里是正常的。
3.5 避坑指南——我踩过的雷
最后,分享几个我实际项目中遇到的坑:
- 仿真不收敛:检查Ron和Roff的比值。Ron/Roff最好小于1e6,否则仿真器容易发散。
- 电感电流飞了:看看是不是负载太轻,进入了断续模式。开环仿真下,轻载时电感电流会到零,波形会变。
- 输出电压不对:确认二极管方向。我犯过最蠢的错误——二极管接反了,输出直接短路到地。
- PWM信号没起作用:检查控制信号的电压幅值是否超过Vt。如果PWM幅值是3.3V,Vt设了5V,开关永远不会导通。
好了,这一章的内容就到这儿。理想开关模型虽然简单,但它是理解BUCK电路工作原理的基石。下一章,咱们会在这个基础上加入反馈环路,看看闭环控制是怎么让输出电压稳住的。