电子开关的通路电阻较小,仅为几百欧姆,而A/D测量电路一般呈现高阻态,其带来的误差可以忽略。
检测精度和模数转换芯片(A/D)的分辨位数有很大关系,一般单片机内带的A/D位数分辨率较低(
ATmega48内含10位A/D),不适合精确测量,而高分辨率的A/D芯片价格昂贵。本文兼顾了性能价格比,采用了外扩一片低成本的13位A/D芯片MCP3301。通过改进软硬件设计,实际测量结果证明可以保证误差不超过0.5%。
2.2 PWM转DAC电路
在电子和自动化技术的应用中,也经常需要提供模拟输出,如变送器和控制器类仪器,经常需要输出0~10 V,0~20 mA(或4~20 mA)的直流信号。高精度的数模转换器(DAC)芯片或集成了DAC的单片机价格昂贵。应用单片机的PWM输出,经过简单的变换电路实现DAC,可以大大降低电子设备的成本。
通过一个低通滤波器就可以把PWM调制的数模转换信号解调出来,实现从PWM到DAC的转换
ATmega48具有16位定时器的PWM输出功能,实现的DAC电路输出精度基本满足一般的工业控制场合。另外在一些环境恶劣、干扰较强的场合,模拟输出容易受到干扰,本文通过使用恒流方式驱动电路来提高DAC电路的负载和抗干扰能力。具体原理图如图3所示。
图3中单片机输出的PWM电压,经过基准电源VREF和开关管T1组成的整形电路进行整形,在A点的输出波形为理想的PWM波形,幅值由基准电源的准确度得到保证,再经过两级阻容滤波和一级跟随放大器,在B点得到直流分量,即MCU输出的调制PWM波在B点得到解调,实现了DAC功能。可得:
一般PWM转DAC电路到此已经完成,本文为了保证更高精度和电路更强的负载能力,模块使用了恒流输出的驱动电路。由于运放U2B的C点和D点电位相等,可得:
采用三极管T2提高输出驱动能力,负载RL的电流和流过电阻R9的电流相等,可得:
由式(3)可以看出无论负载电阻RL的值如何改变,并不影响DAC输出的电流值,这样设计的好处是可以方便地更改输出电阻RL,保证了模拟输出量值的准确度,提高了负载能力。
上一页 [1] [2] [3] 下一页