一种动态响应优化的开关电源控制方法与流程

文档序号:11291402阅读:595来源:国知局
一种动态响应优化的开关电源控制方法与流程

本发明涉及开关电源的控制方法,尤其涉及一种动态响应优化的开关电源控制方法,属于开关电源技术领域。



背景技术:

在开关电源领域,动态响应是评估开关电源性能的一个重要指标,改善数字电源的控制方法可以提高电源的动态响应能力。决定开关电源的动态响应性能的一个重要影响因素就是开关电源中的pid控制模块。pid控制模块的两个重要因素影响了系统的动态响应性能,一是pid控制模块的各项参数,包括比例系数kp、积分系数ki和微分系数kd。二是pid控制模块的实现方式。

传统的pid实现方式是利用微控制器中的计算单元来实现的,即系统根据运行时所采集到的相关系统数据如输出电压,根据pid控制模块的各项参数,根据公式来计算出下一周期所需要的控制量。但是由于数字控制相对于传统的模拟控制存在着其特有的数字环路延迟。总的数字控制环路延迟包括adc采样与转换时间、pid计算时间、pwm输出延迟、晶体管切换时间、和pid执行速度时期之和。其中adc采样与转换时间的典型值为500纳秒,pid计算时间的典型值为1微秒,pid执行速度时期典型值为2微秒。所以pid控制模块中控制量计算的过程占据了数字控制环路控制延迟的一大部分。如果考虑数字控制环路所带来的延时的影响,可能会造成当前计算出控制量已经不适用于当前情况的现象,从而导致系统的失调。所以在采用数字控制的时候就需要我们尽可能的缩短数字控制所带来的环路延时。同时,在数字控制中还存在着控制速的问题,低成本的微控制器往往不支持浮点数运算,从而导致控制量的计算不准确,控制波形存在数字控制特有的阶梯状波形,并且低成本的微控制器往往没有浮点数计算单元(fpu),大大加长了计算过程的耗时,增大了数字控制的环路延时。

除此之外,由于开关电源广泛工作在工业界环境中,其产品需求量大,对于产品的成本较为敏感。为此客户往往需要在产品的成本以及产品的动态响应效果之间进行权衡。为了获得良好的动态响应效果,客户往往需要使用高速支持浮点数的微控制器进行控制以提高控制速,同时还需要高主频的微控制器来加快pid控制模块的计算过程,从而缩短环路延时。但是这些高主频、带有浮点数计算单元的微控制器的单位成本往往较高,无疑提高了最终产品的成本。

根据以上的市场条件以及理论条件,提出一种能够同时保证低成本、控制速度和时间的pid控制模块的实现方法就显得尤为重要,并具有极高的市场意义。



技术实现要素:

本发明的目的是针对现有的技术存在的不足提供一种动态响应优化的开关电源控制方法,能够同时保证低成本和高速度的对开关电源进行控制。

本发明所采取的技术方案如下:一种动态响应优化的开关电源控制方法,其特征在于:基于包括输出电压采样电路、采样放大隔离电路和以微控制器为核心的控制电路构成的控制系统,该控制系统与受控的开关电源构成闭环,输出电压采样电路通过电阻分压采样开关电源的输出电压,经过采样放大隔离电路后输出给以微控制器为控制核心的控制电路,以微控制器为控制核心的控制电路包括ad转换模块、查找表lut模块、索引生成模块、查找表lut生成模块和脉冲宽度调制模块,ad转换模块的输入信号为采样放大隔离电路的输出信号,ad转换模块将转换后的输出电压值传输至索引生成模块,索引生成模块根据采样得到的开关电源电路的输出电压值计算得到输出电压误差值、输出电压误差积分值和输出电压误差微分值,并利用这三个值生成三维lut的索引用来在lut中查找相对应的控制量,lut模块中存储的是根据不同的输出电压值、输出电压误差积分值以及输出电压误差微分值组合所对应的利用pid的计算公式计算得出的控制量,lut生成模块在系统正式工作前,遍历所有可能的输出电压误差值、输出电压积分值、输出电压微分值作为pid计算公式的参数,利用pid计算公式计算这三者的组合所对应的控制变量值,存储在微控制器的内置flash或者外置flash中,当lut生成并存储完毕之后,系统给出开关电源中mos管的驱动信号,开始正常工作,监控开关电源电路的输出电压值,当该输出电压值与设定值不符时,ad转换模块将该输出电压值传递给索引生成模块,索引生成模块根据输出电压值,计算得出输出电压误差值、输出电压误差积分值、输出电压误差微分值,并将这些值作为查找索引,在flash中查找得出相对应的控制变量值,最后将控制变量应用于脉冲宽度调制产生模块以调节开关电源的输出电压值。

