UltraSonic wind speed mesurment with AVR

Go To Last Post
167 posts / 0 new

Pages

Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hi,

My project is to mesure wind speed with a AVR and ultrasonic
tranducer, at first try with open frame tranducer it was working, but
because this device will be outside I can't use those tranducer, so
I had buy closed frame tranducer and replace the open frame one with
the closed frame at this stage nothing was working because the output
is too low, so I make lot's of change to power those tranducer at 40khz
at 140Vp-p, after that my reception is good. but there is no longer
difference between no wind and lots of wind. There is a big difference
in phase between the TX and RX with wind or not but I don't now where
to look.

I had put on my web server some files to let you see what I'm talking about

Schematic : www.microsyl.com/WindSonic.pdf
Scope wave form www.microsyl.com/IMG_6380.jpg
Hardware : www.microsyl.com/IMG_6381.jpg
Tranducer : www.microsyl.com/IMG_6382.jpg

Thanks for any of your comments

Yours truly,
Sylvain Bissonnette
www.microsyl.com

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

You may be getting most of your accoustic coupling through the mounting, not the air! If you put some sound absorbing material (even your hand) between the transmitter and the receiver, does the receive signal amplitude drop?

Are the axes of the transducers aligned accurately? Beamwidth in many transducers is very narrow in air.

Jim

 

Until Black Lives Matter, we do not have "All Lives Matter"!

 

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Did you look at the Circuit Cellar article from May 2001 to see how that guy did it?

Smiley

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Jim:
If I put my hand between the Tx and Rx the signal is complitly cut nothing pass

Smiley:
Yes I had check, I had pass like 4 day's doing research on google, from ultrasonic distance mesurment to sonic anemometer, checking all the schematic that I can find. I had try lots of circuit at this time the one I had build is a mix of many I had found and try. The signal quality is good but like I had say no difference in wind or not.

Yours truly,
Sylvain Bissonnette
www.microsyl.com

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Are you looking at the envelope or at the phase difference of the "carrier" inside the envelope? In other words, envelope transit time or carrier phase difference? What is the path length? When you tested, was the wind parallel to the sound path or at an angle?

When you say:

Quote:
There is a big difference in phase between the TX and RX with wind or not but I don't now where to look.

Isn't THAT the informtion you are looking for?

Jim

 

Until Black Lives Matter, we do not have "All Lives Matter"!

 

 

Last Edited: Mon. Mar 20, 2006 - 11:49 PM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Sylvain,

I really wish I could help since I think an inexpensive solid state anemometer would be quite a contribution to us hacker types, but my analog isn't all that good. I hope to hear good news on this from you since I'd like to build one.

Good Luck,
Smiley

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Seems like you need to measure the freq at the rx and see how much it is off from the tx. The sounds should move at about 1120 ft/sec, plus the wind speed in ft/sec. This should pull the freq at the rx by some small amt. Do this in both axes and the vector sum of the two should give a direction?

Imagecraft compiler user

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

That is exactly how "they" do it.

There are commerical devices built very much like this. I've seen them on ships, where you have to subtract out the apparent wind due to ship motion, including roll. If the transducers are bidirectional, then you can switch the receiving one to transmit and visa versa, and get some additional info, IIRC. For highest accuracy, you need to compensate for temperature and humidity.

Jim

 

Until Black Lives Matter, we do not have "All Lives Matter"!

 

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Jim:
I had look to both the envelope who the time from the Tx and Rx don't move with wind or not
and inside the envlope the difference of phase between Tx and Rx is very different with wind or not. You can check those two picture of my scope with wind and not

www.microsyl.com/nowind.jpg
www.microsyl.com/wind.jpg
My wind is a small PC powersupply fan

In my project I will have one Tx and Rx south & north, and another one east and west the Tx will not be switch to be a Rx, I will need the air temperature to make my calculation and humidity. I use a DS18S20 for the temperature and a HIH3610 for the humidity. I can also use a SHT75 who is a direct digital temp/humidity sensor.

Smiley:
I had a analog one who make the job but it's too simple I must give me more chalange
but it's the 3rd time I restart this project and I never found the good solution,....

Bob:
I already have all my math formula to make the good speed mesurment and direction they are working but it's my hardware who fail. If I only check the phase difference I will be able
to mesure speed from 0km/h to about 10km/h more than that the phase shift more dans 360degree.

