MSP430UltrasonicLibrary
02_20_00_16
|
Contains USS SW Lib Algorithms User Configuration. More...
#include <ussSwLib.h>
Data Fields | |
uint16_t | absTOFInterval |
float | ADCAdditionalCaptureDelay |
float | dcOffset |
The constant value calibrated by Zero flow drift (sec) More... | |
float | ratioOfTrackLobeToPeak |
The ratio of side lobe closest to threshold and peak lobe amplitudes. More... | |
uint8_t | numPulsesBeforeThreshold |
The number of pulses/cycles before selected threshold value. More... | |
bool | enableWindowing |
The flag to enable or disable windowing. More... | |
float | signalValueThresholdCheck |
uint8_t | numCycleSearchCorrPeak |
uint16_t | searchLobeSampleSteps |
float | maxRatioPeak2PeakVariation |
uint8_t | winStartIndexBackOffNumCycles |
uint8_t | winTrapzRampOverNumCycles |
The number of cycles over which the trapezoid window should ramp. More... | |
float | corrValueThresholdCheckFactor |
int16_t | calibratedDCOffsetUPS |
int16_t | calibratedDCOffsetDNS |
bool | isInitAlgorithms |
This flag is used to indicate if the algorithms have been initialized. More... | |
USS_dtof_volume_flow_calculation_interval | dtofVolInterval |
int16_t * | pLEAMemBuffer1 |
int32_t * | pNvMemBuffer |
USS_highFlow_option | highFlowOption |
float | cycleSlipThreshold |
int32_t | thresholdX1X3 |
_iq27 | clockRelativeError |
uint32_t | winNumCycles |
bool | enableFilter |
uint16_t | filterLength |
This parameter is used to specify the filter length. More... | |
int16_t * | filterCoeffs |
USS_Alg_AbsToF_Calculation_Option | absToFOption |
User selection for Absolute Time of Flight calculation option. More... | |
int16_t * | pLEAMemBuffer2 |
int16_t * | hilbertTransformCoeffs |
Pointer to hilbert coefficients, coefficients must 32-bit aligned. More... | |
uint16_t | hilbertTransformCoeffsLength |
Length of hilbert coefficients. More... | |
int16_t | negSearchRange |
Negative search range for tracking envelope maximum. More... | |
int16_t | posSearchRange |
Positive search range for tracking envelope maximum. More... | |
float | crossThreshold |
Threshold for tracking crossing point of envelope relative to envelope maximum. More... | |
int16_t * | pBinaryPattern |
uint16_t | binaryPatternLength |
uint16_t | maxBinaryPatternLenght |
int16_t * | pAdditionalBinaryPattern |
uint16_t | additionalPatternLength |
Length of additional binary pattern the length. More... | |
uint16_t | maxAdditionalBinaryPatternLength |
USS_Alg_dToF_Calculation_Option | dtoFCalcOption |
Specifies Delta ToF Calculation option. More... | |
USS_Alg_volume_flow_Calculation_Option | volumeCalOption |
Specifies Volume Flow Rate Calculation option. More... | |
int16_t | maxSampleShift |
const int16_t(* | pInterpCorrectionTablePtr )[2] |
int16_t | interpCorrectionTableLenght |
USS_Algorithms_Meter_Constant_Calib * | pMeterConfiguration |
Pointer to USS_Meter_Configuration array. More... | |
uint8_t | numOfMeterCalibrationRanges |
Contains USS SW Lib Algorithms User Configuration.
uint16_t _USS_Algorithms_User_Configuration_::absTOFInterval |
This parameter determines the interval to calculate absolute Time of Flight. The interval at which Absolute Time of Flight is calculated has a dependency with dtofVolInterval configuration. If dtofVolInterval == USS_dtof_volume_flow_calculation_interval_1 and absTOFInterval == 1 absolute Time of Flight everytime USS_runAlgorithmsFixedPoint or USS_runAlgorithms API are called. If dtofVolInterval == USS_dtof_volume_flow_calculation_interval_2 and absTOFInterval == 10 absolute Time of Flight is calculated the 20th time USS_runAlgorithmsFixedPoint and USS_runAlgorithms are invoked. The last calculation of Absolute time of flight is return until the next update occurs. Increasing the value for "absTOFIteration" reduces the average consumption of the application. (valid range 1-65535)
float _USS_Algorithms_User_Configuration_::ADCAdditionalCaptureDelay |
The additional time it takes during firing and capturing the data, which is not accounted for anywhere else.
float _USS_Algorithms_User_Configuration_::dcOffset |
The constant value calibrated by Zero flow drift (sec)
float _USS_Algorithms_User_Configuration_::ratioOfTrackLobeToPeak |
The ratio of side lobe closest to threshold and peak lobe amplitudes.
uint8_t _USS_Algorithms_User_Configuration_::numPulsesBeforeThreshold |
The number of pulses/cycles before selected threshold value.
bool _USS_Algorithms_User_Configuration_::enableWindowing |
The flag to enable or disable windowing.
float _USS_Algorithms_User_Configuration_::signalValueThresholdCheck |
The signal value check parameter which has to be crossed for a valid signal
uint8_t _USS_Algorithms_User_Configuration_::numCycleSearchCorrPeak |
The number of cycles to search for correlation peak before setting the flag Flag_corrOverrun
uint16_t _USS_Algorithms_User_Configuration_::searchLobeSampleSteps |
The number of samples to increment/decrement while searching/tracking the side lobe
float _USS_Algorithms_User_Configuration_::maxRatioPeak2PeakVariation |
The maximum ratio of allowed peak to peak variation from one measurement to another before setting flag for search.
uint8_t _USS_Algorithms_User_Configuration_::winStartIndexBackOffNumCycles |
The number of cycles to back off from start of received pulse (derived from absTOF)
uint8_t _USS_Algorithms_User_Configuration_::winTrapzRampOverNumCycles |
The number of cycles over which the trapezoid window should ramp.
float _USS_Algorithms_User_Configuration_::corrValueThresholdCheckFactor |
The factor of maximum lobe energy which has to be crossed for a valid correlation value
int16_t _USS_Algorithms_User_Configuration_::calibratedDCOffsetUPS |
This is a constant value which is subtracted to UPS captures before running the Delta ToF algorithms. This parameter can be obtained using USS_estimateDCoffset API
Referenced by USS_estimateDCoffset().
int16_t _USS_Algorithms_User_Configuration_::calibratedDCOffsetDNS |
This is a constant value which is subtracted to DNS captures before running the Delta ToF algorithms. This parameter can be obtained using USS_estimateDCoffset API
Referenced by USS_estimateDCoffset().
bool _USS_Algorithms_User_Configuration_::isInitAlgorithms |
This flag is used to indicate if the algorithms have been initialized.
USS_dtof_volume_flow_calculation_interval _USS_Algorithms_User_Configuration_::dtofVolInterval |
This configuration specifies the interval at which delta ToF and volume flow are calculated. The last calculated DToF and volume flow will be return between intervals.
int16_t* _USS_Algorithms_User_Configuration_::pLEAMemBuffer1 |
pointer to LEA RAM memory reserved to place windowing coefficients. memory minimum size (sampleSize*numberOfAcquisitions + filterLength * 2) bytes
int32_t* _USS_Algorithms_User_Configuration_::pNvMemBuffer |
pointer to non volatile memory reserved for algorithm computations. memory minimum size (sampleSize*2) bytes
USS_highFlow_option _USS_Algorithms_User_Configuration_::highFlowOption |
Setting this configuration to true will enable highflow rate (> 5 gpm) operation. NOTE: enabling this option will increase power consumption
float _USS_Algorithms_User_Configuration_::cycleSlipThreshold |
This setting is only need if USS_highFlow_option_version1 is selected typical values are 1.1 and 1.2
int32_t _USS_Algorithms_User_Configuration_::thresholdX1X3 |
_iq27 _USS_Algorithms_User_Configuration_::clockRelativeError |
This setting is used to correct AbsToF calculation clockRelativeError = (clk_freq_measured-clock_freq_nominal)/clock_freq_nominal Users can take advantage of USS_verifyHSPLLFrequency API. Which will return the the expected timer counts and actual measured timer count For more details about USS_verifyHSPLLFrequency implementation please refer the Library API guide. Valid range is [_IQ27(-0.1),_IQ27(0.1)] If USS_verifyHSPLLFrequency API is used then the error can be calculated as follows: gUssSWConfig.algorithmsConfig->clockRelativeError = _IQ27div((int32_t)(hspll_results.actualTestCount - hspll_results.expectedResult),hspll_results.expectedResult);
uint32_t _USS_Algorithms_User_Configuration_::winNumCycles |
This parameter is used to control the windowLength when enableWindowing is set to true. winLength = (2* winRampLength) + (numSamplesPerCycle *winNumCycles) Where, winRampLength = numSamplesPerCycle * winTrapzRampOverNumCycles; numSamplesPerCycle = sampleFreq/transducerFreq;
bool _USS_Algorithms_User_Configuration_::enableFilter |
This parameter is used to enabling filtering of the signal before running AbsToF, DeltaToF and Volume algorithms
uint16_t _USS_Algorithms_User_Configuration_::filterLength |
This parameter is used to specify the filter length.
Referenced by commonSDHSRestoreSDHSDTCA().
int16_t* _USS_Algorithms_User_Configuration_::filterCoeffs |
This parameter is used to provide the memory location were the filter coefficients will be loaded from
USS_Alg_AbsToF_Calculation_Option _USS_Algorithms_User_Configuration_::absToFOption |
User selection for Absolute Time of Flight calculation option.
int16_t* _USS_Algorithms_User_Configuration_::pLEAMemBuffer2 |
pointer to LEA RAM memory reserved temporary LEA operations. This section of memory can be reused in the application for temporary operations. The content of in this memory is not preserved during when USS_run* functions are called.
int16_t* _USS_Algorithms_User_Configuration_::hilbertTransformCoeffs |
Pointer to hilbert coefficients, coefficients must 32-bit aligned.
uint16_t _USS_Algorithms_User_Configuration_::hilbertTransformCoeffsLength |
Length of hilbert coefficients.
int16_t _USS_Algorithms_User_Configuration_::negSearchRange |
Negative search range for tracking envelope maximum.
int16_t _USS_Algorithms_User_Configuration_::posSearchRange |
Positive search range for tracking envelope maximum.
float _USS_Algorithms_User_Configuration_::crossThreshold |
Threshold for tracking crossing point of envelope relative to envelope maximum.
int16_t* _USS_Algorithms_User_Configuration_::pBinaryPattern |
Pointer to array containing binary reference pattern used by USS_Alg_AbsToF_Calculation_Option_lobeWide and USS_Alg_AbsToF_Calculation_Option_hilbertWide The library can use the binary pattern calculated by USS_generateMonoDualToneBinaryPattern and USS_generateMultiToneBinaryPattern APIs or user can passed a predefined binary pattern.
uint16_t _USS_Algorithms_User_Configuration_::binaryPatternLength |
Length of binary pattern the length is automatically calculated by USS_generateMonoDualToneBinaryPattern and USS_generateMultiToneBinaryPattern APIS if using predefined binary patterns user must specify the length of the pattern.
uint16_t _USS_Algorithms_User_Configuration_::maxBinaryPatternLenght |
This value is used by USS_generateMultiToneBinaryPattern and USS_generateMonoDualToneBinaryPattern to avoid overflowing the binary pattern array
int16_t* _USS_Algorithms_User_Configuration_::pAdditionalBinaryPattern |
Pointer to additional binary pattern. This pattern will be append to the binary pattern calculated by USS_generateMonoDualToneBinaryPattern USS_generateMultiToneBinaryPattern
uint16_t _USS_Algorithms_User_Configuration_::additionalPatternLength |
Length of additional binary pattern the length.
uint16_t _USS_Algorithms_User_Configuration_::maxAdditionalBinaryPatternLength |
This value is used by USS_generateMultiToneBinaryPattern and USS_generateMonoDualToneBinaryPattern to avoid overflowing the binary pattern array
USS_Alg_dToF_Calculation_Option _USS_Algorithms_User_Configuration_::dtoFCalcOption |
Specifies Delta ToF Calculation option.
USS_Alg_volume_flow_Calculation_Option _USS_Algorithms_User_Configuration_::volumeCalOption |
Specifies Volume Flow Rate Calculation option.
int16_t _USS_Algorithms_User_Configuration_::maxSampleShift |
Maximum shift in samples for calculating deltaTOF (setting for high flow) Parameter specifying maximum shift in samples for deltaTOF calculation, e.g. setting of 8 with 4 samples per cycle supports high flow +/- 2 cycles.
const int16_t(* _USS_Algorithms_User_Configuration_::pInterpCorrectionTablePtr)[2] |
Pointer to look-up table (LUT) used for interpolation correction. A null pointer will disable using offset correction (less accuracy for absTOF).
int16_t _USS_Algorithms_User_Configuration_::interpCorrectionTableLenght |
Length of look-up table (LUT) used for interpolation correction. Must be a power of two.
USS_Algorithms_Meter_Constant_Calib* _USS_Algorithms_User_Configuration_::pMeterConfiguration |
Pointer to USS_Meter_Configuration array.
uint8_t _USS_Algorithms_User_Configuration_::numOfMeterCalibrationRanges |
Number of Meter Calibration Ranges. Minimum numOfMeterCalibrationRanges = 0; Maximum numOfMeterCalibrationRanges = maxNumOfMeterCalibrationRanges; Setting a value of 0 will disable meter constant calibration feature.