当系统启动时,以微控制器为控制核心的控制电路执行相关参数的初始化及其内部相关模块的配置,包括脉冲宽度调制产生模块、ad转换模块,同时配置lut生成模块中的pid参数,包括比例系数kp、积分系数ki、微分系数kd,然后系统根据lut生成模块中的pid参数,遍历所有可能的输出电压误差值、输出电压误差积分值、输出电压误差微分值作为pid计算公式的参数,计算得出相对应的控制变量值,然后存储在微控制器的内置flash或者外置flash中。

以微控制器为控制核心的控制电路的工作流程包括以下步骤:

1)首先根据系统的预设值对系统的相关参数进行初始化,包括设定开关电源的输出电压值、配置定时器、a/d转换模块及中断在内的相关外设的工作模式以及工作参数,其中定时器为脉冲宽度调制产生模块所用,用于控制开关电源电路中的mos管m1的开关,配置a/d转换模块工于dma模式,配置定时器的中断以利用pid控制模块调节占空比以控制功率拓扑输出电压;

2)配置lut生成模块中的pid计算公式的相关参数,包括比例系数kp、积分系数ki、微分系数kd;

3)lut生成模块遍历所有可能的输出电压误差值、输出电压误差积分值、输出电压误差微分值的组合,并利用计算公式计算得出该情况所对应的控制变量,然后将以对应的输出电压误差值、输出电压误差积分值、输出电压误差微分值作为索引,计算得出的控制变量作为结果,存储在微控制器的内置flash中或外置flash中;

4)等待前述流程完成之后,微控制器给出驱动信号,使得开关电源正常工作;

5)ad采样模块监测开关电源的输出电压,若设定的输出电压值与实际的电压值不相符,则将输出电压值传递给索引生成模块。索引生成模块根据输出电压误差值同时计算输出电压误差积分值、输出电压误差微分值,计算过程为,通过将输出电压误差值与前次计算的输出电压误差积分值进行累加计算,得到新的输出电压误差积分值。通过将输出电压误差值与前次的输出电压误差值进行微分运算,得到新的输出电压误差微分值。同时根据上述三个值计算出索引值,用以在lut中查找对应的控制变量;

6)根据索引生成模块生成的三个索引值,转换成相对应的地址,在flash中读出相对应的控制变量,并将该变量应用于脉冲宽度调制产生模块,用以调节开关电源的输出电压。

7)继续监测输出电压的值,若与设定值不符,则返回第5)步执行。

所述输出电压采样电路包括电阻r1和电阻r2,电阻r1的一端连接开关电源电路的输出端,电阻r1的另一端连接电阻r2,电阻r2的另一端连接输出地端,电阻r1与电阻r2的连接端为分压采样的输出端。

所述采样放大隔离电路为运算放大器k,运算放大器k的负端连接电阻r1与电阻r2的连接端,运算放大器k的正端连接输出地端。

所述受控的开关电源包括pid调节的升/降压拓扑电路:boost电路、buck电路和buck-boost电路等。

本发明的优点及显著效果:

1、采用lut来存储pid计算公式的存储结果,在系统输出电压发生变化时,根据ad采样值即可直接查找得出对应的控制变量,无需配备具有高速浮点数计算单元(fpu)的微控制器从而降低了产品的成本。

2、使用lut来存储控制变量,相对于利用微控制器计算得到控制变量,其中间耗时大大缩短,从而减小了数字环路延迟,从而提高了环路稳定性。

3、利用此控制方法的产品在使用低成本低速度的微控制器的同时能够达到同使用高成本高速的微控制器相同的效果。在降低了成本的同时保证了性能。

附图说明

图1是本发明整体结构方框图;

图2是本发明系统原理图;

图3是本发明控制程序流程图。

具体实施方式

下面结合附图对本发明的技术方案进行详细的说明:

如图1所示,一种低成本高速的动态响应优化的开关电源控制方法,其特征在于包括受控的开关电源,输出电压采样电路及其采样放大隔离电路,以及以微控制为核心的控制电路构成的控制系统。控制系统的特征在于包含lut、lut生成模块以及索引生成模块。在系统正常工作之初,lut生成模块根据pid参数生成lut,因此在系统工作之后,控制变量的生成由索引生成模块根据输出电压生成索引,然后在lut之中直接查找得出相应的控制量,免去了计算的过程,同时加速了这一流程的处理速度。

