× Benvenuti sul nostro forum su Sint Wind PI!

Postate qui domande o segnalate problemi / bug che riscontrate,

check WxWuLogger V.1.0

Di più
7 Anni 10 Mesi fa - 7 Anni 10 Mesi fa #6861 da SkizZO
WxWuLogger V.1.0 è stato creato da SkizZO
Questo logger in php, uguale come funzionamento a swpi_logger, salva i files su un db mysql remoto (aruba, altervista, privato..) nel formato di WeatherDisplay, o comunque quello richiesto come formato e campi del database, da WUgraphs.

Solitamente si salvano i dati su WeatherUnderground, che accetta salvataggi ogni 5 minuti.. ciò porta ad incongruenze tra i valori dichiarati da swpi (meteo.txt) di min e max, e quelli riportati nei grafici !! (praticamente non trovate i picchi !!!) A me weatherUnderground non è mai andato a genio.....

V1 : funzionamento base: Vento e direzione, Temperatura in/out, sole, Pressione, Precipitazioni 1h e 24h, Umidità in/out
http://www.vesuviuskitesquare.it/stabia/wugraphs.php#ui-tabs-7
Allegati:
Ultima Modifica 7 Anni 10 Mesi fa da SkizZO.

Si prega Accedi a partecipare alla conversazione.

Di più
7 Anni 10 Mesi fa - 7 Anni 10 Mesi fa #6870 da SkizZO
Risposta da SkizZO al topic WxWuLogger V.1.0
POST n. 1:


Buonasera (anzi buonanotte!!! ) a tutti... Qualche oretta fa, frustrato dal non poter avere i grafici di wugraphs con campionamento ogni minuto (così come avviene l'upload, a causa della limitazione di wunderground), dopo svariate prove con plugins (wugraphlogs, il quale necessita di una connessione remota al Db mysql sulla porta 3306, che molti providers bloccano poichè devono vendere il pacchetto server )...

ho realizzato un logger sulla base di swpi_logger, che però logga i dati su un Db fatto per wugraphs, dunque utilizzabile a tale scopo :D :D

Ho un solo problemino.... non visualizzo i dati perchè mancano della data (ahahahah).. mi spiego meglio, Il formato del dato deve essere
DATETIME: AAAA-MM-GG HH:MM:SS , mentre in output vedo che swpi da un formato diverso: [GG/MM/AAAA-HH:MM:SS]

...Essendosi fatto tardi vado a dormire, ma già ho visto che esce anche la temperatura interna, cosa che non usciva con wunderground......

Se qualcuno più "alla mano" riesce a farmi l'algoritmo per la conversione in php, glie ne sarei grato.. impiegherei un paio d'ore solo a studiare come muovermi in una stringa, ed estrarne il testo :/ :/ .

Ovviamente volendo si può fare un logger ibrido, che uppa su entrambi i tipi di db :D

POST n.2:

Al volo... Swpi in outpit ha il formato datetime, dunque corretto.
Wxwugraph vuole anche i campi:
data
Time
StationId (str + data + time) come keystring
Solar..non ricordo cosa

Oltre a quelli dello script wugraphlogs..

Ora pare sia tutto ok, in test!! :) :)
Ultima Modifica 7 Anni 10 Mesi fa da SkizZO. Motivo: fusione 2 posts

Si prega Accedi a partecipare alla conversazione.

Di più
7 Anni 10 Mesi fa - 7 Anni 10 Mesi fa #6878 da SkizZO
Risposta da SkizZO al topic WxWuLogger V.1.0
Nelle varie prove di ieri, sono riuscito a visualizzare qualche dato.... Solo non so qual'era la config giusta!! (Guardavo il log di swpi, e non il grafico).
Ora errori il log non ne da, ma i dati non li visualizzo...

Devo scoprire dov'è l'inghippo.
Fatto sta che wugraph non da errori (il deprecated lo rimuoverò poi...)
Ps: a prima vista i dati "buoni" e quelli "errati" sono uguali sul db...


Stay idle :)
Allegati:
Ultima Modifica 7 Anni 10 Mesi fa da SkizZO.

Si prega Accedi a partecipare alla conversazione.

Di più
7 Anni 10 Mesi fa - 7 Anni 10 Mesi fa #6883 da SkizZO
Risposta da SkizZO al topic WxWuLogger V.1.0
In ogni modo, questi sono i campi, tutti, di un Db di WeatherDisplay:
Non create questa tabella, ma quella all'interno dei files che scaricherete al primo post... questa serve per sperimentare ;) .

# Table structure for table `wx_data`
#

