1.原理及用途
(1)原理直接引用*原子STM32讲解PWM转DAC的篇章*
(2)当MCU中DAC功能不够用时,而还要输出可控的DC电平,这时可以使用这种模式来达到目的;另外一些由PWM控制的负载器件,比如比例阀、电机,要测试这些负载流过的等效电流,也可以使用这种方法
2.需求分析
我们这里使用二阶RC低通滤波来达到检流电阻的PWM波等效DC直流电平的功能;
电路示意图如下,这里的PWM不是MCU直接输出的,而是经过推挽放大电路处理过的信号
R11/R12 、C3/C4组成二阶RC滤波;这里R11=R12、C3=C4
3.数学计算
假如我们要求经过滤波后结果达到检测电流±1mA,则1个位的精度达到1.5/2048=0.0007324V,采样电阻电平范围0-1.5V
假设被滤波的信号电压范围0-1.5V,那么一次谐波的最大值1.5*2/π=0.95496,那么电路要至少提供-20log(0.95496/0.0007324V)=-63dB衰减
这里使用的PWM是F=20KHz
如果是一阶RC滤波,那截止频率Fs的计算由-10*log[1+(F/Fs)^2]=-63dB,得Fs=14Hz
如果是二阶RC滤波,那截止频率Fs的计算由-20*log[1+(F/Fs)^2]=-63dB,得Fs=532Hz
参数RC选择:
这里使用二阶低通滤波器,Fs=1/2πRC,得R=1KΩ,C=300nF(这里是由设计者选取),(R11=R12=R,C3=C4=C),这个RC乘积是个定值,至于R C选择组合,可根据实际应用来确定,但是有一个思路:R或C不能太小,比如R取很大时,C必然取小,这时由于电路的寄生效应,导致最后的等效电容增大比例很多,会影响滤波效果,这样就不行了;反过来选取R一样
一阶二阶对比,除了电路上不同;计算的截止频率差别也是很大
二阶衰减比一阶严重一点、但是二阶延迟较小,而且一阶纹波大
4.电路仿真及波形数据-二阶滤波器
因为实际负载工作电流范围:0-1A,故而电流电阻上的电压范围0-1.5V
参数说明:这里使用Cadence OrCAD电路仿真功能
V1是输出最小电平
V2是输出最大电平,实际在V1-V2之间选择来试验
TD是PWM波延迟时间
TR是边沿上升时间
TF是边沿下降时间
PW占空比
PER周期
由图可知绿色波形在t=3-4ms时达到稳定,最大有3-4ms的延迟(按照100%计算)
实际的RC参数确定,要根据输出的延迟时间、纹波大小来综合考量;当然这个只是仿真,到实际硬件电路中,你会发现还要有更改
仿真波形中,你会发现滤波后的波形会有衰减,这个要进行补偿
5.硬件实验波形及数据
最后选定参数R=1kΩ、C=220nF 实际硬件测得的波形如下:
仿真结果如下:
对比波形,仿真和实际硬件测试基本上一致