ZHCAEH4A December   2019  – September 2024 ADS125H02 , ADS125P08 , MUX509

 

  1.   1
  2.   2
  3.   商标

特性 值 单位
通道数量 4 个差分通道
数据速率 ≤10 kSPS
电压输入范围 ±10.0 V
电流输入范围 0 至 20 mA
电压精度 0.05 典型值 | 0.10 最大值 %FS
电流精度 0.10 典型值 | 0.20 最大值 %FS
电源
AVDD HV-AVDD HV-AVSS
5.0V 15.0V -15.0V

设计说明

此电路设计介绍了如何使用具有集成基准和可编程增益放大器 (PGA) 的 ADS125H02 在各种范围内进行电压和电流测量。

此电路可用于以下应用:

  1. PLC 的模拟输入模块
  2. 航空电子远程数据集中器
  3. 实验室和现场仪表
  4. 测试和测量

热电偶和 RTD 也是类似应用中使用的常见温度传感器。有关使用各种 RTD 接线配置进行精密 ADC 测量的更多信息,请参阅热电偶测量基本指南 应用报告。

设计说明

  1. 模拟和数字电源均使用电源去耦电容。对于高压模拟电源(HV_AVDD 和 HV_AVSS),请在引脚之间放置一个 1.0µF 电容器,并在每个电源与接地平面之间放置 0.1µF 电容器。在 AVDD 处将 0.1µF 和 10µF 电容器并联连接到接地平面。在 DVDD 和接地平面之间连接一个 1.0μF 电容器。在 BYPASS 和接地平面之间连接一个 1.0μF 电容器。有关电源建议的详细信息,请参阅 ADS125H02 具有 PGA 和电压基准的 ±20V 输入、双通道、40kSPS、24 位 Δ-Σ ADC 数据表。
  2. 为了尽可能减少输入漏电流,请在使用双极电源运行器件时,将未使用的模拟输入连接到 AGND;或在使用单极电源运行器件时,将未使用的输入连接到 AVDD。
  3. 将未使用的 GPIO 编程为输出(默认设置)。如果任何 GPIO 被编程为输入,则不得允许 GPIO 悬空(未连接),悬空可能会导致 AVDD 电源漏电流。
  4. 考虑在高压电源(HV_AVDD 至 HV_AVSS)之间添加 TVS 二极管,以提供过压保护,并避免违反 38V 的绝对最大额定值。TVS3300 等 TVS 二极管提供 33.0V 的关断电压 (VR),该电压低于所需的 30.0V 电源电压,从而尽可能地减少二极管的漏电流,但其典型击穿电压 (V BR) 和钳位电压 (VC) 分别为 35.8V 和 38.0V(假设峰值脉冲电流 IPP 为 35.0A),因此能够有效保护 ADC 免受 EOS 事件的影响。有关 ADC 中 EOS 的更多详细信息,请参阅 ADC 中的 EOS 和 ESD。
  5. 如果可能,使用 C0G (NPO) 陶瓷电容器进行输入滤波。这些电容器中使用的电介质在电压、频率和温度变化时提供最稳定的电气性能。
  6. 使用标准电容器值和 1% 电阻器值选择 ADC 输入和基准输入的输入滤波。有关这些滤波器的设计示例和分析,请参阅使用 ADS1148 和 ADS1248 系列器件进行 RTD 比例测量和滤波 应用报告。

