This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] ADS122U04:ADS122U04

Guru**** 2524550 points
Other Parts Discussed in Thread: ADS122U04

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/929187/ads122u04-ads122u04

器件型号:ADS122U04

Bob、您好!

使用 ADS122U04的 PT100温度感应电路(比率方法)现在运行良好。
现在、我有一个有关使用  ADS122U04的压力传感器(0.5至4.5VDC 输出)感应的查询。
目前、由于我尚未最终确定和采购 压力传感器、我正在使用由3v3dc-提供的分压器(7K5和10K POT)
模拟  压力传感器输入。 该分压器提供0至1.9vdc (在2.4vdc 的 ADC I/p 限制范围内、即"AVDD - 0.9")。

当 POT 处于最大位置(AIN0 = 1.9VDC)时、我得到的 ADC 计数为:          0x77985F
当 POT 处于中间位置 (AIN0 = 1.0VDC)时、我得到的 ADC 计数为:          0x3E3A77
当 POT 处于接近最小值位置(AIN0 = 0.5VDC)时、我得到 ADC 计数为:       0x1F66F2
当 POT 处于最小位置(AIN0 = 0.0VDC)时、我得到的 ADC 计数为:      0xFFFC34

我的问题是:我不明白为什么在从1.9 VDC 逐渐下降到0.5 VDC 后、ADC 计数在0 VDC 时给出负值?

配置寄存器的值如下:-

//用于写入 ADC ADS122U04 IC 的"配置寄存器"的命令
extern uint8_t CMD_WRITE_CONFIGREG_ZERO _ADC_PRESS[3]   ={0x55、0x40、0x81};//禁用并绕过 PGA、GAIN=1 (默认值)、AINp=AIN0和 AINn=AVss
extern uint8_t CMD_WRITE_CONFIGREG_Oe_ADC_PRESSENT[3]    ={0x55、0x42、0x08};//内部2.048V 直流(作为参考)、连续转换、正常模式、数据速率20SPS
extern uint8_t CMD_WRITE_CONFIGREG_Two_ADC_PRESSENT[3]    ={0x55、0x44、0x00};//数据计数器禁用、IDAC 关闭、数据完整性检查禁用
extern uint8_t CMD_WRITE_CONFIGREG_Three _ADC_PRESS[3]  ={0x55、0x46、0x00};//手动数据读取模式、IDAC2禁用、IDAC1禁用
extern uint8_t CMD_WRITE_CONFIGREG_F4_ADC_PRESSENT[3]   ={0x55、0x48、0x00};//所有默认设置保持不变

 

AIN0的模拟 I/p 为单端(即非差分)。 请参阅下面所示的原理图。

请提供您关于以下方面的建议:
a) AIN0 = 0VDC 时 ADC 计数为负的可能原因
b)连接 压力变送器(0.5至4.5VDC 输出)的更好方案。
  我将使用 Baumer 或 MEAS 制造 压力传感器。
  我不会使用4V-20mA 输出 压力变送器、因为它需要额外的10Vdc 电源。
  我只需要为传感器和 ADC 电路使用单个5VDC 电源。

提前感谢您、

