/*
// Ultrasonic Anemometer test setup
// https://wokwi.com/projects/423980405757153281
// for https://forum.arduino.cc/t/making-an-ultrasonic-anemometer-using-just-2-ultrassonic-sensors-hc-sr04/1341282/89?u=davex
Code per
Abdul Haseeb, & Raja Asim. (2019). ULTRASONIC ANEMOMETER DESIGN AND TESTING IN WIND TUNNEL. USAID. https://pdf.usaid.gov/pdf_docs/PA00TXG6.pdf.
(archived: https://web.archive.org/web/20250203062149/https://pdf.usaid.gov/pdf_docs/PA00TXG6.pdf)
*/
float duration1; //Duration 1= Time it takes for ultrasonic wave to reach from Sensor 1 to Sensor 2
float duration2; //Duration 2= Time it takes for ultrasonic wave to reach from Sensor 2 to Sensor 1
int trig = 11; // Trigger Pin
int echo1 = 9; //Echo Pin for Sensor 1
int echo2 = 10; //Echo Pin for Sensor 2
void setup() {
Serial.begin(9600); // Start Serial monitor
pinMode(trig, OUTPUT);
pinMode(echo1, INPUT);
pinMode(echo2, INPUT);
}
void loop() {
digitalWrite(trig, LOW);
delayMicroseconds(2);
digitalWrite(trig, HIGH); //Sends the ultrasonic signal
delayMicroseconds(10);
digitalWrite(trig, LOW);
duration1 = pulseIn(echo1, HIGH); // TOF recorded by sensor 1
delay(500);
digitalWrite(trig, HIGH);
delayMicroseconds(10);
digitalWrite(trig, LOW);
duration2 = pulseIn(echo2, HIGH); // TOF recorded by sensor 2
Serial.print(duration1);
Serial.print(",");
Serial.println(duration2); //Results can be transformed into a .csv file
delay(500);
}