元件选型

  1. 确定系统元件:
    1. 以下是给定的规格:
      • 输入电压范围 ≤ ±12.0V
      • 两个电压输入通道和两个电流输入通道
      • 数据速率 ≤ 10kSPS
      • 0.05% 或更高的 FS 精度
      • 针对成本进行了优化
    2. 选定的产品:
      • ADS125H02 是一款 24 位、±20V 输入、Δ-Σ ADC,集成高输入电压 PGA 和电压基准。该器件满足输入电压范围、精度和数据速率要求,并集成精密电压基准和 GPIO,有助于优化成本。
      • MUX509 是一款 4:1 36V 差分精密模拟多路复用器。该器件能够使用单个 ADC 扩展到 4 个通道,从而实现成本优化。
      • 负载电阻器:负载电阻器将电流转换为有限电压,以在电流测量模式下进行测量,这里选择了 250Ω 电阻器,以提供所需的电流范围测量(0mA 至 20mA)和 5.0V 的目标负载电压。使用精密电阻器可以验证电阻器不会成为系统精度的限制因素,以下规格可供参考:
        • 精度 ≤ 0.1%
        • 温度系数 ≤ 20 ppm/°C
        • 额定功率 ≥ 0.5W
      • 设计特色器件 中列出了替代和类似的器件。
  2. 执行误差分析计算:模拟输入模块设计中的一个关键考虑因素是环境温度范围内的误差,该误差由增益漂移、失调电压、基准电压和线性误差所导致。此示例展示了总体未调整误差 (TUE) 分析的结果,该分析假定 FS 电压为 10V,并且初始的失调电压和增益(包括基准电压误差)是用户在 TA = 25°C 以及过热条件下校准的。下表展示了校准前、室温条件下校准后以及过热条件下的最大误差,包括 ADC 在 –20°C 至 70°C 温度范围内的漂移误差。
    校准前后的最大误差
    规格 数据表值 误差 (ppm)
    包括 ΔT = 90°C
    误差 (ppm)
    假定进行了增益和失调电压校准
    内部 VREF 初始精度(最大值) 0.20% 2000.000 1.325
    内部 VREF 温度漂移(最大值) 1ppm/°C 90.000 90.000
    内部 VREF 温度迟滞 (70ppm/105°C) 60ppm/°C 60.000 60.000
    量化噪声 172.3nVRMS 0.017 0.017
    噪声 53μVRMS 5.300 5.300
    INL 0.001% 10.000 10.000
    失调电压 2500μV 250.000 1.325
    失调电压温漂 2000nV/°C 18.000 18.000
    增益误差 0.70% 7000.000 1.325
    增益误差温漂 4ppm/°C 360.000 360.000
    总误差(平方和根)[ppm] 7294.124 376.507
    总误差(平方和根)[%FS] 0.729 0.038
  3. 通过查看校准前后的最大误差 中的数据可以明显看出,在执行任何校准之前,对系统总误差计算的主要影响因素是内部电压基准的初始精度、过热时的增益误差以及失调电压,这些因素导致总误差为 0.729%FS。假设进行了增益和失调电压校准,增益、失调电压、基准初始精度降低到噪声水平,使得误差接近 ADC 噪声水平,即 1.325ppm(假设为 16 个样本的平均值),那么可以计算出总误差降至 0.038% FS。在过热条件下执行校准,以进一步提高满标量程精度。
  4. 计算所需的 PGA 增益:所需的 PGA 增益由基准电压和输入电压范围决定,对于电压测量,该范围为 ±10V;对于电流测量,该范围为 5.0V(假设负载电阻器为 250Ω)。
  5. 验证 PGA 输入限制:与典型放大器一样,集成 PGA 具有允许的最大输入电压 (VAINX)(可在 ADS125H02 数据表的建议运行条件表中找到),它由 PGA 增益、最大差分输入电压 (VIN) 和高压电源的最小值决定。将绝对输入电压 (VAINX) 保持在以下公式所示的范围内;否则,可能会导致不正确的转换数据:

    其中

    • 当增益小于 1 时,请使用 1 作为增益值
    • V(AINx) = 输入电压
    • VIN = VAINP – VAINN = 预期的最大差分输入电压

    在电压和电流测量中,由于增益小于 1,绝对输入电压必须为:

    –12.5V < VAINX< 12.5V

    下图显示了衰减模式下 PGA 输入电压与 PGA 输出电压之间的关系。第一个 PGA 级配置为单位增益跟随器,第二个 PGA 级用于衰减差分输入并将信号共模电压转换为 AVDD/2 以驱动 ADC 输入。

  6. GPIO 配置:

    ADS125H02 器件提供了四个 GPIO 引脚 (GPIO0–GPIO4),其中两个 GPIO 由专用引脚提供,另外两个 GPIO 与外部基准(REFP1 和 REFN1)共享引脚功能。GPIO 输入和输出电平以 AVDD 和 AGND 为基准,因此在这种情况下,逻辑输出电平设置为 5.0V。寄存器 3 和 4 中的以下位用于控制 GPIO:

    • GPIO_CON[3:0] 位设置与指定引脚的 GPIO 连接(1 = 已连接)
    • GPIO_DIR[3:0] 位将 GPIO 的方向编程为输入 (1) 或输出 (0)
    • GPIO_DAT[3:0] 位是 GPIO 的数据值

    在本例中,将 GPIO_CON[3:0] 设置为“0111”,将 GPIO_DIR[3:0] 设置为“1000”,而 GPIO_DAT[3:0] 的配置取决于连接的通道。MUX509 真值表和 GPIO_DAT 配置 表根据所选的输入通道显示了各个 GPIO[x] 位的配置。

    MUX509 真值表和 GPIO_DAT 配置
    EN | GPIO2 A1 | GPIO1 A0 | GPIO0 状态
    0 1 1 MUX 禁用
    1 0 0 通道 1 开启(电压):
    1 0 1 通道 2 开启(电压):
    1 1 0 通道 3 开启(电流):
    1 1 1 通道 4 开启(电流):
  7. 数字滤波器选择:

    数字低通滤波器对实现 Δ-Σ ADC 的功能至关重要,后者依赖过采样和噪声整形来减小带外量化噪声。ADS125H02 器件中提供了多种数字滤波器选项。选择数字滤波器时,请考虑以下权衡因素:

    • 较低的数据速率(较高的过采样率)会降低噪声带宽,有助于抑制噪声,但不利于提高数据吞吐量或瞬态事件检测。
    • 内置 PGA 监控器能够帮助检测影响转换结果的瞬态事件;因此,数字滤波器通常能够以更低的数据速率运行,以获得更好的噪声性能。
    • 高阶 SINC 滤波器在处理输入阶跃时具有较慢的稳定时间,但能提供更低的噪声带宽并扩大陷波宽度来滤除常见噪声信号,例如并非恰好出现在 50Hz 或 60Hz 的电源线噪声。
    • 数字滤波器的陷波出现在 SINCx 滤波器数据速率的间隔上,因此建议使用 50SPS、60SPS 或更低的数据速率来衰减电源线噪声。
    • 20SPS FIR 滤波器不同于 SINCx 滤波器,能够同时抑制 50Hz 和 60Hz 噪声,并且还可在单个转换周期内达到稳定(与 SINC1 滤波器类似)。

