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.

MSP430FR6047: Which part should I check for stable base signal ?

Part Number: MSP430FR6047
Other Parts Discussed in Thread: EVM430-FR6047, THS3095

Hi, I am testing my own board using MSP430FR6047 with own transducer. For 150mm Flowtube, I put the additional circuit refer from TIDA01486.

Of course, I followed very faithfully EVM430-FR6047 and TIDA01486 document. (+-15V, etc)

I want a more stable base signal(please see red arrow).  

I think, Sometimes that signal change more big and affect to first wave follows, So the transit time change 1us. ex) 100us -> 101us  

I checked circuit, I think it is about 500khz, it appear to the capacitor of the end of THS3095 circuit between FR6047.

Which part should I check? 

Following is the parameter. 

Thanks for reply.

BestRegard Jack Son

  • Hi Jack Son,

    What frequency transducers are you using? Have you conducted a frequency sweep and set your F1 to the peak value? 

    Also, is that noise actually affecting your measurements? If you've adjusted your frequency and checked all of the other components, then the noise may be unavoidable. In that case, you can adjust your envelope crossing threshold higher so that the device doesn't mistake that noise for the start of the signal.

  • Hi Dylan OBrien. Thanks for reply.

    I am using 1Mhz target frequency for transducer. Yes, I checked a peak value of transducer via frequency sweep. they displayed a peak at 985~1015KHz.

    (I made 10pcs transducers)

    But it didn't change the situation. Yes, I tried  to adjust signal using the threshold and the search range. But I can't find suitable values. 

    seems like, if I adjust catch first peak, sometimes catch second peak. if I adjust catch second peak, sometimes catch third peak. 


    Jack Son

  • Can you post an image of your waveforms tab? I am surprised that the amount of noise your are seeing is causing issues in your measurements. In the picture you provided the noise level looks rather low and isn’t passing the threshold you set.

  • Sometimes the noise(red arrow) is move to right side, so it affect to the '1'wave or '2'wave become smaller.

    Assuming that the threshold is set "catch '1'wave", the algorithm miss '1'wave and catch '2'wave. After I did off/on FR6047, it returned "catch '1'wave".

    On the other side, How can I get the Tup/Tdn that matches dT? I mean the formula is Tup-Tdn = dT. but now in my code they are different value.  

    or, Can I change the a/d value of the receive signal before the FR6047 calculate Tup/Tdn? 

    Thank you, Dylan OBrien

  • Jack,

    The goal of adjusting the envelope threshold is not to catch '1'wave vs '2'wave, it is to make sure that the device does not interpret noise as the start of the received signal. If you are experiencing bad measurements due to noise, you can compensate by increasing the envelope crossing threshold to ignore some of the noise. So missing '1'wave vs '2'wave is not an issue.

    The noise in your images looks rather small. Are you experiencing any inaccurate readings by the device? Or are you just trying to reduce the noise in general? Considering that your software settings look good, I think you should look at your test environment, and perhaps the other connected devices, to try to reduce noise. However you can only reduce noise to such a degree, and considering the noise is already small, this may not be worth working on.

    As for the second part of your question, I am confused about what you mean. Are you asking how to find the absolute time of flight that the upstream and downstream signals take? For this, you can see the blue and red lines in the waveforms tab in the absolute ToF window. Sorry if that does not answer your question, if I have misinterpreted it please elaborate so I may address it properly.

  • Dylan, I appriciate for your reply.

    The picture above is a part of the received data from FR6047 in the pipeline flow.(interval:1sec, Unit:us)

    No1 is the correct data. others not.

    Tups = algResFixed.iq40TotalTOF_UPS,

    Tdns = algResFixed.iq40TotalTOF_DNS,

    dT = algResFixed.iq44DeltaTOF

    If I remove the THS3095-circuit, the noise of baseline becomes very small. 

    So I asked "which part of should I check..."

    Second part Question :

    I hope to observe [wave, tups/tdns, dT]  same time matched data.

    In the picture above, the time of No3 => wave, tups,tdns,dT.

    But now, Tups-Tdns is not equal to dT. How can I get from FR6047?

    or How can I extract the dT from Tups/Tdns?

  • Jack, 

    thank you for providing the data and explaining further. I agree with your sentiment that the THS device seems to be adding to the noise. However I'd like to reiterate that this noise seems insignificant in my opinion, and unless your final volume flow rate value is wrong, you may want to leave this alone. Of course, I do not know your project as well as you and in the end it is up to you to determine what is necessary for your design.

    As for the second part of your question, the dToF calculation is not necessarily just calculated using the DNS ToF - UPS ToF. Please see the "ADC Based Correlation Approach" section from the MSP430 USS Academy Page (I will also paste below):

    For determination of the delta Time of Flight, the results from the absolute time of flight calculations are used to predict the region over which the peak of the correlation between the upstream and downstream ADC captures should be determined. The upstream and downstream ADC captures are then correlated over this region with subsequent interpolation to determine the delta Time of Flight. Because this correlation acts like a low pass filter, the standard deviation in measurements is much smaller in this approach than can be found with other timer based approaches like TDC.

    I believe this explains why the dToF that you are calculating is slightly different from the value given by the device. For you to calculate the same value on your own would be a lengthy process. I am unable to provide further details on the algorithm we use. 

**Attention** This is a public forum