Hola,
Un amigo y yo nos regalamos para Reyes una PCE-FWS 20. Aunque no dispongo de mucho tiempo, sí que he podido desarrollar un software de presentación de estaciones meteorológicas, de momento basadas en la susodicha estación pero extensible a otras.
Un ejemplo de la estación de mi amigo en La Zubia (Granada):
http://zubia3bajo.oxixares.com/cgi-bin/visorLa página se actualiza sola cada 10 minutos. Podeis elegir cosas en el menú de la izquierda. El software es GPL y lo podéis bajar de
http://www.ogimet.com/pub/freewestat-0.3.tar.gzUna cosa a destacar es que se dispone de un módulo de calibración. Es decir, que si hay una discrepancia conocida entre el verdadero valor y el de la estación, se realiza una corrección automática al tiempo que se accede a la Base de Datos, pero almacenándose en ésta los valores originales. En el software podéis ver cómo crear el fichero de calibración.
Hay algún que otro script y utilidades, entre otros el que genera un fichero de Plantilla para Meteoclimatic. Me falta todavía documentar bastantes cosas.
El sistema consta de:
-el binario wwsr. Es la navaja suiza para ponerse en contacto con la PCE-WS20. Lo utilizan algunos scripts del paquete, tiene muchas opciones. Para verlas hay que ejecutar el comando 'wwsr -h'
-Un script que es lanzado por el cron y que recoge datos de la estación. El script es 'getwwsr_data'. Ahora mismo lo ejecuta root porque la librería USB tiene esa limitación. En el ejemplo de La Zubia toma un dato cada minuto. Obviamente, debe estar conectado el PC a la estación con USB. El script introduce los datos en una base de datos local tipo Berkeley. Es muy rápido. Los binarios están en C y C++.
-Un binario cgi que es el que responde a las peticiones hechas vía web. Ese binario se llama 'visor' y debe instalarse en el directorio cgi-bin del servidor web apache.
- Librerías dinámicas de tratamiento de datos con db, de comunicación con la estación, de ploteo de graficas etc.
Para compilar el software debéis tener compiladores C, C++, y los paquetes habituales de desarrollo GNU, librerías DB, y quizás alguna cosa que se me olvida. Los pasos serían
1) bajar el fichero *tar.gz
2) descomprimir
tar -xjvf el_fichero_bajado.tar.gz
3) configurar
cd freewestat-0.3
./configure --enable-DB
4) Compilar
make
5) Instalar. como root (antes leer notas de más abajo)
make install
Todos los binarios y scripts se instalan en /usr/local/bin. Las librerías en /usr/local/lib. Si ha ido bien se pueden ver las opciones de wwsr con
wwsr -h
IMPORTANTE: Antes de instalar, conviene hechar un vistazo a lo que hay en el directorio scripts, ya que ahí se explica un poco qué hace cada script y también hay ejemplos de ficheros de configuración.
Si se dispone de servidor apache, el binario /usr/local/bin/visor debe copiarse (o enlazarse) al directorio 'cgi-bin'.
Para empezar a recoger datos, una vez instalado, debe ponerse la tarea adecuada en el cron de root. En el ejemplo de La Zubia, lo que incluimos en el fichero 'cronroot' es
* * * * * /usr/local/bin/getwwsr_data
0 5 * * 1 /usr/local/bin/wwsr_backup
Después, como root, se incorporan las tareas al cron
crontab cronroot
la primera línea se ejecuta cada minuto y toma un dato de la PCE. La segunda hace una copia de seguridad todos los Lunes a las 5 UTC.
Ya sé que ahora mismo no es fácil montar todo eso, pero no quiero demorarme más. Espero que os guste. Yo seguiré desarrollando poco a poco.
Admito sugerencias, siempre que no tenga que deshacer mucho de lo hecho
Saludos.