在此应用中,TI 建议使用 SINC1 滤波器实现低延迟 20SPS,如以下部分的伪代码示例所示。

有关 ADS125H02 器件中数字滤波器的更多信息,请参阅以下内容:

寄存器设置

电压和电流输入的配置寄存器设置
寄存器地址 寄存器名称 字段 寄存器值 说明
05h MODE3 GPIO_DAT[3:0] 请参阅MUX509 真值表和 GPIO_DAT 配置 GPIO 状态(用于控制外部多路复用器)
MODE2 GPIO_DIR[3:0] 1000

GPIO[2:0] 输出、GPIO[3] 输入

MODE4 GPIO_CON[3:0] 0111

GPI0[2:0] 连接,GPIO[3] 断开连接

10h MODE4 MUX[2:0] 000 内部 MUX
10h MODE4 GAIN[3:0] 0010 或 0011 PGA - 分别为电压和电流测量提供增益
02h MODE0 DR[4:0] 00100 数据速率:20SPS
02h MODE0 FILTER[2:0] 000 数字滤波器:SINC1

伪代码示例

以下伪代码序列显示了设置器件和微控制器所需的步骤,该微控制器与 ADC 连接,以便在电压和电流测量时从 ADS125H0x 器件获取后续读数。专用的 DRDY 引脚指示新转换数据的可用性。在使用 STATUS 字节和 CRC 数据验证的情况下显示伪代码。从 ADS125H02 产品文件夹下载 ADS125H02 示例 C 代码 或直接通过以下链接访问:ADS125H02 示例 C 代码。

