I've been trying to make sense of how the TDC1000-GASEVM and the TDC1000-C2000EVM development boards work and for that, I've been trying to get the same results for the same experiment using each one of the devices with three different ultrasonic transducers (200kHz, 300kHz, 1MHz).
The application is level sensing and this is my set (ignore the devices attached on the top of the Keg):
These are the boards I used:
1 - TDC1000-GASEVM
2 - TDC1000-GASEVM modified according to these instructions. The discussion started on this thread.
3 - TDC1000-C2000EVM
These are the transducers I used:
1 - Ultrasonic Sensor, Transceiver, 19 mm Diameter, 200 kHz: http://www.farnell.com/datasheets/1759997.pdf?_ga=2.237902720.1692459751.1569926028-1607374703.1561714650&_gac=1.116315508.1567092170.Cj0KCQjw753rBRCVARIsANe3o44DI9hNu62LNAsw5eLuCPF1nzZApoYyLi9Vhwt8IxUQ6SvMdNmueooaAsKMEALw_wcB
2 - Ultrasonic Sensor, Transceiver, 13 mm Diameter, 300 kHz: http://www.farnell.com/datasheets/1760000.pdf?_ga=2.237902720.1692459751.1569926028-1607374703.1561714650&_gac=1.116315508.1567092170.Cj0KCQjw753rBRCVARIsANe3o44DI9hNu62LNAsw5eLuCPF1nzZApoYyLi9Vhwt8IxUQ6SvMdNmueooaAsKMEALw_wcB
3 - Ultrasonic Sensor, Transceiver, 1 MHz: https://media.digikey.com/pdf/Data%20Sheets/Audiowell%20PDFs/US0014-001.pdf
Here is where the transducers are attached (bottom of the Keg). The transducers were attached according to this document.
(Please, ignore the Piezo Disc).
For each board, I've tried the three different transducers and two different boarding settings (total of 18 experiments).
Initially, the Keg was filled with water up to a level of approximately 13.55cm.
Then, I tried the experiments listed below (The config files for all the experiments are attached) and here are the level measurements I got:
Clearly, there is a significant variation of the level detected between experiments. I would like to understand the reason for that.
The Clock Frequency of each experiment was set in order to match the resonant frequency of the transducer (apart from the last four experiments) and the EN Period was calculated according to the equation shown in here (Page 6).
I don't have much information about the Keg since I couldn't fine the Engineering details on the manufacturer website.
TDC1000_Config0 5E TDC1000_Config1 41 TDC1000_Config2 00 TDC1000_Config3 0C TDC1000_Config4 5F TDC1000_TOF-1 60 TDC1000_TOF-0 1E TDC1000_Error_Flags 00 TDC1000_Timeout 23 TDC1000_Clock_Rate 01 TDC1000_Conts_Trigger 00 TRIGGER_UPDATE_FREQ 0000 TDC_AVG/STDEV_NUM_ELEMS 000A SAVE_GRAPH_DATA_TO_FILE 00 TDC_Y-SCALE_IN_ns 00 Y-SCALE_CENTER 0032 ZOOM_IN_X-SCALE 0032 MEASURE_RTD1 00 RTD_AVG/STDEV_NUM_ELEMS 000A TEMP_RTD_SELECT 00 TEMP_RTD_MODE 01 TEMP_AVG/STDEV_NUM_ELEMS 000A SAVE_TEMP_DATA 00 SAVE_YMAX_DATA 0000000000000059 SAVE_YMIN_DATA FFFFFFFFFFFFFFF5 TDC1000-HV_DRV_EN1 01 TDC1000-HV_DRV_EN2 00 HV_DRV_EN1_Period 003C HV_DRV_EN2_Period 001E CLK_SOURCE_SELECT 00 CLK_FREQ_(1-16MHz) 8.000000
TDC1000_Config0 4A TDC1000_Config1 41 TDC1000_Config2 00 TDC1000_Config3 0C TDC1000_Config4 5F TDC1000_TOF-1 60 TDC1000_TOF-0 1E TDC1000_Error_Flags 00 TDC1000_Timeout 23 TDC1000_Clock_Rate 01 TDC1000_Conts_Trigger 00 TRIGGER_UPDATE_FREQ 0000 TDC_AVG/STDEV_NUM_ELEMS 000A SAVE_GRAPH_DATA_TO_FILE 00 TDC_Y-SCALE_IN_ns 00 Y-SCALE_CENTER 0032 ZOOM_IN_X-SCALE 0032 MEASURE_RTD1 00 RTD_AVG/STDEV_NUM_ELEMS 000A TEMP_RTD_SELECT 00 TEMP_RTD_MODE 01 TEMP_AVG/STDEV_NUM_ELEMS 000A SAVE_TEMP_DATA 00 SAVE_YMAX_DATA 0000000000000059 SAVE_YMIN_DATA FFFFFFFFFFFFFFF5 TDC1000-HV_DRV_EN1 01 TDC1000-HV_DRV_EN2 00 HV_DRV_EN1_Period 0028 HV_DRV_EN2_Period 001E CLK_SOURCE_SELECT 00 CLK_FREQ_(1-16MHz) 8.000000
TDC1000_Config0 3E TDC1000_Config1 41 TDC1000_Config2 00 TDC1000_Config3 04 TDC1000_Config4 5F TDC1000_TOF-1 C0 TDC1000_TOF-0 1E TDC1000_Error_Flags 00 TDC1000_Timeout 23 TDC1000_Clock_Rate 00 TDC1000_Conts_Trigger 00 TDC7200_Config1 02 TDC7200_Config2 40 TDC7200_Interrupt_Status 07 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 0032 SAVE_GRAPH_DATA_TO_FILE 00 FLOW_MODE_SELECT 00 Y-SCALE_CENTER 0000 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 000000000003163C GRAPH_YMIN_DATA 0000000000030E08 TDC1000-HV_DRV_EN1 01 TDC1000-HV_DRV_EN2 00 HV_DRV_EN1_Period 0082 HV_DRV_EN2_Period 02BC ENABLE_POWER_CYCLE 00 CLK_FREQ_(1-16MHz) 1.200000 CLK_SOURCE_SEL 03 CPU_CLK_FREQ 04 CPU_CLK_EN 01 TDC1000-HV_BST_PWR_EN 01 HV_BST_PWR_EN_Period 0000 FWD2REV_FLOW_DELAY 0000 TDC1000-IMPE_MATCH_EN 00 ENABLE_UART_STREAM 00 ENABLE_MSP430TIMER_TDC 00
TDC1000_Config0 2A TDC1000_Config1 41 TDC1000_Config2 00 TDC1000_Config3 04 TDC1000_Config4 5F TDC1000_TOF-1 C0 TDC1000_TOF-0 1E TDC1000_Error_Flags 00 TDC1000_Timeout 23 TDC1000_Clock_Rate 00 TDC1000_Conts_Trigger 00 TDC7200_Config1 02 TDC7200_Config2 40 TDC7200_Interrupt_Status 07 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 00 Y-SCALE_CENTER 0000 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 000000000002FC1A GRAPH_YMIN_DATA 000000000002FBD9 TDC1000-HV_DRV_EN1 01 TDC1000-HV_DRV_EN2 00 HV_DRV_EN1_Period 003F HV_DRV_EN2_Period 02BC ENABLE_POWER_CYCLE 00 CLK_FREQ_(1-16MHz) 1.200000 CLK_SOURCE_SEL 02 CPU_CLK_FREQ 04 CPU_CLK_EN 01 TDC1000-HV_BST_PWR_EN 01 HV_BST_PWR_EN_Period 0000 FWD2REV_FLOW_DELAY 0000 TDC1000-IMPE_MATCH_EN 00 ENABLE_UART_STREAM 00 ENABLE_MSP430TIMER_TDC 00
TDC1000_Config0 5E TDC1000_Config1 41 TDC1000_Config2 00 TDC1000_Config3 04 TDC1000_Config4 5F TDC1000_TOF-1 C0 TDC1000_TOF-0 1E TDC1000_Error_Flags 00 TDC1000_Timeout 23 TDC1000_Clock_Rate 00 TDC1000_Conts_Trigger 00 TDC7200_Config1 02 TDC7200_Config2 40 TDC7200_Interrupt_Status 07 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 0032 SAVE_GRAPH_DATA_TO_FILE 00 FLOW_MODE_SELECT 00 Y-SCALE_CENTER 0000 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 000000000003163C GRAPH_YMIN_DATA 0000000000030E08 TDC1000-HV_DRV_EN1 01 TDC1000-HV_DRV_EN2 00 HV_DRV_EN1_Period 00B4 HV_DRV_EN2_Period 02BC ENABLE_POWER_CYCLE 00 CLK_FREQ_(1-16MHz) 1.600000 CLK_SOURCE_SEL 03 CPU_CLK_FREQ 09 CPU_CLK_EN 01 TDC1000-HV_BST_PWR_EN 01 HV_BST_PWR_EN_Period 0000 FWD2REV_FLOW_DELAY 0000 TDC1000-IMPE_MATCH_EN 00 ENABLE_UART_STREAM 00 ENABLE_MSP430TIMER_TDC 00
TDC1000_Config0 4A TDC1000_Config1 41 TDC1000_Config2 00 TDC1000_Config3 04 TDC1000_Config4 5F TDC1000_TOF-1 C0 TDC1000_TOF-0 1E TDC1000_Error_Flags 00 TDC1000_Timeout 23 TDC1000_Clock_Rate 00 TDC1000_Conts_Trigger 00 TDC7200_Config1 02 TDC7200_Config2 40 TDC7200_Interrupt_Status 07 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 0032 SAVE_GRAPH_DATA_TO_FILE 00 FLOW_MODE_SELECT 00 Y-SCALE_CENTER 0000 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 000000000003163C GRAPH_YMIN_DATA 0000000000030E08 TDC1000-HV_DRV_EN1 01 TDC1000-HV_DRV_EN2 00 HV_DRV_EN1_Period 0050 HV_DRV_EN2_Period 02BC ENABLE_POWER_CYCLE 00 CLK_FREQ_(1-16MHz) 1.600000 CLK_SOURCE_SEL 02 CPU_CLK_FREQ 09 CPU_CLK_EN 01 TDC1000-HV_BST_PWR_EN 01 HV_BST_PWR_EN_Period 0000 FWD2REV_FLOW_DELAY 0000 TDC1000-IMPE_MATCH_EN 00 ENABLE_UART_STREAM 00 ENABLE_MSP430TIMER_TDC 00
TDC1000_Config0 1E TDC1000_Config1 41 TDC1000_Config2 00 TDC1000_Config3 04 TDC1000_Config4 5F TDC1000_TOF-1 60 TDC1000_TOF-0 1E TDC1000_Error_Flags 00 TDC1000_Timeout 23 TDC1000_Clock_Rate 00 TDC1000_Conts_Trigger 00 TDC7200_Config1 02 TDC7200_Config2 40 TDC7200_Interrupt_Status 07 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 0032 SAVE_GRAPH_DATA_TO_FILE 00 FLOW_MODE_SELECT 00 Y-SCALE_CENTER 0000 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 00000000000324B0 GRAPH_YMIN_DATA 000000000003102E TDC1000-HV_DRV_EN1 01 TDC1000-HV_DRV_EN2 00 HV_DRV_EN1_Period 003C HV_DRV_EN2_Period 02BC ENABLE_POWER_CYCLE 00 CLK_FREQ_(1-16MHz) 2.000000 CLK_SOURCE_SEL 02 CPU_CLK_FREQ 0C CPU_CLK_EN 01 TDC1000-HV_BST_PWR_EN 01 HV_BST_PWR_EN_Period 0000 FWD2REV_FLOW_DELAY 0000 TDC1000-IMPE_MATCH_EN 00 ENABLE_UART_STREAM 00 ENABLE_MSP430TIMER_TDC 00
TDC1000_Config0 0A TDC1000_Config1 41 TDC1000_Config2 00 TDC1000_Config3 04 TDC1000_Config4 5F TDC1000_TOF-1 60 TDC1000_TOF-0 1E TDC1000_Error_Flags 00 TDC1000_Timeout 23 TDC1000_Clock_Rate 00 TDC1000_Conts_Trigger 00 TDC7200_Config1 02 TDC7200_Config2 40 TDC7200_Interrupt_Status 07 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 0032 SAVE_GRAPH_DATA_TO_FILE 00 FLOW_MODE_SELECT 00 Y-SCALE_CENTER 0000 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 00000000000324B0 GRAPH_YMIN_DATA 000000000003102E TDC1000-HV_DRV_EN1 01 TDC1000-HV_DRV_EN2 00 HV_DRV_EN1_Period 0028 HV_DRV_EN2_Period 02BC ENABLE_POWER_CYCLE 00 CLK_FREQ_(1-16MHz) 2.000000 CLK_SOURCE_SEL 02 CPU_CLK_FREQ 0C CPU_CLK_EN 01 TDC1000-HV_BST_PWR_EN 01 HV_BST_PWR_EN_Period 0000 FWD2REV_FLOW_DELAY 0000 TDC1000-IMPE_MATCH_EN 00 ENABLE_UART_STREAM 00 ENABLE_MSP430TIMER_TDC 00