设计与开发

mv单片机 单片机外围模块漫谈之二,如何提高ADC转换精度

小编 2024-10-06 设计与开发 23 0

单片机外围模块漫谈之二,如何提高ADC转换精度

在此我们简要总结一下ADC的各种指标如何理解,以及从硬件到软件都有哪些可以采用的手段来提高ADC的转换精度。

1. ADC指标

除了分辨率,速度,输入范围这些基本指标外,衡量一个ADC好坏通常会用到以下这些指标:失调误差,增益误差,微分非线性,积分非线性,信噪比,信纳比,有效位数,总谐波失真。让我们以下图为例来看一下这些指标的意义。

LSB

参数中经常用LSB作为单位,比如说差分非线性为2 LSB。这究竟是多大一个值呢?为了简单起见,我们以一个3bit分辨率,满量程为5V的ADC为例。1个LSB对应的电压大小为5V/7=714mV。如果是8bit分辨率,那么1个LSB对应5/255=19mV。

图中横轴为输入电压Vin增长方向,纵轴为数字输出。理想情况下输入电压每增长1LSB(714mV),那么输出会向上跳变一次,对应虚线L1所在转换曲线。但实际电路往往会引入偏差,转换曲线往往如 L2 所对应曲线。

失调误差(Offset Error)

电压从0开始增大时,引起输出第一次跳变的电压值,与理论上应该引起第一次跳变的电压值(0.5 LSB)的差值。衡量小电压时的转换精度。如图中,理论上应该在0.5 LSB处跳变,实际电压增大到1 LSB时才跳变,所以Offset Error是 1–0.5 = 0.5 LSB。

增益误差(Offset Error)

可以理解为实际转换曲线偏离理想曲线的程度。用最接近满量程时跳变点电压值和理论跳变点电压值的差表示。

差分非线性 DNL(Differential Non-Linearity)

理论上每增加或减少1 LSB 的电压,都会引起输出对应的一次跳变。但实际情况可能如图中a,b处所示,电压的步距大于或小于1个LSB的理论步距。

a 处 DNL = 1.5 – 1 = 0.5 LSB;

b 处 DNL = 0.5 – 1 = -0.5 LSB;

积分非线性 INL(Integral Non Linearity)

差分非线性累积起来造成的对实际转换曲线的最大偏离就是INL。如图中所示,需要注意的是INL不能表征对理想转换曲线的偏离程度。

总不可调整误差 TUE(Total Unadjusted Error)

实际转换曲线与理想转换曲线之间最大的偏离。在最糟糕的一点,我们通过ADC得到的电压,与实际电压的差值。通俗讲就是最不准的一点差多少。

思考一下,如果 DNL 和 INL 都非常好,那么是不是说明 TUE 就非常好?

对,还真不一定。即使线性度非常好,如果增益误差大,还是会导致最终结果大的偏差。

信噪比 SNR(Signal-to-Noise Ratio)

有用信号与噪声的能量比。我们总是期望信噪比越大越好。对于一个 N-Bit 分辨率的ADC来说,如果输入是一个满量程的正弦信号,在只考虑量化噪声的情况下,可以推导出一个有用的公式:

SNR = 6.02N + 1.76dB

推导过程见参考文档 ADI: MT-001

此公式直观的表明了ADC分辨率和信噪比之间的量化关系。

信纳比 SINAD (Signal-to-Noise-and-Distortion Ratio)

实际ADC是无法达到理想状态的,它的输出除了会引入噪声,还会引入输入信号的谐波。SINAD是有用信号能量,与谐波(Distortion)加噪声(Noise)能量的比,它更能体现现实世界中的ADC性能。

SINAD = 20log(S/(N+D))

*而SNR = 20log(S/N)

有效位数 ENOB(Effective Number of Bits)

体现ADC实际性能相当于多少位。可以从SINAD推出:

ENOB = (SINAD–1.76)/6.02

*和理想情况下的位数对应:NOB =(SNR - 1.76)/6.02。

总谐波失真 THD(Total Harmonic Distortion)