通用伪代码

Init:
{
    Configure microcontroller for SPI master, mode 1 (CPOL = 0, CPHA = 1), SCLK freq = 8 MHz
    Configure microcontroller GPIO for /DRDY as a falling edge triggered interrupt input
    Set CS1 low;
    Send 06h 00h A9h 00h;// RESET command to ensure proper reset after power-up
    Set CS1 high;
    // DELAY
    Set CS1 low;
    Send 46h 10h 82h 00h;// WREG to REF: Enable and select the internal 2.5V reference
    Set CS1 high;
    // NOTE: not necessary to issue a WREG to MODE0 command when using the default register values
    Set CS1 low;
    Send 42h 24h 5Ah 00h;// WREG to MODE0: Continuous conversion, low-latency filter, 20 SPS
    Set CS1 high;
    Set CS1 low;
    Send 43h 08h 8Bh 00h;// WREG to MODE1: Continuous conversion, 605us conv. start delay
    Set CS1 high;
    Set CS1 low;
    Send 44h 77h 9Ah 00h;// WREG to MODE2: Enable GPIO outputs on GPIO0, GPIO1, and GPIO2
    Set CS1 high;
    Set channelNumber = 1
    Call Gain_Select()
    Call Channel_Select()
    // (OPTIONAL): For verification read back all register settings
    Call Start_New_Conversion()
    
}
Loop:
{
    Wait for DRDY falling edge interrupt...
    Do you want to switch to the next channel?
    {
        channelNumber = (channelNumber + 1) % 4;
        Call Gain_Select()
        Call Channel_Select()
        Call Start_New_Conversion()
    }
    Call Read_Data()
}
Channel_Select()
{
    // NOTE:
    // A0, A0 and EN are controlled by GPIO0, GPIO1 and GPIO2 respectively
    // STATUS0 byte is always enabled
    Set CS1 low;
    // WREG to MODE3 register to set GPIO pin levels
    If (channelNumber == 1)
        Send 45h 44h 16h 00h;// EN=1; A1=A0=0
    ElseIf (channelNumber == 2)
        Send 45h 45h 11h 00h;// EN=1; A1=0; A0=1
    ElseIf (channelNumber == 3)
        Send 45h 46h 18h 00h;// EN=1; A1=1; A0=0
    ElseIf (channelNumber == 4)
        Send 45h 47h 1Fh 00h;// EN=1; A1=A0=1
    Set CS1 high;
}
Gain_Select()
{
    // NOTE:
    // Using gain of 0.25 V/V for channels 1 & 2
    // Using gain of 0.50 V/V for channels 3 & 4
    // Always select AINP = AIN1 and AINN = AIN0 for analog inputs
    Set CS2 low;
    // WREG to MODE4 register to configure PGA gain
    If (channelNumber <= 2)
        Send 50h 02h D5h 00h;// Gain = 0.25 V/V
    Else
        Send 50h 03h D2h 00h;// Gain = 0.50 V/V
    Set CS2 high;
}
Start_New_Conversion()
{
    Set CS1 low;
    Send 08h 00h 7Fh 00h;// START command
    Set CS1 high;
}
Read_Data()
{
    Set CS1 low;
    Send 12h 00h AAh 00h 00h  00h   00h   00h   00h;
    Receive FFh 12h 00h AAh [STATUS] [MSB] [MID] [LSB] [CRC]
    Set CS1 high;
    // Cast, concatenate, and sign-extend 24-bit data to signed 32-bit datatype
    signedValue = (((int32_t) [MSB] << 24) + ((int32_t) [MID] << 16) + ((int32_t) [LSB] << 8)) >> 8;
    // Convert ADC value to voltage (LSBsize = 2*VREF/GAIN)
    // NOTE:
    // Using gain of 0.25 V/V for channels 1 & 2
    // Using gain of 0.50 V/V for channels 3 & 4
    VoltageReading = (LSBsize * signedValue);
    If (channelNumber > 2)
        CurrentReading = (VoltageReading / BurdenResistance);
}

