位置:51电子网 » 技术资料 » 单 片 机

基于利用单片机构成高精度PWM式12位D/A方法

发布时间:2009/2/24 0:00:00 访问次数:694

  一 前言

  在用单片机制作的变送器类和控制器类的仪表中,需要输出1—5v或4—20ma的直流信号的时候,通常采用专用的d/a芯片,一般是每路一片。当输出信号的精度较高时,d/a芯片的位数也将随之增加。

  在工业仪表中,通常增加到12位。12位d/a的价格目前比单片机的价格要高得多,占用的接口线数量也多。尤其是在需隔离的场合时,所需的光电耦合器数量与接口线相当,造成元器件数量大批增加,使体积和造价随之升高。如果在单片机控制的仪表里用pwm方式完成d/a输出,将会使成本降低到12位d/a芯片的十分之一左右。我们在s系列流量仪表中采用了这种方式,使用效果非常理想。下面介绍一下pwm方式d/a的构成原理。

  二 电路原理

  一般12位d/a转换器在手册中给出的精度为±1/2lsb,温度漂移的综合指标在20—50ppm/℃,上述两项指标在0.2级仪表中是可以满足要求的,下面给出的电路可以达到上述两项指标。

  图1中的t是固定宽度,τ的宽度是可变的。τ分为5000份,每份2us。所以τ的最大值τmax=2×5000=10000us,这就是t的宽度。当τ=t时,占空比为1,vo=5.000v,τ=0时,vo=0v。这种脉冲电压经过两级rc滤波后得到的电压可由下式表示:


  vm必须是精密电压源。vo与占空比成正比,且线性较好,这种方式在理论上是很成熟的,但实际应用上还存在一些问题。图2是实际线路,其中单片机可用8098或8031两种常用芯片,vm的数值为5.000v±2mv,d/a与单片机必须是电气隔离的。否则数字脉冲电流产生的干扰会影响d/a精度,从示波器可以看到高达50mv的干扰毛刺电压,因此有必要加光电隔离。经隔离后的脉冲驱动模拟开关cd4053。cd4053是三组两触点模拟开关,由pwm脉冲控制开关的公共接点使之与+5.000v和地接通,在vi得到与单片机输出相一致的pwm波形。该波形经两级rc滤波后由运放构成的电压跟随器输出vo。其中rc的时间常数一般取rc≥2t,这样两级rc加起来就会得到纹波小于3mv的直流电压,本电路中rc=220ms,如果想进一步减小纹波,可适当提高rc的乘积,但电路的响应速度也会放慢。

  用运放做rc滤波器输出的缓冲大有益处。它不仅提高了滤波电路带载能力,而且使线性度得到了提高。通过实验可知,这一级运放的的缓冲作用是保证整个d/a精度和线性度的重要环节。尽管rc滤波器无负载,处在非常理想的条件下工作,但vo并不完全与占空比成正比。经测试,vo与理想值有一些误差,如图3所示。

  图中的曲线1表示理想值,曲线2表示实测值。由图中可见,曲线2的根部不太理想。这是因为所使用的电容不是纯电容,其中含有一定的电感。在占空比极小时,由于脉冲非常窄,它产生的高次谐波的频率很高,电感对高次谐波的感抗较大,因此在脉冲沿的位置上,尽管电压变化很大,但实际实际给电容充电却很小。这样就在窄脉冲时产生非线性。当采用无感电容时,这种非线性有较大改善,但仍不能完全吻合。由于无感电容容量太小,价格也较高,所以在大时间常数滤波电路中没有实际意义。在实际使用中解决这一问题的方法是舍弃根部非线性部分,只用线性部分,在工业仪表中,标准的信号一般为1—5v或4—20ma。而曲线2的非线性部分在0.4v以下,所以当采用1—5v输出信号时,精度为0.03%完全满足12位d/a要求。

  除精度满足要求外,温度特性也必须满足要求。影响温度特性的原因主要是5v精密电源和运算放大器的温度特性。为不使价格太高,选用2dw232精密稳压二极管,运放的电阻与滤波电阻要匹配且温度系数≤25ppm。运算放大器选择温漂≤10uv/℃的均可,一般廉价低温漂运放都可满足这个指标。采用上述措施后d/a的总温度漂为33ppm/℃。

  三 实测数据

  由于这个线路是在0.2级精密仪表中使用的,因此要求线性度和温度特性必须满足要求,另外,这个数据是测量v/i转换后4-20ma电源值与给定电流值之间的误差。这个误差还包含了v/i转换的误差。因此实际的d/a自身的误差比总误差要小。

  由以上数据可知,满量程的线性度为0.04%,满量程的温度漂移为0.033%/10℃,系统响应时间约为2.2s,输出信号与标准值相差0.1%时所用的时间为11s。

  四 结束语

  上面所介绍的d/a电路结构简单,原理易懂,在8098及8031单片机上都可以应用,笔者采用8098单片机的四路高速输入输出同时控制四路精密d/a输出。后面加一级v/i转换电路,构成标准的4—20ma电流输出,电路经一年多的现场

  一 前言

  在用单片机制作的变送器类和控制器类的仪表中,需要输出1—5v或4—20ma的直流信号的时候,通常采用专用的d/a芯片,一般是每路一片。当输出信号的精度较高时,d/a芯片的位数也将随之增加。

  在工业仪表中,通常增加到12位。12位d/a的价格目前比单片机的价格要高得多,占用的接口线数量也多。尤其是在需隔离的场合时,所需的光电耦合器数量与接口线相当,造成元器件数量大批增加,使体积和造价随之升高。如果在单片机控制的仪表里用pwm方式完成d/a输出,将会使成本降低到12位d/a芯片的十分之一左右。我们在s系列流量仪表中采用了这种方式,使用效果非常理想。下面介绍一下pwm方式d/a的构成原理。

  二 电路原理

  一般12位d/a转换器在手册中给出的精度为±1/2lsb,温度漂移的综合指标在20—50ppm/℃,上述两项指标在0.2级仪表中是可以满足要求的,下面给出的电路可以达到上述两项指标。

  图1中的t是固定宽度,τ的宽度是可变的。τ分为5000份,每份2us。所以τ的最大值τmax=2×5000=10000us,这就是t的宽度。当τ=t时,占空比为1,vo=5.000v,τ=0时,vo=0v。这种脉冲电压经过两级rc滤波后得到的电压可由下式表示:


  vm必须是精密电压源。vo与占空比成正比,且线性较好,这种方式在理论上是很成熟的,但实际应用上还存在一些问题。图2是实际线路,其中单片机可用8098或8031两种常用芯片,vm的数值为5.000v±2mv,d/a与单片机必须是电气隔离的。否则数字脉冲电流产生的干扰会影响d/a精度,从示波器可以看到高达50mv的干扰毛刺电压,因此有必要加光电隔离。经隔离后的脉冲驱动模拟开关cd4053。cd4053是三组两触点模拟开关,由pwm脉冲控制开关的公共接点使之与+5.000v和地接通,在vi得到与单片机输出相一致的pwm波形。该波形经两级rc滤波后由运放构成的电压跟随器输出vo。其中rc的时间常数一般取rc≥2t,这样两级rc加起来就会得到纹波小于3mv的直流电压,本电路中rc=220ms,如果想进一步减小纹波,可适当提高rc的乘积,但电路的响应速度也会放慢。

  用运放做rc滤波器输出的缓冲大有益处。它不仅提高了滤波电路带载能力,而且使线性度得到了提高。通过实验可知,这一级运放的的缓冲作用是保证整个d/a精度和线性度的重要环节。尽管rc滤波器无负载,处在非常理想的条件下工作,但vo并不完全与占空比成正比。经测试,vo与理想值有一些误差,如图3所示。

  图中的曲线1表示理想值,曲线2表示实测值。由图中可见,曲线2的根部不太理想。这是因为所使用的电容不是纯电容,其中含有一定的电感。在占空比极小时,由于脉冲非常窄,它产生的高次谐波的频率很高,电感对高次谐波的感抗较大,因此在脉冲沿的位置上,尽管电压变化很大,但实际实际给电容充电却很小。这样就在窄脉冲时产生非线性。当采用无感电容时,这种非线性有较大改善,但仍不能完全吻合。由于无感电容容量太小,价格也较高,所以在大时间常数滤波电路中没有实际意义。在实际使用中解决这一问题的方法是舍弃根部非线性部分,只用线性部分,在工业仪表中,标准的信号一般为1—5v或4—20ma。而曲线2的非线性部分在0.4v以下,所以当采用1—5v输出信号时,精度为0.03%完全满足12位d/a要求。

  除精度满足要求外,温度特性也必须满足要求。影响温度特性的原因主要是5v精密电源和运算放大器的温度特性。为不使价格太高,选用2dw232精密稳压二极管,运放的电阻与滤波电阻要匹配且温度系数≤25ppm。运算放大器选择温漂≤10uv/℃的均可,一般廉价低温漂运放都可满足这个指标。采用上述措施后d/a的总温度漂为33ppm/℃。

  三 实测数据

  由于这个线路是在0.2级精密仪表中使用的,因此要求线性度和温度特性必须满足要求,另外,这个数据是测量v/i转换后4-20ma电源值与给定电流值之间的误差。这个误差还包含了v/i转换的误差。因此实际的d/a自身的误差比总误差要小。

  由以上数据可知,满量程的线性度为0.04%,满量程的温度漂移为0.033%/10℃,系统响应时间约为2.2s,输出信号与标准值相差0.1%时所用的时间为11s。

  四 结束语

  上面所介绍的d/a电路结构简单,原理易懂,在8098及8031单片机上都可以应用,笔者采用8098单片机的四路高速输入输出同时控制四路精密d/a输出。后面加一级v/i转换电路,构成标准的4—20ma电流输出,电路经一年多的现场

相关IC型号

热门点击

 

推荐技术资料

硬盘式MP3播放器终级改
    一次偶然的机会我结识了NE0 2511,那是一个远方的... [详细]
版权所有:51dzw.COM
深圳服务热线:13692101218  13751165337
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!