本文导读
- 1. 什么是 PF
- 1.1 PF 的意义
- 1.2 进一步了解 PF:相位差与畸变
- 相位差的产生
- 畸变因素的产生
- 1.3 PF 总结
- 2. PFC 是什么
- 2.1 无源 PFC
- 无源 PFC 电路举例及 matlab 仿真
- 2.2 有源 PFC
- 为什么选取 Boost 拓扑
- Boost PFC matlab 仿真
- 2.1 无源 PFC
- 3. 总结
PF
在学习PFC之前我们有一个更重要的东西就是要知道什么是PF,因为没有PF就没有PFC.
PF的意义
我们实际使用的电子产品都是有严格的pf值的规定,这里要先引入有功功率无功功率和视在功率的一个概念。
这就是三者的关系,我们在实际的产品标称中的400瓦是有功功率的部分,但这个产品在运作的过程中它是有能量转移的,比如说它会从电网中汲取能量储存为磁能量然后用完之后它会把这个能量释放回电网,虽然这一部分能量没有做工但是它存在了能量转移。
所以PF就可以简单的理解为这一部分的一个比值,比如我们这个产品是一个400W但是它的PF=0.8,
那么它作用在电网上会是什么样呢?PF=0.8 表示有功功率与视在功率的比值是 0.8,这里的 400W 只是真正做功的部分,此时电网需要承担的视在功率为:
S = 400W / 0.8 = 500VA
如果按 220V 交流电估算,线路电流约为 500VA / 220V ≈ 2.27A;而同样 400W 若 PF=1,电流只有约 1.82A。也就是说,PF=0.8 时电流大了约 25%,这些多出来的电流并不对外做功,却会在线路、变压器和电缆里产生额外的发热损耗(I²R),同时额外占用电网的传输容量。所以 PF 越低,电网侧承担的“无效电流”就越多,这也是为什么要引入 PFC、尽量把 PF 做到接近 1。
进一步了解PF
那我们现在已经知道了我们PFC主要针对的目标就是PF,所以我们现在要进一步的去了解它。
前者是电源波形还有电流波形的相位差,后者是畸变因素。
相位差很好理解,畸变因数大家可以先简单理解为电流波形跟正弦波波形差异,越接近正弦波那么畸变因数这个值就会变大相反就会变小。
相位差的产生
在交流电系统中,电压和电流是否同相,取决于负载的阻抗特性。对于纯电阻负载,电压和电流会同时达到峰值,几乎没有相位差;但实际电子产品里往往包含电感、变压器、电机绕组等感性元件,情况就不同了。
电感有一个基本特性:它会把电能暂时转成磁能储存起来,然后再释放回电网。这个“储存—释放”的过程会让电流的变化跟不上电压。具体来说,电感上的电流不能突变,当电压已经升高时,电流还在慢慢爬升;当电压开始下降时,电流可能仍然处于较高位置。因此电流波形整体上会往时间轴后方平移,表现为电流滞后于电压。理想情况下,纯感性负载的电流会滞后电压 90°。
反过来,如果是纯电容性负载,电容两端电压不能突变,电流会先给电容充电,导致电流超前于电压 90°。
matlab仿真检验
仿真环境是310V 60Hz的交流电,电感和电容的值设的比较随意但从这个示波器图中不难看出
纯电阻电路它的电流起点就是0,相比于交流电对相位差是0;电感电路的起点落在负轴,电流滞后于电压;电容电路起点落在正半轴,电流超前于电压。
畸变因素的产生
畸变因数对应的是“电流波形是不是正弦”的问题。理想情况下,电网电压是正弦波,如果负载是线性的,电流也会是正弦波;但实际电路里存在大量非线性元件,会让电流波形偏离正弦,产生畸变。
最常见的来源就是整流桥加大电容滤波。开关电源、适配器、LED 驱动、充电器基本都是这个结构:交流电先经过二极管整流,再给后面的大电解电容充电。电容只在输入电压高于电容电压的那一小段时间里充电,所以电流不是连续的正弦波,而是在电压峰值附近出现一个很窄的尖峰脉冲
matlab仿真检验
这里我们引入一个整流桥,给负载并联一个电容。
图中黄色的波就是交流电的电压波,依然是漂亮的正弦波,蓝色的波就是发生了畸变之后的电流波,已经不是一个正弦波,此时畸变因数小于1。
PF总结
从上面的分析我们可以看出,PF 由相位差和畸变因数两部分组成,也了解了它们各自的产生原因和影响。写到这里,大家应该已经明白:我们追求的是让 PF 尽量接近 1。
打个比方,如果家里使用的电器都是感性负载,那么这些负载产生的滞后电流在家庭总线上叠加后,会进一步加大对电网的影响,整体有功功率与无功功率的比值也会变得更差。
不过从工程师的角度来看,我们无法强制用户家里使用什么样的家电,所以只能尽最大努力把自己手头做的产品 PF 值做得足够好,以此来减少国家电网的损耗和压力。
PFC
PFC也叫功率因数校正,是来处理PF问题的一种电路。
那我们这边可以把pfc的电路分为大概两类就是有源pfc和无源pfc
无源PFC
无源PFC也叫被动式PFC,指的是不依赖开关管、控制芯片等有源器件,而是利用电感、电容这类无源元件来改善功率因数。
无源PFC的优点很明显:结构简单、成本低、可靠性高,而且没有高频开关噪声;但缺点同样突出:工频电感体积大、重量重,校正能力也有限,一般只能把 PF 提升到 0.7~0.8 左右,很难做到接近 1。因此它更适合小功率、对成本和体积比较敏感的设备。
无源PFC电路举例及matlab仿真
填谷式PFC:
此电路最初由 James J.Spangler 于1988年提出,这次仿真我们采用它未经改善之前的电路模型。简单理解,这个电路让电容先串联充电、再并联放电
这个图中上半部分就是填谷式PFC电路,下半部分是电流波形的对比电路,其中元件容值和电阻值都是相等的。
蓝色的波形是填谷式 PFC 的电流波形,红色的波形则是普通整流电路的波形。虽然蓝色的波形也不算完美,但对比之下可以看出,它的相位差更小,波形也更接近正弦波。不过说实话,这个波形看起来并不理想,可能是我设置的元件参数不太贴合实际电路。虽然能看出电路是有效的,但效果并不令人满意。填谷式 PFC 是有改进版本并且也广泛运用,波形会比这个好很多,在这里就不再多做演示了。
当然,这里选择填谷式 PFC 作为演示,并不代表实际应用中只有这一种方案。常见的还有电荷泵 PFC 等电路,只是那些电路结构更复杂。作为演示,选择这个更简单的填谷式 PFC 就足够了。无源 PFC 电路就先介绍到这里。
有源PFC
即升压有源功率因数校正(APFC)电路。
这一部分我们主要关注电源拓扑结构的选择,常用的有升压变换电路(Boost)和反激变换电路。接下来,我们将以 Boost 拓扑的有源 PFC 作为讲解的重点。
为什么选取boost拓扑
电路拓扑结构有很多,但我们之所以选择 Boost 拓扑,原因可以简化为两点:其一,Boost 的电感串联在输入回路中,输入电流连续、纹波较小,再配合闭环控制,更容易把整流后的脉冲电流整形成接近正弦的电流,从而改善 PF;其二,Boost 输出的是高于输入峰值的直流母线,适合给后级电路供电,而且在非隔离、中高功率场合控制方案成熟。相比之下,Buck-Boost 输入电流不连续、滤波较困难,反激更常用于需要隔离或单级 PFC 的场合,所以这里以 Boost 作为讲解重点。
boostPFC matlab仿真
这个仿真电路是我短时间搭建的,走线看起来会显得比较粗糙;不过只要了解 Boost 的拓扑结构,理解起来肯定是没什么问题的。
| 模块 | Simulink / SPS 元件名 | 参数 | 当前设置 |
|---|---|---|---|
| 交流输入 | AC Voltage Source | 输入有效值 | (220V_{rms}) |
| 交流输入 | AC Voltage Source | 峰值 | (311V) |
| 交流输入 | AC Voltage Source | 频率 | (50Hz) |
| 整流桥 | Diode×4 | 结构 | 全桥整流 |
| Boost 电感 | Series RLC Branch | Branch type | L |
| Boost 电感 | Series RLC Branch | 电感值 | (10mH) |
| Boost 开关 | MOSFET | 驱动方式 | PWM |
| Boost 二极管 | Diode | 作用 | 升压续流 |
| 输出电容 | Series RLC Branch | Branch type | C |
| 输出电容 | Series RLC Branch | 电容量 | (470\mu F) |
| 输出负载 | Series RLC Branch / Resistor | 电阻值 | 约 (3k\Omega) |
| 开关频率 | PWM Generator (DC-DC) | (f_s) | (50kHz) |
| 输入电压归一化 | Gain | Gain | (1/311) |
| 电流幅值 | Constant | (I_{amp}) | (0.4A) |
| 电流参考生成 | Product | 运算 | (0.4\times V_{REC}/311) |
| 电流误差 | Sum | 运算 | (I_{ref}-I_L) |
| 电流控制器 | PID Controller | 模式 | PI |
| PI 比例项 | PID Controller | (K_p) | 0.05 |
| PI 积分项 | PID Controller | (K_i) | 50 |
| PI 输出下限 | PID Controller | Lower limit | 0 |
| PI 输出上限 | PID Controller | Upper limit | 0.9 |
| 抗积分饱和 | PID Controller | Anti-windup | Clamping |
| 电流检测 | Current Measurement | 信号 | (I_L) |
| 电压检测 | Voltage Measurement | 信号 | (V_{REC},V_{OUT}) |
| 信号标签 | Goto / From | 标签 | IL,VREC,PWM等 |
这张表格整理了仿真中使用的主要元件参数。由于是直接用 AI 读取并生成的,部分细节可能不够准确,但关键功率元件的数值基本没有问题。
参考电流的生成
整流后的输入电压:
V R E C = ∣ V m sin ω t ∣ V_{REC} = |V_m \sin \omega t|VREC=∣Vmsinωt∣
对于 220 V 交流电,其峰值为:
V m = 220 2 ≈ 311 V V_m = 220\sqrt{2} \approx 311VVm=2202≈311V
为了得到与输入电压同形的参考电流,先把整流电压归一化到 0~1:
v n ( t ) = V R E C 311 v_n(t) = \frac{V_{REC}}{311}vn(t)=311VREC
接着人为给定一个电流峰值:
I a m p = 0.4 A I_{amp} = 0.4AIamp=0.4A
将归一化电压与电流峰值相乘,即可生成参考电流:
I r e f = I a m p × V R E C 311 I_{ref} = I_{amp} \times \frac{V_{REC}}{311}Iref=Iamp×311VREC
代入I a m p = 0.4 A I_{amp}=0.4AIamp=0.4A:
I r e f = 0.4 × V R E C 311 I_{ref} = 0.4 \times \frac{V_{REC}}{311}Iref=0.4×311VREC
因此,参考电流与整流后的输入电压成正比:
I r e f ( t ) ∝ V R E C ( t ) I_{ref}(t) \propto V_{REC}(t)Iref(t)∝VREC(t)
这正是功率因数校正的基本目标:让输入电流跟随输入电压:
i i n ( t ) ∝ v i n ( t ) i_{in}(t) \propto v_{in}(t)iin(t)∝vin(t)
本模型暂时没有接入电压外环,因此这里的 (0.4A) 只是人为设定的固定电流幅值;在完整的 PFC 电路中,这个幅值应当由输出电压外环自动调节。
图中展示的是交流电源侧的电流波形。
这幅图展示的是电感电流与参考电流之间的关系。可以看到,电感电流的波形与目标电流波形基本一致,两者几乎完全重合。
这里只使用了一个没有经过精细调试的电流环,电感值和电容值也没有经过特别精确的计算。在仿真的理想环境下,这个波形已经足够展示有源 PFC 对功率因数的校正能力,同时也说明了为什么在中高功率的电子产品中通常采用有源 PFC。有源 PFC 的部分就先介绍到这里。
总结
在文章的最后,我们再简单过一遍。虽然这篇文章前前后后写了将近 6000 字,估计也没什么人真的能看到这里,但既然都写到这了,还是把重点收一下。
PF 值主要看有功功率和视在功率之间的关系,它受两个因素影响:一个是电压波形和电流波形的相位差,另一个就是电流波形的畸变因数。PFC 要做的,就是针对这两个方面对系统的 PF 值进行改善。
其中,无源 PFC 结构简单、成本也比较低,但效果相对有限,不只是对 PF 值的改善不够好,对后级电路的压力也会更大一些。而有源 PFC 虽然成本会高一点,但校正效果会好很多。
这篇文章里主要举的例子就是 Boost PFC,这也是目前比较常用的一种结构。关于它的优点,前面已经聊过不少,这里就不再重复啰嗦了。
仿真模型
本文中用到的仿真电路,都已经放到我的 GitHub 仓库里了。仓库地址会写在文章结尾,方便大家。如果有什么不对的地方,欢迎指正。
我这边使用的 MATLAB 版本是 2023b
https://github.com/lqt-lqt/CSDN-Simulation-Models