设计中采用的器件

设计中采用的器件
器件 主要特性 链接 其他可能的器件
具有集成 PGA 和电压基准的模数转换器 (ADC)
ADS125H02 具有 ±20V 输入、PGA、IDAC、GPIO 和 VREF 的 24 位、40kSPS、双通道 Δ-Σ ADC 具有 ±20V 输入、PGA、IDAC、GPIO 和 VREF 的 24 位、40kSPS、双通道 Δ-Σ ADC 精密 ADC
ADS125H01 具有 ±20mV 至 ±20V 输入的 24 位、40kSPS、单通道 Δ-Σ ADC 具有低噪声 PGA 和 ±20V 输入的 24 位、40kSPS、单通道 Δ-Σ ADC
可编程增益放大器 (PGA)
PGA280 4 通道、零漂移、高电压可编程增益放大器 (PGA) 零漂移、HV 可编程增益放大器 模拟开关与多路复用器
PGA281 1 通道、零漂移、高电压可编程增益放大器 (PGA) 零温漂、高电压可编程增益放大器
模拟多路复用器
MUX509 差分或双通道 4:1、36.0V 精密模拟多路复用器 6.7pF 导通状态电容、36V、4:1、2 通道模拟多路复用器 模拟开关与多路复用器
MUX36D04

差分或双通道 4:1、36.0V 精密模拟多路复用器

更低的漏电流

1pA 导通状态漏电流、36V、4:1、双通道精密模拟多路复用器
TMUX6104

单端 4:1、±16.5V、精密模拟多路复用器

最低漏电流、最低导通电容

5pA 导通状态漏电流、±16.5V、4:1、单通道精密模拟多路复用器
CD4052

差分或双通道 4:1、±10.0V 模拟多路复用器

最低成本

20V、4:1、双通道通用多路复用器

电源参考设计

ADS125H02 器件需要三个模拟电源(高压电源 HV_AVDD 和 HV_AVSS,低压模拟电源 AVDD)和一个数字电源 (DVDD)。该电路假设 HV_AVDD 和 HV_AVSS 采用双极电源 (±15.0V) 并使用一个 5.0V 电源。下表显示了三种参考设计的规格,这些设计可由 24.0V 标称输入电压提供电源。

PMP10532 PMP10516 TIDA-00689

原理图

测试结果

原理图

测试结果

原理图

设计指南

VIN 范围 (V) 19.0V-30.0V 20.4V-28.8V 16.0V-32.0V
输入类型 DC
VOUT (V) 输出 1 15.0
输出 2 -15.0
输出 3 5.00
IOUT(maximum) (A) 输出 1 0.200 0.200 0.601
输出 2 0.200 0.060 0.601
输出 3 1.000 0.100 0.200
POUT(maximum) (W) 输出 1 3.0 3.0 0.5
输出 2 3.0 0.9
输出 3 5.0 0.5
隔离 ✔ ✔ ✔
VIN = 24V 和最大 IOUT 下的总效率 86.0% 78.8% 44.0%
封装 60.0mm × 30.0mm 大约 60.0mm × 35.0mm 12.7mm × 40.8mm
拓扑 Fly-Buck™ Fly-Buck™ + 线性稳压器 Fly-Buck™ + 双电源转换器