January 11, 2019

 

Anemometer from a DC motor project

 

Materials:

 

Arduino Uno

Small dc motor

Anemometer wind catcher piece (to attach to motor)

Breadboard

16×2 LCD QAPASS, i2C address: 0X27 (Any 16X2 LCD is suitable)

Jumper Cables are necessary

Female to male jumper cables(for i2C LCD)

 

Code:

 

/*

 http://www.arduino.cc/en/Tutorial/ReadAnalogVoltage

*/

// Include Wire Library for I2C

#include <Wire.h>

// Include NewLiquidCrystal Library for I2C

#include <LiquidCrystal_I2C.h>

// Define LCD pinout

const int  en = 2, rw = 1, rs = 0, d4 = 4, d5 = 5, d6 = 6, d7 = 7, bl = 3;

// Define I2C Address – change if reqiuired

const int i2c_addr = 0x27;

LiquidCrystal_I2C lcd(i2c_addr, en, rw, rs, d4, d5, d6, d7, bl, POSITIVE);

// the setup routine runs once when you press reset:

void setup() {

 // initialize serial communication at 9600 bits per second:

 Serial.begin(9600);

 // Set display type as 16 char, 2 rows

 lcd.begin(16,2);

}

 

// the loop routine runs over and over again forever:

void loop() {

 // read the input on analog pin 0:

 int sensorValue = analogRead(A0);

 // Convert the analog reading (which goes from 0 – 1023) to a voltage (0 – 5V):

 float voltage = sensorValue * (5.0 / 1023.0);

 float voltage10000 = sensorValue * (50000 / 1023.0);

 float windspeed = voltage * 27.20;

 // print out the value you read:

 lcd.setCursor(1,0);

 lcd.print(windspeed);

 Serial.println(windspeed);

}

 

Wind Tunnel Project Link:

http://wisrd.org/aerodynamics/

 

About the Project:

 

The wind tunnel project run by Molly, Myles, Reid and Jackson requires a wind speed measurement so that accurate testing can be conducted. Rather than buying an anemometer, we chose to use a dc motor with an anemometer attachment to get a voltage readout which could be converted to wind speed. The anemometer attachment was 3d printed by someone for the project. The goal was to be able to display the wind speed without having a laptop attached, so I used a 16X2 LCD. The LCD used in the project is an i2C LCD which offers the same capability as a normal 16X2 except with 4 pinouts instead of 16. Normal 16X2 LCDs also work fine for this project. The LCD is wired to a breadboard which is then connected to the arduino. It is possible to wire the LCD directly to the arduino, however female jumper cables will be necessary.