Buongiorno ragazzi,uso wview con linux ed ho un piccolo problema che non so come risolvere..il pluvio mi ha rilevato un dato errato ieri in pieno solo segnandomi 22 mm di pioggi,mi chiedevo se c'è un modo per eliminarli sia dai grafici sia dai dal totale annuale di precipitazioni..grazie in anticipo! :-)
Sent using Tapatalk Nokia Beta version.
prima di tutto fai il backup di wview-archive.sdb
poi come da istruzioni avvii la sqlite3 Command Line Interface Utility
sqlite3 wview-archive.sdb
cioè aggiornare uno dei valori senza cancellare l'intero set di dati archiviati di quei 5 minuti (io in genere cancello tutta la serie di dati, ma teoricamente se in quel periodo, a cui il set di dati si riferisce, hai avuto la raffica max, o la temp min del giorno, questi valori li perdi)wview User Manual
(l'esempio che interessa a te è questo)
sqlite> update archive set altimeter='777.88' where altimeter is NULL;
(This changes the value of column altimeter wherever it is NULL)
nel tuo caso quindi
sqlite> update archive set rain=NULL where rain= (e qui viene il bello, poichè nel database i valori sono archiviati con le unità imperiali, l'orario espresso in 'unix time' (i secondi dal 1 gennaio 1970) e cmq i valori archiviati essendo medie dei valori grezzi letti N volte durante i 5 minuti (N dipende dal tempo impostato di lettura dei dati dalla stazione) hanno un numero diverso di cifre significative)
cmq siccome 22mm di pioggia non si verificano mai in 5minuti e neanche 20 e
20mm=0,78inches
potresti fare
sqlite> update archive set rain=NULL where rain>0.78;
poi ctrl+d per uscire
PS: non mi assumo responsabilità per danni derivanti da questa operazione, d'altronde è obbligatorio fare un backup prima di editare il database
riavviando wview dovrebbe sparire il valore fantasma dai grafici e dai file Archivio (quelli navigabili da 'Browse day records')
per fare sparire il dato fantasma dai valori max e min e dai nooa reports bisogna fare una ulteriore operazione (molto più semplice)
prima però prova con quanto sopra indicato
Stazione Meteo di Nardo' #1 Davis VP2 + Wview v.5.19.0 + Saratoga WV-plugin
Stazione Meteo di Nardo' #2 TFA Nexus + Wview v.5.19.0 + Saratoga WV-plugin
Perfetto grazie mille i dati mi si sono tolti da "perturbazione" e dal grafico..Sono rimasti in pioggia mese,anno e nei rapporti noaa..Ovviamente c'è anche il dato errato registrato sempre nello stesso rilveamento cioè 132mm/h Come procedo adesso?Potrei anche cancellare tutta l'acquisizione di quei 5 minuti tanto non ho estremi di rilievo in quel dato..Grazie![]()
con la ws2300 il 'rainrate' è un valore calcolato, quindi cancellando il 'rain' errato dovrebbe mettersi a posto anche quello, probabilmente tu hai un'altra stazione (vpro?) e il rainrate è letto direttamente dalla console quindi indipendente dal 'rain'
per una lista dei parametri che puoi manipolare lancia il comando all'interno di sqlite3
.schema archive (i comandi che iniziano con il punto e non terminano con punto e virgola non manipolano il database)
cmq dovresti fare come per il rain
sqlite> update archive set rainrate=NULL where rainrate>un_valore_inferiore_a_132mm/h convertito in inches/h ;
se invece vuoi cancellare tutta la riga il modo più semplice è utilizzare il parametro dateTime (cioè l'orario dell'errata rilevazione e corrispondente riga archiviata), per usare la data in formato 'human readable' e non 'unix time' dovresti scrivere così
per esempio:
sqlite> delete from archive where datetime(dateTime,'unixepoch','localtime') = ('2010-04-23 21:50:00');
questo comando cancella tutta la riga dell'achivio datata 23.04.2010 ore 21:50
infine per far sparire i valore errati dai reports noaa e dai valori min max devi cancellare i file wview-noaa.sdb e wview-hilow.sdb
questi file vengono automaticamente ricreati se non presenti al riavvio di wview in base al contenuto di wview-archive.sdb (che quindi rimane l'unico file da salvaguardare sempre, anche wview-history viene ricreato se non presente, ma non è necessario cancellarlo in caso di dati errati e manipolazioni del database)
cancellando però il wview-noaa ed il wview-hilow (cosa inevitabile cmq a meno di avere una stazione che non becca mai un dato fantasma) si perde la 'granularità' delle rilevazioni
dal manuale
in definitiva se hai un polling time di 10 sec (io l'ho impostato così avendo la ws2300 cablata che si aggiorna ogni 8 sec), la stazione viene interrogataNote: Doing this will delete the LOOP sample resolution stored while wview is running, replacing it with back-filled archive data. For a station with a 5 minute archive interval and 30 second LOOP interval, that is the difference between 120 samples per hour and 12 samples per hour.
30 volte in 5 minuti e i dati archiviati nel database wview-archive.sdb sono le medie di queste rilevazioni, in wview-hilow.sdb invece vanno i valori min/max 'istantanei', cancellando wview-hilow e facendolo rigenerare in base a wview-archive i valori medi del database principale diventeranno gli estremi hi/low per wview-hilow
per esperienza eccetto per il windgust quasi mai ci sono apprezzabili differenze
la creazione di wview-hilow e wview-noaa su macchine molto lente (nslu2) può essere lunga (almeno 30 minuti per un database di 3 mesi di rilevazioni) e durante questo tempo wviewd non colloquia con la stazione quindi si perdono le rilevazioni di quel periodo
inoltre se hai il monitor dei processi di wview attivo (non mi ricordo come si chiami 'procmond?' forse) dopo la creazione dei database secondari wviewd non riprenderà automaticamente a leggere dati dalla stazione perchè proprio 'procmond' vedendo wviewd inattivo per tanto lo stopperà definitivamente, quindi bisognerebbe disabilitare il monitor dei processi prima di ricreare i database secondari e questo lo si fa tramite wviewconfig o dall'interfaccia web di wview
edit: 132mm/h potrebbe essere un rainrate comune, si rischia di cancellare rilevazioni corrette, quindi per cancellare il singolo dato errato forse è meglio
sqlite> update archive set rainrate=NULL where rainrate>un_valore_inferiore_a_132mm/h_convertito_in_inches and datetime(dateTime,'unixepoch','localtime') = ('data_ed_ora_errata_rilevazione);
Ultima modifica di rrt4; 24/04/2010 alle 00:38
Stazione Meteo di Nardo' #1 Davis VP2 + Wview v.5.19.0 + Saratoga WV-plugin
Stazione Meteo di Nardo' #2 TFA Nexus + Wview v.5.19.0 + Saratoga WV-plugin
Purtroppo il dato rimane nella pioggia mensile,annual ed il max rainrate..
Ho utilizzato questo comando per cancellre tutta la riga come mi avevi detto..
delete from archive where datetime(dateTime,'unixepoch','localtime') = ('2010-04-23 21:50:00');
Non c'è magari un comando che mi permette di vedere i dati memorizzati nel database in un determinato periodo di tempo?cosi mi rendo conto se effettivamente il dato è ancora presente..grazie mille per il tuo prezioso aiuto![]()
select datetime(dateTime,'unixepoch','localtime'),* from archive;
per visualizzare tutti i dati contenuti in wview-archive.sdb con la data in formato human readable
select datetime(dateTime,'unixepoch','localtime'),* from archive where datetime(dateTime,'unixepoch','localtime') = ('2010-04-23 21:50:00');
per limitare la visualizzazione alla sola riga di interesse (naturalmente se l'hai cancellata non visualizzerai alcun risultato)
cmq hai provato (naturalmente dopo aver fatto un backup) a cancellare e far rigererare wview-noaa, wview-hilow (a sto punto pure l'history) per vedere se il resto dei dati errati spariva?
Stazione Meteo di Nardo' #1 Davis VP2 + Wview v.5.19.0 + Saratoga WV-plugin
Stazione Meteo di Nardo' #2 TFA Nexus + Wview v.5.19.0 + Saratoga WV-plugin
Ho controllato ed effettivamente tutti i dati acquisiti in quel lasso di tempo sono stati cancellati,ora vorrei provare con hilow,solo che non ho capito bene il fatto della perdita di granularità delle rilevazioni..faccio intanto un backup e provo ad eliminarli!
Ultima modifica di Dark84; 25/04/2010 alle 00:05
Risolto,ho cancellato i file da te indicatomi,tutto tornato come prima,spariti tutti i dati errati,ti ringrazio tantissimo sei un grande
P.S ne approfitto per chiederti un'ultima cosa..è possibile a questo punto fare dei grafici giornalieri scegliendo un giorno qualunque dall'archivio sql e visualizzarlo?Guarda quello che vorrei fare è come questo http://www.mirandolameteo.it/graficimeteo.html
Stazione Meteo di Nardo' #1 Davis VP2 + Wview v.5.19.0 + Saratoga WV-plugin
Stazione Meteo di Nardo' #2 TFA Nexus + Wview v.5.19.0 + Saratoga WV-plugin
salve, ma wview riesce a leggere in qualche modo il datalogger di 175 dati della lacrosse?
Segnalibri