电力电子
5
 
CPLD控制经典ZVS电路设计探索
rb-sama 2019-4-17 22:44:52

ZVS是一个老生常谈的电路,它实在优秀,仅仅几个元件,就能巧妙的利用相位特性,在谐振时间内,电压软开关切换实现低损耗开关。

超低的工作条件要求,超高成功率, 以至于它已经取代了经典三极管自激振荡,成为电子爱好者入门必备的一个电路。

这个电路我也是从七八年前第一次接触,并一直希望能够使它更加聪明、可控,很多坛友也推出了一系列的尝试和设计,都取得了一定的成果。

-

但是关于ZVS的原理分析,仅仅停留在电路行为分析,直到我两个月前看到了脆脆的帖子https://www.kechuang.org/t/83587让我惊为天人!

这篇帖子是真正用模型描述ZVS电路,并且能够利用归一化方程条件来推导最佳电路工作点的文章,它第一次系统化的描述了这个电路。

这篇帖子我读了好几遍,并且自己推算了公式和建立了电路仿真,对ZVS的认知也上升了一个层面。

也认识到普通ZVS是高电压应力,高空载损耗的拓扑结构,它是有先天缺陷的。

-

基于以上积累,这段时间我用CPLD重新编写了代码,模拟ZVS的自激路径,并且对信号行为控制,避开弱点,加入了一些保护功能,使它更加可控。

我现在设计的电路能工作于任何电压,任何负载场合,可以实现无级功率调节。再次点名感谢脆脆@金坷居士

-

PART1

在我看来工程设计非常系统化,是一项完成理论在现实中投射的手段,所以我今天不想谈具体电路和实现,还是聊聊理论。

直接拿波形来说话。

首先我的手绘图纸

pic

 

 图示是ZVS工作的波形,用超高速电压比较器,接成迟滞比较器,可以对电压波形进行检波,限幅。

并且用运放搭成建议的AGC电路,就能把电压波形整为方波,用于CPLD逻辑输入。

而正弦波之间的间隔,就是我在实际测试中观察的一个现象,当ZVS重载的时候,槽路电流波形会急剧消耗。

以至于电压波形来不及到地,就已经消耗殆尽,导致下个周期无法正常开关,这也就是一些ZVS重载无法工作的原因。

-

我对这个实验现象作了拍照记录。

pic

 可以看到,蓝色管Q1驱动波形还未结束,槽路谐振电压波形就已经到地了,这样会导致电流波形出现严重的硬开关,并且在MOS栅极形成振铃。

这是经典ZVS由于拓扑特性暴露出的第一个问题,如何解决数字控制电路中ZVS重载停振。

在传统电路中,这种波形在我的电路仿真中也得到了很好的体现,

pic

以上仿真波形,非常完美的复现了实测波形的问题,并且比较夸张的参数,表示此时,正在发生严重的电流硬开关。

 这是第一个工程问题,这个问题,会直接导致尖峰过大,并且电流通过MOS反向体二极管续流,

这个尖峰就是脆脆帖子中指出的,电感在双管关闭情况下,恒流源对超高阻抗产生的超高电压尖峰,

MOS管的强制续流也很好理解,是槽路电压源寻找对地通路产生的。

这两个会对MOS管造成双重应力,这就是很多人无限并管,MOS管都会烧掉的原因之一,因为这种特性与设计无关,仅关乎于拓扑。

-

好在CPLD的逻辑非常灵活,我用差不多50行代码解决了这个问题,数字移相的思路。

PART2

-

解决这个问题之后,果然还是遇到了新的问题,那就是直接驱动的话,两个反向波形,会无法提供交叠区。

脆脆对于这个问题,在她的帖子里提出了一个Solution,方法简单的说就是人为制造死区时间,让开关交叠,避免Q12同时断开。

pic

 到底有没有效果呢?反正写Verilog代码不要动硬件,我把它付之于实践了结果有点出乎意料。

