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.

[参考译文] TDC1000:RTD PT1000向后工作

Guru**** 2427930 points
Other Parts Discussed in Thread: TDC1000, TDC7200

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

https://e2e.ti.com/support/sensors-group/sensors/f/sensors-forum/1518234/tdc1000-rtd-pt1000-working-backwards

器件型号:TDC1000
主题: TDC7200中讨论的其他器件

工具/软件:

您好、

我们有 TDC1000 TDC7200设置。 TDC1000的 RRef 上连接了一个1K 位。 RTD1上有一个 PT1000温度传感器。 RTD2上未连接任何内容。  

对于从启动到第一个脉冲的脉冲、基准温度似乎准确(195uS)。 PT1000使用万用表测量1.1K、但在175uS 处的脉冲(第三-第二个脉冲)读数为175uS。 如果我在单 RTD 模式或双 RTD 模式下进行测量、情况是相同的。 单个 RTD 模式是第5 -第4个脉冲。

随着温度升高、万用表在 PT1000上正确显示电阻增加、但我可以看到脉冲时间在读数和示波器上下降。

我无法让脉冲时间随着温度的升高而增加。

我在做什么?

此致。

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

    尊敬的 Manish:

    感谢您发布到传感器论坛!

    有关温度传感器的详细信息、请参阅 TDC1000常见问题解答页面([常见问题解答] TDC1000:有关超声波 ToF (液体耦合)的所有须知内容[配套资料、工具、设计、常见问题解答])中的以下材料:

    2.5)通过 TDC1000和 TDC7200测量用于超声波感应的 RTD 传感器: 通过 TDC1000和 TDC7200测量用于超声波感应的 RTD 传感器

    使用 TDC1000-TDC7200 GUI 测量温度值时、请确保  TDC1000 页面上的 TEMP_MODE 设置为"REF_RTD1_RTD2"、并且  无论此时测量的是一个还是两个 RTD、温度页面上的 TEMP_RTD_MODE 都设置为"RTD1和 RTD2"。 GUI 会自动实施权变措施以为 RTD1提供正确的读数。

    如果这对我有帮助、请告诉我。

    此致、

    ~Alicia

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

    感谢您的答复 Alicia。 我们已经通过 TDC1000和 TDC7200设计了自己的 PCB。 我们无法使用 PC GUI。 我仅使用 RTD1和 RTD1以及 RTD2尝试了这两种方法。 两者的结果是相同的(当然、仅 RTD1中的脉冲为5-4、RTD1和 RTD2中的脉冲为3-2)。 当 PT1000被加热时、脉冲之间的时间会缩短、而不是增加。 这意味着当电阻上升时、PT1000的充电速度实际上更快、而不是充电速度更慢。 这是正确的行为吗? 我已经看到了十六进制值并看到了内窥镜上的脉冲。 当 PT1000被加热时、它们的值都会降低。 我已经在示波器中测得、以验证软件中的十六进制值是否正确。 我也尝试了多个 PT1000温度传感器,但结果仍然相同。 我知道这应该是相反的,所以困惑。 仔细阅读了这两个数据表、但可能遗漏了一些内容。  

    请告诉我,如果你想我分享一个视频,或更多的细节,源代码等. 很高兴与大家分享您需要帮助我理解这种奇怪的行为。 谢谢。

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

    尊敬的 Manish:

    我们的团队今天就在外面。  我们应该能够看看你的问题,当我们回到办公室从明天开始.

    此致、

    Mekre

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

    尊敬的 Manish:

    您能否分享当 PT1000被产生的脉冲加热时的波形?

    此致、

    ~Alicia

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

    尊敬的 Alicia:

    这是解释该问题的视频链接:
    https://www.youtube.com/watch?v=LXKi6TX69Ww

    如果您需要任何其他信息、请告诉我。 谢谢。

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

    尊敬的 Manish:

    在与我的团队讨论后、PT1000的反向/反向温度读数可以是以下结果之一:

    • 接线不正确
    • 电线松动/损坏  
    • 可能会反转结果的固件、但考虑到软件中读取的值与您通过示波器测量的值相匹配、这种情况似乎不太可能发生

    我将检查以确保 PT1000的连接正确接线、而不是损坏、以防这可能导致问题。

    此致、

    ~Alicia

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

    尊敬的 Alicia:  

    我觉得我的接线是正确的。 我在连接到基准引脚和另一侧接地的万用表上有一个基准1K 电压读数为1.000K。 PT1000连接至 RTD1、另一侧接地。 没有任何器件连接到 RTD2。 我还断开了线束、并使用短导线直接焊接 PT1000至引脚。 起始停止引脚的长度匹配、所有 RX TX 布线的长度匹配、在具有2个实心接地层的4层电路板上、因此我知道这是一个低噪声电路板。 问题仍然存在。

    我还尝试了仅将1.2K 和1.5K 电阻器直接焊接到 RTD1引脚和接地端、但仍然存在相同的问题。 增大电阻、缩短 RTD1引脚上的脉冲时间。 也尝试使用多个 PT1000传感器。 同样的问题。

    您能否仔细检查视频中两个处理器中设置的标志。 这些与 TI 参考代码完全匹配。  

    此外、当我对具有自动通道开关(在标志中设置)的2 x 1MHz 换能器进行上行和下行测量时、第一个脉冲的读数最终测量差值约为2uS、看起来非常高。 如果交换换能器、读数仍然相同。 上游变少、下游变多。 如果换能器有问题、我认为它们应该与开关相反。 密封式超声波传感器中的水不会移动。

    获取 TI 支持工程师详细硬件和软件审查的步骤是什么。 我想先将项目文件发送给您进行审查、因为涉及到 IP、我无法在公共论坛上发布所有文件。

    请告诉我打开支持 COSE 的流程。

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

    尊敬的 Manish:

    查看您与配置共享的视频、似乎 CONFIG_2中的 MEAS_MODE 设置为0h (飞行时间测量)。 您是否可以尝试将 MEAS_MODE 设置为1h (温度测量)来看看是否有所帮助?

    如果上述器件不起作用、以防它可能与特定的 TDC1000有关、您是否尝试过换用不同的器件来看看问题是否仍然存在?

    此致、

    ~Alicia

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

    尊敬的 Alicia:

    针对如下测量更新了初始标志:
    ——

    //===上游测量===
    //清除 TDC1000中的 TEMP_MEAS_EN
    uint8_t cfg2_1000 = SPI_READ_REGISTER (TDC1000_SPITDC1000_CS、0x02);
    cfg2_1000且=~0x40//清除 TEMP_MEAS_EN (位6)
    SPI_WRITE_REGISTER (TDC1000_SPITDC1000_CS、0x02、cfg2_1000);

    //将 TDC7200 CONFIG2设置为5个停止位、保留高位(位7:6)
    Uint8_t cfg2_7200 = SPI_READ_REGISTER (TDC7200_SPITDC7200_CS、0x01);
    cfg2_7200 =(cfg2_7200 & 0xC0)| 0x04// STOP = 5
    SPI_WRITE_REGISTER (TDC7200_SPITDC7200_CS、0x01、cfg2_7200);

    //开始测量
    SPI_WRITE_REGISTER (TDC7200_SPITDC7200_CS0x000x03);
    SLEEP_ms (500);
    while (GPIO_get (TDC7200_INT));
    SPI_READ_BLOCK_tdc7200 (0x100x1B、上游_buf);

    //==下游测量===
    SLEEP_ms (17);
    SPI_WRITE_REGISTER (TDC7200_SPITDC7200_CS0x000x03);
    SLEEP_ms (500);
    while (GPIO_get (TDC7200_INT));
    SPI_READ_BLOCK_tdc7200 (0x100x1B、Downdown_buf);

    //=== RTD 温度测量===
    cfg2_1000 = SPI_READ_REGISTER (TDC1000_SPITDC1000_CS0x02);
    cfg2_1000 |= 0x40//设置 TEMP_MEAS_EN
    SPI_WRITE_REGISTER (TDC1000_SPITDC1000_CS、0x02、cfg2_1000);

    cfg2_7200 = SPI_READ_REGISTER (TDC7200_SPI、TDC7200_CS0x01);
    cfg2_7200 =(cfg2_7200 & 0xC0)| 0x04// STOP = 5
    SPI_WRITE_REGISTER (TDC7200_SPITDC7200_CS、0x01、cfg2_7200);

    SPI_WRITE_REGISTER (TDC7200_SPITDC7200_CS0x000x03);
    SLEEP_ms (500);
    while (GPIO_get (TDC7200_INT));
    SPI_READ_BLOCK_tdc7200 (0x100x1B、RTD_buf);
    -----
    初始标志设置:
    void init_tdc1000_registers (void){
    const uint8_t TDC1000_reg_local_copy[10]={
    0b01001001// CONFIG0 //除以8 // 9个发送脉冲
    0b01000111// CONFIG1 // 1测量// 7个接收事件
    0b00010010// CONFIG2 //启用自动通道交换// MEAS 模式2
    0b00000010// CONFIG3 //-75mV 回波鉴定//测量基准
    0b00011111// CONFIG4 //默认-位置31处的相移
    0b10001000// TOF-1 // 12dB 增益- LNA 被旁路并断电
    0b00011001// TOF-2 //消隐设置为25us
    0b00000001// TOF-3 //复位错误标志和 ERRB 引脚设为高电平
    0b00100011// TOF-4 // short_tof_blank_period - 16 x T0、回波窗口1024 x T0
    0b00000001 // TOF-5 // 128 x T0自动置零周期被设置
    };

    对于(uint8_t i = 0;i < 10;i++){
    SPI_WRITE_REGISTER (TDC1000_SPITDC1000_CS、I、TDC1000_reg_local_copy[i]);
    }
    }

    void init_tdc7200_registers (void){
    const uint8_t TDC7200_reg_local_copy[10]={
    0b00000010// CONFIG1 //测量模式2设置
    0b0100100// CONFIG2 // CAL2 = 10个时钟、无均值计算、5个 STOP 脉冲
    0b00000111// INT_STATUS //清除中断状态
    0b00000111// INT_MASK //启用中断
    0b11111111// COARSE_CNTR_OVF_H //默认值
    0b11111111// COARSE_CNTR_OVF_L //默认值
    0b11111111// CLOCK_CNTR_OVF_H //默认值
    0b11111111// CLOCK_CNTR_OVF_L //默认值
    0b00000000// clock_CNTR_STOP_MASK_H //屏蔽复位
    0b00000000 // clock_CNTR_STOP_MASK_L //屏蔽复位
    };

    对于(uint8_t i = 0;i < 10;i++){
    SPI_WRITE_REGISTER (TDC7200_SPITDC7200_CS、I、TDC7200_reg_local_copy[i]);
    }
    }


    ——
    我有6个样片 PCB。 它们都显示出相同的结果。 升高温度会缩短 RTD1引脚上的脉冲时间。 即使我在 RTD1引脚上放置静态电阻器、增大电阻也会缩短脉冲时间。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Manish:

    我刚有一个用于 TDC1000的 EVM、我会尝试设置一个测试来看看我是否能够复制大家看到的内容。 我会让你知道我在明天结束时发现了什么。

    此致、

    ~Alicia

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

    尊敬的 Manish:

    通过对 TDC1000-TDC7200EVM 和 GUI 使用类似的设置(请参阅下图了解寄存器设置)、我能够观察到以下情况:

    由于我没有 PT1000、因此我使用了静态电阻器、一端连接到 RTD1、另一端连接到 GND。 对于用于温度测量的基准电阻、有一个将 RREF 连接到 GND 的1kΩ 电阻。

    1kΩ 电阻器:

    2kΩ 电阻器:

    根据我的观察、看起来脉冲之间的时间随着电阻的增加而减少是一种正常行为、因为 GUI 能够正确解读在较高电阻下温度会升高。

    此致、

    ~Alicia

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

    感谢您确认此 Alicia。 我想、TDC1000数据表的文档中有如下混淆:
    "脉冲之间的间隔与测得的电阻成正比、因此与温度成正比"(第19页)。
    我想唯一的提示是方程3、它似乎支持负比例结果。

    但很高兴知道您也有相同的结果、所以我知道我的硬件和软件都很好。 感谢您发送编修。