此致、
Milind Risbud。

 


  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Milind、

    ADC 将具有器件固有的一些偏移。  偏移可能为负。  对于连接到(AVDD-AVSS)/2的 AINP=AINN、我建议通过使用内部多路复用器设置来应用内部短路来查看器件失调电压、并查看是否有可用于从连续测量中减去失调电压的代码值。

    此致、

    Bob B

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Bob、您好!
    根据您的建议、我更改了 Config Reg Zero 的值、以便"AINP 和 AINN 短接至[(AVDD+AVSS)/2]"。
    我保持所有其他 配置寄存器的值不变、如以下声明中所示:

    ///----------------------------------------------------------
    //用于写入 ADC ADS122U04 IC 的"配置寄存器"的命令

    /PGA 禁用并绕过、GAIN=1 (默认值)、AINP 和 AINN 短接至[(AVDD+AVSS)/2]以进行测试
    extern uint8_t CMD_WRITE_CONFIGREG_ZERO _ADC_PRESSENT[3]={0x55、0x40、0xE1};
    //内部2.048vdc 作为基准、连续转换、正常模式、数据速率20SPS
    extern uint8_t CMD_WRITE_CONFIGREG_Oe_ADC_PRESSENT[3]={0x55、0x42、0x08};
    extern uint8_t CMD_WRITE_CONFIGREG_Two_ADC_PRESSENT[3]={0x55、0x44、0x00};//数据计数器禁用、IDAC 关闭、数据完整性检查禁用
    extern uint8_t CMD_WRITE_CONFIGREG_Three _ADC_PRESS[3]={0x55、0x46、0x00};//手动数据读取模式、IDAC2禁用、IDAC1禁用
    extern uint8_t CMD_WRITE_CONFIGREG_F4_ADC_PRESSENT[3]={0x55、0x48、0x00};//所有默认设置保持不变
    ///----------------------------------------------------------

    在进行上述更改后、我记录了3字节 ADC 计数、并可以看到 ADC 的固有偏移。
    请参阅下面添加的屏幕截图。
    请告知我应该从实际(压力传感器输入) ADC 计数中减去的偏移计数值。

    谢谢、

    此致、
    Milind Risbud。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Milind、

    您需要进行多次转换、然后通过将结果相加并除以收集的结果数来找到平均结果。  最终结果是要减去的数字、以消除偏移。  也就是说、我不会看到负偏移。

    可能会发生的情况是、绕过 PGA 时、从输入汲取的电流可能会受到分压器的影响、因为电位计的残余电阻/电感可能仍会影响测量。  如果您看一下 ADS122U04数据表中图6中的电气特性图、您会发现在禁用 PGA 的情况下、0V 输入或接近0V 输入时会消耗较小的偏置电流漂移。   

    此外、您可能需要在输入端添加 RC 滤波器、以限制来自可能在 POT 中拾取或连接到输入端的任何外部噪声源的噪声和混叠。  回顾初始数据、您是否进行了一系列测量来确定噪声?  可能存在来自源的噪声以及可能反映在结果中的接地反弹噪声。

    此致、

    Bob B

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Bob、您好!

    根据您的建议、我已读取10个 ADC 计数读数(AINP 和 AINN 短接至[(AVDD+AVSS)/2] -
    为了获得 ADC 的固有偏移)、对它们取平均值并从接收到的每个 ADC 计数中减去该数字(60个十进制数)。
    这似乎已经解决了负 ADC 计数的问题、输入 电压为"零 VDC"-时的 ADC 计数除外
    在这种情况下、我仍然得到负计数、但这个 输入电压"Zero VDC"永远不会出现在我的实际应用中-
    因为我将使用 Gems (UK)制造压力传感器(我刚刚订购过)、该传感器提供0.5至4.5VDC 的输出电压-
    响应发动机机油压力(不应超过最大10巴)。

    我的问题是:

    1]如何将 ADC 计数转换回输入电压(0.5至4.5VDC)、以便我可以进一步-
      将此 输入电压(0.5至4.5VDC)转换为压力(0bar 至10bar)?

    2]是否有任何公式可以将 ADC 计数转换回输入电压(0.5至4.5VDC)、就像这样-
      可用于将 ADC 计数从温度传感器(PT100)转换回温度、单位为摄氏度?

    此外、我还尝试获取该特定压力传感器的"输出电压与压力"图、以便我可以-
    实施分段线性化并以巴为单位推导压力值。

    谢谢、

    此致、
    Milind Risbud。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Milind、

    我很高兴听到您正在取得进展。  如果您使用5V 作为传感器激励、使用5V 作为基准电压、那么正如数据表中给出的那样、单输出代码(LSB)的值将基于+/- Vref/gain/(2^24)。  ADS122U04数据表中的方程式8在 sectioin 8.5.2中对此进行了演示。  因此、当 Vref 等于5V 且 PGA 设置为1时、LSB 将约为596nV。  要将代码转换为电压、您需要获取转换结果、然后减去计算出的偏移、然后将结果乘以596nV。  这似乎是您已经在做的事情、所以我可能不清楚您真正要问什么。

    至于电压到压力的转换、这将由传感器制造商确定、他们应该有一个计算或表来确定压力。  在 RTD 情况下、当电流激励用于为传感器产生基准电压和激励(比例式测量)时、原始 LSB 计算中使用的计算会因 Vref = IDAC*Rref 和与 Rref 基准电阻成比例的 RTD 而变化。  但是、这只会使电阻测量更容易。  您仍需要使用查找表或多项式方程来根据电阻计算温度。

    此致、

    Bob B

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Bob、您好!

    非常感谢您指导我查看数据表的第8.5.2节、
    以及您在整个开发过程中为我提供的所有指导。
    如果没有你们的善意帮助,我就不能以良好的速度推进这项发展工作。

    正如您所知、我已经完成了 PT100连接。 我不必查看 数据表的第8.5.2节-
    在  PT100连接期间、因为我使用了数据表中给出的公式、将 ADC 计数转换回电阻-
    另一种将电阻值转换为温度的公式、以摄氏度为单位。
    因此、我不必详细了解 ADC 计数的1LSB 等效电压。

    但现在、当我连接压力传感器时、我没有现成的公式。
    但感谢您的指导。 使用以下公式、我已成功将 ADC 计数转换为电压:

    1 LSB =(2·VREF/增益)/2^24

    在本例中,我使用了2.048vdc 和 gain =1的内部基准电压。
    因此、1LSB 的计算值为244.140纳伏。
    当压力传感器的输出电压为1.919伏(ADC 的输入电压)时、我得到的 ADC 计数为0x77A704、即十进制的7841540。
    因此、将该计数转换回电压: 7841540 x 244.140 = 1.914 Vdc
    因此、该计算值(1.914 Vdc)与使用1.919 伏万用表实际测量的值非常匹配。

    虽然我能够成功地将 ADC 计数转换回电压、但我有两个查询、如下所示:

    1]第8.5.2节指出、"器件以二进制补码格式提供24位数据。"  
      但我按原样使用 ADC 计数(不担心它是二的补值)-
      并且仍然获得正确的等效电压。 这是怎么发生的?  
      为什么我不需要减1、然后获取 ADC 计数的一个补码、然后再将其用于进一步的计算?

    2] 第8.5.2节提到以下公式:  1 LSB =(2·VREF/增益)/ 2^24 =+FS/2^23
      我无法理解"+FS/2^23"的确切含义。  

    请回答我的上述问题。

    谢谢、
    此致、
    Milind Risbud。

     



     

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Milind、

    二进制补码输出具有0x000000至0x7FFFFF 的正范围内的代码。  只要您在正范围内测量、就不需要转换代码。  但是、如果最高有效位为"1"、则输出为负、其中0x800000为负满量程、0xFFFFFFF 为代码-1。  因此、当读取负范围时、您需要转换这些值。

    因此有正满量程(+FS = 0x7FFFFF)和负满量程(-FS = 0x800000)。  输出代码基于与 AINN 电压相关的 AINP 电压。  如果 AINP 输入电压大于 AINN、则结果将处于正范围内。  如果 AINN 大于 AINP、则结果将处于负范围内。  因此、1/2的代码将处于正范围(最高有效位(MSB) 0)、而另外1/2的代码将处于负范围(MSB 为1)。  当 MSB 为0时、您可以直接使用输出代码。  如果 MSB 为1、则需要将二进制补码中的值转换为代码中的有符号值。

    此致、

    Bob B

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Bob、您好!

    我已购买 Gems (UK)制造比例压力传感器-
    测量0至16 bar 压力、并提供0.5至4.5VDC 的相应输出。
    [注意:在5Vdc 上工作的 MEAS 或 Baumer make 不能立即可用、因此去了 Gems make。]
    它的数据表中没有一个包含任何用于将其与 ADC 连接的参考电路(我可以参阅)。  
    授权经销商告诉我、它的特性响应(即输出电压与压力)是线性的-
    但是 特征响应图在其任何数据表/目录等中都不可用、销售人员也不能使用它。
    我自己准备好下面显示的电路、用于将其与 ADS122U04连接。
    请告诉我电路是否正常或需要进行任何更改。  
    如果您能为我提供一个电路、我可以将此类压力传感器连接到 ADS122U04、那将会很好。


    就上述电路而言:
    该压力传感器的数据表显示输出为 :0.5至4.5 VDC @ 4 mA
    我不确定应该使用的负载电阻器值(请参阅上面的电路)、在该值范围内我可以获取输出电压。

    4.5VDC/1.1k Ω= 4mA、因此如果我使用负载电阻= 1.1k Ω、则在传感器输出= 0.5VDC 时 、环路中的电流将仅为0.45mA!
    因此、我完全不知道  我应该使用哪种负载电阻器值?
    我已决定使用三引脚电压基准 IC '64M 6145'来获得将被施加到 REFP 引脚的4.5VDC 基准电压。
    请告诉我这是否正常。
    如果您可以提供/建议我使用一个电路作为连接此压力传感器的参考、这将非常好。
    因为这是我第一次将 压力传感器连接到外部或内部(微控制器的) ADC。

    下面提到的是这个3100系列 压力传感器的 URL、供您参考:

    https://www.gemssensors.com/search-products/product-details/3100-3200-series-pressure-transducers-

    谢谢、

    此致、
    Milind Risbud。

     

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Milind、

    TI 有太多的传感器无法为每种情况提供特定的设计。  我对所选的传感器没有任何经验、制造商认为传感器使用起来非常方便、不需要提供信息、或者由于竞争对手的原因、传感器非常秘密。  在任何情况下、当使用5V 激励时、您都应该看到压力范围的输出电压为0.5至4.5V。  我认为您实际上不需要负载电阻器、但使用它不会有任何影响、也不会填充以开始测试。

    对于基准、我将使用与激励相同的基准电压。  这将限制测量的总噪声和源的任何漂移。

    此致、

    Bob B