Ultrasonic anemometer on two HC-SR04. Remote measurement methods of wind parameters

Meteorological devices include a device for measuring wind speed, which is called an anemometer. Translated from ancient Greek definition literally means "veterinary". Despite the name, the device was invented only in the 19th century. He was invented by an astronomer from Ireland John Robinson to determine the wind speed.

For which the device is used

To date, the device anemometer can be found in various branches of activity:

  • At the meteorology stations that work in order to observe the weather.
  • At airports. They enjoy the security flight service.
  • To determine the thrust in ventilation systems in the mining industries and coal.
  • In construction, anemometers are used to ensure safety: the device is fixed on the top of the crane boom. When the wind speed is reached above the specified work parameter, it is prohibited.
  • IN agriculture This device is used when processing crops with chemical protection and fertilizer.

This is a list of the main directions where the device for measuring the speed is used. Separate species Additionally, the direction of the wind can measure in different planes, air temperature. Wind speed units - meters per second - are used in devices of all kinds.

Device and principle of operation

The anemometer allows you to measure the speed and direction of the wind. It catches the air flow rate, after which processes the received information and transmits to the recorder.

The main nodes of the design are only three blocks:

  • A block directly measuring air rest speed. To speak more precisely, the device catches the perturbation of air masses, which is formed as a result of the movement of the air flow.
  • A converter that serves to convert air refunds to the physical parameter.
  • The recording device that receives a signal from the converter.

A peculiar chain is formed, on each of the steps of which a separate unit performs its role.

Variety of models

Depending on the principle of operation, the device for measuring the wind speed is manufactured in three versions:

  • Mechanical. Due to the movement of air in them there is a rotation of individual elements. This category includes an anemometer cup and wing (or blade). They differ among themselves the design of an element that perceives air flows.
  • Heating (or thermal). Their design includes a heating element (usually it is a simple glowing wire). Under the influence of moving air masses this element cooled. The device determines the degree of temperature reduction.
  • Ultrasound, which measure sound speed. Sound, passing through moving gas, has different speeds. If he moves towards the wind, then its speed will be lower. And on the contrary, when moving in one direction with the wind, its speed will be higher than in the stationary air.

Classification

The device for measuring wind speed in its structure has a sensor that contacts directly with the air flow. Depending on the type of this sensor, highlight following types Anemometers:

  • Rotating, in which individual structural elements begin to rotate under the influence of wind speed.
  • Ultrasound, which are differently called acoustic ones.
  • Heating, they are also called thermal.

  • Optical, which in turn are divided into laser and doppler.
  • Dynamic, whose principle of work is based on the Pito Prandtle tube.
  • Float.
  • Vortex.

This is a list of devices that can be found at present.

Wing anemometer

This device is able to determine the speed of air movement, which is in the range from 0.5 to 45 m / s. In addition, this device allows measuring the temperature, which is in the range of minus 50 to plus 100 degrees.

The design of the anemometer is such that the wind is perceived by a paddle impeller. This is a slight light wheel, which mechanical influences protected by a metal ring. The principle of his work resembles a fan or mill. Under the action of wind, the impeller begins to rotate. According to the gear wheels, its rotation is transmitted to the arrows of the counting mechanism.

The anemometer is manual arranged in such a way that the counting mechanism is located next to the impeller. Due to this, an obstacle is created for the wind, thereby limited to the working range. Such devices can measure wind speed, which does not exceed 5 m / s. These devices are suitable for measuring air flow in ventilation mines, pipelines, air ducts, and so on.

Anemometer Wing Digital is designed in such a way that the sensor is built into the instrument or is remote. Thanks to this design, there is no barrier for wind. Therefore, the device measures the stream, the speed of which can reach 45 m / s.

Applications of a cup type

Anemometer Craister is capable of performing measurements only in a plane, which is located perpendicular to the axis of rotation. The design of the device is 4 cups in the form of a hemisphere, which are dressed on symmetrical cross-shaped spokes of the rotor.

The first options appeared this device Back in 1846. Their creator is John Robinson. He received the name due to the external similarity of the blades with a cup. The doctor assumed that the rotation of the cups does not affect their size. In his opinion, the speed of rotation of the cups is three times less than the speed of wind movement. Later, this theory was denied. It was proved that the device possesses the coefficient, which is in the range from 2 to 3.5.

