Meteostanice a linux

Petr Vejsada daemon na svoboda.cz
Pátek Listopad 30 11:39:06 CET 2007


Zdenek Kaminski wrote:

>   pouzivate nekdo z vas nejakou meteostanici a mate ji pripojenou k Linuxu?

Ano, pouzivam WS2300, http://roztoky.zahradkari.cz/pocasi

nedavno jsem nekomu popisoval, jak to funguje, tak to sem pastuji a omlouvam
se, ze je to s diakritikou. Snad to prectete.

Na začátku je meteostanice WS2300, připojená sériovým portem do počítače. 
Počítač je asi 10 let starý, Pentium Classic 160 Mhz :) s jedním diskem a 
192MB RAM. Na disku je jednak plná instalace Slackware linuxu, jednak 
maximálně ořezaná verze v initrd. To znamená, že při startu počítače se buďto 
natáhne "velký" systém, nebo se natáhne "malý" systém tak, že se vytvoří v 
RAM virtuální disk a z něj se spustí vlastní systém. Fyzický disk se pak 
vypne kvůli úspoře energie. V takovéto konfiguraci má počítač, meteostanice a 
modem spotřebu asi 20W dohromady. Modem je Siemens MC39i, což je GPRS modem. 
Dá se koupit za cenu kolem 500,- Kč, protože GPRS už skoro nikomu nestačí. Na 
tento účel stačí bohatě a modem je velmi spolehlivý. Počítač u stanice 
funguje tak, že každých 5 minut načte data z meteostanice (je použit software 
OPEN2300), data se zašifrují, elektronicky podepíší a odešlou e-mailem na 
cílový server. E-mail jsem zvolil kvůli T-Mobile tarifu Surf&Mail, který 
stojí 199,- Kč měsíčně bez DPH + měsíční poplatek, celkem přijde provoz 
modemu na asi 295 Kč měsíčně. Pokud vím, nic levnějšího asi pořídit nepůjde. 
V tomto tarifu je neomezený přenos e-mailu a když to tedy T-Mobile takto 
nabízí, mně je úplně jedno, jakým způsobem se budou data přenášet.

Když tento mail dorazí na cílový server, rozšifruje se, ověří se podpis a data 
se uloží do databáze PostgreSQL. Pak už je jen prezentační vrstva, což je to, 
co vidíte na webu. Je to redakční systém drupal, http://drupal.org, ale ten 
je vlastně použit jen na ty věci okolo. Zobrazení meteodat jsem si psal sám, 
ty grafy jsou dělané programem Jpgraph (sada PHP skriptů), kalendář je PHP 
class, který jsem trochu dodělal. A to je vlastně všechno. Meteorologické 
výpočty se dělají uloženými funkcemi v PostgreSQL, takže ty selecty jsou 
pohodlné, např. select windchill(temp_outdoor,wind_speed)...

-- 
Petr




Další informace o konferenci Linux