CREATE TABLE `wx_data` (
`station_id` varchar(10) NOT NULL default ' ',
`date` date NOT NULL default '0000-00-00',
`time` time NOT NULL default '00:00:00',
`average_windspeed` float NOT NULL default '0',
`wind_direction` smallint(3) NOT NULL default '0',
`gust_windspeed` float NOT NULL default '0', 
`temperature` float NOT NULL default '0',
`outdoor_humidity` float NOT NULL default '0',
`barometer` float NOT NULL default '0',
`daily_rainfall` float NOT NULL default '0', 
`monthly_rainfall` float NOT NULL default '0',
`yearly_rainfall` float NOT NULL default '0',
`rain_rate` float NOT NULL default '0', 
`max_rain_rate_curent_day` float NOT NULL default '0',
`indoor_temperature` float NOT NULL default '0',
`indoor_humidity` float NOT NULL default '0', 
`soil_temperature` float NOT NULL default '0',
`forecast_icon` int(3) NOT NULL default '0',
`wmr968_extra_temperature` float NOT NULL default '0', 
`wmr968_extra_humidity` float NOT NULL default '0', 
`wmr968_extra_sensor_number` smallint(2) NOT NULL default '0', 
`yesterday_rainfall` float NOT NULL default '0',
`extra_temperature_sensor_2` float NOT NULL default '0', 
`extra_temperature_sensor_3` float NOT NULL default '0', 
`extra_temperature_sensor_4` float NOT NULL default '0', 
`extra_temperature_sensor_5` float NOT NULL default '0', 
`extra_temperature_sensor_6` float NOT NULL default '0',
`extra_temperature_sensor_7` float NOT NULL default '0', 
`extra_humidity_2` float NOT NULL default '0', 
`extra_humidity_3` float NOT NULL default '0', 
`extra_humidity_4` float NOT NULL default '0', 
`hour` smallint(2) NOT NULL default '0', 
`minute` smallint(2) NOT NULL default '0', 
`second` smallint(2) NOT NULL default '0',
`station_name` varchar(100) NOT NULL default '', 
`dallas_1_wire_lightning_count` int(11) NOT NULL default '0', 
`actual_solar_reading` int(11) NOT NULL default '0', 
`day` smallint(2) NOT NULL default '0', 
`month` smallint(2) NOT NULL default '0', 
`wmr968_battery_level_1` smallint(3) NOT NULL default '0',
`wmr968_battery_level_2` smallint(3) NOT NULL default '0', 
`wmr968_battery_level_3` smallint(3) NOT NULL default '0', 
`wmr968_battery_level_4` smallint(3) NOT NULL default '0', 
`wmr968_battery_level_5` smallint(3) NOT NULL default '0', 
`wmr968_battery_level_6` smallint(3) NOT NULL default '0',
`wmr968_battery_level_7` smallint(3) NOT NULL default '0', 
`current_windchill` float NOT NULL default '0', 
`current_humidex` float NOT NULL default '0', 
`max_daily_temperature` float NOT NULL default '0', 
`min_daily_temperature` float NOT NULL default '0', 
`icon_type` smallint(3) NOT NULL default '0', 
`current_weather_desc` varchar(20) NOT NULL default '', 
`barometer_trend_last_hour` float NOT NULL default '0',
`max_gust_current_day` float NOT NULL default '0', 
`dew_point_temperature` float NOT NULL default '0', 
`cloud_height` float NOT NULL default '0',
`max_humidex` float NOT NULL default '0', 
`min_humidex` float NOT NULL default '0', 
`max_windchill` float NOT NULL default '0', 
`min_windchill` float NOT NULL default '0', 
`davis_vp_uv` float NOT NULL default '0', 
`max_heat_index` float NOT NULL default '0', 
`min_heat_index` float NOT NULL default '0', 
`heat_index` float NOT NULL default '0', 
`max_average_windspeed_day` float NOT NULL default '0', 
UNIQUE KEY `station_id` (`station_id`,`date`,`time`)
) TYPE=MyISAM COMMENT='wx_data from Weather Display';

 

Non create questa tabella, ma quella all'interno dei files che scaricherete al primo post... questa serve per sperimentare ;) .
Ultima Modifica 7 Anni 10 Mesi fa da SkizZO.

Si prega Accedi a partecipare alla conversazione.

Di più
7 Anni 10 Mesi fa - 7 Anni 10 Mesi fa #7028 da SkizZO
Risposta da SkizZO al topic WxWuLogger V.1.0
Aggiornamenti...

Ho notato che, rispetto ai dati dichiarati da swpi (campionati ogni minuto), si perdono i valori di minima e di massima della giornata di tutte le rilevazioni, se non campionate nei 5 minuti, e multipli di essi.
Finchè si guarda il grafico orario nell'ora "utile", il picco si vede, ma se non è stato rilevato alle XX:30, XX:45, XX:15 etc... nel grafico giornaliero non si vede(va).

Ho indagato un po (volevo una misura fine del vento...) e dopo 2 files, il 3 a cascata era quello giusto:
file: wxwugraphs/wdmysql-d.php

linea 169:
Da: $wdDayLim = 5; --> a: $wdDayLim = 1;