In 1926, John Patterson offered a rotor with three cups. It was observed that the maximum torque of the cups was achieved at their turn to an angle of 45 degrees regarding the wind movement.

At the beginning of the nineties of the last century, Derek Weston improved a cup instrument for measuring wind speed. Its refinement allowed to measure additionally the direction of the wind movement. He reached it simple way - On one of the cups set the checkbox. When the checkbox is rotated, the trap floor moves in the wind, and the second - against.

Casual manual instruments count the number of revolutions performed for the allotted period of time. In improved anemometers, the rotor binds to tachometers of various species. These instruments are able to show the instantaneous wind speed and its change in real time. Measurement interval - from 0.2 to 30 m / s.

Heat devices

The principle of operation of such anemometers is to determine the electrical resistance of the wire. This value varies depending on the temperature, which is reduced due to the moving air flow. This is just like on a sunny hot day breeze in the skin.

The design of the anemometer is a metal filament (from platinum, nichrome, silver, tungsten and other metals), which is heated by electric shock to a temperature greater than the ambient temperature.

At devices this type There is one significant disadvantage - low strength in mechanical impacts.

Ultrasound anemometers

The principle of operation of these instruments is based on determining the speed of sound in a moving airflow. That is why this anemometer is also called acoustic. When the sound moves in one direction with air, its speed increases. When moving towards the wind, the speed of sound is reduced. Due to this, the time of obtaining an ultrasonic impulse is measured. The device is connected to a computer for processing the data obtained.

The sensor can perform several functions. Depending on their quantity, several types of sensors can be distinguished:

  • Two-dimensional, which are able to determine the speed and direction of the wind.
  • Three-dimensional, which determine all three components of the wind speed vector.
  • Four-dimensional, which, in addition to the indicators of the previous species, can measure air temperature.

Ultrasonic devices measure wind speed up to 60 m / s.

Previously was made. He knew how to calculate the projection of the wind speed on the line between the receiver and the transmitter. To obtain the wind speed vector on the plane (2D), the second coordinate is required, which we get if we add the second sensor perpendicular to the first. In this case, you can fix the anemometer inpattern - there is no need to use vane and somehow organize mobile contacts.

First version

Said - Made, and thoroughly.

From the trimming of polypropylene pipes, it was welded a cross. All sensors dropped and lengthened the wires that paved inside the pipes. The distance between the sensors turned out 70 cm.

The program code is such.

Program code of the first version of the two-axis anemometer

#Include. #Include. #Include. #define trig 4 #define echo 2 #define trig2 8 #define echo2 12 #define One_wire_bus 7 #define Steps DHT DHT; #Define DHT21_PIN 0 static const float defdist \u003d .6985; // M Static Const Float DefDist2 \u003d .713; // M // Setup A Onewire Instance to Communicate With Any Onewire Devices (Not Just Maxim / Dallas Temperature ICS) OneWire OneWire (one_wire_bus); // Pass Our Onewire Reference to Dallas Temperature. DALLASTEMPERATURE SENSORS (& ONEWIRE); Void setup () (Pinmode (TRIG, OUTPUT); Pinmode (Echo, Input); Pinmode (Trig2, Output); Pinmode (ECHO2, INPUT); serial.begin (57600); // Start Up the Library Sensors.begin ( ); Serial.printLN ("X Distance TDS18820 TCALC TDHT HUM V");) unsigned long impulsetime \u003d 0; void loop () (// read data //serial.print ("dht21, \\ t "); int chk \u003d dht.read21 (dht21_pin); float dhttemp \u003d 10; Float Dhthum \u003d 50; Switch (CHK) (Case Dhtlib_ok : // serial.print ("OK, \\ T"); dhttemp \u003d dht.temperature; dhthum \u003d dht.humidity; break; default: serial.print ("DHT Error, \\ T"); break;) // Display Data // serial.print (DHTHUM, 1); // serial.print (", \\ t"); //serial.println(HTTEMP, 1); sensors.requesttemperatures (); // Send the Command to Get Temperatures DS18820 Float DIST \u003d 0; Float Dist2 \u003d 0; Float temp \u003d sensors.gettempcByindex (0); // dhttemp; unsigned long impulsetime \u003d 0; unsigned long impulsetime2 \u003d 0; int n \u003d 250; for (int i \u003d 0; I 0) (WD + \u003d 90;) ELSE (WD + \u003d 270;) //Serial.printLN ("X Distance TDS18820 TCALC TDHT HUM V "); //Serial.printLN(String(impulsetime) + char (9) + String (Impulsetime2)); Serial.printLN (String (Impulsetime) + Char (9) + String (Impulsetime2) + Char (9) + String (Dist, 5) + Char (9) + String (Dist2, 5) + Char (9) + String ( TEMP) + Char (9) + String (TCALC) + Char (9) + String (DHTTEMP) + Char (9) + String (Dhthum) + Char (9) + String (V) + Char (9) + String ( v2) + char (9) + String (v3) + char (9) + String (WD)); )