有用信号能量与谐波能量的比。

THD = 20log(S/D)

2. 如何提高转换精度

模拟电源(VDDA)和电压参考(VREF)

有的单片机ADC模块会引出单独的电源引脚和电压参考引脚,最好用LDO给这些引脚供电,或者用磁珠和滤波电容把这部分电源从数字部分隔离出来。

输入信号的输出阻抗

下图是ADC采样简化等效电路。ADC采样和保持电路的等效输入电阻电容Radc,和Cadc,手册中都会给出。在采样期间,开关SW会接通外部的信号输入电路,给采样电容Cadc充电至和输入信号相等(接近),之后SW断开,ADC对采样电容上的电压进行转换。如果采样时间过短,或者输入信号的输出阻抗过大,将导致采样电压不准。在信号源输出阻抗过高时,可以考虑增加一级运放。

高频串扰

如果与模拟输入引脚靠近的IO上有高频翻转的信号,或者PCB上有与输入信号长距离的平行走线,串扰将干扰输入信号。应避免ADC引脚临近信号高频翻转。在ADC输入布线和临近的走线之间用地线隔离开也可以避免ADC精度下降。

Wait,Stop模式

如果ADC在Wait和Stop模式下还可以工作,在此种模式下可以最大限度的降低MCU电源的波动,提高ADC的转换精度。

过采样(Oversampling)

如果采样频率为fs,那么对于fs/2以内的信号频率既可以获得完整信息。过采样是用远高于所需的采样频率去采样,这样噪声就会均摊在整个采样频带内。我们用数字滤波器可以滤除有用信号频带之外的噪声,从而使频带内的信噪比提高,获得更高的分辨率。对多次转换结果进行平均也可以提高结果的精度。

芯片内部校正

很多单片机内部都有校正机制(Calibration),每次上电后执行一次Calibration,可以以提高ADC的精度。

温度的影响

ADC受温度影响比较大,特别是失调误差和增益误差。如果芯片工作温度范围很宽,可以在不同的温度下预先测量,按温度做出查找表以在实际工作时做校正。

混入白噪声

这种方法对提高直流信号的分辨率很有用。如果输入信号接近直流而且很稳定,那么输出就不会产生跳变,比如输出一直是0x15A,我们无法确认输入电平是更接近0x159,还是更接近0x15B。那么我们可以人为地把白噪声混入信号,使信号产生小的波动从而输出产生跳变,然后再通过数学平均得出一个精度更高的数值。实际操作中可以用GPIO产生一个方波然后通过阻容耦合进输入信号引脚。

参考资料:

ADI: Data Converter Introduction

ADI: MT-001 TUTORIAL Taking the Mystery out of the Infamous Formula,

"SNR = 6.02N + 1.76dB," and Why You Should Care

ST: AN1636 UNDERSTANDING AND MINIMISING ADC CONVERSION ERRORS

ST: AN2834 Application note How to get the best ADC accuracy in STM32 microcontrollers

NXP: How to Increase the Analog-to-Digital Converter Accuracy in an Application

NXP: Cookbook for SAR ADC Measurements

模拟电路中为什么采用4~20mA的电流来传输模拟量

大家可能会非常熟悉RS232,RS485,CAN等工业上常用的总线,他们都是传输数字信号的方式。那么,我们用什么方式来传输模拟信号呢?工业上普遍需要测量各类非电物理量,例如温度、压力、速度、角度等,这些都需要转换成模拟量电信号才能传输到几百米外的控制室或显示设备上。工业上最广泛采用的是用4~20mA电流来传输模拟量。

采用电流信号的原因是不容易受干扰,因为工业现场的噪声电压的幅度可能达到数V,但是噪声的功率很弱,所以噪声电流通常小于nA级别,因此给4-20mA传输带来的误差非常小;电流源内阻趋于无穷大,导线电阻串联在回路中不影响精度,因此在普通双绞线上可以传输数百米;由于电流源的大内阻和恒流输出,在接收端我们只需放置一个250欧姆到地的电阻就可以获得0-5V的电压,低输入阻抗的接收器的好处是nA级的输入电流噪声只产生非常微弱的电压噪声。

