I.E.S. Francisco Romero Vargas
    Jerez de la Frontera (Cádiz)           Tlf.: 671 530 256 /7 /8  -  956 70 99 17                    
 
Desde 2007
   
Visitas:
Estadísticas
Zona restringida:
Código Profesor:
Clave SGD:

 

 

Enviar información a la web Weather Underground

Enviar información a la web Weather Underground

Información relacionada:
0.- Los datos de nuestra estación meteorológica.
1.- Estación meteorológica.

2.- Instalación del servidor web Apache
3.- Vinculación de datos de la estación meteorológica a una página web. Cumulus.
4.- Creación de un temporizador para subir los archivos automáticamente mediante FTP.
5.- Realización de un programa personalizado basado en el Cumulus. Visual Basic.
6.- Realización de un programa personalizado con el AutoIt.
7.- Cambiar la apariencia de Cumulus, EasyWeather,... con Reshacker. Traducción al español .
8.-
Control de un dispositivo conectado al Puerto paralelo del ordenador mediante los datos de la estación meteorológica
8B.- Controlar un dispositivo externo mediante la estación meteorológica y Arduino. (NUEVO)
9.- La estación en UBUNTU - LINUX.
10.-
Construcción de un reloj analemático
11.- Nos damos de alta en AWEKAS, red internacional de estaciones meteorológicas.
12.- Nos damos de alta en Weather Underground, red internacional de estaciones meteorológicas.
13.- Nos damos de alta en Personal Weather Stations, red internacional de estaciones meteorológicas.
14.- Utilización del archivo realtime.txt y PHP para crear una página web personalizada.
15.- Configuración de la Cámara web

16.- ¡¡¡Se me apaga el ordenadorrrr!!!

17.- Formulario y programación en AutoIt
18.- Capturas automáticas de mapas meteorológicos de una página web

_________________________________________________

Weather Underground PWS ICADIZJE2

Vamos a darnos de alta en otra red meteorológica, en este caso Weather Undreground, es una red muy conocida y muchos programas de meteorología como: Virtual Weather Station , Weather Display, Weather View 32 , WSWin32, WeatherLink, wview y el mismo Cumulus ya traen en su configuración una opción para poder enviar automáticamente los datos al servidor de Weather Underground.

Nos registramos en Weather Underground. Pulsamos en Create an Account.


Nos enviarán un correo de activación. Una vez que activen nuestra cuenta entramos pulsando Sign In y luego en Weather Stations

Y luego en Manage my Personal Weather Stations.


Ya estamos dentro de nuestra configuración.


Nuestro Identificador de Estación (ID) es ICADIZJE2

_________________________________________________

Vamos a configurar Cumulus para que envíe los datos.

Una vez que tenemos nuestra cuenta y nuestro código de estación, vamos a Cumulus para enviar los datos meterológicos al Servidor de Weather Underground.

En nuestro Cumulus la manera de configurarlo para que envíe los datos es: Configuration / Internet / Weather Underground

Habilitamos el envío (Enabled), ponemos nuestro IDentificador de Estación en mayúsculas, nuestra clave y el intervalo de envío. Y ya está. A partir de ese momento cada 20 minutos el Cumulus se encargará de enviar los datos a Weather Underground.

Aquí estamos.

http://www.wunderground.com/weatherstation/WXDailyHistory.asp?ID=ICADIZJE2.

_________________________________________________
_________________________________________________
_________________________________________________
Ejercicio de PHP.

Nosotros lo haremos de otra manera más artesanal.


Nosotros vamos a enviar los datos de otra manera, vamos a crear un mediante código PHP una dirección donde se encuentren incrustados lods datos de nuestra estación.
Luego con Autoit vamos a realizar un programa que leerá periódicamente esa dirección y al leerla se enviarán los datos al servidor de Weather Underground.

Esta forma de hacerlo es simplemente un ejercicio para que nuestros alumnos manejen el Autoit y el PHP, ya que el envío de datos funciona perfectamente con el Cumulus como hemos visto anteriormente.

 

_________________________________________________

Empezamos.

En las ayudas de Weather Underground: http://wiki.wunderground.com/index.php/PWS_-_Upload_Protocol observamos que solicitan al menos los siguientes datos:

action [action=updateraw] -- always supply this parameter to indicate you are making a weather observation upload
ID [ID as registered by wunderground.com]
PASSWORD [PASSWORD registered with this ID, case sensative]
dateutc - [YYYY-MM-DD HH:MM:SS (mysql format)] In Universal Coordinated Time (UTC) Not local time
winddir - [0-360 instantaneous wind direction]
windspeedmph - [mph instantaneous wind speed]
windgustmph - [mph current wind gust, using software specific time period]
humidity - [% outdoor humidity 0-100%]
dewptf- [F outdoor dewpoint F]
tempf - [F outdoor temperature]
rainin - [rain inches over the past hour)] -- the accumulated rainfall in the past 60 min
dailyrainin - [rain inches so far today in local time]
baromin - [barometric pressure inches]

 