Yours truly,
Sylvain Bissonnette
www.microsyl.com

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I forgot my distance between my Tx and Rx is 20cm, but if I try at 10cm or 5cm the Rx envlope is more near from the Tx pulse but I can see any difference in wind or not and for the inside envlope 40khz phase change with wind or not

Yours truly,
Sylvain Bissonnette
www.microsyl.com

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

for Smiley

If you want to check a look of what my meteo station look like check those link
www.microsyl.com/station.JPG
www.microsyl.com/humtempsensor.jpg
www.microsyl.com/lightsensor.jpg
www.microsyl.com/inside.jpg

Sylvain

Yours truly,
Sylvain Bissonnette
www.microsyl.com

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I think your wind velocity is too low to see gross envelope delay.

Lets see, at 40KHz, one cycle is 25us. I doubt that you can measure envelope delay within 25us. This is based on the difficulty of measuring the envelope rather than processor speed. Maybe you can. You only have to get it to the nearest cycle, then interpolate by looking at the phase difference (if you need resolution better than 10km/h).

Right now, I suspect that your "wind" is less than 10km/hr.Further, your "wind" may change enough along the sound path that the MEAN speed is even less. Plus, vortices may spoil things (add noise).

Your oscilloscope picture does not have enough detail to tell what is really happening. If you had one, dual trace, showing the two signals being used for phase comparison, that would help.

Best wishes,
Jim

 

Until Black Lives Matter, we do not have "All Lives Matter"!

 

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Sylvain, very interesting project, I don't have anything constructive to add but you might be interested to know that Environment Canada is currently developing a similar product for use at airports. It would replace their decades old rotating cup anemometer which have accuracy problems during certain types of weather especially freezing precipition, I know of at least one airplane crash where investigated as a possible contributing factor to the crash. AFAIK, they are in the early stages of field trials.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Jim:
I had try also with a hair blower, I don't know what is the air speed but I'm shure that
it's more than 10km/h, and the envlope don't move. with the open frame ultrasonic
tranducer that was working, the problem is there since I had change the tranducer.
maybe because the closed tranducer is many time harder to respond to the incomming
signal. Don't forget that with open one I had use 40khz at 12V and I need 140V for the
closed one.

I don't realy understand what scope wave form you want me to post?

Elammers:
At this time if Environment Canada use mine they will have many plane who will crash!

Yours truly,
Sylvain Bissonnette
www.microsyl.com

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hi Sylvain Bissonnette

I think about youre problem is you used too much ultrasnic power
for your wind speed detector.
Because if you want to detect wind speed by ultrasonic
then you able to detect from small power ultrasonic.
and I think you have to 2 pass of wind speed detector system.
1st is you need a direct pass for non wind pass by like a covered air pipe.
2nd is already assembled your an ultrasnic wind speed detector.
Last is you need a phase shift detection software or hardware
from 2 different signals of ultrasonic recieve sensors
from same transmitting signal by dual ultrasonic trasducers.
You can be find few shifted phase signal from different passing of air wind detect system.
This is an only my think after read your problem.
Thank you and see you again !!!

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Just an idea.
Can you ping the transmitting transducer & see what you recieve in the other.
Should be able to see the time delay is working correctly over that distant.

Ken

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

When I develped our Ultrasonic Level Control, I begin with open frame transucers, but then I had to switch to closed frame in order to have an IP66. I tested many of them, and usually the sensitivity drops too much. After many different transducers tested (about 15 different model pairs, although I will use only the transmitter as transducer), only one gives me good results: Senscomp 40KT18. It was the most sensitive in the closed class, and it was about 3db (half sensitivity) less than the worse open frame.

I also had experienced some other problems: depending how you hold it, many vibration, self oscilation and other mecanical issues appear. With the other closed frame, simply you can't hold them by the capsule, only the pins can support them, otherwise the capsuls wouldn't transmit nor receive anything. With this one, you should hold it as close to the plane front end as possible, (or only by the pins) otherwise some other harmonic frequencies will appear.

Also be aware about the narrow passband they have. A high increase in the air speed will move received frequency out of the best sensitivity point, so amplitude can drop too much. Probably will be easy to shift frequency in the emiter in order to mantain the received frequency at it's nominal one.

