Mostrando entradas con la etiqueta pronostico del tiempo. Mostrar todas las entradas
Mostrando entradas con la etiqueta pronostico del tiempo. Mostrar todas las entradas

miércoles, 3 de enero de 2018

Cartelería Digital

  Desde que vi la tienda nueva de mi hermana, estuve pensando cómo hacer para montar un sistema de publicidad digital con una pantalla a modo de cartel dinámico donde poner publicidad, información, fotos de trabajos o vídeos.

  La idea era que pudiera cambiar el contenido sin necesidad de saber de programación y sin tener un ordenador dedicado, así que como tenía una Raspberry Pi empecé a hacer pruebas con ella, tiene resolución suficiente, conectividad, bajo consumo y bajo precio.

  Además quería incluir información de la producción de la planta fotovoltaica que tiene instalada y algo de información general, noticias, pronóstico del tiempo, etc.

  Así que me puse a buscar aplicaciones linux para poder emitir los mensajes, pensé en hacer una página web a pantalla completa y encontré una distribución de un reproductor web que funciona sobre Raspbian, RiseVision que hace todo lo que buscaba, aunque no siempre gratis.

Dispone de un editor en el que puedes ir diseñando tu display y te ofrece widgets que puedes insertar con la información que quieres, casi todos son de pago, pero hay uno gratuito que te permite insertar código HTML y este fue el que utilicé para hacer casi toda la página.


  Toda la pantalla es dinámica, la parte derecha es un feed de fotos de Instagram, de forma que lo puede mantener actualizado, todo lo que ella publique en la cuenta dedicada a la tienda de instagram sale en un carrusel que va desplazando hacia la izquierda las fotos.
  Este widget fue generado con un HTMLWidget de RiseVision insertando el código de un widget generado a su vez en SnapWidget.

  La parte que indica Ofertas especiales Día de Reyes tambien cambia, a los 10 segundos, cambia a un listado de ofertas que se consulta en una hoja excell de Google compartida de manera que puede cambiar su contenido con sólo acceder a esa hoja en GoogleDrive, si la hoja es mayor que el tamaño disponible en su cuadro, se mueve con un suave scroll hacia arriba:



  15 segundos después vuelve a cambiar e inserta imágenes de webcams en tiempo real de MeteoGalicia, para ver cómo está el tiempo en diferentes puntos y ver si vale la pena bajar
 a la playa ;)  o si, como ahora llega un temporal por el mar...



  El resto son el reloj con fecha y hora (Widget gratuito de RiseVision), el estado actual del tiempo y la temperatura actual (widget de MeteoGalicia insertado en HTML de RiseVision).
  Por la parte de abajo, la producción fotovoltaica, un feed de noticias creado insertando el código de FeedWind en un HTML de RiseVision, que consulta noticias de EuropaPress en gallego y de 20minutos, y por último un pronóstico del tiempo con un widget de la Aemet.

  Y ya está, la página va cambiando y los mensajes que no caben se desplazan lentamente:


  Ahora falta decidir si lo ponen en una pantalla o en un proyector...

jueves, 24 de marzo de 2016

Pronóstico del tiempo

Ya que tenemos sensores de temperatura, humedad, presión, velocidad del viento y demás, podremos predecir el tiempo?

Pues hay recursos por ahí para hacerlo, pero no es fácil, ni las agencias meteorológicas aciertan a veces... Con súper ordenadores dedicados a calcular modelos de predicción, satélites, sensores por todo el mundo y demás, tampoco pretendo competir con ellos.
  Pero encontré un modelo de principios de siglo muy curioso, que se basa en la variación de la presión, el modelo Zambretti, si es cierto lo que dicen, acierta en un 90% las predicciones leídas a las 9 de la mañana... Supongo que como se hacía en los barcos para predecir las tormentas mirando la velocidad de bajada del barómetro.
   El algoritmo tiene en cuenta un montón de combinaciones de datos de los sensores para elegir un pronostico entre la lista de 26 posibles estados del tiempo.
Las posibles predicciones traducidas que he incorporado en el algoritmo:
1.Bueno, estable
2.Buen tiempo
3.Bueno, mejorando
4.Bueno, un poco menos estable
5.Bueno, algun posible chubasco
6.Casi bueno, mejorando
7.Casi bueno, posible chubasco pronto
8.Casi bueno, posibles chubascos mas tarde
9.Chubascos pronto, mejorando
10.Variable, mejorando
11.Variable, probable lluvia
12.Mas bien inestable, aclarando luego
13.Inestable, probablemente mejorando
14.Lluvioso con intervalos de claros
15.Lluvioso, tendiendo a mas inestable
16.Variable, algo de lluvia
17.Inestable, algun corto intervalo de claros
18.Inestable, lluvia mas tarde
19.Inestable, algo de lluvia
20.En general inestable, algo mejor a veces
21.Lluvia ocasional, empeorando
22.Lluvia a veces, muy inestable
23.Lluvia intervalos frecuentes
24.Lluvia, muy inestable
25.Tormenta, puede mejorar
26.Tormenta, muy lluvioso

Los números se los he puesto para tener una idea de la escala y tener de un vistazo el grado de "bueno" de un tiempo bueno.

  Para calcular la variación de la presión de una manera simplificada, en vez de utilizar derivadas de la función resultante, lo que hace el algoritmo es calcular la media de los valores de los últimos 30 minutos y de los últimos 10 minutos, si ésta es mayor, la presión está subiendo y viceversa.

  En ThingSpeak está configurado como un plugin, os dejo el código HTML, CSS y JAVASCRIPT en un archivo de texto donde siempre  este plugin genera una visualización en una ventana como las de siempre, con el texto de la predicción.



  Se me ocurre ahora que sería fácil implementar un montaje decorativo como aquellos monjes que había de madera y cartón que hacían una especie de predicción del tiempo:


  Estos funcionaban con un pelo humano que hacía de higrómetro, según la humedad del aire se encogía o estiraba moviendo la mano del pobre fraile... Entonces pondría lluvioso cuando ya el aire estuviese húmedo.

  Pues con el algoritmo anterior adaptado al micro y un servo para mover el brazo, sería fácil de hacer, y además podría funcionar de manera autónoma sin conexión a internet, y supongo que mejor que lo del pelo...

  Esto es parte del invento de la caldera WiFi, el resto aquí y en las entradas posteriores.