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-TDC7200EVM: High ToF and STDEV at Zero-Flow

Part Number: TDC1000-TDC7200EVM

Hello,

I am designing a low-volume flow sensor for water with the TDC1000-7200EVM and 1MHz transducers (STEMINC SMDM21F1000, https://www.steminc.com/PZT/en/ultrasonic-flow-sensor-1mhz-send-receive). I cannot, no matter the settings, achieve a Delta ToF close to zero. I can see clear START, STOP, and COMP_IN signals on an oscilloscope, but the values output in the GRAPH tab of the GUI are always high (~300 ns) with a significant STDEV. I’m testing with deionized water at zero flow. Additionally, the ToF I measure on the scope varies with the AUTOZERO_PERIOD set in the GUI; shouldn’t that be a function of distance rather than a register setting? Any help regarding these matters would be much appreciated.

Hansen

  • Hi Hansen,

    To address the final question first, if the autozero setting is affecting the TOF, then this means that you are masking the received signal. The receive circuitry is not fully active until the autozero period is complete, so if the autozero setting is long enough, it will prevent the device from seeing the echo signal until it is complete. Please refer to this measurement sequence diagram:

    If the autozero is masking your return signals in this way then it will also affect the delta TOF. 

    Additionally, mismatch between transducers will cause the delta TOF to drift away from zero in a zero flow condition. I am linking two application notes that address this issue and provide some examples of analog interface circuits that can mitigate this problem. One is based mostly on gas flow sensing, but both have pertinent information on this topic.

    Regards,

  • Scott,

    I’ll look into adding an interface circuit to my test apparatus. Regarding the absolute ToF, I may have been unclear in my description. Based on the distance between transducers, I expect a ToF of 73 μs. At the lowest possible autozero period (8 μs), I measure 32 μs from one transducer’s excitation to the other’s reception of signal and generation of STOP pulses. My ToF is consistently 24 μs greater than my given AUTOZERO_PERIOD. I doubt very highly that false STOP pulses are being generated, as the receiving transducer’s resonance is concurrent with STOP pulse generation.

    Thanks,

    Hansen
  • Hi Hansen,

    Could you please send your configuration file for me to take a look at?

    Thanks,
  • Scott,

    I've attached the configuration file I'm using for testing.  I am not using an RTD in my setup. 

    Thank you,

    Hansen

    0574.Mode2_Configuration.txt
    TDC1000_Config0                         48
    TDC1000_Config1                         45
    TDC1000_Config2                         12
    TDC1000_Config3                         03
    TDC1000_Config4                         06
    TDC1000_TOF-1                           A4
    TDC1000_TOF-0                           26
    TDC1000_Error_Flags                     00
    TDC1000_Timeout                         33
    TDC1000_Clock_Rate                      00
    TDC1000_Conts_Trigger                   01
    TDC7200_Config1                         02
    TDC7200_Config2                         04
    TDC7200_Interrupt_Status                00
    TDC7200_Interrupt_Mask                  07
    TDC7200_Coarse_Cntr_Ov_H                FF
    TDC7200_Coarse_Cntr_Ov_L                FF
    TDC7200_Clock_Cntr_Ov_H                 FF
    TDC7200_Clock_Cntr_Ov_L                 FF
    TDC7200_Clock_Cntr_Stop_Mask_H          00
    TDC7200_Clock_Cntr_Stop_Mask_L          00
    TRIGGER_UPDATE_FREQ                     0000
    TDC_AVG/STDEV_NUM_ELEMS                 000A
    SAVE_GRAPH_DATA_TO_FILE                 00
    FLOW_MODE_SELECT                        01
    Y-SCALE_CENTER                          0032
    X-SCALE_RANGE                           0032
    MEASURE_RTD1                            00
    SAVE_RESULT_REGR_TO_FILE                00
    GRAPH_MULTI_STOPS                       00
    TDC_SELECT                              00
    TEMP_RTD_SELECT                         00
    TEMP_RTD_MODE                           01
    TEMP_AVG/STDEV_NUM_ELEMS                000A
    SAVE_TEMP_DATA                          00
    GRAPH_YMAX_DATA                         0000000000000258
    GRAPH_YMIN_DATA                         FFFFFFFFFFFFFD44
    TDC1000-HV_DRV_EN1                      00
    TDC1000-HV_DRV_EN2                      00
    HV_DRV_EN1_Period                       001E
    HV_DRV_EN2_Period                       001E
    ENABLE_POWER_CYCLE                      00
    CLK_FREQ_(1-16MHz)                      8.000000
    CLK_SOURCE_SEL                          00
    CPU_CLK_FREQ                            05
    CPU_CLK_EN                              00
    TDC1000-HV_BST_PWR_EN                   00
    HV_BST_PWR_EN_Period                    0000
    FWD2REV_FLOW_DELAY                      0000
    TDC1000-IMPE_MATCH_EN                   00
    ENABLE_UART_STREAM                      00
    ENABLE_MSP430TIMER_TDC                  00

  • Hi Hansen,

    I noticed that the LNA_FB setting is set to resistive. If you are using an unmodified TDC1000-TDC7200 board you should set the mode to capacitive as this will set the proper gain and highpass for the LNA with the external capacitors on the EVM (C42 and C43).

    Also for such a close spacing in a liquid medium, the number of pulses generally does not need to be quite so high. This will depend on the mounting solution, but 2-3 TX pulses should be sufficient over a short distance in liquids.

    Regards,
  • Scott,

    I changed LNA_FB to capacitive and lowered the number of pulses. Thank you for your help.

    Hansen