上限取20mA是因为防爆的要求:20mA的电流通断引起的火花能量不足以引燃瓦斯。下限没有取0mA的原因是为了能检测断线:正常工作时不会低于4mA,当传输线因故障断路,环路电流降为0。常取2mA作为断线报警值。电流型变送器将物理量转换成4~20mA电流输出,必然要有外电源为其供电。最典型的是变送器需要两根电源线,加上两根电流输出线,总共要接4根线,称之为四线制变送器。当然,电流输出可以与电源公用一根线(公用VCC或者GND),可节省一根线,所以现在基本上将四线制变送器称之为三线制变送器。其实大家可能注意到, 4-20mA电流本身就可以为变送器供电,变送器在电路中相当于一个特殊的负载,这种变送器只需外接2根线,因而被称为两线制变送器。工业电流环标准下限为4mA,因此在量程范围内,变送器通常只有24V,4mA供电(因此,在轻负载条件下高效率的DC/DC电源(TPS54331,TPS54160),低功耗的传感器和信号链产品、以及低功耗的处理器(如MSP430)对于两线制的4-20mA收发非常重要)。这使得两线制传感器的设计成为可能而又富有挑战。

一般需要设计一个VI转换器,输入0-3.3v,输出4mA-20mA,可采用运放LM358,供电+12v。

我们系统地来看看模拟量设备为什么都偏爱用4~20mA传输信号~

4-20mA. DC(1-5V.DC)信号制是国际电工委员会( IEC )过程控制系统采用的模拟信号传输标准。我国也采用这一国际标准信号制,仪表传输信号采用4-20mA.DC,接收信号采用1-5V.DC,即采用电流传输、电压接收的信号系统。

一般仪器仪表的信号电流都为4-20mA,指最小电流为4mA,最大电流为20mA 。传输信号时候,因为导线上也有电阻,如果用电压传输则会在导线内产生一定的压降,那接收端的信号就会产生一定的误差了,所以一般使用电流信号作为变送器的标准传输。

一、什么是4~20mA.DC(1~5V.DC)信号制?

4~20mA.DC(1~5V.DC)信号制是国际电工委员会(IEC):过程控制系统用模拟信号标准。我国从DDZ-Ⅲ型电动仪表开始采用这一国际标准信号制,仪表传输信号采用4~20mA.DC,联络信号采用1~5V.DC,即采用电流传输、电压接收的信号系统。

4~20mA电流环工作原理:

在工业现场,用一个仪表放大器来完成信号的调理并进行长线传输,会产生以下问题:第一,由于传输的信号是电压信号,传输线会受到噪声的干扰;第二,传输线的分布电阻会产生电压降;第三,在现场如何提供仪表放大器的工作电压也是个问题。

为了解决上述问题和避开相关噪声的影响,我们用电流来传输信号,因为电流对噪声并不敏感。4~20mA的电流环便是用4mA表示零信号,用20mA表示信号的满刻度,而低于4mA高于20mA的信号用于各种故障的报警。

二、4~20mA.DC(1~5V.DC)信号制的优点?

现场仪表可实现两线制,所谓两线制即电源、负载串联在一起,有一公共点,而现场变送器与控制室仪表之前的信号联络及供电仅用两根电线。因为信号起点电流为4mA.DC,为变送器提供了静态工作电流,同时仪表电气零点为4mA.DC,不与机械零点重合,这种“活零点”有利于识别断电和断线等故障。而且两线制还便于使用安全栅,利于安全防爆。

控制室仪表采用电压并联信号传输,同一个控制系统所属的仪表之间有公共端,便于检测仪表、调节仪表、计算机、报警装置配用,并方便接线。

现场仪表与控制室仪表之间的联络信号采用4~20mA.DC的理由是:因为现场与控制室之间的距离较远,连接电线的电阻较大,如果用电压信号远传,优于电线电阻与接收仪表输入电阻的分压,将产生较大的误差,而用恒流源信号作为远传,只要传送回路不出现分支,回路中的电流就不会随电线长短而改变,从而保证了传送的精度。