The last two numbers give the desired horizontal speed and direction of the wind. The direction is calculated in the form of azimuth towards the north and is given in degrees. Rotation clockwise.

Alas, the results disappointed me.


When averaging in 25 measurements, the testimony in peaceful air jumps an average of up to 1.5 m / s, while measurements are issued for about once per second. If averaging 10 times more indications, the situation is improving, but does not solve the problem radically. In addition, judging by the speed chart in two axes, one pair of sensors phoney is significantly more different.
Most likely the case in the wires I extended the sensors. You will have to redo.

Second version

There is another reason to redo everything. As noted in the first, the speed of the sound will change by 1 m / s when the temperature is changed by about 1.5 ° C. Measurement errors on both axes are folded. It should be understood that the impulses of warm or cold air can significantly distort the readings of such an anemometer. It makes no sense in the testimony of 4 m / s at a light blowing of a warm breeze.
From the diagram of the attendant experiment, it can be seen that even a slow change in temperature causes a measured velocity drift, and the rapid change in temperature by 1 degree with a jump changed the measured wind speed by 1.5 m / s, while the temperature sensor slowly works out this change. It is important to note that this experiment passed right on my desk and the change in temperature was natural - I did not touch anything and did not heat anything.

And then the same principle comes to the rescue as when measuring the distance. If you remember, the sensors from the original HC-SR04 are arranged together, so the results do not depend on the presence of wind. If the speed of the sound at a certain distance is first in one direction, and then in the other, then the difference between these two testimony divided by half and will be the desired wind speed in the projection on this axis. In this case, the temperature change in the range of ± 25 ° C gives an error of ± 4%, which is absolutely not critical and we can do without a thermometer. And why do we need a thermometer? If we know the time of passing the signal in both directions, then according to the formulas from we easily calculate the temperature, which means you can clarify the wind speed.
There is only one small snag - you have to use two HC-SR04 on one axis. In industrial samples, the sensors alternately perform the role of the receiver and transmitter. In our case, for this you will have to connect the sakes directly to Arduino and programmatically generate 8 pulses of 40 kHz on one one, after which it is possible to extend them from another. Knowing about certain difficulties on this path, it seems to me easier to buy 2 more sensors of 55 rubles and try to do with low blood. This I will do next time. In the meantime, on two sensors, I will make a measurement of wind speed on one axis and temperature measurement in such a configuration. The main problem here to remove interference, which give such a big scatter of testimony in calm air.

Design

Armed with a soldering iron. The design was mercilessly smoothied to the components. New version I decided not to do so thoroughly, but in vain. Never guess where you will find where you lose. It turned out something like that.


First, the receiver placed as closer to the board as close as possible, and the transmitter removed only 20 cm. The second set turned 180 degrees and the sakes brought pairwise with a tape. The more accurate to keep the alignment of both pairs of sensors, the better. Ideally, we must get absolutely identical indications of the speed of the signal in both directions in peaceful air. Fatural tests confirmed our theory. In such configuration, there is little interference and very accurate indications regardless of temperature, which is confirmed by the schedule below.


