用单片机产生SPWM是很方便的,也是今后发展的趋向,但单片机不是人人都能驾驭的,象我这样的不懂单片机编程的人很多,就是能编程的,也不是人人都能写出好的SPWM程序来。当然,用单片机的SPWM具有性能稳定,一致性好等优点。所以,我觉得用单片机的SPWM比较适合做产品,如果要玩的话,可能还是纯硬件具有挑战性。就象现在的汽车有了自动档,但也有很多人还是喜欢开手动档,认为只有手动档才有驾驶的感觉云云。
这几天做的这款用3525的硬件SPWM驱动器,有如下特色:
1.取消了双电源,用单电源12V供电,供电比较简单;
2.解决了文氏振荡器的温漂问题,现在我用1000W电吹风吹它,它的幅度变化在0.1Vpp左右,而第一版电路,在电吹风下要变化40%;
3.提高了正弦波的精度,用失真仪测第一版的正弦波,失真在2.5%以上,难怪看上去波头都有点歪,现在的正弦波精度提高到0.4%,经还原后的失真度在0.7%左右,波形很漂亮了。
4.改进了稳压电路,第一版采用的是用误差放大器稳压,主要是一个相位差的问题难解决,稳压精度很低。现在,我用了直流反馈的方式,用电压控制的放大器来闭环稳压,精度大大提高,如果其它元件选取合理,输出电压可以稳定在正负2V之内。还有一个好处,因为用了直流反馈稳压,所以反馈电路的干扰大大的减小了,调试也显得十分简单。
5.有商用价值,广州那边,已经有人用我的这个图纸把电路封装成厚膜电路,用在商用逆变器上。
一、用虚拟双电源电路
第一版中的电源,采用的是+-12V双电源供电,其优点是:可以输出幅度比较大的正弦波,但这个幅度实在是有点浪费,因为输入到3525的馒头波幅度只要2.3VPP就够了。双电源的缺点是,供电电路比较麻烦,我在500W纯硬件逆变器中,是在前级的主变压器上加了二个绕组再整流滤波获得,当然,也可以用34063二个,来获得双电源。我研究了钟工的早几年的几个贴子,发现他在纯硬件电路中,很多采用了虚拟双电源的技术,为此,我就拿来用了,确实比较方便,电路图如下:
图中用了一个单元的运放,可以用动态比较大一点的运放:如5532,082,084等,正向输入端用二个电阻分压,获得6V的电压,因为反向输入端和输出端相联,接成跟随模式,所以输出端也为6V,这个6V端就是一个虚拟的“地”,而真正的地线此时变成了-6V,+12V端变成了+6V。这个驱动电路中的“文氏振荡器”、“精密整流”、“直流压控放大器”、“50HZ同步方波”这四部分,是工作在“虚地”即虚拟双电源方式下,而“3525”、“时序”、“死区”几块电路是工作在真地模式下的。
二、改进文氏电桥振荡电路
文氏电桥振荡器,因为其电路简单,波形比较好,起振容易,所以有广泛的应用,但它的幅度稳定性很不好,下面是典型的电原理图:
我在网上找来找去,一般都是用EFT场效应管做成压控电阻来控制振荡器的增益,达到稳幅的目的。但电路复杂,在用电吹风吹时候,因为场效应管的热稳定性问题,输出幅度会大幅度上升。下图为我的第一版的用的电路:
我把它的输出调到4VPP,但用1000W电吹风一吹,10几秒钟幅度就从4VPP降到2.6VPP左右,但频率没有变化,所以,这个电路要实用有一定困难。我分析了其中的原因,原来是二个稳幅二极管,在温度上升后,导通内阻发生变化,使电路增益下降,最终导致输出幅度变化。所以,要其输出幅度稳定,首先要使电路的增益稳定。
如果,我们把上图中的R5,R4和二个二极管看成是一个电阻RL,那么,整个电路的增益就和RL和R3的比值有关,如果温度上升,RL就减小,电路增益就下跌,要使整个电路增益不变,就必须R3也同时减小。为此我用了下面的电路:
用R26.R28.R29来代替原来的R3,当温度变化时,热敏电阻R29的阻值同时变化,来达到稳定整个电路增益之目的。我用的R29是一种玻璃封装的热敏电阻,也是在淘宝上买的,型号不详,在25度时,阻值大约为100K左右,在70度时,阻值在26K左右,是属于负温度系数的产品。见下图:
R28是用来补偿热敏电阻的变化速率的,可以用电吹风试验,在温度上升时,如果电路输出还是下降,说明补偿不够,可以加大R28的值,如果输出变成上升了,说明补偿过度,可以减小R28的值。
经改进后的文氏电桥振荡器,输出幅度变得非常稳定,我曾把整个电路放进-5度的冰箱,再放进55度的烘箱,电路输出幅度变化都控制在0.2VPP之内,如果是一般的使用环境,可以控制在0.1VPP左右。
三、提高基准正弦波的精度:
第一版的正弦波,看上去波头总有点歪,我后来买了失真度仪,就用失真仪测了一下,真是大跌眼睛,发现失真度在2.7-3%左右。经检查,发现是从振荡电路出来的波形就有问题了。后来认真研究了文氏电桥振荡电路的工作原理,发现,输出越大,失真越厉害,输出再加大,就越接近方波了,我发现,只有当把输出控制在4VPP以下时,失真度最小,在0.4%左右,如果输出继续减小,失真度也没有减小了,而且输出太小,就有停振的可能了,所以,我认为,4VPP是一个比较好的输出值。
下图是第一版的波形,波头有点往左歪:
四、用直流反馈做AC稳压
第一版电路中稳压方式用的是“误差放大器控制法”,这是一种比较“专业”的电路,要设计得好,象我这样的菜鸟有一定的困难,我总结了一下,有如下问题比较头痛:
1.反馈回来的必须也是馒头波,但在强电压输出条件下,干扰很难避免,一般只能在整流之前加强滤波,整流电路也很麻烦,如果要求高的话,也要用精密整流电路,我曾因“偷懒”用了4个4007进行整流,得到馒头波。
2.反馈回来的馒头波和原始馒头波之间有相位差,要进行补偿,这就不是一句话说得清楚的事了,太麻烦了。
3.误差放大器的增益很难控制,放大量小了,稳压效果不好,放大量大了,很容易自激。
为此,我一直在想,能不能象单片机的SPWM驱动那样,也用直流反馈方式来进行稳压。这就必须要有一种电路,可以用直流控制增益。我在网上找过,有很多种专用的运放,可以用直流控制增益,但大多数是用于仪器仪表的,输出幅度很小,价格昂贵,肯定用不了。只有一个MC3340,价格在6元左右,我曾买来试装过,它可以用直流控制增益,电路如下:
经实际试用,发现有二个问题比较麻烦:
1.它的输出和控制电压之间,并不是成很好的线性关系。
2.它的反应速度很慢,也就是控制电压变化后,输出并不是马上跟着变化,而是有一个延时,用在稳压反馈电路中很不舒服。
3.附加失真太大,有0.8%-1%,也就是一个失真为0的信号进去,出来就有0.8-1%的失真了。
我曾经试装了二块用MC3340的的驱动板,感觉要用在逆变器电路中,还是不行,只得放弃了3340,决定另找途经。
下图是我在网上找到的,用结型场管做压控电阻来调整增益的电路,类似电路还有很多
经试装,它确实能用电压控制增益,反应也很快,但还有二个问题需要解决:
1.在输出信号幅度较小时,放大器非线性失真严重,输出正弦波很难看。‘
2.在温度变化时,因为结型场管的内阻变化,放大器输出幅度变化明显。
为此,我在运放的正反输入端各接了一个结型场管,用来抵消非线性失度和温漂,图如下:
经改进后的电压控制放大电路,性能很好:
1.有很大的动态范转,输出可以从0V起调,一直到10VPP(因为没有用轨至轨的运放)。
2.线性很好,
3.反应迅速,没有延时的感觉。
4.附加失真很小,只有0.2%左右,也就是一个失真为0的信号进去,出来也只有0.2%的失真度。
下图为我实验测得的数据,做成的图标
有了这款放大电路,用来做正弦波的幅度调整,就游刃有余了,如果要做一台,可以从零伏起调的逆变器,从原理上来讲也是没有什么困难的。
五、同步方波电路
在时序电路中做选通用的同步方波电路,如下图:
这个电路实际上是二个过零电压比较器,该电路也是工作在“虚地”状态,从1P和7P出来的是正负6VPP的方波,而后面的时序电路却是工作在“真地”状态,所以,这个正负6VPP的方波信号,对“真地”来讲,就是一个0-12V之间变化的方波,因为这个巧妙的设计,所以,取消了原先第一版电路中后面的二极管直流箝位电路,比第一版要省掉6个元件。
六、减法电路
在第一版电路中,因为所有模拟电路都是用双电源供电的,从精密整流电路出来的馒头波信号,是从0V起开始上升的,为了适应3525的输入要求(要求为0.9V起开始上升),所以要在3525的输入端之前,加一个加法电路,把馒头波往第一象限方向上移0.9V,所以,加法电路也称为移位电路。
在这款电路中,因为精密整流电路是工作在“虚地”模式下,它输出的馒头波信号,对“真地”来讲,是从6V起开始上升,为了适应3525的输入要求,就必须把下面的6V直流电位减去5.1V,所以,这里就不能套用第一版的加法电路,而必须用一个减法电路才行。在第一版电路中,3525的误差放大器是放弃不用的,这次,我把3525的误差放大器利用了起来,接成一个减法电路,调整R16就可以调整下面直流电位的高低,可以让馒头波信号在第一象限任意移动。
其等效电路如下:
七、元器件选择及PCB布线要求:
1. 图中所有的运放,建议采用NE5532TL082TL084等动态范围比较大的运放,我试过用358或324等运放,带来的问题是稳定要差很多,还有,通过压控放大器后,失真会变大。
2.稳压电路压控放大器上用的二个场管,一定要用结型场效应管,不能用增强型的MOS管,早期的型号有3DJ6等,我用过东芝的2SK30A,效果比较好,贴片的可以用MMBFJ310或309,效果也很好。二个管子一定要用同一型号的,以保证特性的一致。
3.热敏电阻的要求上面已经有说明,也可以用其它热敏系数的热敏电阻,只要调整一下R28就可以了。
4.PCB布线有一定要求,因为整个电路既有模拟电路,又有数字电路,所以,供电要分开,图中+12是供给模拟电路的,VCC是供给数字电路的,模拟和数字的地线要分开走,在电解C25的负极汇总。
5.如果输出部分不用250光藕,用IR2110之类的,则IC107要换成CD4081。
6.精密整流电路中的R10、R11要用万用表测一下,尽可能配对,确保阻值相同,否则出来的馒头波有高低。
下图是为了测试纯硬件驱动板,专门做的H桥,上面有一个4路隔离电源。
这个隔离电源比较简单,性能能够满足一般的使用要求,在设计时得到正弦芯大师的指点,特此感谢!
TOP104工作时比较热,所以散热片要尽可能大一点
以上是在实验中的设计图形