代码量不多,核心部分30行左右,我用一个可变K模模块实现了这个逻辑,直接看modelsim波形。

pic

这段代码也算是一个小精髓,值得一提的是蓝色部分为启动引导波形,因为这不是ZVS不存在饱和或者LC翻转,必须靠初始脉冲给LC一定能量启动。

启动之后,切换控制权到AGC电路后级输出的整形方波。

可以看到红色椭圆部份内的波形,是MOS管的驱动波形,相比于正上方的原驱动波形,有了一个非常明显的交叠(负逻辑TC4423要反着看)。

这样的波形非常满足脆脆所说的要求,我也非常满意,然后我就把它上电测了下。。。结果。。。。

pic

 WTF?和仿真不一样啊,发生什么了。不仅没有实现预想的效果,尖峰还增加了。

再看看栅极驱动。

pic

 为什么死区根本没有起效果,这个BUG我查了足足三天时间,后来发现原因让我觉得非常哭笑不得。

原来对于ZVS电路来说,

pic

 这种方法,是完全不可行的,原因非常简单,

当分析ZVS的原理,Q1驱动波形有效时,Q1的电压为0,当驱动失能,电压才会呈现正弦半波上升。

所以此时才能触发下一个启动方波进入CPLD电路中,而如果给波形一个固定延迟,人为制造死区。

这时,不论延迟多长,下一个驱动波形的上升沿时刻,仍然由Q1的下降沿启动,

无论如何努力,也只能增加与正弦波错开的时间,而这段时间也非常致命,实际上,是让ZVS工作频率偏离了谐振点。

所以这就是ZVS的另一个顽疾,无论怎么改,只要基于基本原理,它就还是一个ZVS

-

对于这个结果,我补充一张波形逻辑图。

pic

 

可以看到如果加入双管同时导通的交叠区,只会让正弦波后面产生一段负死区,这是我们不愿看到的。

-

这个问题后面我也解决了,是前文里所说的,数字移相的思路,类似锁相环CD4046中PD1的工作模式。

pic

 看波形圆润得很,而且驱动波形比起普通ZVS,NICE许多。

至此实现了ZVS的数字电路控制,现在测试能顺利切换2400W的功率,并且能够控制空载。

现在唯一的一些问题就是这种方式会有可能丢脉冲,不知道有没有更佳的办法解决这个问题?

-

submit

pic

以上是RTL级展示,其实主要功能都在INTERCLOK模块中实现,这个电路的结构被我改成这样,貌似已经完全脱离ZVS了。

改改测测,反复对照理论,把它完成。

我才明白,经典ZVS其实已经是最高性价比方案,这样的设计难度和遇到的一些问题,不亚于做一些其他开关拓扑。

一些存在的固有问题,可能也是这个拓扑无法在工业上得到大规模应用的原因。

-

就像脆脆说的一样,ZVS在很多场合,需要重载输出,是没有普通推挽功率密度高的。

我用CPLD控制,加入各种逻辑和保护,才勉强规避了一些潜在问题,让它能工作在各种电压输入场合,并且有保护和调功功能,

而普通推挽电路,只需要两三个逻辑门就能实现与他一样的功率密度,仅仅是工艺要求较高。

爱也ZVS,恨也ZVS,这个电路对于初学者有着无穷的魅力,对于工业应用,它也有许多尚待解决的问题,

-

这篇文章是对脆脆大湿的文章理论成果的一次实践,并且也反向补充修正了一些理论让它更加完善。

希望有更多的人参与进来,让ZVS这个电路更好。




 


[修改于 1 个月前 - 2019-04-18 09:19:36]

+4.39  科创币    20!Dopaminor   2019-04-18   凑够五个字

想参与大家的讨论?现在就 登录 或者 注册

{{submitted?"":"投诉"}}
请选择违规类型:
{{reason.description}}
支持的图片格式:jpg, jpeg, png