【一篇易懂的模数转换器(ADC)】

本文详细介绍了模数转换器ADC如何将模拟温度和压力传感器信号转换为数字信号的过程,包括采样、保持、量化和编码四个步骤。重点讲解了转换精度(分辨率和误差)以及转换速率的概念,并提到了汽车电子中的应用实例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1 ADC概念

现在我们对测温已经习以为常,电子温度计对着你手腕,或额头,或耳朵,滴的一声,温度就显示出了,这个过程就涉及本文要介绍的模数转换。

模数转换,即Analog-to-Digital Converter,常称ADC,是指将连续变量的模拟信号转换为离散的数字信号的器件,比如将模温度感器产生的电信号转为控制芯片能处理的数字信号0101,这样ADC就建立了模拟世界的传感器和数字世界的信号处理与数据转换的联系。

在汽车上,温度传感器和压力传感器通常都采用模拟信号形式,会使用ADC将传感器信号转换成ECU可识别的二进制格式的数字信号。即:首先,这些传感器将温度和压力转换为一定范围内的电压信号;然后通过线束和接插件将电压信号传给ECU,最后ECU的ADC模块将电压信号转换为数字量。

v2-7e8c9324461b0d0f4b7ea0d2ef4a2ae8_720w.webp

ECU的模数转换部分示意

这里,传感器信号在输入到ADC模块前,需要经过调理电路处理,因为传感器产生的电压信号可能只有几十mV,必须要经过调理电路放大到0-5V,才能输入到ADC。

v2-512403a4fd8257ac91f42205fabfbf03_720w.webp

传感器模拟量采集示意,引自[1]

信号调理电路_百度百科

模拟传感器的调理电路概述 - 百度文库

关于信号调理电路,可参考以上两个链接,再了解ADC概念之后,接下来详细了解ADC处理的基础内容。

2 ADC处理

ADC处理一般要经过采样,保持,量化和编码四个步骤,如下所示:

v2-df9b82ccb7e8853792a74757b8063d30_720w.webp

ADC处理过程示意,引自[2]

2.1 采样和保持

采样是将时间上连续变化的信号,转换为时间上离散的信号,即将时间上连续变化的模拟量转换为一系列等间隔的脉冲,脉冲的幅度取决于输入模拟量。这里采样需遵循采样定理,即当采样频率大于模拟信号中最高频率成分的两倍时,采样值才能不失真的反映原来模拟信号。

v2-056186d58f47931f6788eec70e8201d4_720w.webp

信号的采样与保持示意,引自[2]

模拟信号经采样后,得到一系列样值脉冲,如上右上图。采样脉冲宽度一般是很短暂的,在下一个采样脉冲到来之前,应暂时保持所取得的样值脉冲幅度,如上右下图,以便进行转换。因此,在采样电路之后须加保持电路。

v2-b6cb184a4a62f23becabcf1e2449db58_720w.webp

采样保持电路原理示意,引自[3]

2.2 量化和编码

输入的模拟信号电压经过采样保持后,得到的是阶梯波。而该阶梯波仍然是一个可以连续取值的模拟量。但n位数字量只能保持 2n 个数值。因此,用数字量来表示连续变化的模拟量时就有一个类似于四舍五入的近似问题。将采样后的样值脉冲电平归化到与之接近的离散电平之上,这个过程称为量化。指定的离散电平称为量化电平 Uq ,两个量化电平之间的差值称为量化单位 Δ ,即 1 LSB ,位数越多,量化等级越细,Δ 就越小。

v2-f00dbd2df219ae67ff7477058c7eae10_720w.webp

引自[2]

采样保持后未量化的 U0 值与量化电平 Uq 值通常是不相等的,其差值称为量化误差 ε ,即 ε = U0 − Uq 。量化的方法一般有两种:只舍不入法四舍五入法

1)只舍不入法: 当 U0 的尾数小于 Δ 时,舍尾取整。这种方法 ε 总为正值, εmax = Δ 。以ADC为例,设输入信号的变化范围为0~1V,那么 Δ = 1/23 = 1/8V ,量化中不足量化单位部分舍弃,如数值在0~1/8V之间的模拟电压都当作 0Δ ,用二进制数000表示,而数值在1/8~2/8V之间的模拟电压都当作 1Δ ,用二进制数001表示,以此类推,数值在7/8~8/8V之间的模拟电压都当作 7Δ ,用二进制数111表示,如下所示:

v2-20cf99a84bc8ff94971a8d660225e793_720w.webp

引自[5]

2)四舍五入法: 当 U0 的尾数小于 Δ / 2 时,舍尾取整;当 U0 的尾数不小于 Δ/2 时,舍尾入整。这种方法 ε 可正可负,但是 |εmax| = Δ / 2 ,可见它的误差要小。仍以3位ADC为例,设输入信号的变化范围为0~1V,那么 Δ / 2 = (1/23) / 2 = 1/16V ,量化中不足量化单位部分舍弃,如数值在0~1/16V之间的模拟电压都当作 0Δ ,用二进制数000表示,而数值在1/16~3/16V之间的模拟电压都当作 1Δ ,用二进制数001表示,以此类推,如下所示:

v2-5689d23a30cd8b1874f2741275b8ba9d_720w.webp

引自[5]

通过以上两种量化方法的解释,不难发现,对于一个N位ADC,已知其参考电压,确定了量化方法,就能进行编码,比如 U0 = 2.1V ,采用下图所示的量化标准,则编码为010; U0 = 5.2V ,则编码为101。

v2-90ce628077db6584a0d990e7e40608a5_720w.webp

引自[2]

3 ADC技术参数

3.1 转换精度

(1) 分辨率resolution

ADC的分辨率表示ADC对输入信号的分辨能力,其根据满程电压和ADC输出二进制数的位数决定,如下所示:不同的满程电压下,分辨率不同;不同的ADC输出二进制数的位数,分辨率也不同。

v2-76f76701048675598067223139a74c85_720w.webp

引自[5]

(2)转换误差

转换误差通常是以输出误差的最大值形式(即上面所述的量化误差)给出。它表示 ADC 实际输出的数字量和理论上的输出数字量之间的差别。例如量化误差为或 ±Δ/2 或 ±LSB/2,这就表明实际输出的数字量和理论上应得到的输出数字量之间的误差小于 或 Δ/2 或 LSB/2 。

3.2 转换速率

转速速率是指ADC从转换控制信号到来开始,到输出端得到稳定的数字信号所经过的时间的倒数。ADC的转换速率与转换电路的类型有关,不同类型的转换器转换速度相差甚远。这里所提到的转换电路,也就是ADC实现的电路将在《一篇易懂的模数转换器(ADC)学习笔记2》介绍。

总体来说不同的分辨率和转换速率的对比情况,如下所示:

v2-96dcde09d1a6a35c5eb9efea4624f148_720w.webp
引自[2]

source: Understanding Data Converters,application report, from TI

Reference:

[1] 英飞凌多核单片机应用技术

[2] Analog to Digital Converters.pdf

[3] (推荐)采样保持电路

[4] adc转换原理 - 张凌001 - 博客园

[5] ADC和DAC(模数和数模转换器)_哔哩哔哩_bilibili

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值