控制理论如何应用于我的实际处理器控制的升压转换器?


10

我对控制理论的了解有限。我在学校处理零极点和转移函数。我已经为DC / DC转换器实现了几种基于微处理器的控制方案。这两件事如何相互关联,我还想弄清楚,我很想知道。以反复试验为基础的设计是可行的,但我更希望对自己在做什么以及后果有更深入的了解。

答案应该集中在如何分析系统上,而不是在如何改进它上。就是说,如果您有改进系统的建议,并希望给出分析原因,那就太好了!只要改进是分析的第二要务。

对于这个问题,我的示例系统是: 在此处输入图片说明

  • C1:1000uF
  • C2:500uF
  • L1:500 uH
  • 开关频率:4 kHz
  • R1:可变
  • 输入电压:400伏
  • 输出电压目标:500伏
  • 输出电流限制:20安培

我正在尝试调节输出电压,而不超过输出电流限制。我具有电压和电流检测功能,这些电压和电流检测功能经过各个放大阶段,目前还没有进行分析,但确实包含一些滤波功能。随后是直接在A / D转换器上的100欧姆和1000 pF的RC低通滤波器。A / D采样率为12 kHz。该值通过最后64个采样的单极IIR移动平均滤波器。

之后,我有两个PI循环。首先,电压环路。以下是伪代码,其值缩放为伏特,毫安和纳秒。假设边界检查在其他地方正确实现。如果没有积分项,这些循环的结构将根据最大允许下垂定义P,然后定义积分项,以使最大积分器可以准确补偿该下垂。INTEGRAL_SPEED常数确定积分器加速的速度。(在我看来,这是确保P和我的收益始终保持适当平衡的一种合理方法,而不管我如何设置常数,但我愿意接受其他建议。)

#DEFINE VOLTAGE_DROOP 25
#DEFINE VOLTAGE_SETPOINT 500
#DEFINE MAX_CURRENT_SETPOINT 20000

voltage_error = VOLTAGE_SETPOINT - VOLTAGE_FEEDBACK
current_setpoint = MAX_CURRENT_SETPOINT * voltage_error/VOLTAGE_DROOP

#define VOLTAGE_INTEGRAL_SPEED 4
voltage_integral += voltage_error/VOLTAGE_INTEGRAL_SPEED
//insert bounds check here
current_setpoint += VOLTAGE_DROOP * voltage_integral/MAX_VOLTAGE_INTEGRAL

#DEFINE CURRENT_DROOP 1000
#DEFINE MAX_ON_TIME 50000

current_error = current_setpoint - current_feedback
pwm_on_time = MAX_ON_TIME * current_error/CURRENT_DROOP

#define CURRENT_INTEGRAL_SPEED 4
current_integral += current_error/CURRENT_INTEGRAL_SPEED
//insert bounds check here
pwm_on_time += CURRENT_DROOP * current_integral/MAX_CURRENT_INTEGRAL

所以我有一个带两个电容器的升压转换器,一个扼流圈,一个可变负载(可能是阶跃函数),带单极RC滤波器的反馈,一个A / D转换器,单极IIR数字滤波器和两个PI环路互相喂食。如何从控制理论的角度(极点,零点,传递函数等)分析这样的事情,尤其是正确选择我的控制回路参数?


我开始回答这个问题,并意识到您正在询问如何分析开环升压调节器,以便可以应用一些算法(我认为您希望对其进行分析),然后我注意到电压和电流的输出范围以及意识到您为此功能使用了错误的拓扑结构(不是真实世界),所以我停下来写了此注释。好的,您可能会选择对问题进行修订以将注意力集中在更现实的场景上,但是仍然要分析算法,而对于一个问题来说,电路就有点多了。
安迪(aka Andy aka)2013年

@Andyaka不是开环的,我正在测量要调节的电压和电流。(除非我误解了您的评论。)而且,我的公司已经在这种功率范围内以及远远超出它的范围内使用这种拓扑构建转换器已有几十年了。如果您要使用的是IGBT,则不使用FET。那可能是完全不现实的。FET符号就在眼前,而IGBT符号就在眼前,两者之间的差异似乎并没有影响到这个问题。
Stephen Collings