Guillem.

PS: be aware if you use 40KT18, since square wave is not welcolmed.

Guillem.
"Common sense is the least common of the senses" Anonymous.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hi

@bob:

Quote:
Seems like you need to measure the freq at the rx and see how much it is off from the tx.

Hi Bob, it´s not that often, but here you are wrong.
because you have constsnt distsnce you allways (1) get at Rx the same frequency as Tx. The doppler-effect only takes place when the distance is changing.

You have to measure the delta time from Rx to Tx.

With no wind you only have the sonic speed of the air. with wind you can have sonic speed of the air +/- the wind speed (mind the direction)

Anemometers do a a double way measurement. The excange Tx and Rx to compensate for change in sonic speed caused by temperture, humidity...

I recommend using a DFT to get a exact phase information. ie delta-t information.

It´s not that difficult in software.

(1) only when the speed CHANGEs - you could integreate this information to get speed info, but i doubt it works very precise.

My suggestions on how to buid an anemomenter:
distance you say: 20 cm
frequency 40kHz.

quick calculation.
the delay through 20cm air is about (300m/s) 667us.
40kHz means 25us for one period.

phase shift of 360 degree is when you add(subtract) 667us - 25us = 642us
calculating back: v = s/t = 0.2m/642us = 311.5m/s.
speed difference is 311.5m/s - 300m/s = 11.5 m/s = 41.4 km/h

so you can count how many full periods are too late or to early.
this you can multiply with 41.4 km/h or 11.5m/s
(this is not exact, becaue it is non linear)
and then you cann add your phase information.
360 degree phase shift make 11.5m/s.

if you have 50km/h you get one complet period and 50-41.4 = 8.6 (km/h)
8.6/41.4 * 360 = 74.8 degree phase shift.

I would use packets of 10..100 periods of 40kHz sine to tx.
sample the input with about 150ks/s.
count the delay
run a DFT to get phase shift information.
and calculate the extra delay with the phase information
then you have the delta -t in one direction.
now you have a very precise t
calculate V(forward) with v= s/t
(where V = sonic speed + wind speed; s = distance)

exchange Rx and Tx and do the same
and calcualte allt he same as before:V (backward)
where now V = sonic speed - wind speed; mind the minus!

subtract V(forward) - V(backward) and get 2 x wind speed
(here you compensate for temperature and humidity...Yes, you even can calculate the equivalent temperature)

devide the reuslt by two to get the actual wind speed

Klaus
********************************
Look at: www.megausb.de (German)
********************************

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I think that Bob is right. The doppler-effect takes place when environment (wind) is moving.
Alexander.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

The general formula of the Doppler effect, takes into account the relative speed of the emitter and the receiver respect to the media. When you have a fixed anemometer, the speed of the transmitter and the receiver is the same, and is the wind speed. This generates a frequency shift. No matter if is the emitter and receiver who are moving in a quiet media, or is the media that is moving with fixed sensors, only the relation between them.

Guillem.

Guillem.
"Common sense is the least common of the senses" Anonymous.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hi

@guillem:

Quote:
emitter and the receiver respect to the media

The doppler effect also takes place with light. What medium do you have then?
Or with electromagnetic waves (radar)...

You can have a doppler effect when a car moves to/from you, then the reciever(you) and the trensimtter(car) have different speed.
Or you have a radar doppler, then the reiceiver and the transmitter is about at the same place, but you have a moving reflector, so the ray has differnet length to go.
Differnt length means that the distance (sender-reflector-reciever) changes.

Another example: Train. A train independent of how many wagons it has and if it acclerates or brakes: allways the first wagaon has the same speed as the last wagon. And the number of wagons is constant also.

Try to imagine: Sending out 10 periods of a certain frequency takes a certain time. receiving it with another frequency means the time is not constant.
(Not to be doubted: sending out 10 periods means receiving 10 periods - here is the analogy to the train: the number of wagons is constant)
frequency is periods/second.
So when the wind come the same direction from transmitter to reciever - what would you expect: The reciever sees higher or lower frequency?
I guess you expect higher frequency.
If so, then the reiceiver sees more periods in the same time as the transmitter sends it. The periods would "overtake" themselves. And if you do the test long enough then the reiceiver hears the period BEFORE the transmitter sends is out - IMPOSSIBLE.