图2为图1的具体电路,以boost升压拓扑电路为实施例。输出电压采样电路通过boost升压拓扑电路的采样电阻r1,r2分压采样,电阻r1,r2的连接端为输出电压采样输出端,电阻r2的另一端连接输出地端;

采样放大隔离电路为运算放大器,其中,运算放大器k对应输出电压采样电路,运算放大器k的负端连接输出电压采样输出端,运算放大器k的正端连接输出地端;

以微控制器为控制核心的控制电路包括ad转换模块、lut、索引生成模块、lut生成模块、脉冲宽度调制模块,ad转换模块的输入信号为运算放大器k的输出信号、ad转换模块将转换后的输出电压值传输至索引生成模块,索引生成模块根据采样的得到的输出电压值计算得到输出电压误差值、输出电压误差积分值、输出电压误差微分值,然后利用这三个值生成三维lut的索引用来在lut中查找相对应的控制量。lut模块中存储的是根据不同的输出电压值、输出电压误差积分值以及输出电压误差微分值组合,所对应的利用pid的计算公式计算得出的控制量。lut生成模块在系统正式工作前,遍历所有可能的输出电压误差值、输出电压积分值、输出电压微分值,并利用pid计算公式计算这三者的组合所对应的控制变量值,然后将相关结果形成lut并存储在微控制器的内置flash中或者是外置flash芯片中。

参看图3,以微控制器为控制核心的控制电路的工作流程包括以下步骤:

1)首先根据系统的预设值对系统的相关参数进行初始化,包括设定系统的输出电压值,以及配置定时器,a/d转换模块,中断等相关外设的工作模式以及工作参数。其中定时器为脉冲宽度调制产生模块所用,用于控制boost升压拓扑电路中的mos管m1的开关,配置a/d转换模块工于dma模式,配置定时器的中断以利用pid控制模块调节占空比以控制输出电压。

2)配置lut生成模块中的pid计算公式的相关参数,包括比例系数kp,积分系数ki,微分系数kd。

3)lut生成模块遍历所有可能的输出电压误差值、输出电压误差积分值、输出电压误差微分值的组合,并利用计算公式计算得出该情况所对应的控制变量。然后将以对应的输出电压误差值、输出电压误差积分值、输出电压误差微分值作为索引,计算得出的控制变量作为结果,存储在微控制器的内置flash中或外置flash中。

4)等待前述流程完成之后,微控制器给出驱动信号,使得boost升压拓扑电路正常工作。

5)ad采样模块监测系统的输出电压,若设定的输出电压值与实际的电压值不相符,则将输出电压值传递给索引生成模块。索引生成模块根据输出电压误差值同时计算输出电压误差积分值、输出电压误差微分值。主要计算过程为,将输出电压误差值与前次计算的输出电压误差积分值进行累加计算,得到新的输出电压误差积分值。通过将输出电压误差值与前次的输出电压误差值进行微分运算,得到新的输出电压误差微分值。同时根据上述三个值计算出索引值,用以在lut中查找对应的控制变量。

6)根据索引生成模块生成的三个索引值,转换成相对应的地址,在flash中读出相对应的控制变量。并将该变量应用于脉冲宽度调制产生模块,用以调节系统的输出电压。

7)继续监测输出电压的值,若与设定值不符,则返回第5)步执行。

本发明控制系统的工作过程如下:当系统启动时,以微控制器为控制核心的控制电路执行相关参数的初始化,及其内部相关模块的配置,包括脉冲宽度调制产生模块、ad转换模块。同时配置lut生成模块中的pid参数包括比例系数kp,积分系数ki,微分系数kd。然后系统根据lut生成模块中的pid参数,遍历所有可能的输出电压误差值、输出电压误差积分值、输出电压误差微分值作为pid计算公式的参数,计算得出相对应的控制变量值,然后存储在微控制器的内置flash或者外置flash中。当lut生成并存储完毕之后,系统给出mos管的驱动信号,开始正常工作,并且监控系统的输出电压值,当系统的输出电压值与设定值不符时,ad转换模块将输出电压值传递给索引生成模块,索引生成模块根据输出电压值,计算得出输出电压误差值、输出电压误差积分值、输出电压误差微分值,并将这些值作为查找索引,在flash中查找得出相对应的控制变量值,最后将控制变量应用于脉冲宽度调制产生模块以调节输出电压值。

本发明除适用于上述boost电路拓扑之外,也适用于buck,buck-boost等电路拓扑。这些电路均是通过可通过pid计算占空比,通过占空比来调节系统的输出电压。在boost电路拓扑之外其余电路拓扑中应用时,仅需根据拓扑电路的mos管数量,调节脉冲宽度调制模块生成的pwm波数量即可。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1