- 本课程为精品课,您可以登录eeworld继续观看:
- 三相维也纳PFC拓扑设计方案 - 1.3 控制回路设计介绍
- 登录
- 课程目录
- 相关资源
- 课程笔记
大家好 我是TI Century FAEIgor An
今天我将向大家介绍
由TI C2000 Solution Team开发的
三相维也纳PFC的参考设计
希望通过这个参考设计能让大家了解到
在三相维也纳PFC的系统中有哪些TI的芯片
可供大家参考和选择
同时也非常希望 我们在实现
三相维也纳PFC的控制算法上
能对您有所启发和帮助
下面这个章节我将主要为大家介绍
在三相维也纳PFC这个参考设计中
我们控制环路的设计是如何实现的
我们知道要对一个定率电子的
功率电路进行控制
首先我们要了解这个功率电路的运作模式
那这里呢 我们以三相维也纳PFC中的任意一项为例
举例列出了它的几种电流的流向和工作模式
从这里可以看出我们每一项上面的两个Mose管
它实际上就相当于我们这个
两个正负半边的两个boost
这种实现PFC的这种拓普模式中的
正负半边的两个管子
在我试电的正半周周期
那我的电流流向是从ViN到母线
那是我将前面的这个G1的管子闭合
那电流将会流过G2管子的TRD管
那G2管子这个时候是off的 是断开的
那通过TRG管流过去
那相反的负向的是电流是相反的
所以这两管子一个是在试电的正半周工作
一个是在试电的负半周工作
那这里就是说我们一步一步的去了解
整个维也纳PFC的电路工作原理
那实际上我们完全可以把三相维也纳PFC
独立成三个单相的互相独立的单相的系统
进行研究
后面呢 我们也可以把这个
三相独立的通路
作为三个独立的环路进行控制
那它的一个理论依据呢
其实就是我们把这个两个母线的中点 这个M点
看作是或者是等效于
我三相ABC输入
三相电压的中线 中线点
那我们假设有一根虚拟中线从这个M点连出去
那这个虚拟中线就是连到
或者就是三相ABC输入的中线
那如果是有这根线存在的话那三相维也纳PFC的三个支路
就完全独立 互相解耦
互相不干扰
那这根线在实际系统中是没有的
那这根线如果存在的话
这根线上所流过的电流或是什么形式
如果这根线上根本就没有任何电流流过
那它的存在和不存在都是等效的
所以如果能够通过什么方式
或者是通过控制算法的方式
或者是什么计算
各种不同的计算方式
能够实现让我这个
即使有中线
它这个中线上没有任何电流流过
如果能实现这种情况那我就实现了三相维也纳PFC的解耦
那我就把它看作三个单相去控制
那同样的如果我们假设这边有一个中线
连到三相的中线上如果这根线存在的话
那么我们这个图上看到个这个电路那它画的这个形式
大家可能比较陌生
但是如果我们仔细看一下那电流流向的话 如果这有中线的话
那它其实就是一个
两个boost去结合形成对一个AC进行控制
那这两个boost就是经典的那一种
那正半边一个boost控正半边
就是试电的正半周期的时候一个boost去控
试电的负半周期的时候另一个boost去控
那就完全是这种非常经典的boost PFC的
单相boost PFC的这种结构
那如果存在这根中线的话
这个大家可以细想一下应该是很容易就能够
联想到boost这个结构的
那我们举个例子就是假设是正半周的这个
试电周期的时候
那我控制的管子是这个G1这个管子
那G2它是通过TRG管相当于它就不存在
那它就一直会通过去的
所以那我G1管子连过去直接是中线回去
那就相当于我这个输入经过电感这点
那on的时候直接是对中线短路那就是给这个电感储能
它off的时候
那就是电感放能给这个电容
这个电容电压抬升那完全就是一个半边boost
那反向的这个是同样的道理
所以如果我们能把它看成三个独立的
正负boost这种形式那这个维也纳PFC
就变得非常容易去控制
那如何去实现呢
因为它毕竟没有这根中线
我们用什么方式去实现这种三相独立解耦呢
我们将在下面几页给大家进行详细地阐述
另外我们这里强调的一点就是说整个我对三相维也纳PFC的控制
或者说我对这种PFC的控制实际上就是对这个
电脑后端这个VxiN这点的电位进行控制
那我控制它是正旋的
从而保证这个
ViN减去VxiN得到这个
降落在电感上的电压产生的
这个iLi
这个电流是正旋的同时这个电流是与电压输入同相位的
好下面我们就是深入地看一下
这个电流环的这个建模
那对电流环的建模其实我们熟悉这个PFC控制
就是单相也好或是其他拓普的PFC控制
这种如果是熟悉的话
那其实我们对这个PFC电流环的建模
实际上就是对这个电感的建模
那整个这个系统的模型就是这个电感
那就是在我们的框图里这里显示的
那这个框图之外这个红色虚线右侧这个
我们认为它都是这个实际硬件的数据模型
我们叫Plant
那我们还有这么多其他的环节其实就是我们各个采样的变比
我们把它都考虑进去了以及母线电压
等等这些的影响还有内阻
那其实最基础的就是这里
那对一个系统建模其实非常重要的一点首先就是
我要知道被建模系统的输入输出
那这里我们很轻易地看到
这个系统的输入就是我的duty就是我的整个MCU输出的duty
它的输入是duty 输出就是我的实际的电感电流iLi
那最为一个反馈系统
那对于这个系统来说那其实我们就是要找到一个
这个duty到iLi的一个数据关系
那我们这个通过这么多框图这个数据关系其实如果
我们把它理解成
两个boost这种结合的
单相PFC来说
这个关系其实是不难推出来的
那我们可以很容易的
就推出来这个数据关系
那其实我们从duty来去推这个关系的时候
它和我们这个数据模型它的关系实际上是
因为我们这个数据模型
从这个sLi再加上这个内阻Ri
这样本身来说它的输入是电感的电压电感上降落的电压
就是这个电感上的降落量它是等于输入电压减去我这个VxiN
那这个VxiN的电位就和我的duty有关了
就是我们上一页看到的那个关系
那它是一个duty和母线的一个关系
那我们有了这个关系我就可以
把这个输入的这个电感的VL我们叫它VL
和duty做一个转换那整个前面这一堆这个模块
或者是这个经过的这一些比例框图
那它都是把这个duty转成VxiN
好
好
这个关系我们就不太多花时间去讲
那其实电压环传统的这个PFC控制呢
电压环路其实没有什么特别的地方但是对维也纳PFC
就像我们之前讲到的如何去实现把这根虚拟中线拿掉
而同样能让这个系统
能够数据关系成立
能够让它们工作
那在维也纳PFC里面关键的这一点就是通过电压环
去控制 去实现的
那电压环我们下面列出了
一个这个
整体的这个电压环的框图
这个是包含了电流内环那这里是电流内环
那经典的这个
我们现在这个建模方式
是通过这个功率的形式去建模的
那其实最核心的还是我们的模型
那我们这个模型就是电容的电流
和电容的电压的一个关系
那这个关系也是不难推出来的
但是我们知道我们的电流内环
它控的电流是电感的电流
所以我们需要找到电感电流
到电容电流的一个对应关系
那我们中间这些环节就是
把这个电感电流转换成电容电流
然后 那我们这面前面的建模都是用功率
那我们认为从矫正器输出的
这个地方的物理也是我们的这个功率
那经过一些常数系数的这个变化
我把这个功率值实际上我是转换为电感电流的伏质
那后面的就是经典的PFC的处理办法
就是把输入电压的这个AC
它的数值是一个正旋信号乘以一个常数
就把它变成一个单面正旋成为我的电流伏质
这样我就变化成为了
一个我的正旋电流参考
那通过它的一些自己环路的电流矫正去实现电流的自闭环
然后再经过这些关系把我的
这个电感电流的关系
变为电容电流的关系
那实现整个环路的成立
那这个我们看到这个Vbus
那这里的Vbus我们注意到
因为我们之前看的拓普
它为我们实际上分了正负母线
那这里Vbus控制是正负母线之和
那我们在后面会深入的去讲解
那这张图是我们一个完整的
这个三相维也纳PFC的控制回路
我们有包括我们的功率电路
那这里我们画了一些 包含EMC的EMI的 这些余波电路
那我们看到其实我们三相电压的采样在这
那它的参考点N是我们造出来的这个N点
那这个电压是我们作为正旋量去乘进去的
同时我们还可以看到在这个地方还有这个地方
就是我在电流环要输出这个duty的时候
我又额外加入了一些变量
那这个变量到底是不是加到这我们可以去探讨
那有很多种加的方式但是核心的一点就是我的电压环
那电压环看到我们第一个环路就是这个加号
那其实它的来源是我的
正母线采样和负母线采样
我是把正负母线电压采样去相加得到一个总的母线采样
作为我的总的母线
那由一个总的母线控制回路就是这里
它去决定我的电流伏质
另外一个我把正母线和负母线做一个相减
做一个两个母线电压差值的控制回路
把它放到我这个duty里当然这个点也还有可能
直接放在电流参考这边
实际上我们从直观的理解来说
我们就是把我的以零对称的正负相等的这个
sin的这个电流参考
我把它人为的加一个零[听不清]
或者向正或者向负当然这个是在动态的调节了
这个环路的目的就在于我保证我正负母线是均衡的
那这个实际上就是回到
我们最初讲的虚拟中线的那种思路
那它正负母线均衡的
我就可以保证
这一点几本是零电位
那我就可以等效为
我这个M点和我这个N点
是相连在一起的因为这个是零电位
那这里我们认为也是零电位
当然前提是我三相电压平衡
那这样它们之间是没有就从平均电流上来看
是没有环流流过的那我把这个线连上
我把这个线拿掉那它对系统的这个
在一个周期这个范围内所看的是没有影响的
所以从这一点上我们从这个环路的控制环路的设计上
来实现了这个三相维也纳PFC的控制
那它的实现方式就是我把它的每一个支路作为一个独立的
两个正负半边的boost进行控制
那这个就是我们整个维也纳PFC的实现
这个整个实现的思路和我们的方式
好
今天我们这个软件控制回路的部分就给大家介绍到这里
欢迎大家继续关注后面的内容谢谢大家
猜你喜欢
换一换
推荐帖子
- 【求助】宏定义时溢出,想用unsigned int,怎么办?
- 宏定义时溢出,想用unsigned int,怎么办? ============================================================ 有如下一句定义: #define TIMER_A_50 (750*50) // 50ms 程序中有: CCR0 = TIMER_A_50; //...
- jackylam 微控制器 MCU
- msp430g2553的IIC通信
- 因为一个特殊的原因,必须用msp430g2553实现IIC通信,硬件的没弄出来,想软件模拟一下,结果本来预计一晚上的任务,硬生生变成了一晚上加一早上。。。。这块单片机IIC通信的主要槽点在于,你一旦把SDA引脚切换成输入模式进行ACK检测就会直接断开整个时序,我不是很懂为什么,反正我把它去了就好了,下面是根据山外的SCCB底层库改编的msp430g2553的IIC通信代码. /**IIC.c**...
- Aguilera 微控制器 MCU
- 无法下载程序到TM4C123GH6PZ
- 在keil开发环境下使用STLINK给M4下载程序报错,报错内容如下;连接正常,板子是自己做的,无法下载程序 ...
- 豪小子丶 微控制器 MCU
- 求问关于DSP/BIOS里面的wrapper function
- 例如help中的示例函数: void wrapper(SampleClass myObj) { myObj->do(); } do()是SampleClass中的成员函数,如果do()里面将SampleClass中的一个私有数据如 int i 加1,那么上文中的写法能够达到实际需要的效果吗? 我的意思是,由于wrapper函数的形参不是指针或者引用类型,它对...
- qunge12345 微控制器 MCU