控制室仪表之间的联络信号采用1~5V.DC理由是:为了便于多台仪表共同接收同一个信号,并有利于接线和构成各种复杂的控制系统。如果用电流源作联络信号,当多台仪表共同接收同一个信号时,它们的输入电阻必须串联起来,这会使最大负载电阻超过变送仪表的负载能力,而且各接收仪表的信号负端电位各不相同,会引入干扰,而且不能做到单一集中供电。

采用电压源信号联络,与现场仪表的联络用的电流信号必须转换为电压信号,最简单的办法就是:在电流传送回路中串联一个250Ω的标准电阻,把4~20mA.DC转换为1~5V.DC,通常由配电器来完成这一任务。

三、为什么变送器选择4~20mA.DC作传送信号?

1、首先是从现场应用的安全考虑

安全重点是以防爆安全火花型仪表来考虑的,并以控制仪表能量为前提,把维持仪表正常工作的静态和动态功耗降低到最低限度。输出4~20mA.DC标准信号的变送器,其电源电压通常采用24V.DC,采用直流电压的主要原因是可以不用大容量的电容器及电感器,就只需考虑变送器与控制室仪表连接导线的分布电容及电感,如2mm2 的导线其分布电容为0.05μ/km左右;对于单线的电感为0.4mH/km左右;大大低于引爆氢气的数值,显然这对防爆是非常有利的。

2、传送信号用电流源优于电压源

因为现场与控制室之间的距离较远,连接电线的电阻较大时,如果用电压源信号远传,由于电线电阻与接收仪表输入电阻的分压,将产生较大的误差,如果用电流源信号作为远传,只要传送回路不出现分支,回路中的电流就不会随电线长短而改变,从而保证了传送的精度。

3、信号最大电流选择20mA的原因

最大电流20mA的选择是基于安全、实用、功耗、成本的考虑。安全火花仪表只能采用低电压、低电流,4~20mA电流和24V.DC对易燃氢气也是安全的,对于24V.DC氢气的引爆电流为200mA,远在20mA以上,此外还要综合考虑生产现场仪表之间的连接距离,所带负载等因素;还有功耗及成本问题,对电子元件的要求,供电功率的要求等因素。

4、信号起点电流选择4mA的原因

输出为4~20mA的变送器以两线制的居多,两线制即电源、负载串联在一起,有一公共点,而现场变送器与控制室仪表之间的信号联络及供电仅用两根电线。为什么起点信号不是0mA?这是基于两点:一是变送器电路没有静态工作电流将无法工作,信号起点电流4mA.DC,不与机械零点重合,这种“活零点”有利于识别断电和断线等故障。

四、4~20mA传感器的由来?

采用电流信号的原因是不容易受干扰、并且电流源内阻无穷大,导线电阻串联在回路中不影响精度,在普通双绞线上可以传输数百米。

采用电流信号的原因是不容易受干扰,因为工业现场的噪声电压的幅度可能达到数V,但是噪声的功率很弱,所以噪声电流通常小于nA级别,因此给4-20mA传输带来的误差非常小;电流源内阻趋于无穷大,导线电阻串联在回路中不影响精度,因此在普通双绞线上可以传输数百米;由于电流源的大内阻和恒流输出,在接收端我们只需放置一个250欧姆到地的电阻就可以获得0-5V的电压,低输入阻抗的接收器的好处是nA级的输入电流噪声只产生非常微弱的电压噪声。

