[FMISID = 101421]

Ulkoinen verkkosivu
Grafiikka päivittyy 10 min välein | Ladataan palvelimelle 20 min välein.
Edellinen päivitys: 09.02.2023 11:45

Graphing weather statistics with RRDTool
Get Varkaus Kosulanniemi FMISID=101421 weather data

wget -t 2 -O /data/local/fmidata/varkaus-all.xml ${URL}

! Ampersand character is replaced with (-) !

Parse XML data to time:value pairs

0 15-07-2017 13:50 Temperature 17.1 °C
1 15-07-2017 13:50 Wind 3.4 m/s
2 15-07-2017 13:50 Direction 311.0°
3 15-07-2017 13:50 Humidity 57.0 %
4 15-07-2017 13:50 Dew Point 8.6 °C
5 15-07-2017 13:50 Pressure 1013.7 hPa
6 15-07-2017 13:50 Felt like 16.9 °C

Save values to CSV file for RRDs tool input.
Save values to MySQL database, just in case.

Collect data from CSV file

TEMP=`cat ~/fmidata.csv | cut -d ',' -f1`
WIND=`cat ~/fmidata.csv | cut -d ',' -f2`
... and so on ..

Update RRD database:
rrdtool update ${RRDDIR}/temp.rrd N:${TEMP}
rrdtool update ${RRDDIR}/wind.rrd N:${WIND}

Create RRD Ghraps (Daily)

rrdtool graph $OUTPATH/wind-day.png
--start -24h --end N --step 300
GPRINT:w:MIN:"$MINWORD\: %5.1lf"
GPRINT:w:MAX:"$MAXWORD\: %5.1lf"
GPRINT:w:LAST:"$LASTWORD\: %5.1lf\\n"

Save FMI data to Windrose database

There are eight "buckets" (0-7) with ranges
displayed on the legend (m/s):
0-1, 1-2, 2-3, 3-5, 5-6, 6-10, 10-13.5, 13-99

The first element (0) specify the percentage of 0-1 reading the sum of these reading,
this will be placed in the center of the windrose plot.
The second element (1) specifies the percentage of 1-2 readings,
the third element (2) the percentage of 2-3 readings and so on.

First create a new windrose graph:
$graph = new WindroseGraph(600,600);
Get data from database and create the windrose plot: $wp = new WindrosePlot($data);

Copy FMI and Windrose graphs to server:

Recurse through a local FMI directory and upload the entire contents to a remote FTP server.
Copy the entire "FI101421-all/" directory located at ~/fmidata/ to a
remote server's /public_html/fmidata/FI101421-all/ via FTP.

The Data Collection System (21.9.2022)

  Operating System: Ubuntu 20.04.5 LTS
  Kernel: 5.4.0-126-generic #142
  Machine: HP Compaq dc7700
  Server version: Apache/2.4.41 (Ubuntu)
  Data collection: Python 3.8.10
  Command language: GNU bash, version 5.0.17(1)-release (x86_64-pc-linux-gnu)
  Graph: RRDtool 1.7.2
  Web Site PHP version: 7.4.30
  Sensor: Bosh BME280 Temperature, Pressure, Humidity Sensor
  Weather information: ©Finnish Meteorological Institute (FMI)

The page was loaded 0.0808 seconds (CI3 Time)
Powered By   Kotisivut.com - Luotettava webhotelli    CodeIgniter PHP Framework   BaseURL: https://datatuki.net/web/  Page rendered in 0.0808 seconds