数据采集与转换系统用于将模拟信号转换为数字形式进行分析或传输。模拟信号输入通常是由互感器和传感器将压力、温度、应力或张力、流量等真实信号转换为相应的电信号。系统保存信号准确性和完整性的能力是衡量系统的主要指标。如何设计一个高性能的数据采集与转换系统需要考虑多方面的因素,本文就其中的一些关键问题给出自己的讨论。
数据采集转换系统的基本框架
模拟信号进行采集并转换为相应数字形式所需的基本元素包括:模拟多路复用器和信号调节;放大器;模数转换器;PC 或 MCU。
图1 为数据采集系统典型框图。目前的数据采集系统通常包括数据采集与转换所需的所有元素,不过有时可能不包含模拟多路复用之前的输入滤波与信号调节。模拟信号由模拟乘法器进行时间多路复用;多路复用器输出信号通过放大器输入A/D转换器。我们可对采样/保持进行编程,以便采集并保持经各 A/D 转换器转换成的数字多路数据采样。转换后的数据以并行或串行形式出现在 A/D 转换器的输出中,以备终端设备做进一步处理。
图1
系统采样率
被转换数据的应用与最终使用决定了数据采集与转换系统所需的采样率和转换率。系统采样率由最高带宽通道、数据通道的数量以及每次循环的采样数决定。
图2
混叠误差
根据奈奎斯特采样定理,在理想的采样数据系统中,数据带宽的每次循环要求最少两次采样,这样恢复被采样信号才不会丢失信息。因此,确定系统采样率时首先要考虑的就是混叠误差,也就是由于在信号频率的每次循环中采样数量不足所造成的信息丢失。图2 显示了在数据带宽的每次循环中采样数量不足所造成的混叠误差。
每次循环需要多少个采样
这个问题的答案取决于允许的平均误差容限、重建方法(如果存在)以及数据的最终使用。
采样数据的平均精度可通过以下途径加以改进:(1)增加每次循环的采样数;(2) 多路复用前预采样滤波,或 (3) 过滤 D/A 转换器输出。图3显示了采样数据的重建,这里 fS= 2fMAX。
如图 4所示,每次循环采样数只要稍许增加,采样数据的平均精度就会大幅上升。理论限制在于持续采样时采集与转换系统的吞吐量精度。对于数据的零阶重建,从图4 可以看出,重建采样数据达到平均 90% 乃至更高的精度要求对数据带宽的每次循环进行10次采样。通常所用的范围是每次循环7~10次采样。
图3
图4
采样误差
采样误差的定义是:采样过程中动态数据变化的不确定性所造成的采样数据点的幅值与时间误差。在数据采集和转换系统中,通过使用采样/保持器或快速的A/D转换器,就能减小采样误差或使之不显著。对于正弦数据,最大采样误差出现在零交叉情况下,这时会出现最大的 dv/dt。
关于 A/D 转换器的几点说明
A/D转换器的转换速度和分辨率是最重要的两个参数。下面简单讨论一下 A/D 转换器术语将有助于读者更好地了解系统分辨率与精度。
速度:主要由A/D 转换器的采样时间及转换时间构成。A/D转换器手册均会在采样动态参数 (Sampling Dynamics)标出转换速度。有时是数据吞吐率(Throughput Rate)。逐次逼近型AD转换器采样速率或数据吞吐率一般从几十千次每秒到几兆次每秒。
分辨率:A/D 转换器的比特数决定着数据采集系统的分辨率。A/D 转换器分辨率的定义如下:---1 LSB = VFSR/2n,
LSB = 最低有效位,VFSR =满量程输入电压范围,这里,n为A/D转换器的分辨率。比特数决定着数字码的数量,对A/D转换器而言有2n个离散数字代码。就本文的讨论而言,我们将使用二进制逐次逼近A/D转换器。表1显示了典型A/D转换器的分辨率和LSB的值。
表1
信噪比:理想AD转换器的信噪比为SNRdB=6.02×n-1.76,表2 为AD 转换器位数与信噪比的简单对照表。
表2
精度:假定所有模拟值都位于 A/D转换器输入处。A/D 转换器量化或编码特定的模拟输入值为相应的数字代码作为一种输出。上述数字代码有着内在的不确定性或 ±1/2LSB的量化误差。这就是说,量化的数字代码所代表的模拟电压与相邻数字代码中间点的距离在 ±1/2LSB之内。A/D转换器的精度不会超过内在的 ±1/2LSB 的量化误差所允许的范畴。增益、偏移和线性误差等模拟误差也会影响 A/D转换器的精度。增益和偏移通常可调节为零,但线性误差是不可调的,因为它是由固定值的梯形电阻器网络和网络开关匹配造成的。大多数高质量A/D转换器的线性误差都低于±1/2LSB。另一个需要重点考虑的误差是微分线性误差。在理想的A/D 转换器中,相邻过渡点间的步进大小为一个 LSB。微分线性误差就是在实际 A/D 转换器中相邻过渡点与理想的 LSB步进差距。该误差必须小于一个 LSB,这样才能保证不会丢失代码。线性误差为 ±1/2LSB 的 A/D转换器不一定意味着不会丢失代码。图5为微分线性、失调及增益误差图。
图5
二进制代码:二进制编码的数据格式是数字计算机类型应用中最常见的,其处理通常以二进制形式进行。A/D 转换器中最常用的二进制编码为:
1. 单极标准二进制(USB)——用0~±10V等。
2. 双极偏移二进制(BOB)——用于双极模拟信号范围,如 ±5V、±10V 等
3. 双极双组件(BTC)——用于许多数字计算机应用中的双极模拟信号范围。
在 A/D 转换器中使用两种 BCD编码,单极 BCD 和符号数值 BCD (SMD)。