Continue to Site

Welcome to our site!

Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

  • Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

Ultrasonic transducer time of flight

Status
Not open for further replies.

hash

New Member
Hello, I have a slight problem using an ultrasonic transducer. Specifically, in a circuit with two of those, one being the emmiter and one the receiver, the amount of time it takes between the initial 40khz pulse from the transmitter and some voltage being generated in the receiver is too great.

For example, when they're set at 30cm from one another, the delay should be around 800us. Instead, I see a delay of about 1ms, which is significant. And yes, I've compensated for the temperature difference and made a bunch of tests at different distances, the delta t is still too long.

Is this normal behaviour on these ultrasonic transducers? I have no datasheet for them and the only thing I can think right now which could be responsible for this behaviour is the inertia of the transducer. If so, I should be able to compensate for it, subtract a constant amount of time from the result each time a measurement is taken.

Any thoughts? :)
 
hi,
There are time delays in the reaction of the TX to transmit sound and delays in the RX.
These delays are usually constant and can be subtracted from the time as a constant.

Look at this data, may help with the project.:)
 

Attachments

  • ultrasonic_experiments.pdf
    727.2 KB · Views: 711
I cant claim much prior experience, but this sparked my curiosity ans a did a little test using a couple of 40khz transducers which I have had for a few years.

With the transducers face to face, there was a delay of 0.2ms between the excitation of the transmitter and seeing a response in the receiver, the rise time of the signal in the receiver was about 0.6ms.

With the transducers separated by 30cm, there was a delay of 1.1ms between the excitation of the transmitter and seeing a response in the receiver, as before the rise time of the signal in the receiver was about 0.6ms.

So, I guess that my results are similar to yours, as the transducers are quite narrow band (high Q), it is reasonable to expect a propagation delay through them.
As Eric said, you just have to know that it is there and subtact it from your real measurements.

JimB
 
@JimB - your results are nearly identical with mine, that's good :) I'll just subtract the difference in a known environment and it should be calibrated. The rise time should be no concern because I'll use a great deal of amplification in order to detect the very moment at which the receiver activates.

@eric - thanks, that pdf is useful, although they calibrate the sensor by taking a measurement at a known distance then extrapolating that value for all their measurements, not deriving the distance from theory. If all else fails I'll use the same method, seems simple enough.

By the way, I'm trying to build an ultrasonic wind speed meter, so the registered time of flight will be very important, a couple of microseconds could mean the difference between a gentle breeze and a hurricane :)
 
By the way, I'm trying to build an ultrasonic wind speed meter, so the registered time of flight will be very important, a couple of microseconds could mean the difference between a gentle breeze and a hurricane :)

hi,
Assuming velocity of sound in air is 330m/s and the ultrasound frequency is 40KHz, the wavelength is 8.25mm.!!!,, I make that about 25uSec.

I would say the chances of measuring the reflected time to within uSecs will not be feasible.

Lets know how it goes.:)
 
It is not clear whether you are using a µcontroller ...:
There was a similar problem topic someplace in a book .... Quintessential PIC Microcontroller ....author Katzen .... You have to actually go through the program line by line and add up the µSec for each command. ....
 
Last edited:
Yes, I'm using a PIC microcontroller for time measurement, with a 16 bit timer @ 16MHz (fosc/2), that'll give me about 62ns worth of resolution... in theory at least :)
 
I have a vague memory from distant experience that ultrasonic anemometers use doppler effect rather than time of flight measurements.

JimB
 
Flow rates can be determined by using either doppler effect or time of flight:
Ultrasonic Doppler and Time of Flight Flowmeters

The 'time of flight' solution shown your link is not subject to the same delay problems as explained in your original post.

Assuming the two transceivers have the same TX and RX delays these will cancel out.
The measurement is made from the difference in transit time of the two beams.
 
Last edited:
The link was just to show you can use time of flight to determine the speed of a fluid.
Yes, by switching the roles of the two transceivers you can overcome the delays and environment properties (such as temperature) assuming they remain constant throughout the measurements. I usually stick with something simple that works -- using a triangle configuration in which there's one transmitter and two receivers at 60 degrees from one another, I'm measuring the time of flight separately for each one and then deriving the speed and direction of the wind with some trigonometry. I'm compensating for the temperature changes in software since I already have a fairly accurate temperature sensor installed.
 
The link was just to show you can use time of flight to determine the speed of a fluid.
Yes, by switching the roles of the two transceivers you can overcome the delays and environment properties (such as temperature) assuming they remain constant throughout the measurements. I usually stick with something simple that works -- using a triangle configuration in which there's one transmitter and two receivers at 60 degrees from one another, I'm measuring the time of flight separately for each one and then deriving the speed and direction of the wind with some trigonometry. I'm compensating for the temperature changes in software since I already have a fairly accurate temperature sensor installed.

