1. 数据转换器概述:ADC与DAC的基本概念、工业控制中的角色、主要性能指标

大家好,我是老张。在工业控制这行摸爬滚打了十几年,要说哪个元器件让我又爱又恨,那非数据转换器莫属。今天咱们就来聊聊这个「模拟世界」和「数字世界」之间的桥梁——ADC和DAC。

说白了,工业控制就是个「感知-决策-执行」的闭环。传感器采集到的温度、压力、流量,这些都是连续的模拟信号。但咱们的PLC、DCS、嵌入式控制器,它们只认0和1。这时候就需要ADC(模数转换器)把模拟量翻译成数字量。反过来,控制器算好了要输出4-20mA去驱动阀门,或者要输出0-10V去控制变频器,那就得靠DAC(数模转换器)把数字指令变回模拟信号。

核心一句话:ADC是「听」模拟世界的声音,DAC是「说」模拟世界的语言。没有它们,工业控制就是聋子和哑巴。

1.1 ADC与DAC的基本概念

先说说ADC。它的工作流程其实不复杂:采样、保持、量化、编码。采样就是每隔一段时间「咔嚓」拍一张快照;保持是把那个瞬间的电压值稳住;量化是把连续的电压值归到某个离散的台阶上;编码最后给这个台阶编个二进制号码。

我记得刚入行时,带我的老师傅跟我说过一句话:「ADC就是个猜数字的游戏,猜得准不准,看你的台阶分得细不细。」这话糙理不糙。

DAC正好反过来。你给它一个数字量,比如二进制1010,它内部有个电阻网络或者电流源阵列,把这个数字翻译成一个对应的电压或电流。我见过不少新手工程师,觉得DAC比ADC简单,其实不然。DAC的输出纹波、建立时间、毛刺,哪个处理不好都能让你在现场抓狂。

我的小经验:选型时别只看位数。我遇到过一位同事,选了16位DAC,结果输出噪声比12位的还大。为什么?电源纹波没处理好,参考源也不干净。高位数反而放大了这些瑕疵。

1.2 工业控制中的角色

在工业现场,数据转换器无处不在。我随便举几个例子:

  • 温度采集:热电偶或RTD的毫伏信号,经过调理后送入ADC。我曾经在一个钢铁厂项目里,因为ADC的共模抑制比不够,导致温度读数在变频器启动时跳了十几度。后来换了差分输入的ADC,问题才解决。
  • 压力/流量变送器:现在的智能变送器,内部都集成了高精度ADC。传感器把物理量变成电信号,ADC转成数字量,再通过HART协议或FF总线传出去。
  • 伺服驱动:伺服驱动器里的电流环、速度环,全靠高速ADC和DAC。我调试过一款伺服,电流环采样率必须做到10kHz以上,否则电机低速时抖得像筛糠。
  • PLC模拟量模块:这是最典型的应用。4-20mA输入模块,里面就是ADC;模拟量输出模块,里面就是DAC。选型时要注意模块的通道隔离,我吃过亏,不隔离的模块在强电磁干扰下,数据能飘到天上去。

避坑指南:我曾经在一个化工厂项目里,用了非隔离的模拟量输入模块。结果现场有大功率电机启停,模块直接烧了。后来查原因,是共模电压过高击穿了ADC输入引脚。从那以后,但凡现场有强干扰源,我必选隔离型模块。

1.3 主要性能指标

聊性能指标,咱们得抓住三个核心:分辨率、采样率、精度。这三个参数决定了数据转换器的「天花板」。

1.3.1 分辨率

分辨率说白了就是「能分辨多小的变化」。12位ADC,能分辨满量程的1/4096;16位就是1/65536。位数越高,台阶越细。

但别盲目追求高位数。我见过有人用24位ADC去测一个开关量,这不是杀鸡用牛刀吗?而且高位数ADC往往速度慢、价格贵、对噪声更敏感。

位数量化台阶数5V参考下的最小分辨率典型应用
8位25619.53 mV简单开关量、指示灯
10位10244.88 mV消费电子、简单传感器
12位40961.22 mV工业控制主流、PLC模块
14位163840.305 mV精密测量、仪器仪表
16位655360.076 mV高精度称重、音频
24位167772160.298 μV地震监测、科学仪器

选型建议:工业控制中,12位和16位ADC用得最多。12位够用就别上16位,省下的钱够买好几杯咖啡了。你想想看,一个12位ADC,在0-10V范围内能分辨2.44mV,对于大多数4-20mA信号来说,这精度足够了。

1.3.2 采样率

采样率就是ADC「拍照」的速度。单位是SPS(每秒采样次数)或Hz。根据奈奎斯特定理,采样率至少要是信号最高频率的两倍,才能无失真地重建信号。

但在工业现场,我建议留足余量。比如你要采集50Hz的工频信号,理论上100SPS就够了。但实际中我会选500SPS以上,为什么?因为现场有谐波、有噪声,采样率高了才能做数字滤波。

我调试过一个振动监测系统,振动频率最高100Hz,我选了200SPS的ADC。结果频谱分析时发现,100Hz的信号被混叠成了低频信号,完全没法看。后来换了1kSPS的ADC,问题才解决。嗯,这里要注意,抗混叠滤波器也很关键,别光盯着采样率。

1.3.3 精度

精度和分辨率是两码事。分辨率是「能看多细」,精度是「看得准不准」。一个16位ADC,如果参考电压漂了1%,那它的精度可能还不如一个12位的。

影响精度的因素很多:

  • 失调误差:输入为零时,输出不为零。我遇到过一块板子,所有通道都有固定的50mV偏置,后来发现是运放的失调电压没校准。
  • 增益误差:输入和输出的比例关系不准。比如你输入1V,理论上输出应该是1000,实际却输出了1020。
  • 积分非线性(INL):实际传输曲线偏离理想直线的最大偏差。这玩意儿在高精度测量里很要命。
  • 微分非线性(DNL):相邻两个量化台阶之间的差异。DNL不好,会导致输出码字丢失,这在闭环控制里会引起震荡。

我的经验之谈:精度不是选出来的,是「调」出来的。再好的ADC,不做好校准也是白搭。我习惯在每块板子上留一个校准通道,上电后先测内部参考电压,算出校准系数,再应用到所有通道上。这招帮我解决了不少现场问题。

最后说一句,数据转换器这东西,参数看着简单,用起来门道多。分辨率、采样率、精度,这三个指标互相制约。你追求高分辨率,采样率就得降下来;你追求高精度,对电路布局和电源的要求就上去了。说白了,就是个平衡的艺术。

下一章咱们聊聊ADC的几种主流架构,逐次逼近型、Σ-Δ型、流水线型,它们各自适合什么场景。到时候我会拿几个我踩过的坑出来,给大家当反面教材。