At first I tried simply blowing away from a blue pair to black. My lungs are clearly not enough. But a curious fact - the air in the lungs managed to warm at 1 °, which would have caused a speed jump at 1.5 m / s, because DS18B20 just did not notice anything. Note that my lungs are able to give only 0.5 m / s. Then I turned on a large floor fan and sent everything from blue to black. It can be seen how the cooler air from the depths of the room and even the DS18B20 began to work out this reduction, but now its values \u200b\u200bare not used to calculate the speed. Made the discovery that my fan blows at a speed of about 2 m / s. Further during the pause, we see a gradual increase in temperature and excellent correlation between the calculated and measured temperature. At the end, I put the fan on the other hand and received 2 m / s in the opposite direction with a drop in temperature. Hurray, comrades, it works!

Wind speed calculation program

Program code of the second version of the anemometer of two ultrasound sensors

#Include. #Include. #Include. #Define TRIG 4 // HC-SR04 №1 #define ECHO 2 #DEFINE TRIG2 8 // HC-SR04 №2 #DeFine ECHO2 12 #define One_Wire_Bus 7 // DS18B20 #Define Steps DHT DHT; #Define DHT21_PIN 0 // DHT21 Static Const Float Defdist \u003d .2121; // M static const float defdist2 \u003d .2121; // M Float TCALC \u003d 0; // Setup A Onewire Instance to Communicate With Any Onewire Devices (Not Just Maxim / Dallas Temperature ICS) OneWire OneWire (one_wire_bus); // Pass Our Onewire Reference to Dallas Temperature. DALLASTEMPERATURE SENSORS (& ONEWIRE); Void setup () (Pinmode (TRIG, OUTPUT); Pinmode (Echo, Input); Pinmode (Trig2, Output); Pinmode (ECHO2, INPUT); serial.begin (57600); // Start Up the Library Sensors.begin ( ); Serial.printLN ("X Distance TDS18820 TCALC TDHT HUM V");) unsigned long impulsetime \u003d 0; void loop () (float temp \u003d 0; float dhttemp \u003d 0; float dhthum \u003d 50; // Read DHT Data int CHK \u003d DHT.Read21 (dht21_pin); if (chk \u003d\u003d dhtlib_ok) (dhttemp \u003d dht.temperature; dhthum \u003d Dht.humidity;) if (sensors.getdevicecount ()\u003e 0) (sensors.requesttemperatures (); // Send the Command to Get Temperatures DS18820 Temp \u003d Sensors.getTempcByindex (0); // dhttemp;) Float DIST \u003d 0 ; Float Dist2 \u003d 0; unsigned long impulsetime \u003d 0; unsigned long impulsetime2 \u003d 0; int n \u003d 50; for (int i \u003d 0; i 0) (WD + \u003d 90;) ELSE (WD + \u003d 270;) Serial.printLN (String (ImpulSetime) + Char (9) + String (Impulsetime2) + Char (9) + String (Dist, 5) + Char (9) + String (Dist2, 5) + Char (9) + String (TEMP) + Char (9) + String (TCALC) + Char (9) + String (DHTTEMP) + Char (9) + String (DHTHUM) + CHAR ( 9) + STRING (M, 5) + CHAR (9) + STRING (V)); )

The program will work without DHT-21 and DS18B20 sensors. DS18B20 for calculations in this code is not involved anywhere - only is displayed in the terminal as a standard. Without humidity sensor, the temperature will be calculated as for air with 50% humidity. In practice, this makes a very small error. To measure wind speed, these sensors do not have any influence at all.

Actually, this is all that can be squeezed out of two HC-SR04. To obtain the wind speed vector on the plane you need to add 2 more sensors perpendicular to the first and according to the formulas of the first version to get full speed and direction. This will take care as soon as ordered additional sensors will arrive.

P.S.

The sensors have come long ago, the design reel released 2 more times and in the end he earned as it should, but did not reach the roof, so did not reach this ultrasonic anemometer, so I still did not write a continuation, although the idea is working.

P.P.S. 2018.

By numerous requests, I post the final sketch that does not require any libraries (except for the standard EEPROM) and works with 4 sensors. Code with all sorts of mouthful types of built-in calibration and saving calibration values \u200b\u200binto non-volatile memory. And the most important thing. The problem described above with errors on one of the axes was not connected with wires, but with working in one room with sensors pulsed blocks Computer power, monitor, etc. (Their conversion scheme operates at a close frequency of 40 kHz). I stopped on the problem of the removal of the sensor to the street away from the interference (with the transfer of data on bluetooth). Otherwise it works. This is a version for sprinkled sensors, but there is a way to dispense. If you return to the project - implement.
For this code no matter what distance between the sensors. Need to put the device into the windless space (and without pulse noise) And through the terminal several times to give 2 teams:

