【个人经验分享】恒流PWM输出驱动电路

这个是最近学习到的一个电路,感觉以后可能会用到,先记录一下,也和大家一起学习。电路图大致如下:

这个电路其实和之前最学习的sink恒流源电路很相似,区别就是增加了一个PWM和二极管。下面是去掉二极管和PWM之后的仿真图

在上图仿真中:

该电路通过控制同相输入端电压Vp来实现恒流。仿真图中负载电流等于0.5V/1Ω=0.5A。图中C1作用为在运放上电瞬间建立瞬态的负反馈通路,让运放稳定(因为反馈回路较慢)。在正常工作后,C1等效为开路。

然后我们可以根据上面的恒流源的基础上分析本期的电路,我们可以看到,假设单片机的PWM输出电压为0V,那么此时二极管截止,恒流电路正常工作,MOS管处于恒流区。

如果PWM处于高电平,那么此时D1会处于导通状态,然后运算放大器的反向输入端电压大概就为3V左右,大于VDAC,那么此时运放会输出0V左右(靠近运放的负电源轨,具体要看运放型号)。那么此时MOS管会处于截止状态,也就没有电流流过负载。如下所示:

然后我们对这个电路进行仿真,可以看到仿真结果如下,得到一个恒流为Vdac/R3=100mA的一个PWM负载电流波形。

不过我们仔细看,就会发现,在红色的负载电流波形会存在一个过冲,这个过冲存在于在PWM从低变成高电平的过程中。例如下图,我们放大:

那么这个问题是什么导致的呢?其实是电容C1导致的。在PWM由低变高的过程中,由于反相输入端的电压会突然上升,而电容两端电压又不能突变,所以会导致运放输出端电压上升,最终导致输出给栅极的电压变高,从而恒流电流值会突然上升一小段。

我们通过仿真也可以看到,在MOS管的栅极也是会存在一个电压上升的,也正是这个电压上升导致负载电流的突然增大。

那么去掉或者改小C1均可以改善此现象。例如我把C1去掉,那么也可以看到,PWM负载电流的上冲也随之消失了。

好的,本期分享到此结束,我觉得可以用在既要恒流又要PWM驱动的地方,例如一些需要PWM调制的地方,DAC用于调整电流,PWM用于调制,像一些红外灯之类的。那么你觉得这个电路可以应用在哪里呢?欢迎帖子下方留言。

1 个赞