Sylvain´s example: 0.2m, 300m/s, 40kHz.
One period = 1/40kHz = 25us
0.2m/300m/s = 667us.
667/25= less than 27 periodes on the way - in the air
;
what frequency do you expect if the wind goes with 30m/s exactely in the same direction (transimtter--> receiver)?
300m/s + 30 m/s = 330m/s = 110% --> 44kHz??

listening 100ms means you see 4400 periods.
in the same time the transmitter sends out only 4000 periods.
Where do the 400 periods come from?
In the air are only 27 periods.
That would mean the receiver hears 400-27 = 673 periods BEFORE the transmitter sends it out.

To be honest: I don´t know exactely the formula of the doppler effect, but if sbd. has a link to it - it would be fine.

I stay with my opinion:
There is only a PHASE shift. That means tha there are not allways the same number of periods in the air. With still air there are 26.7 periods.
* with 30m/s (in direction Tx->Rx): (330m/s) there are 24.2 periods on the air:
--> phase shift of 2.5 periods means 900 degrees phase shift.

Klaus
********************************
Look at: www.megausb.de (German)
********************************

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Guten Tag!
I have link: http://www.hexamite.com/hetheory...
Alexander

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Well, there is another link that corroborates MegaUSBfreak for Ve=Vr. http://en.wikipedia.org/wiki/Dop...

Another question: with quadrature (something like X-Y) ultrasonic anemometers, when there is some wind in one axis, are you shure that the other axis will measure exactly 0 m/s of wind speed?

Guillem.

Guillem.
"Common sense is the least common of the senses" Anonymous.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Guillem Planisi:
All that you wrote is exact, If the tranducer is hold directly in the pipe it's don't work. I had thing to old the tranducer with silicone between the pipe and the tranducer. With the 40KT18 tranducer you was able to power it at 12V and have a good reception? if yes that could work for me! what was the application you have done with ultrasonic tranducer?

When I had used the open frame tranducer I was able to mesure time N-S, S-N, E-O, O,E and the speed mesurment was incredibly exact, and with a simple formula I was able to give the exact wind direction.

MegaUSBFreak:
One problem is that if I send 10 pulse of 40khz I received something like 400pulse on the receiver due to the mecanical resonance of the transmitter and receiver. With only the calculation of the phase shift I can't mesure wind upto 100km/h. The only way I see is to mesure the time between the Tx and RX but with my sensor it's look imposible to be done,...

Is there other way to mesure wind speed other than cups and ultrasound?

Thanks for all who help me!

Yours truly,
Sylvain Bissonnette
www.microsyl.com

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Yes, I powered it at about 14V, but be aware about square wave (in general) since transducers act as capacitors and the current peak is quite high if you have fast rising/falling edges. It's easy to control with a simple series resistance about 100ohms.

I had done a 'range finder' used to control level inside a tank. IP66 and up to more than 10m. Death zone more than 50cm (but this depends on power emited). I hold it at about 2 mm from the flat emitting side with a toroidal NBR joint that fits it by pressure. If I hold it at lets say 3mm then the ringing (the mecanical oscilation that it does) hase a longer decay, so I should increase the 'dead band' to more than 65 cm.

For your application, better you power it at 5V and use short pulse trains, let's say 5 pulses. Probably it will be more than enough if you use the emitter/receiver pair. If you plan to use the (really good) aproach that MegaUSBfreak say using transducers as emiters and receivers, then better you use the transmitter at about 41.6KHz, that is the maximum sensitivity in reception.

Guillem.

Guillem.
"Common sense is the least common of the senses" Anonymous.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hi Guillem,

Thanks for all the info you give me, I will first order your tranceiver and my old circuit that was working with open frame tranducer may work with the closed one... In my past design because I switch Tx and Rx I don't have to worry about air temp and humidity, and I was only sending 3 pulse of 40khz. Your 100ohms resistor is a very good idea thanks.

I will keep the groupe inform about my next result.

any other idea is welcome that will take a good time before I received the new sensor.

Yours truly,
Sylvain Bissonnette
www.microsyl.com

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

MegaUSBFreak:

If I understand what you wrote, is to send X pulse in 100ms and check how many pulse I recieved in 100ms is that right?

Thanks

Yours truly,
Sylvain Bissonnette
www.microsyl.com

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hi Sylvain,

