Collects and plots data from wind and rain meters
Sparkfun anemometer, wind vane, and rain gauge:
Compile and upload weatherstation.ino
to an Arduino Uno
Plug in weatherstation:
METER | PIN |
---|---|
ANEMOMETER | 2 |
RAIN GUAGE | 3 |
WIND VANE | A0 |
Also, see additional documentation.
On Raspbian (Raspberry Pi):
sudo apt-get install python-numpy python-matplotlib python-serial
git clone https://github.com/gabrielburnworth/WeatherStation
cd WeatherStation
bash setup.sh
Will prompt you to calibrate the wind vane by aligning it with North. Once done, it will:
-
Start data collection by running
weatherstation_data_collection.py
-
Create cronjob to plot the data every day at 12:01 AM
Serial output: WS WD R: 0.00 0.00 0.00
Wind-Speed(mph) Wind-Direction(v) Rainfall(in/hr)
Data is stored in a pickled numpy array
[[time(sec) wind-speed(mph) wind-direction(v) rainfall(in/hr)] ...]
Plots:
- Wind radar plot
- Rainfall and wind details
Wind speed and direction radar plot:
Rainfall and wind detail plots:
Sensor details (PDF) from Sparkfun
METER | PIN | INTERRUPT |
---|---|---|
ANEMOMETER | 2 | 0 |
RAIN GUAGE | 3 | 1 |