The first is the current temperature on the reference thermometer (any street), the second - says the controller that now the wind speed is 0. According to this data, it will calculate the distance between the sensors and will record them in EEPROM. All further measurements will be repelled from these values.

The final view of the anemometer for 4 HC-SR04 sensors

// Windspeed V.4 - Anamometer // Copyright Evgeny Istomin [Email Protected] The receiver and the transmitter are separated on the opposite ends of the cross; in the diagram, the position of the receivers for the correct calculation of the direction and strength of the wind is depicted // HC-SR04 No. 1 // North (0 g) // O // | // | // HC-SR04 №2 O ------- | --------- O HC-SR04 №4 // West (270g) | East (90 gr) // | // O // HC-SR04 №3 // South (180 g) // When choosing a crosst material to play http://temperatures.ru/pages/temperaturnyi_koefficient_lineinogo_rasshireniya // the best choice Material - Tuba Invar 36h, but the usual hardware is quite suitable :-) #define define_distance 0.22 // Approximate distance between the sensors measured by a ruler, in meters. #Define Mes_pause 90 // Pause between measurements for damping reflections. In reality you need at least 1, ms. #Define Mes_AVerage 8 // How many measurements averaged for temperature. #Define Print_Period 500 // Period output measurements in terminal, MS #include #Define False 0 #define True 1 #define Echo1 2 #define Echo2 Echo4 5 #define TRIG1 6 // HC-SR04 №1 #Define TRIG2 7 // HC-SR04 №2 #DeFine TRIG3 4 // HC-SR04 №3 #DeFine TRIG4 9 // HC-SR04 №4 #Define Pow1 10 #define Pow2 11 #define Pow3 12 #define Pow4 13 #define T_abs 273.15 // Absolute Scratch Temperature HTTPS: //ru.wikipedia .org / wiki /% D0% 90% D0% B1% D1% 81% D0% BE% D0% BB% D1% 8E% D1% 82% D0% BD% D1% 8B% D0% B9_% D0% BD% D1% 83% D0% BB% D1% 8C_% D1% 82% D0% B5% D0% BC% D0% BF% D0% B5% D1% 80% D0% B0% D1% 82% D1% 83% D1% 80% d1% 8b #define print_loop print_period / (4 * (mes_pause)) // How many full cycles Skip before the measurement output to the Float DefDist1 \u003d Define_Distance terminal; Float defdist3 \u003d define_distance; Float defdist2 \u003d define_distance; Float defdist4 \u003d define_distance; Float TCALC \u003d 0; // Air temperature (calculated) Const Float Dhthum \u003d 50; //% humidity Float M \u003d 0.02895; // Molar weight kg / mol https://ru.wikipedia.org/wiki/%D0%9C%D0%BE%D0%BB%D1%8F%D1%80%D0%BD%D0%B0%D1% 8F_% D0% BC% D0% B0% D1% 81% D1% 81% D0% B0 Const Float R \u003d 8.31447; // Universal Gas Permanent J / (mol * K) https://ru.wikipedia.org/wiki/%D0%A3%D0%BD%D0%B8%D0%B2%D0%B5%D1%80%D1 % 81% D0% B0% D0% BB% D1% 8C% D0% BD% D0% B0% D1% 8F_% D0% B3% D0% B0% D0% B7% D0% BE% D0% B2% D0% B0 % D1% 8F_% D0% BF% D0% BE% D1% 81% D1% 82% D0% BE% D1% 8F% D0% BD% D0% BD% D0% B0% D1% 8F Const Float P \u003d 761 * 133.3; // Press in PA. 101325 at sea level Float x \u003d 1.4 * R / m; Float C \u003d SQRT (X * (TCALC + T_ABS)); // Speed \u200b\u200bspeed m / s https://ru.wikipedia.org/wiki/%D0%A1%D0%BA%D0%BE%D1%80%D0%BE%D1%81%D1%82%D1% 8c_% D0% B7% D0% B2% D1% 83% D0% BA% D0% B0 Float Impulsetime1 \u003d DefDist1 / C; float impulsetime2 \u003d defdist2 / c; float impulsetime3 \u003d defdist3 / c; float impulsetime4 \u003d defdist4 / c; unsigned char count \u003d 0; // Counter of Cycles ////////////////////////////////////////// // ////////////////////////////////////////////// // /////////////// // Simple FLOAT FILTERA (Float Y1, Float Y) (RETURN ((MES_AVEGE - 1) * Y1 + Y) / MES_AVerage;) /// ////////////////////////////////////////////// // ////////////////////////////////////////////// // //////// // Measure the delay in passing the sound between the sensors, the Float MEASUMENT (unsigned char trig, unsigned char echo, unsigned char pow) (Float Y; DigitalWrite (Pow, High); Delay (MES_PAUSE); DigitalWrite (TRIG, HIGH); DelayMicroseconds (10); DigitalWrite (TRIG, LOW); Y \u003d Pulsein (Echo, High); if (count\u003e print_loop) serial.print (String (Y, 0) + Char (9)); DigitalWrite (Pow, Low); RETURN Y * 1E-6;); ////////////////////////////////////////////// // ////////////////////////////////////////////// // /////////// // remember in the Flash memory of the distance between the Void StoreDefDist () sensors (EEPROM.PUT (0, defdist1); eeprom.put (1 * SizeOF (Float), defdist2); eeprom .put (Float), defdist3); EEPROM.PUT (3 * SizeOF (Float), DefDist4);) //////////////////// ////////////////////////////////////////////// // ///////////////////////////////////////////////////// / / / // // Read the distance between the Float sensors from flash-memory GetDefDist (Float DD; EEPROM.GET (ADRESS, DD); if (dd<= 0) dd = DEFINE_DISTANCE; return dd; } /////////////////////////////////////////////////////////////////////////////////////////////////////////////// // расчет скорости звука в зависимости от температуры, давления и влажности void GetC(float t) { M = (28.95 - 10.934 * DHThum * 0.01 * (133.3 * 4.579 * exp(17.14 * t / (235.3 + t))) / P) / 1000; X = 1.4 * R / M ; c = sqrt(X * (t + T_ABS)); } /////////////////////////////////////////////////////////////////////////////////////////////////////////////// void setup() { pinMode(Pow1, OUTPUT); pinMode(Pow2, OUTPUT); pinMode(Pow3, OUTPUT); pinMode(Pow4, OUTPUT); pinMode(Trig1, OUTPUT); pinMode(Trig2, OUTPUT); pinMode(Trig3, OUTPUT); pinMode(Trig4, OUTPUT); pinMode(Echo1, INPUT); pinMode(Echo2, INPUT); pinMode(Echo3, INPUT); pinMode(Echo4, INPUT); digitalWrite(Pow1, HIGH); digitalWrite(Pow4, HIGH); digitalWrite(Pow3, HIGH); digitalWrite(Pow2, HIGH); defDist1 = GetDefDist(0); // читаем из flash-памяти расстояния между датчиками defDist2 = GetDefDist(1 * sizeof(float)); defDist3 = GetDefDist(2 * sizeof(float)); defDist4 = GetDefDist(3 * sizeof(float)); Serial.begin(57600); while (!Serial) { ; // wait for serial port to connect. Needed for native USB port only } Serial.println("impT1\timpT3\timpT2\timpT4\tdist1\tdist3\tdist2\tdist4\tTcalc\tv1\tv2\tWD\tv3 " + String(PRINT_LOOP)); } /////////////////////////////////////////////////////////////////////////////////////////////////////////////// void loop() { // период измерений = 1 / (4e-3 * (MES_PAUSE + 1)) impulseTime1 = measument(Trig1, Echo1, Pow1); impulseTime3 = measument(Trig3, Echo3, Pow3); impulseTime2 = measument(Trig2, Echo2, Pow2); impulseTime4 = measument(Trig4, Echo4, Pow4); //if (count > Mes_average) serial.print (String (Impulsetime1 * 1e6) + char (9)); TCALC \u003d Filtera (TCALC, SQ ((defdist2 + defdist4 + defdist1 + defdist3) / (ImpulSetime1 + Impulsetime3 + ImpulSetime2 + ImpulSetime4)) / x - T_abs); if ((TCALC\u003e 70) | (TCALC< -50)) Tcalc = 0; GetC(Tcalc); float Speed_of_sound1 = defDist1 / impulseTime1 ; float Speed_of_sound2 = defDist2 / impulseTime2 ; float Speed_of_sound3 = defDist3 / impulseTime3 ; float Speed_of_sound4 = defDist4 / impulseTime4 ; float v1 = ((Speed_of_sound3 - Speed_of_sound1) / 2); float v2 = ((Speed_of_sound2 - Speed_of_sound4) / 2); float v3 = sqrt(sq(v1) + sq(v2)); int wd = int(atan(v2 / v1) * 180 / 3.1416); if (v1 < 0) { wd += 180; } else if (v2 < 0) { wd += 360; } if (count > Print_loop) (Serial.printLN (String (C, 5) + Char (9) + String (TCALC) + Char (9) + String (V1) + Char (9) + String (V2) + Char (9) + String (WD) + Char (9) + String (v3)); Count \u003d 0;) While (serial.available ()\u003e 0) (char inch \u003d serial.read (); // Set the temperature. Team format: T21. 5 if (inch \u003d\u003d "T") (String A \u003d Serial.ReadString (); TCalc \u003d A.Tofloat (); GetC (TCALC);) // U - Adjustment (Installation on 0). Team Format: U IF ((Inch \u003d\u003d "T") | (inch \u003d\u003d "U")) (defdist1 \u003d impulsetime1 * c; defdist2 \u003d impulsetime2 * c; defdist3 \u003d impulsetime3 * c; defdist4 \u003d impulsetime4 * c; StoreDefDist ();)) COUNT ++; ) ///////////////////////////////////// // ////////////////////////////////////////////// // ////////////