NO - I DON´T think to count pulses will work well.
I think to calculate the phase shift with the delay (best via DFT) is more reliable.

First: Do you work with sine wave coming from an DAC?
I would recommend this.
with at least 150ks/s.
(150kHz would mean 37.5 samples. 0.5 is nonsens, so id use 37.
37 points in 10 x 25us give a frequency of 148kHz.
37 is a prime number and this is good for precise phase calcualtion and sine information. Each sample point has another value.
BAD: The worst is if you would use 160kHz that gives exactly 4 points per sine: 0;1;0;-1; and this repaeted 1 times.
Use an analoge filter to cut off higher frequencies (caused by the DAC)

Send this to the transmitter and sample what the receiver sees.

If you now see more than 10 periods, then you may be at some resonace of your mechanics. Then use another frequency. Maybe 40.100Hz.

What i would do next is to run a correlation of the digital data that you sent to your DAC with the incoming data from your Rx.
Save the correlation value.
Shift the dac values one sample and again run the correlation.
compare the value with the saved value, if the new one is larger than save it combined with the nuber of shifts.
The maximum gives you a relative good information of the delaytime.
A DFT gives now a very exact phase shift.
The first value gives the coarse delay; lets say 720us (step size about 6us)
with 40kHz
= 28.8 periods.
the DFT gives you an angle of lets say 285.32 degree.
this is the exact delay. Take the 28 of the coarse value and
devide 285.32 /360 degree and get 0.79255
add both to get 28.79255 degree.

Problems may come if the coarse value says its a bit over an integer number: lets say 28.1
and the DFT gives 355 degrees, then the exact value is 27.986
(coarse is coarse)

Then you can generate a number of pulses - let´s say ten - starting and stopping at zero (crossing) to avoid overtones and DC offset, which may come to lower frequency errors if repeated.

I´ve seen the 100R - don´t know where it comes from, but i think it must be a damping resistor for the transmitter. makes sense.

@guillem
quadrature:
i think you get two speeds. one N-S and one E-W.
add them geometrically using pythagoras to get the real speed.
(
use tangens to get the angle.

Klaus
********************************
Look at: www.megausb.de (German)
********************************

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I made some test, and with wind there is no frequancy shift, only phase shift, I also not able with those sensor to mesure the delay from Tx and Rx due to many things like mecanical resonance, high output power and low Rx signal. you can check this pictures you will see that with only 8 pulse of 40khz, I received a load of 40khz in the receiver
www.microsyl.com/scope.jpg

I don't use any DAC and ACD. My 40khz is genereted via a M128 output compare feed a L293 connected to a transormer and the tranducer.

Yours truly,
Sylvain Bissonnette
www.microsyl.com

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Sylvain -

Hey, this is an interesting project. I am glad to see that you are taking the time to try to figure out how it works and how to get something useful out of it. Some quick ideas.

Unlike doppler where the source is in motion with respect to the receiver, motion in the medium only changes the delay, not the frequency. So, you will only get a phase shift!

You have a good picture, there! The received signal is exactly what you would expect after the excitation has passed through a band-pass transfer function. Your transducers are exactly that. The higher the "Q" (the narrower the bandwidth) of the band-pass function, the slower the rise and the slower the fall at the receiver output. Not much way around that.

It seems to me that you have two options. One is to make the path long enough so that the envelope delay is big enough to measure easily as wind velocity changes. The other is to make the path short enough so that you never exceed 360 degree phase shift from 0km/h to maximum km/hr. In this case, I would keep the drive on long enough so it is there while the received signal is present, and you can do a direct phase comparison. Of course, that makes problems with transmitter "talking" directly to the receiver output.

Jim

 

Until Black Lives Matter, we do not have "All Lives Matter"!

 

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Now I'm even more confused. I understand that the speed of the train coming toward me adds to the speed of sound of the horn...1120 ft/sec + 88ft/sec at 60 mph... this will shift the freq of the horn tone up by that percent... this seems to me to be exactly the same as an 88ft/sec wind pushing the 40KHz pulses along faster and shifting the freq up by a factor of (1120+88)/1120 X 40KHz. Just because this seems logical to me doesnt really mean anything. I just want someone else to either agree or tell me to shut up about this. I know its real hard to holler at someone out a car window... the wind blows all the sound away before it gets over to them. This is completely unlike light, which doesnt have a problem with the medium moving like the wind does. Maybe.

Imagecraft compiler user

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Jim,

Your idea to put my tranceiver at the good distance to have a 360degree shift for a maximum speed is very interesting, Did you know what formula to take if I want
to have a range of 0 to 80km/h for a shift phase of 0 to 360degree?

Sylvain

Yours truly,
Sylvain Bissonnette
www.microsyl.com

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Normally , Doppler effect , is use when you have some kind of particles or “anomalies” (like air bubbles in the water or small particles) to reflect on.
I didn’t really understand how you are going to use it to measure air speed (directly on the air or having something like a fine so the reflection can occur)?
If u expect the air to change the frequency try using some dust to test it…

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

@Sylvain:

I agree with Jim. Rise and Fall times increases with Q, and ultrasonic transducers have a high Q. Also the closed face transducers have a bigger mass moving, since it is the enclosure itself (or a part at least), thus increasing the resonance time after you remove the pulses. That means you should work with the rising edge since it is faster for 40KT18, and don't give it much energy (lower voltage, less pulses). Probably increase also the distance between emiter and receiver, since my main problem was regarding the dead band (50cm in good conditions), but I also emit 'high power' close to maximum voltage (15Vrms) and square wave in order to have big range. Next system will have variable voltage to have more control over the emited power.

Senscomp have many closed face xducers that could be fits better in your application, like 40KT08/40KR08. They have a lower Q (thus lower emiter power and lower sensitivity, but faster rise/fall times), they are smaller, probably cheaper, and another option to take into account, but I didn't work with them.

@Klaus:

I read in the specs that the ultrasonic xduzer is a 2400pf capacitor. So the series resistor, as you said, is a damping resistor that forms a low pass filter. 2Kohms with 2400 pf form a pole close to the 40KHz, so the resistor should be smaller. Then I choose 100 ohms, that reduces the peak current when the rising/falling edges of the SN754410 (an enhanced version of the L293) switch. But I didn't use a transformer (that is a bandpass filter).

Since all ultrasonic xducers are piezoelectric, they act as a capacitor, and as far as I know, capacitors don't like fast changing voltages.

Respect to quadrature, I expect (but I may be wrong) that if wind flows in the X direction, then X anemometer gives a direct reading, but in the Y anemometer you have a longer time to fly between transmitter to receiver. Since this delay will be the same in both ways, if you measure difference in fly time forward/backwar (as you suggest) it will give you 0m/s but a lower sound of speed (thus a lower apparent temperature). But if you measure only forwar fly time, then you may have an speed different than 0m/s.

Guillem.

Guillem.
"Common sense is the least common of the senses" Anonymous.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hi Bob,

The difference between the train and the wind is, that the "producer" of the sound once is moving (train) and once is still (relative to receiver).

You are right when you say the sound comes faster (less delay time) when wind blows toward me.
Now with the wind-speed-meter:
The transmitter is always sending out with 40kHz. with still air you have a wavelength of 7.5mm (@300m/s). When the wind blows with 30m/s in the right direction, the the wave moves faster. 330m/s. means a wavelength of 8.25mm.
If you could see the sine it would look like it is stretched. the unit of the wavelength here is 1/m (no time!). It is stretched in length but not in time.
you have a distance of 20cm = 200 mm.
so with still air you see 200/7.5 = 26.7 periods between Tx and Rx.
With 330m/s you see 800/8.25 = 24.2 periods between Tx and Rx.

With the train at still air you have 300m/s.
The train moves with 30m/s.
The train sends out a signal with 40kHz.

So the total speed is 330m/s. Here youget a phase shift because the distance between Rx and Tx decreases with 30m/s. in one meter there are
1000mm/7.5m(wavelength) 133.3 periods. So in one second there are 30 x 133.3 = 4000 periods.
But these 4000 periods per second are not lost, the come to the receiver added to the 40kHz. so the resulting frequency becomes 44000Hz.

@pro2105p:
Do you know the effec when a policecar with high speed is passing next to you.
The sond of the alram seems a bit higher in frequency when it appears to you but it seems to be lower in freqency when it moves away. This is also caused by the doppler effect. If you meausre both frequencies you can calculate the speed of the car. There is no reflector needed.

Klaus
********************************
Look at: www.megausb.de (German)
********************************

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

@Bob:
Imagine you are standing at the downstream end of a moving conveyer belt, and George Bush is standing at the other end. If George places pennies on the belt at the rate of one every second (to represent the wavefronts), you can pick them up at the rate of one every second. If you make the belt run twice as fast, you will still be picking up pennies at the rate of one a second (except for maybe one, when the speed changes). However, if at the slow speed it took exactly one second for the penny to travel from George to you, then you'd be in phase, when you change the speed there would be a phase shift.
Actually, this is a bad analogy, since it ignores the speed of sound, so you might want to replace the pennies with little motorized cars. And you might want to replace George with someone else...
OK, I'm confused now...

Four legs good, two legs bad, three legs stable.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hi
Hi Guillem and Sylvain

The use of analog signals (DAC and ADC) would make the calculating easier and more reliable, but for sure it makes the whole sensor more expensive.

Sylvain, what do you see on the scope if you only send one pulse ( 0 - 1 - 0)
And compared to this when you sample the same pulse but a wood piece (about 30x30cm) hold between Rx and Tx.
Maybe you can analyse the sampled data on a pc.
once korrelate it and once subtract it. So you can see waht is constant (mechanics) and what is varaible (woodpiece, delaytime...)

You can also do the same test but with a step ( 0- 1 ) this gives a lot of frequencies into your piezo (also DC). If you analyse the sampled signal then you can see some resonat frequencies of your mechanics. Maybe you need to damp your mechanics with silicone gel or for first tests modeling paste for kids.
I think it´s worth the effort to know the side effects.
You can also make tests with noise absorbing caps at the Rx and / or Tx.

Btw: I recomend (against the tests) to stop with the same value as you start. In your picture it seems that you start with 0 and stop with 1.

Additionally you can try to compensate with your waveform/length.
Test different wavelength and see what happens. maybe you can compensate a signal caused by the mechanics when you do an additional (maybe in the other direction) pulse at a special point of time.
for example: 0 - 1 - wait a special time then - 1- 0.
or 0 - 1- 0 wait 0 - (-1) - 0: if you can generate a negative pulse. (bridge connection )

If you are using pipes for the mechanics then the sound can be transmitted in the air (hole) or by the metal itself. Usually the metal´s sonic speed is higher.

I hope there are some ideas to help you.

keep us informed

Klaus
********************************
Look at: www.megausb.de (German)
********************************

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I had experienced mechanical vibration at about 6KHz in the whole system, that affects readins. All this depends on the mounting method, and with some other variables (where is the toroidal joint, pressure applied to it, etc). Thus I made an abrupt hipass filter at 35-38KHz (sixth order minimum, embedded in the receiver side), and that reduced a lot the mecanical waves received.

With ADC that digitizes the receives sinus, you can use Goertzel algo to be shure you receive the emitted frequency (since it remains the same, no Doppler), thus avoiding another undessirable received freqs.

@ Sylvain:

Phase shift of 360º means one wavelength. At a maximum speed of 80Km/h, 22.2m/s should be added to the màximum sound speed, about 360m/s. Then you divide the speed by the frequency you use, and you have the maximum distance you could have. But for cold air, the distance becames shorter, specially with 0 m/s, sor probably that should be shorter. @344m/s 40KHz, this is shorter than 8mm.....

Guillem.

Guillem.
"Common sense is the least common of the senses" Anonymous.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hi John_A_Brown,

excellent, this explanation with the belt is what i was looking for.

The transport speed changes with the wind speed.

Klaus
********************************
Look at: www.megausb.de (German)
********************************

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I found in Internet some Anemometer assembly example.

Attachment(s): 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Sylvain -

I think that you look at the "differential propagation delay". That is, you determine the expected delay from transmitter to receiver with no wind. That will depend only on the path length and the speed of sound in the medium. Then, you look at the additional delay due to wind. Don't forget to take into account that wind against the sound beam adds delay and wind with the beam reduces it. Then, look at what path length is needed for this delay to change by 1 cycle of the carrier.

Now, the transducers will add phase shift, but that ought to be fixed. So long as you are able to measure the phase shift, you should be able to measure the wind velocity!

Jim

 

Until Black Lives Matter, we do not have "All Lives Matter"!

 

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Sylvain -

One of your challenges is going to be turbulance. This will be especially noticable when the wind is closely aligned with one of the two ultrasonic paths. The upwind support will cause turbulance to be generated downwind of the support. The amplitude and mean frequency of the turbulance increases with wind velocity. This is called Strouhl Effect, or something very close to that. Because of the very fast "response", the sound beam will be able to respond to this. This will add to the sample to sample variation at higher wind speeds.

You may need some digital filtering, though it should not be difficult because your effective sample rate does not need to be very high (unless you are looking for this specific effect!).

Ultrasonic is a very good choice when you want no moving parts and low maintenance. It is susceptable to winter rime ice buildup. It ought to be an interesting and challenging project.

Jim

 

Until Black Lives Matter, we do not have "All Lives Matter"!

 

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Other news, I had place my 2 tranceiver at 8cm one to the other. I send constant 40khz and I check the Rx, compare to the TX and I match the phase, after I give small wind and my phase change a bit, I go upto putting my sensors in the pipe of my central vaccum cleaner (I don't know what is the air speed but it's really heavy, My phase shift of 9us of the 40khz carrier. BUT when I enter my sensor in the revers way in the vacume cleaner there is NO phase change,... I can't explaine that. Working with the phase put can many problem out. I don't want to make hard math DFT or ADC and DAC. I'm shure that there is a way to make it simple with phase comparation?

Like always any comments are welcome

Yours truly,
Sylvain Bissonnette
www.microsyl.com

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Oupss, It's work in both direction, my working area is a little bit confused.

Yours truly,
Sylvain Bissonnette
www.microsyl.com

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

With the transducers closer, you should be able to reduce the drive amplitude and not do it in bursts. This should give you a nice continuous signal to do phase comparisons with.

Jim

 

Until Black Lives Matter, we do not have "All Lives Matter"!

 

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Yes Jim, that's exactly what I'm talking about I think it could be done in a simple maner. Did you have a idea what can I use for calculation if I know the sound speed, my tranceiver distance, my carrier requancy and phase difference, to get the wind speed?

Yours truly,
Sylvain Bissonnette
www.microsyl.com

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Phase= fractional part of (transceiver distance/wavelength)
Since wavelenght=(sound speed+wind speed)/frequency, and frequency don't vary with wind (as Klaus explained), then you can rewrite it as
(sound speed+wind speed)=(distance*frequency)/(phase).

Working on that, and making measurements in both ways, you can obtain sound speed and wind speed, thus you can calculate 'sonic temperature'.

Guillem.

Guillem.
"Common sense is the least common of the senses" Anonymous.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Sylvain,

since you have ready acces to the drive signal for the transmitter transducer you can implement cheaply in hardware synchronous detection. The out put of the detector will be proportional to phase and sign will be indicative of phase quadrant ( lead or lag ).

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Guillem,

When you wrote (sound speed+wind speed)=(distance*frequency)/(phase).
did the phase is represented in degree or it's the difference of phase in microsecond?

Yours truly,
Sylvain Bissonnette
www.microsyl.com

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Synchronous detection works nicely in this sort of application. So do "phase detectors" such as used in a PLL. Unfortunately, this is just a little fast to do in software.

One way to do hardware phase detector is to put the received signal through a comparator, then XOR the comparator output with the drive signal. This is essentially a "multiplication" process so you get two signal components: one a 2X carrier and one proportional to the phase difference. Lowpass this to remove the 2X carrier component, then put the result into an ADC. You will need to calibrate out the zero-wind offset since there are phase shifts though the transducers and (probably) the drive circuitry and receiver. These are all static offsets so they represent a simple "zero tweak".

Other devices (flip flop, for example) can serve as the phase detector. For info, see the data sheet on the 74HC4046 CMOS PLL.

Synchronous detection gives you very similar process and results.

Jim

 

Until Black Lives Matter, we do not have "All Lives Matter"!

 

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

In wavelengths units. To pass it to degrees, you should multiply by 360. But in this formula, phase really means the number of wavelengths you have. Then you can substract the integer part of them, since you have the same phase if you have 3L+phase or 100L+phase where L is one wave (or wavelength).

Guillem.

Guillem.
"Common sense is the least common of the senses" Anonymous.

Pages