上限取20mA是因为防爆的要求:20mA的电流通断引起的火花能量不足以引燃瓦斯。下限没有取0mA的原因是为了能检测断线:正常工作时不会低于4mA,当传输线因故障断路,环路电流降为0。常取2mA作为断线报警值。电流型变送器将物理量转换成4~20mA电流输出,必然要有外电源为其供电。最典型的是变送器需要两根电源线,加上两根电流输出线,总共要接4根线,称之为四线制变送器。当然,电流输出可以与电源公用一根线公用VCC或者GND,可节省一根线,称之为三线制变送器。其实大家可能注意到,4-20mA电流本身就可以为变送器供电。变送器在电路中相当于一个特殊的负载,特殊之处在于变送器的耗电电流在4~20mA之间根据传感器输出而变化。显示仪表只需要串在电路中即可。这种变送器只需外接2根线,因而被称为两线制变送器。工业电流环标准下限为4mA,因此只要在量程范围内,变送器至少有4mA供电。

因此、4-20mA的信号输出一般不容易受干扰而且安全可靠、所以工业上普遍使用的都是二线制4-20mA的电源输出信号。但为了能更好的处理传感器的信号、目前还有更多其它形式的输出信号:3.33MV/V;2MV/V;0-5V; 0-10V等。

另附一张4到20mA转电压信号的简单电路图:

这张图使用一个250欧姆的电阻将4到20mA的电流信号转换成1到5V的电压信号,然后使用一个RC滤波加一个二极管(原谅我模拟电路不好,并不知道是什么意思)接到单片机的AD转换引脚。

相关问答

现在的 单片机 除了C8051F350之外,还有哪些带有高精度ADC的?

C8051F350是一款高性能的微控制器,集成了24位8通道ADC和8位2通道DAC。24位的AD采样其分辨率是非常高的,一般的集成AD采样功能的单片机其位数位8位或10位。如果A...

什么是 单片机 冷开启-ZOL问答

单片机冷启动是一个技术术语,是指单片机从最原始状态启动运行。实现这一目标视不同的单片机内部结构而有所不同。STC单片机只有掉电且电路中电容器储存电压低...

关于pt100Vcc/(PT100+5K1)*PT100=输出电压( mV )温度电阻值传...

[最佳回答]放大倍数直接计算就可以了5000/(117.97-81.27)=136.24倍,考虑增益以及其他电路误差,增益取小一点,125~130倍就可以了放大倍数直接计算就可以了50...

单片机 中断C编程問題,在中断按键按下后,要求P1^1管脚接的灯...

麻烦帮我查下一这个序列号F17P1JUWG5MV是翻新机吗58浏览2回答扩展阅读太抽象了!现在100元就能买Hi-Fi耳机了?评论20原音重现专业匠造AKGN9头戴降噪...

MDS100-16_ASEMI可以跟 单片机 一起用?

[回答]ll回复现如今,众多的电子产品充斥市场,价格质量参差不齐,更可怕的是市场上冒牌、劣质S品牌让人难以分辨,一不小心就掉入“坑”里了。ll回复在选购...

如何查论文被引频次

寄出后,4个月未接到...对拟刊用的稿件,发给作者用稿通知书,对不拟刊用的稿件,不再通知作者。所以稿件自寄出后,4个月未接到用稿通知书者,可对稿件...

智能红外线耳温计有什么优点?

目前,水银体温计因其价廉且性能稳定,是我国医院及家庭使用最为广泛的测温器材,80%以上的医院使用水银体温计进行测量体温。但是水银体温计进行测温存在诸如测...

请问锂电池4.2V转 单片机 3.3V用什么芯片!-ZOL问答

可以用微压差线性稳压器,例如TPS7333Q,这款稳压器最小失稳电压的典型值是235mV,最大输出电流500mA。还可以用开关稳压器NCP1402SN33,这款稳压器在0.8V~5V输入电...

无法识别usb设备怎么处理 stm32模拟ps2-ZOL问答

7条回答:【推荐答案】如果是USB接口的话,问题就复杂多了。51单片机本身并不支持USB协议,如果需要使用USB设备,则需要用软件模拟出USB协议,或者借助其它USB接口芯...

电脑用什么点歌软件比较好?

在电脑里装个点歌系统嘛,不过差不多可买一台点歌机了,可以酷K歌网络资源也可以,不过话面一般是普清的!家庭卡拉OK系统搭建,包含三个方面:点歌系统、音响...

猜你喜欢