Ultrasonic anemometer

The device of this type uses the fact that ultrasound extends faster in the direction in which the wind is valid. Of course, an ultrasonic anemometer measures the three components of the wind vector in three-dimensional space (Fig. 4.5). Along every axis there are two pairs of "receiver transmitter" at a distance of 0.1-0.5 m. The transmitter sends continuous or pulsed ultrasonic waves.

Depending on the direction of propagation of wind with an ultrasonic wave when the distance wave passes d. Between the transmitter and the receiver is determined:

where υ ultrasound - The speed of propagation of the ultrasonic wave, m / s; υ 1 - The speed of propagation of the wind vector projection on the axis i. , m / s.

Difference time spending distance d. Between the transmitter and the receiver, two ultrasonic waves is:

The orientation of the converters relative to the direction of wind propagation is shown in Fig. 4.6.

Fig. 4.5. Ultrasonic anemometer

Fig. 4.6. ( U. - the rate of propagation of the ultrasonic wave; V - Wind propagation rate N - North S - South, W - West; E - East)

Remote measurement methods of wind parameters

Radiosonde

Radiosonde - A device used to measure certain wind parameters and receive information receiver. In addition, it contains temperature sensors, humidity and atmospheric pressure. Assessment of the horizontal position of radiosond relative to the point with which it was running, is carried out using radar or radar (from the English Radio Detection and Ranging - Radio Owners and Distance Definitions) - Installations for detecting and determining the location of objects by radar. This type of remote sensing techniques involves the use of electromagnetic waves in a region of 0.1 cm to 2 m (which corresponds to frequencies from 100 MHz to 50000 MHz). The object of study (radiosond) is irradiated, and the reflected radiation has operational information regarding the coordinates of the radiosond and wind parameters. The height that the radiosond reaches is 20 km, and the duration of the flight is 90-120 min.