linea 173:
Da: array (5,10,..   --> a: array(1,10,..


In questo modo si abbassa il limite di campionamento dati nei grafici giornalieri (TUTTI) ad 1 minuto :D :D Escono i picchi adesso!! :silly: :silly: :woohoo: :woohoo:

I grafici sono un po più pesantucci da gestire e "ruvidi", anche con la spline attiva, ma formano sicuramente una linea più fitta di dati, ne rappresentano la realtà, e combaciano con swpi ;)
Ultima Modifica 7 Anni 10 Mesi fa da SkizZO.

Si prega Accedi a partecipare alla conversazione.

Di più
7 Anni 5 Giorni fa - 7 Anni 4 Giorni fa #7780 da SkizZO
Risposta da SkizZO al topic WxWuLogger V.1.0
Volevo segnalare che FINALMENTE ho finito l'encoding di un secondo file "meteo.txt", tramite il logger MYSQL con più dati, comprensivi di orari (e direzione del vento) dei minimi e massimi valori; nonchè i valori massimi e minimi vengono letti dal DB Mysql, e dunque se il raspi si riavvia, non se perde la visualizzazione.

Esempio:
www.vesuviuskitesquare.it/stabia/smartphone.html
www.vesuviuskitesquare.it/stabia/meteo1.txt



Ricordo che il logger serve a:

- Effettuare un check sui dati: non li memorizza/visualizza se c'è un delta X (impostabile) rispetto all'ultima misura
- Scrive i dati nel DB Mysql strutturato per WUgraphs, o per WeatherDisplay DB (impostabile)
- Calcola Windchill e Dewpoint in base ai valori inseriti a db (corretti con filtro)
- Calcola min. e massimi in base ai valori scritti nel db (corretti con filtro)
- Abilita il salvataggio delle ultime 20 foto della cam (e le rinomina ciclicamente) per generare un timelapse
- Crea un fiule meteo1.txt con molte più info

...inoltre si possono effettuare tutti i calcoli desiderati, ed aggiungere il risultato al file txt generato, per poi visualizzarlo nella pagina html.

^_^

Config. del logger:
//config file per MYSQLogger 2.0 (made by SkizZO)


//database

$server = "XX.XX.XX.XX";
$user = "XXXXXX";
$pwd = "YYYYYYYY";
$db = "ZZZZZZZZ";
$swpipwd = "PWD";
$dbtype = "WU"; //WU per db WD/WuGraphs, SW per db WheaterDisplay
$tablename = "wugraphs"; //nome tabella db mysql, (wugraps o METEO)

//CONFIG


$txtoutput = "True"; //scrivi meteofile addizionale - per alcuni dati necessita di meteo.txt abilitato 
$windspeed_unit_mode = "auto"; //knots, mph, kmh, auto (<- autolettura solo da meteo.txt)
$txtmeteofile = "meteo1.txt"; //nome file meteo generato
$timelapse = "True"; //abilita strutturazione timelapse - salva/cicla ultime 21 immagini
$stationid = "INAPOLIC3"; #10 char massimo, per DB WD/wugraphs
$windchillcalc = "True"; //calcola il windchill via php, con i dati filtrati su db mysql
$dewpointcalc = "True"; //calcola il dewpoint (p.to rugiada) via php, con i dati filtrati su db mysql
$winddir_names = "True"; // aggiunge il nome del vento alla direzione in formato txt (Es.: W, Ponente)


//check errori
$maxerrcheck=5; // Numero massimo di correzioni consecutive del check errori, prima di riportare i valori letti; funziona solo con scrittura meteofile
$timedelay=15; //Non effettuare il check errori con dati in db più vecchi di() Minuti 	| 0 disabilita tutti i checks (vento incluso)
$baro_delta_limit=2; // hPa (- o +) di differenza accettabile da ultima misura 			| 100 disabilita
$hum_delta_limit=2; // %hum (- o +) di differenza accettabile da ultima misura 			| 100 disabilita 
$humin_delta_limit=6; // %hum (- o +) di differenza accettabile da ultima misura		| 100 disabilita
$temp_delta_limit=3; // °C (- o +) di differenza accettabile da ultima misura 			| 100 disabilita 
$tempin_delta_limit=3; // °C (- o +) di differenza accettabile da ultima misura 		| 100 disabilita
Ultima Modifica 7 Anni 4 Giorni fa da SkizZO.
Ringraziano per il messaggio: alegrechi, seven

Si prega Accedi a partecipare alla conversazione.

Di più
6 Anni 11 Mesi fa #7801 da seven
Risposta da seven al topic WxWuLogger V.1.0
Lavoro mitico Skizzo! Mi piace, devo proprio provarlo!! :cheer: :cheer: :cheer: :cheer:

Si prega Accedi a partecipare alla conversazione.

Tempo creazione pagina: 1.089 secondi