Using an Arduino in experiments:
Generally, sensors work with varying voltage and an Arduino is a very useful device for controlling and monitoring voltages. Here i used an Arduino for measuring temperature and humidity and then used it to measure the water depth which is necessary in many fluid-flow experiments.
The water depth is measured by using an ultrasonic sensor. The sensor sends a signal toward the water surface and measures the time it takes for the signal to return. By having the sound velocity in air and the time it takes for the sound wave to go and return, its possible to calculate the distance easily. Although the sound speed is around 343m/s in 20 °C air, for more accurate measurements it is necessary to consider the humidity and temperature of the air. That's why i added a temp&humidity sensor to the system that monitors the air in front of the ultrasonic sensor in realtime. The sound speed right in front of the sensor is calculated by the following formula: (ref)
Sound_speed= 331.4 + 0.606*Temperature + 0.0124*Relative_Humidity
distance = (duration / 2) * ((Sound_speed) / 10000);
Where 331.4 is the sound speed at 0 °C. The Arduino is also used for triggering cameras, lasers and wave logger that records the signal from sensors.
To measure the water velocity, there was a pitot tube connected to a pressure sensor, having an output voltage between 0~12V relative to the pressure. So, i could connect that to the Arduino as well; but the Arduino max input voltage is 5V, so i used a voltage divider to reduce the voltage to 0~5V. The water velocity is simply calculated by bernoulli equation:
Velocity = sqrt(2*(Pressure/rho));
Although water is almost incompressible, i decided to calculate the exact density of water(rho) since i already have the temperature. By using the Thiesen-Scheel-Diesselhorst equation:
An ultrasonic measurement device and a triggering system would be more than 500$ but you can do it with an Ardounio for less than 10$ with higher quality, more accuracy and more flexibility. By using the serial monitor connection from USB i could also control and read the data from Arduino. The schimatic diagram of my Arduino looks like this:
And the results:
(V=0.054m/s, Humidity=24%, Temp=7°C, Depth=17.86cm, Flux=0.03m3/s)
You can download the Arduino code with needed libraries from here.