hi,
I am puzzled, if you were aware of the delay problem and that it would be cancelled in a dual system.
Also you already have working project.

What was the purpose of your original post.:confused:
 
Last edited:
I was only aware of environment-induced measurement errors (the air temperature) and didn't want to use a dual system since it would complicate things a bit.
But the time delays didn't make any sense to me, that's why I posted here, to find out if it was the normal behavior of the sensor or I was doing something wrong... Also the project isn't fully functional, I've only described what it will become :)

Slightly off-topic: What are 'NL' resistors on a schematic? I'm trying to read the microcontroller dev board schematic and they're pretty common, didn't find anything on Google...
 
I was only aware of environment-induced measurement errors (the air temperature) and didn't want to use a dual system since it would complicate things a bit.
But the time delays didn't make any sense to me, that's why I posted here, to find out if it was the normal behavior of the sensor or I was doing something wrong... Also the project isn't fully functional, I've only described what it will become :)

Slightly off-topic: What are 'NL' resistors on a schematic? I'm trying to read the microcontroller dev board schematic and they're pretty common, didn't find anything on Google...

hi,
Understood.:)
I'll check the context of NL.?


EDIT:
Here we go.
**broken link removed**
 
Last edited:
Hmm... I don't think it's that, it's like a value or something... Could it mean they're not present, like not connected? I see them in circuits that could have a dual purpose, but I don't have the board at hand to check. I'm attaching a couple of pictures from the datasheet.
 

Attachments

  • ex16_1.png
    ex16_1.png
    26.7 KB · Views: 353
  • ex16_2.png
    ex16_2.png
    11.1 KB · Views: 329
Hmm... I don't think it's that, it's like a value or something... Could it mean they're not present, like not connected? I see them in circuits that could have a dual purpose, but I don't have the board at hand to check. I'm attaching a couple of pictures from the datasheet.

hi,
Looking at the drawings you have posted, non inductive resistors would make some sense in those locations.

Ive never seen or used NL to indicate an optional resistor, ie: used or not
 
Well if those are non inductive resistors, what's their value? There's nothing in the datasheet to indicate what they are...

Edit:
I think I've discovered what they are. Could NL mean 'no load'? There are a bunch of expansion connectors tied with corresponding ports through 'no load' resistors, though I can't say I've seen so many resistors on the board itself...

Edit2:
I give up :) I've just seen a 'NL' capacitor, whatever that could mean...
Here's the link to the datasheet itself, the schematics are at the end"
https://www.electro-tech-online.com/custompdfs/2009/07/Explorer201620User20Guide2051589a.pdf
 

Attachments

  • Clipboard01.png
    Clipboard01.png
    13.6 KB · Views: 151
Last edited:
Well if those are non inductive resistors, what's their value? There's nothing in the datasheet to indicate what they are...

Edit:
I think I've discovered what they are. Could NL mean 'no load'? There are a bunch of expansion connectors tied with corresponding ports through 'no load' resistors, though I can't say I've seen so many resistors on the board itself...

Edit2:
I give up :) I've just seen a 'NL' capacitor, whatever that could mean...
Here's the link to the datasheet itself, the schematics are at the end"
https://www.electro-tech-online.com/custompdfs/2009/07/Explorer201620User20Guide2051589a-1.pdf

A resistor with '0' value is just a wire link.

Circuit boards often use links that are connected or not in order to select different options regarding the operation of the circuit.

Some board use 'jumpers' either wire links or mini-connectors.

EDIT:
I have looked all the way thru that Explorer 16 documentation and I cannot find any explanation for 'NL' .
Ive even been searching the microcip website,, no luck.

I would recommend that you email microchips technical help for an explanation. If you find out I would like to know.

The hardware documentation, IMHO for the Exp 16 is awful!!
 
Last edited:
Yes, the 0 ohm resistors are just connections, the 'NL' thing is what's confusing me. Anyway, I'll take a closer look at the board on monday when I get to college and I'll let you know what I find. Thank you again for your insight, it's been very helpful.
 
Today I've taken a closer look at the board. There are a lot of 3-pad parts. The first two pads are linked with a copper trace and correspond to the '0R' resistors and the middle and last pad are left unconnected and the markings are those of the 'NL' resistors. These seem to be 'optional' features that the user might want to change. Why 'NL'... possibly from 'no load', it's strange anyway :)
 
Status
Not open for further replies.

Latest threads

New Articles From Microcontroller Tips

Back
Top