Sodar

Ultrasonic anemometer intended for remote measurement of wind parameters called (from English. SO. Und Detection and Ranging). The basis of the operation of this device is the so-called doppler effect : when irradiating an object moving at speeds υ, Ultrasonic wave of a certain wavelength Λ The wave dispersion occurs, and the frequency (wavelength) of the scattered ultrasonic wave depends on the speed of the object. Doppler shift of the frequency of the ultrasonic wave scattered at an angle Θ moving at speed υ , described by the expression:

(4.13)

where φ - angle between the direction of speed υ and the direction of the propagation of ultrasonic wave.

Sodar, located on the earth's surface, sends ultrasonic pulses up (Fig. 4.7).

The frequency of the signals reflected from the atmosphere acquires the Doppler displacement, the value of which is proportional to the speed of propagation of the wind. Application Sodar makes it possible to measure wind parameters through each kilometer of a height to 17 km above sea level.

Wind speed, measurable ultrasound anemometers, reaches 30 m / s.

Disadvantage ultrasonic anemometers The dependence of the rate of propagation of ultrasound from temperature, humidity, atmospheric pressure, which requires appropriate instrument calibration.

In addition, electronic equipment increases the cost of instruments of this type.

Ladar

Ladar (From English. Light Detection and Ranging) Unlike Sodar generates and registers laser pulses. The principle of the action of the Lidar at the remote determination of the wind parameters is to diffuse laser radiation on aerosols of air (dust, water drops, dust particles or dirt, dust or salts crystals) moving at wind speed, and subsequent registration of the Doppler displacement (see 26.7 .3) . Such laser systems can measure and evaluate the speed and direction of wind movement and air turbulence at large altitudes.