Observamos que los datos los piden en Farenheit (F), pulgadas (inches) y millas por hora (mph). Cuanto se visualicen se mostrarán en el sistema métrico.

Además debemos enviar los datos a su servidor mediante PHP, con una dirección como esta:

Esa línea la genera un código PHP.

En PHP debemos hacer lo siguiente:
- Leer el archivo realtime.txt que ha creado nuestro Cumulus.
- Separar cada dato del archivo en una tabla llamada dato[ ] (Ver)
- Pasar los datos a Farenheit (F), pulgadas (inches) y millas por hora (mph).
- Crear una línea llamada texto en donde estarán los datos de la dirección que debemos pulsar.

El proceso anterior lo conseguimos con este archivo:

C:\Archivos de programa\Cumulus\underground.php

<?php

$realtime = "realtime.txt";
$archivo = fopen($realtime, "r");
$linea=fgets($archivo);
fclose($archivo);

$dato = explode(" ", $linea);
$dato[2]=($dato[2] * 9 / 5) + 32; // Pasamos de Celsius a Farenheit
$dato[4]=($dato[4] * 9 / 5) + 32; // Pasamos de Celsius a Farenheit
$dato[12]=$dato[12] / 1.609; // Pasamos de km/h a mph
$dato[40]=$dato[40] / 1.609; // Pasamos de km/h a mph
$dato[9]=$dato[9] / 25.4; // Pasamos de milimetros a pulgadas
$dato[10]=$dato[10] / 33.86; // Pasamos de hpa a pulgadas

$texto="http://weatherstation.wunderground.com/weatherstation/updateweatherstation.php?ID=ICADIZJE2&PASSWORD=XXXX";
$texto=$texto."&dateutc=".$dato[0]."+".$dato[1]."&winddir=".$dato[7]."&windspeedmph=".$dato[12]."&windgustmph=".$dato[40];
$texto=$texto."&tempf=".$dato[2]."&rainin=".$dato[9]."&baromin=".$dato[10]."&dewptf=".$dato[4]."&humidity=".$dato[3];
$texto=$texto."&softwaretype=Cumulus&action=updateraw";
echo $texto;
?>


Cuando lo pulsemos generará una línea como esta...

Ya hemos conseguido la dirección con los datos incrustados en ella, pero debemos hacer que se envíe automáticamente y periódicamente sin necesidad de que tengamos que ponerla manualmente en el explorador de internet.

Para ello vamos a utilizar de nuevo el Autoit que ya vimos en páginas anteriores.

C:\Archivos de programa\Autoit\internet.au3

#cs ----------------------------------------------------------------------------

AutoIt Version: 3.2.8.1
Author: Juan Antono Villalpando

#ce ----------------------------------------------------------------------------

#include <ie.au3>
$intervalo = 20 * 60000

While 1

$pagina = _IECreate ("http://www.iesromerovargas.net/estacion_meteorologica/Cumulus/underground.php", 0, 0)
$codigo = _IEBodyReadText($pagina)
_IEQuit ($pagina)
$pagina = _IECreate ($codigo, 0, 0)
_IEQuit ($pagina)
sleep($intervalo)

Wend

Este código lo que hace es:
- ir a la Dirección web: http://www.iesromerovargas.net/estacion_meteorologica/Cumulus/underground.php
- coger su código fuente.
- ir a la Dirección que está en el código fuente.
- esta acción se repite cada 20 minutos.

Es decir, cada 20 minutos tomamos los datos del archivo realtime.txt, lo pasamos a una Dirección tipo PHP que contiene los datos incrustados, leemos esa página PHP, tomamos su código fuente, vamos a la dirección que está en su código fuente.

El código fuente del programa internet.au3, lo compilamos y lo hacemos autoejecutable internet.exe.

Posiblemente cuando el programa se ejecute saltará nuestro antivirus avisándonos de un posible virus, para evitarlo simplemente ponemos el archivo internet.exe como programa de confianza.

En fin, puede ser un proceso un poco lioso para alguien con pocos conocimientos de programación, sin embargo seguro que encontramos a más de uno que le interesa el proceso.


El IES Fco. Romero Vargas en los mapas de Weather Underground


 


IES Fco. Romero Vargas
Avda. Moreno Mendoza, s/n - 11408 Jerez de la Frontera (Cádiz) -
Tlf.: 671 530 256 /7 /8  -  956 70 99 17
  email: 11007922.edu@juntadeandalucia.es
Las informaciones ofrecidas por este medio tienen exclusivamente carácter ilustrativo, y no originarán derechos ni expectativas de derechos.
(Decreto 204/95, artículo 4; BOJA 136 de 26 de Octubre)