支持sama,好久没有看到过这么高品质的文章啦!
ZVS是一个老生常谈的电路,它实在优秀,仅仅几个元件,就能巧妙的利用相位特性,在谐振时间内,电压软开关切换实现低损耗开关。
超低的工作条件要求,超高成功率, 以至于它已经取代了经典三极管自激振荡,成为电子爱好者入门必备的一个电路。
这个电路我也是从七八年前第一次接触,并一直希望能够使它更加聪明、可控,很多坛友也推出了一系列的尝试和设计,都取得了一定的成果。
-
但是关于ZVS的原理分析,仅仅停留在电路行为分析,直到我两个月前看到了脆脆的帖子XXXXXXXXXXXXXXXXXXXXXXXX/t/83587让我惊为天人!
这篇帖子是真正用模型描述ZVS电路,并且能够利用归一化方程条件来推导最佳电路工作点的文章,它第一次系统化的描述了这个电路。
这篇帖子我读了好几遍,并且自己推算了公式和建立了电路仿真,对ZVS的认知也上升了一个层面。
也认识到普通ZVS是高电压应力,高空载损耗的拓扑结构,它是有先天缺陷的。
-
基于以上积累,这段时间我用CPLD重新编写了代码,模拟ZVS的自激路径,并且对信号行为控制,避开弱点,加入了一些保护功能,使它更加可控。
我现在设计的电路能工作于任何电压,任何负载场合,可以实现无级功率调节。再次点名感谢脆脆@金坷居士!
-
PART1
在我看来工程设计非常系统化,是一项完成理论在现实中投射的手段,所以我今天不想谈具体电路和实现,还是聊聊理论。
直接拿波形来说话。
首先我的手绘图纸
并且用运放搭成建议的AGC电路,就能把电压波形整为方波,用于CPLD逻辑输入。
而正弦波之间的间隔,就是我在实际测试中观察的一个现象,当ZVS重载的时候,槽路电流波形会急剧消耗。
以至于电压波形来不及到地,就已经消耗殆尽,导致下个周期无法正常开关,这也就是一些ZVS重载无法工作的原因。
-
我对这个实验现象作了拍照记录。
可以看到,蓝色管Q1驱动波形还未结束,槽路谐振电压波形就已经到地了,这样会导致电流波形出现严重的硬开关,并且在MOS栅极形成振铃。
这是经典ZVS由于拓扑特性暴露出的第一个问题,如何解决数字控制电路中ZVS重载停振。
在传统电路中,这种波形在我的电路仿真中也得到了很好的体现,
以上仿真波形,非常完美的复现了实测波形的问题,并且比较夸张的参数,表示此时,正在发生严重的电流硬开关。
这是第一个工程问题,这个问题,会直接导致尖峰过大,并且电流通过MOS反向体二极管续流,这个尖峰就是脆脆帖子中指出的,电感在双管关闭情况下,恒流源对超高阻抗产生的超高电压尖峰,
MOS管的强制续流也很好理解,是槽路电压源寻找对地通路产生的。
这两个会对MOS管造成双重应力,这就是很多人无限并管,MOS管都会烧掉的原因之一,因为这种特性与设计无关,仅关乎于拓扑。
-
好在CPLD的逻辑非常灵活,我用差不多50行代码解决了这个问题,数字移相的思路。
PART2
-
解决这个问题之后,果然还是遇到了新的问题,那就是直接驱动的话,两个反向波形,会无法提供交叠区。
脆脆对于这个问题,在她的帖子里提出了一个Solution,方法简单的说就是人为制造死区时间,让开关交叠,避免Q12同时断开。
到底有没有效果呢?反正写Verilog代码不要动硬件,我把它付之于实践了结果有点出乎意料。
代码量不多,核心部分30行左右,我用一个可变K模模块实现了这个逻辑,直接看modelsim波形。
这段代码也算是一个小精髓,值得一提的是蓝色部分为启动引导波形,因为这不是ZVS不存在饱和或者LC翻转,必须靠初始脉冲给LC一定能量启动。
启动之后,切换控制权到AGC电路后级输出的整形方波。
可以看到红色椭圆部份内的波形,是MOS管的驱动波形,相比于正上方的原驱动波形,有了一个非常明显的交叠(负逻辑TC4423要反着看)。
这样的波形非常满足脆脆所说的要求,我也非常满意,然后我就把它上电测了下。。。结果。。。。
WTF?和仿真不一样啊,发生什么了。不仅没有实现预想的效果,尖峰还增加了。
再看看栅极驱动。
为什么死区根本没有起效果,这个BUG我查了足足三天时间,后来发现原因让我觉得非常哭笑不得。
原来对于ZVS电路来说,
这种方法,是完全不可行的,原因非常简单,
当分析ZVS的原理,Q1驱动波形有效时,Q1的电压为0,当驱动失能,电压才会呈现正弦半波上升。
所以此时才能触发下一个启动方波进入CPLD电路中,而如果给波形一个固定延迟,人为制造死区。
这时,不论延迟多长,下一个驱动波形的上升沿时刻,仍然由Q1的下降沿启动,
无论如何努力,也只能增加与正弦波错开的时间,而这段时间也非常致命,实际上,是让ZVS工作频率偏离了谐振点。
所以这就是ZVS的另一个顽疾,无论怎么改,只要基于基本原理,它就还是一个ZVS
-
对于这个结果,我补充一张波形逻辑图。
可以看到如果加入双管同时导通的交叠区,只会让正弦波后面产生一段负死区,这是我们不愿看到的。
-
这个问题后面我也解决了,是前文里所说的,数字移相的思路,类似锁相环CD4046中PD1的工作模式。
看波形圆润得很,而且驱动波形比起普通ZVS,NICE许多。
至此实现了ZVS的数字电路控制,现在测试能顺利切换2400W的功率,并且能够控制空载。
现在唯一的一些问题就是这种方式会有可能丢脉冲,不知道有没有更佳的办法解决这个问题?
-
submit
以上是RTL级展示,其实主要功能都在INTERCLOK模块中实现,这个电路的结构被我改成这样,貌似已经完全脱离ZVS了。
改改测测,反复对照理论,把它完成。
我才明白,经典ZVS其实已经是最高性价比方案,这样的设计难度和遇到的一些问题,不亚于做一些其他开关拓扑。
一些存在的固有问题,可能也是这个拓扑无法在工业上得到大规模应用的原因。
-
就像脆脆说的一样,ZVS在很多场合,需要重载输出,是没有普通推挽功率密度高的。
我用CPLD控制,加入各种逻辑和保护,才勉强规避了一些潜在问题,让它能工作在各种电压输入场合,并且有保护和调功功能,
而普通推挽电路,只需要两三个逻辑门就能实现与他一样的功率密度,仅仅是工艺要求较高。
爱也ZVS,恨也ZVS,这个电路对于初学者有着无穷的魅力,对于工业应用,它也有许多尚待解决的问题,
-
这篇文章是对脆脆大湿的文章理论成果的一次实践,并且也反向补充修正了一些理论让它更加完善。
希望有更多的人参与进来,让ZVS这个电路更好。
[修改于 5年9个月前 - 2019/04/18 09:19:36]
我所解决重载停震方案,采用NE555定时脉冲触发,间歇启动震荡,ZVS输出电压分压后,送入LM393与设定电位器进行比较,根据手工绕高频变压器匝数比。充电电压可调控在130V~700V之间。
时段 | 个数 |
---|---|
{{f.startingTime}}点 - {{f.endTime}}点 | {{f.fileCount}} |
200字以内,仅用于支线交流,主线讨论请采用回复功能。