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.

CCS/MSP430FR6043: Hilbert and ATOF calculation

Part Number: MSP430FR6043


Tool/software: Code Composer Studio

Hi!

I have some questions regarding Hilbert mode and ATOF calculation: 

1. When the Hilbert absTOF computation mode is used, is it applied after the interpolation of the ADC signal? 

2. How should I select the correct order(length) off the Hilbert coefficients? See image below for two different orders. 

3. Are the UPS/DNS values calculated using the continuous slope by the Hilbert transform, or is it finding peaks from the raw signal like in the Lobe-mode? See the image below, will it select a value from the red or blue circle(or other)? 

The image above shows the raw ADC signal(blue) with two different Hilbert transforms applied. Orange: filter order 12, green: filter order 30.

Thanks in advance

  • Hi Thibault,

    1. The Hilbert tranform is used to find start points

    2. The order of the Hilbert shall be chosen to generate a smooth envelope. If I recall right ours works finr up to an signal OSR of 4. For higher OSRs you have to change the order as well. The other side requirement is: "do it at lowest power"  therefore lower the order if possible.

    3. Using lobe allows e.g. startpoints only at samples that go above the threshold (red).

        A Hilbert transformed curve generates more point you can cross check with an "real valued compare" .

    Where is your graphics from? Are you working on some improovements ?  ...let me know...

    have a nice day

        Johann

  • Johann Zipperer said:

    Hi Thibault,

    1. The Hilbert tranform is used to find start points

    2. The order of the Hilbert shall be chosen to generate a smooth envelope. If I recall right ours works finr up to an signal OSR of 4. For higher OSRs you have to change the order as well. The other side requirement is: "do it at lowest power"  therefore lower the order if possible.

    3. Using lobe allows e.g. startpoints only at samples that go above the threshold (red).

        A Hilbert transformed curve generates more point you can cross check with an "real valued compare" .

    Where is your graphics from? Are you working on some improovements ?  ...let me know...

    have a nice day

        Johann

    Hi!

    1. Yes but is it applied on the raw ADC signal or the interpolated ADC signal? TI's paper explains that the ADC signal is interpolated so that real maximum values are found.

    2. Ok, what is signal OSR? As you can see in the image the low order(orange) was not as smooth as the higher(green) order was. How smooth should it be?

    I want to improve the starting value finding for the dTOF algorithm. I am using Matlab with saved ADC data and plotting the envelope of the signal using envelope(ADC_data, order, 'analytic'); 

    Then to export the coefficients for USSWLib config file I use h = [firpm(order-1, [0.1 0.9] , [1 1], 'hilbert') 0];. Is this the correct method?

    Thanks in advance

  • Hi again,

    1. depends on chosen algorithm on "lobe" it is the raw signal (maybe you can filter that one), on "hilbert" it is the interpoated one.

    2. right, wrong term, I meant the signal sampling rate  e.g. 1MHz Transducer 3.6Msmpls  = 3.6  and so...

    have a nice day

        Johann

  • Hi!

    1. Okay but what is the step-size of the data after the interpolation? Because that would make the order of the Hilbert higher if it creates more samples than the raw one, right?

    Thanks

  • Hi again,

    Could you provide me with a matlab script that generates the Hilbert Filter band pass coefficients? What bandwidth where you using? 

    Maybe the ADC filter should not be used in combination with the Hilbert Filter? 

    Thank you again

  • Hi again,

    well, I would love to, but I am only user of that software here in Europe. The finer details are coded by our SW specialists in US.

    Johann

**Attention** This is a public forum