例如,我们完成了400V-> 600V 85A 4kHz,400V-> 750V 1000A 2 kHz和150V-> 600V 18A 12 kHz。所有人都在现场并且相当稳定。因此,除了我已纠正的FET / IGBT差异以外,该拓扑是可行的。
斯蒂芬·科林斯

@StephenCollings请问您如何/在何处指定大电流电感器?我了解它有点题外话,但我正在寻找一些参考资料来学习。
HL-SDK

1
@ HL-SDK在此频率和功率范围内,我们与包括American Magnetics,Precision Magnetics和Electronic Craftsmen在内的几家公司交好运。芯通常在三到五英寸的正方形薄片之间。不过,这些都是采用专有设计定制的。根据我的经验,大多数磁性公司不会向您出售其他客户的产品。
Stephen Collings

Answers:


7

基本控制研究涵盖的大部分是线性时不变系统。如果幸运的话,最后可能还会得到离散采样和z转换。当然,开关模式电源(SMPS)是在时间上不连续地通过拓扑状态演变的系统,并且大多数情况下还具有非线性响应。结果,SMPS不能通过标准或基本线性控制理论很好地分析。

以某种方式,为了继续使用所有熟悉和理解的控制理论工具;例如Bode图,Nichols图等,必须对时间不变性和非线性进行一些处理。看一下SMPS状态如何随时间演变。以下是Boost SMPS的拓扑状态:

在此处输入图片说明

这些单独的拓扑中的每一个都易于作为时不变系统进行分析。但是,分别进行的每个分析都没有多大用处。该怎么办?

当拓扑状态从一个突然切换到另一个时,有些数量或变量在切换边界上是连续的。这些通常称为状态变量。最常见的示例是电感器电流和电容器电压。为什么不基于每种拓扑状态的状态变量来编写方程,并通过组合加权总和来获得时间不变模型,从而对状态方程取某种平均值?这并不是一个新主意。

状态空间平均-从外部进行状态平均

在70年代,加州理工学院的Middlebrook 1发表了有关SMPS状态空间平均的开创性论文。本文详细介绍了组合和平均拓扑状态以对低频响应进行建模的过程。Middlebrook模型的平均状态随时间变化,对于固定频率PWM控制,其下降到占空比(DC)加权。让我们从基础开始,以工作在连续传导模式(CCM)中的升压电路为例。有源开关的导通状态占空比将输出电压与输入电压关联为:

= V inVØV1个-直流电

两种状态中的每一种的方程式及其平均组合为:

活跃状态被动状态大道州状态变量  重量直流电(1-DC)大号dtV大号-VC+V大号-1个+直流电VC+V大号DVCdt-VCC[R一世大号C-VCC[R[R-直流电[R一世大号-VCC[R

好的,这需要对状态进行平均,从而形成时不变模型。现在,对于有用的线性化(ac)模型,需要将扰动项添加到控制参数DC和每个状态变量中。这将导致稳态项加上旋转项。

直流电直流电Ø+d交流电
一世大号一世+一世大号
VCV合作+vC
VV井野+v

将它们代入平均方程。由于这是线性交流模型,因此只需要一阶变量乘积,因此请丢弃两个稳态项或两个旋转项的乘积。

dvCdt1个-直流电Ø一世大号-一世d交流电C-vCC[R
d一世大号dtd交流电V合作+vC直流电Ø-1个+v大号

ddtĴωvCd交流电

vCd交流电-V合作直流电Ø+V合作-大号一世sC大号s2+直流电Ø2-2直流电Ø+大号s[R+1个

FpFcp

FpV合作1个-直流电Ø22π大号一世Ø

Fcp1个-直流电Ø2π大号C

FpFcp

在此处输入图片说明

增益和相位图显示了复极点和右半平面零。极点Q如此之高,因为未包括L1和C2的ESR。现在要添加额外的模型元素,将需要返回并将其添加到开始的微分方程中。

我可以在这里停下来。如果我做到了,那么您将拥有尖端技术专家的知识……从1973年开始。越南战争将结束,并且您可以停止大汗淋漓地获得您那可笑的选择性服务乐透号码。另一方面,闪亮的尼龙衬衫和迪斯科会很热。最好继续前进。


PWM平均开关模型-由内而外的状态平均

在80年代后期,Vorperian(Middlebrook的前学生)对状态平均有深刻的见解。他意识到,一个周期真正变化的是开关条件。事实证明,与平均电路状态相比,平均开关时对转换器动力学建模更为灵活和简单。

在Vorperian 2之后,我们为CCM升压建立了平均PWM开关模型。从规范开关对(有源和无源开关一起)的角度出发,以及有源开关(a),无源开关(p)和两者的公共端(c)的输入-输出节点。如果再参考状态空间模型中升压调节器的3个状态的图,您会看到在开关周围画了一个框,显示了PWM平均模型的连接。

VapVcp一世一种一世C

VapVcp直流电

一世一种一世C

然后添加扰动

直流电直流电Ø+d交流电
一世一种一世一种+一世一种
一世C一世C+一世C
VapVap+vap
VcpVcp+vcp

所以,

vapvcp直流电Ød交流电Vap直流电Ø

和,

一世一种一世C直流电Ø+一世Cd交流电

这些方程式可以汇总成适用于SPICE的等效电路。稳态直流与小信号交流电压或电流相结合的术语在功能上等同于理想变压器。可以将其他术语建模为比例依赖源。这是带有平均PWM开关的升压调节器的AC模型:

在此处输入图片说明

PWM开关模型的波特图看起来与状态空间模型非常相似,但并不完全相同。差异是由于为L1(0.01Ohms)和C2(0.13Ohms)添加了ESR。这意味着L1损耗约10W,输出纹波约为5Vpp。因此,复极对的Q较低,rhpz很难看到,因为其相位响应被C2的ESR零覆盖。

在此处输入图片说明

PWM开关模型是非常强大的直观概念:

  • 由Vorperian派生的PWM开关是规范的。这意味着这里显示的模型可以与boost,buck或boost-buck拓扑一起使用,只要它们是CCM。您只需要更改连接,即可将p与无源开关匹配,将a与有源开关匹配,并将c与两者之间的连接匹配。如果您想要DCM,则需要一个不同的模型...而且它比CCM模型更复杂...您不可能拥有一切。

  • 如果您需要向电路中添加诸如ESR之类的东西,则无需返回到输入方程式并重新开始。

  • 通过SPICE可以轻松使用。

  • PWM开关型号涵盖广泛。Everett Rogers(SLVA061)在“了解开关模式电源的升压功率级”中有一篇易于理解的文章。

FsŤsŤs

现在您进入了1990年代。手机的重量不到一磅,每张桌子上都有一台PC,SPICE无处不在,它是一个动词,而计算机病毒就是一回事。未来从这里开始。


1 GW Wester和RD Middlebrook,“开关式Dc-Dc转换器的低频特性”,IEEE航空航天和电子系统学报,第1卷。AES-9,第376-385页,1973年5月。

2 V. Vorperian,“使用PWM开关模型的PWM转换器简化分析:第I部分和第II部分”,《航空航天和电子系统的IEEE交易》,第1卷。AES-26,第490-505页,1990年5月。


1

控制理论的总体简化:

基本上,您需要从模型开始。对要分析的物理转换器建模非常容易。有一些数学模型可以高度精确地复制升压转换器的电性能。

棘手的是对控制系统进行建模。想到的一个工具是PSIM,它使您可以将许多数字参数建模为离散块(量化,A / D转换,IIR滤波器,延迟等)-这使您可以轻松使用沙箱,而不会冒硬件风险。

下一步是分析从控制到输出的“工厂”,以了解您要补偿的确切内容。通常通过设置直流工作点(无反馈),在一定频率范围内注入扰动并测量响应来实现开环。

一旦获得开环响应,就可以设计一个补偿器,以确保有足够的工作裕度来保持稳定性(增益零交叉处有足够的相位裕度,在180度相位处有足够的衰减)。然后,在仿真中以块(或伪代码)形式实现您的控制器,并测试闭环响应。


1

使用仿真工具会很有用,但是电路的基本原理是每秒要传输4,000次能量,而负载的功率就是能量传输乘以每秒传输能量的次数。

大号一世222500×10-6

IGBT开路时,该能量通过二极管S1释放到负载电路中。

Ë=大号d一世dŤ

500×10-6×63400=79μs

如果负载电阻较小,则需要传输更多功率,并且流入电感的峰值电流会更高,这当然意味着IGBT保持导通的时间更长。

μsμsdqdŤ=CdvdŤ

dqdŤ=dvdŤ=

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.