The fiber optic laser systems developed in recent years are characterized by extremely high (10-12) sensitivity.

Satellites and rockets

Modern radiosonds determine the speed and direction of the wind using the Global Positioning System (English Global Positioning System) - the aggregate of radio-electronic means,

Fig. 4.7. Sodar

determine the position and speed of the object of the object on the surface of the Earth or in the atmosphere.

The parameters of air flow at high altitudes are estimated with rockets. So, in 2012, the American Space Agency (NASA) launched five missiles with an 80 C interval to study high-speed air flows in the upper atmospheric layers. The project was called ATREX (Anomalous Transport Rocket Experiment). Start took place on the territory of the test center on the island of Walops in Virginia.

At an altitude of about 80 km, the rocket was thrown into a special reagent (trimethyl aluminum), which reacts with oxygen, is accompanied by a glow (products of such a reaction - aluminum oxide, carbon dioxide and water vapor - harmless). Surveillance will allow scientists to explore air flow. High-speed flows (hundreds of kilometers per hour) are the greatest interest for scientists at 100-110 km altitudes, that is, almost on the border with space. Traditional methods study these streams are difficult, since the air density at such heights is quite low.

Remote sounding of wind with satellites allows you to build windscreen card on the earth's surface, as well as study air flows in the atmosphere.

Determination of wind direction

To determine the direction of the wind use fluger having a type of metal plate, which rotates around the vertical axis. To simultaneously measure the speed and direction of air movement use anemumbometer.

The number of contacts of the air screw of this device turns into a sequence of electrical pulses, the frequency of which is proportional to the wind velocity, and the phase shift depends on the direction. The transfer of information about the direction of wind in modern devices is carried out using a potentiometer (Fig. 4.8). Changing the position of the RECORD in it causes the corresponding change electric currentpassing through the stator of the receiving system, causing the rotation of the rotor of this system and the indicator arrow.

The accuracy of determining the wind direction by the potentiometric system is ± 3

Fig. 4.8.

Increase accuracy can be using soloSinov System (Fig. 4.9). The rotation of the seal-sensor rotor causes the appearance of an emf, proportional to the sinus of the rotational angle, which leads to the appearance of an electric current in the agsine-receiver stator corresponding to the magnetic field, which causes the receiver rotor connected to the indicator.

Fig. 4.9.

(The wind direction pointer) is designed to visually determining the direction of the wind. It consists of tissue stockings, which has a shape of a truncated cone, a forming frame and fasteners (Fig. 4.10). Installed on the mast. Wind indicators are used at airports and chemical enterprises, where there is a risk of gaseous leakage.

To determine the dominant direction of the wind applies rose of Wind - vector diagram characterizing the speed and direction of the wind in a specific locality according to many years of observations.

Fig. 4.10.

Fig. 4.11.

It looks like a polygon who has the length of the rays, diverging from the center of the diagram in different directions (Rumbach) proportional to

repeatability of the winds of these directions (Fig. 4.11).

An international meteorological organization requires devices intended to measure the direction of the wind so that they determine the direction of the wind in the wind velocity range from 0.5 to 50 m / s with a resolution of ± 20 to ± 5 °.

Did you like the article? To share with friends: