Sääasemaohjelmat > WeeWX

Linux & WeeWX Weather server software

<< < (2/2)

ta:
Moro!

Osaako kukaan sanoa, miten saan jonkin tietyn hetken dataa kaivettua tuosta Weewx:stä ulos?
Eli jos haluan esim tietää tuulen nopeuden vaikkapa viime viikon tiistaille klo 12:00 (tai lähelle tuota aikaa).  ???

weatherc:
WeeWX tekee Sqlite3-tietokantaa jonne se tallentaa datat.
Siitä pystyy hakemaan dataa vaikkapa PHP:llä tai ainakin Windowsilla pystyy myös lukemaan koko kantaa Sqlitebrowser-nimisellä softalla.

ta:
Kiitos! Tuolla sain tiedot esiin. Nyt vain kaivamaan oikeaa hetkeä esiin...

weatherc:
Itsellä ollut käytössä WeeWx etäasemalla joten laitetaanpa pieniä kokemuksia siitä. :)
Täytyy sanoa että softa on toiminut kun se kuuluisa junan vessa, eli ei ole moittimista.

Koska etäasema toimii RasPi:lla sekä se on varsinkin talvisin sammutettuna ainakin öisin on yksi seurannan kohde ollut se että kuinka nopeasti se purkaa Daviksen loggeria. Se on ollut tuskaisen hidasta, päivän datat kestää useamman tunnin purkaa. Aavistus oli että yksi syy saattaa olla SD-kortti ja toinen syy SQLite. SQLiten suhteen tein aikasemmin pientä testiä dedillä ja se osoittautui pirun hitaaksi. Toinen huono puoli SQLitessä on että se on "yksi prosessi kerrallaan"-tietokanta koska sehän on tiedosto jota avataan/suljetaan.

Joten eikun pientä testiä kehiin, laitoin RasPi:hen 16 GB USB-tikun jolla saisi vähennettyä SD-korttiin kirjoittelua sekä asensin Mysql:in siten että mysqlin filut ovat USB-tikulla. Itse myslin conffasin pienelle, eli RAM-käyttö alas (maksimi reiluun 100 MB:iin) sekä max yhteydet 6:een. Käytössä mysqltuner-skripti. Ja johan alkoi lyyti kirjoittamaan, 4 tunnin datat tuli 3 sekunnissa. Tämän hetkinen kokonais RAM-käyttö RasPi:lla on vajaassa 100 MB:ssä kun WeeWX käynnissä.

Käytössä on myös ollut Weewx-WD-palikka clientraw.txt-filua varten joka on toiminut ihan hyvin. Miinuksena on ollut se että se ylläpitää ihan omaa tietokantaa eli kanta-kirjoituksia tulee tupla määrä sekä että se päivittyy vain minuutin välein jos loggerin tallennusväli on 60 sekuntia.

Sittemmin löysin Cumulus realtime-nimisen palikan joka todella on reaaliaikainen koska se päivittyy jokaisen Davikselta tulevan LOOP-päivityksen yhteydessä sekä generoi realtime.txt-tyylisen tiedoston, eli 2.5 sekunnin välein. Koska en ihan noin tiheää päivitystä kaivannut muokkasin sitä pikkasen siten että se päivittyy 10 sekunnin välein (laitoin time.sleep(10) komennon sopivaan kohtaan):


--- Koodia: --- def handle_new_loop(self, event):
        self.handle_data(event.packet)
        time.sleep(10)

--- Koodi päättyy ---

Muokkasin sitä myös pikkasen niin että realtime.txt:in loppuun tulee ilmankosteuden päivän maksimi/minimiarvot sekä sateen rankkuuden päivän maksimilukeman (testaamatta vielä).

Navigaatio

[0] Viestien etusivu

[*] Edellinen sivu

Siirry pois tekstitilasta