3、DAC工作原理:电阻分压型、R-2R梯形网络、PWM型DAC的原理与适用场景

各位工程师朋友,咱们今天聊聊DAC。数模转换器,这玩意儿在工业控制里太常见了。你想想看,PLC输出一个4-20mA信号去控制阀门,或者给变频器一个0-10V的模拟量指令,背后都是DAC在干活。

DAC的原理说穿了不复杂:把数字量变成模拟量。但实现方式五花八门。我个人习惯把常用的DAC分成三类:电阻分压型、R-2R梯形网络型、PWM型。每种都有它的脾气,选错了会出大问题。

3.1 电阻分压型DAC

这是最直观的一种。说白了,就是用一串电阻把参考电压分压,然后用开关选通。

工作原理:

假设一个8位的DAC,内部有256个等值电阻串联。参考电压Vref加在电阻串两端。每个电阻的抽头对应一个电压值。数字输入控制一组模拟开关,选通对应的抽头输出。

核心公式:

Vout = (D / 2^n) × Vref

其中D是数字输入值,n是位数,Vref是参考电压。

优点:

  • 结构简单,容易理解
  • 单调性保证——不会出现数字增大、输出反而减小的情况
  • 输出阻抗恒定

缺点:

  • 位数高了以后,电阻数量爆炸。10位就需要1024个电阻,12位就是4096个
  • 电阻匹配精度要求高,否则线性度会变差
  • 开关数量多,芯片面积大

适用场景:

主要用于低分辨率、低速场合。比如一些简单的电压基准源、面板上的数字电位器。我在一个老式的温度控制器里见过这种方案,8位精度,控制一个加热器,够用了。

注意:我曾经在一个项目里想用电阻分压型DAC做12位精度,结果发现电阻匹配根本做不到。后来老老实实换了R-2R方案。嗯,这里要注意,超过10位就别考虑这种结构了。

3.2 R-2R梯形网络DAC

这是工业控制里最主流的DAC结构。为什么?因为它只需要两种阻值的电阻:R和2R。

工作原理:

R-2R网络像一个梯子,每个梯级对应一位数字输入。电流从参考电压流入,经过梯形网络分配到各个支路。每个数字位控制一个开关,决定该支路的电流是流向输出端还是地。

核心公式:

Vout = (Vref × Rf / R) × (b1/2 + b2/4 + ... + bn/2^n)

其中b1是最高位,bn是最低位,Rf是反馈电阻。

优点:

  • 只需要R和2R两种电阻,匹配性好
  • 可以做到很高的分辨率,16位甚至更高
  • 开关数量少,只有n个
  • 速度快,适合中高速应用

缺点:

  • 对电阻精度要求依然很高,尤其是高位
  • 开关的导通电阻会影响精度
  • 输出阻抗随数字码变化

适用场景:

R-2R DAC是工业控制的主力。PLC的模拟量输出模块、伺服驱动器的速度指令、数据采集系统的输出通道,基本都是R-2R结构。我记得有一次调试一个伺服驱动器,发现输出有毛刺,查了半天是DAC的参考电压纹波太大。加了个去耦电容就解决了。

实战技巧:我建议在设计R-2R DAC电路时,参考电压一定要干净。用低噪声的基准源,比如REF5025这类。另外,反馈电阻Rf最好和梯形网络里的R严格匹配,否则增益误差会让你头疼。

3.3 PWM型DAC

这个有意思。PWM型DAC不是传统意义上的DAC芯片,而是用微控制器的PWM模块加上外部滤波电路实现的。

工作原理:

微控制器输出一个占空比可调的方波。这个方波经过低通滤波器,把高频分量滤掉,剩下的直流分量就等于占空比乘以高电平电压。

核心公式:

Vout = Duty × Vhigh

其中Duty是占空比(0~1),Vhigh是PWM的高电平电压。

优点:

  • 成本极低——只需要一个定时器和几个阻容元件
  • 分辨率可以很高——PWM定时器的位数决定了分辨率
  • 功耗低
  • 容易隔离——通过光耦或磁耦隔离PWM信号

缺点:

  • 响应速度慢——需要低通滤波器,滤波时间常数大
  • 输出纹波大——尤其是分辨率高的时候
  • 需要额外的滤波电路

适用场景:

PWM型DAC适合对速度要求不高、但对成本敏感的场合。比如LED调光、风扇调速、简单的加热控制。我做过一个项目,用STM32的PWM加一个二阶RC滤波器,实现了12位的DAC输出,控制一个比例阀,效果还不错。

避坑指南:我曾经在一个项目里用PWM做DAC控制电机速度,结果发现电机在低速时抖动。为什么?因为PWM频率太低,滤波后的电压纹波被电机感受到了。后来我把PWM频率从1kHz提高到20kHz,问题解决了。记住,PWM频率至少要比滤波器的截止频率高10倍以上。

3.4 三种DAC的对比

参数 电阻分压型 R-2R梯形网络 PWM型
分辨率 低(≤10位) 中高(8~16位) 高(取决于定时器)
速度
成本 中高
纹波
单调性 保证 需注意 保证
典型应用 简单电压基准 PLC模拟量输出 低成本调速

3.5 选型建议

说了这么多,到底怎么选?我个人习惯这样判断:

  1. 看位数:8位以下,电阻分压型够用。10位以上,R-2R是首选。如果对速度没要求,PWM也能上12位。
  2. 看速度:需要快速响应的,比如伺服驱动器的电流环,必须用R-2R。慢悠悠的加热控制,PWM就行。
  3. 看成本:批量大、成本敏感,PWM是王道。一个电阻加一个电容,几分钱的事。
  4. 看环境:工业现场干扰大,R-2R的参考电压要处理好。PWM信号容易隔离,适合需要电气隔离的场合。

最后说一句:你想想看,DAC选型其实就是在分辨率、速度、成本之间找平衡。没有最好的,只有最合适的。我见过有人用16位的R-2R DAC去控制一个加热器,纯属浪费。也见过有人用PWM去控制一个高速伺服阀,结果响应跟不上。选型前,先搞清楚你的负载需要什么。

好了,关于DAC的三种主流方案,今天就聊到这儿。下一章咱们讲讲ADC,那个更有意思。