Tabla de contenido:

Nube de pronóstico del tiempo: 11 pasos (con imágenes)
Nube de pronóstico del tiempo: 11 pasos (con imágenes)

Video: Nube de pronóstico del tiempo: 11 pasos (con imágenes)

Video: Nube de pronóstico del tiempo: 11 pasos (con imágenes)
Video: Predicción del Tiempo | Aula chachi - Vídeos educativos para niños 2024, Mes de julio
Anonim
Nube de pronóstico del tiempo
Nube de pronóstico del tiempo

Este proyecto hace una nube meteorológica usando una Raspberry Pi Zero W. Se conecta a la API de Yahoo Weather y dependiendo del pronóstico para el día siguiente cambia de color.

Me inspiré en el Wisconsin Gas Building que tiene una llama en el techo que cambia según el pronóstico. Es un hito icónico en Milwaukee, WI.

El siguiente poema lo acompaña.

Cuando la llama es roja, ¡se avecina un clima cálido! Cuando la llama es dorada, ¡ten cuidado con el frío! Cuando la llama es azul, no hay cambios a la vista. Cuando hay una llama parpadeante, ¡espere nieve o lluvia!

Pensé que una nube se vería mejor en la pared. Para el código, si el máximo pronosticado para el día siguiente es superior al 10% más cálido, será rojo, si el mínimo pronosticado es más del 10% más frío, será dorado. Pero en caso de que se cumplan ambos criterios, el color rojo siempre ganará. Si no se cumple ninguno de los criterios, la nube permanece azul. Si hay lluvia o nieve en el pronóstico, parpadeará.

Paso 1: Actualización de 2019

Parece que Yahoo ha descontinuado esta API que usé para esto. Por lo tanto, actualmente esta guía no funcionará para esa parte. Se puede ver más información en

Paso 2: Piezas necesarias

Imagen
Imagen
  • Tira de Neopixels - 60 LEDS por metro
  • Colgadores para marcos de cuadros con dientes de sierra
  • Bumpon transparente 3M SJ5302
  • Tabla de roble S4S de 1/2 pulg. X 6 pulg. X 3 pies
  • Tablero duro de 1/8"
  • 1/8 "Acrílico Blanco Translúcido
  • Clavija de madera de 1/8"
  • Watco Natural Danish Oil Wood Finish también Dark Walnut opcional para algunas nubes adicionales
  • Pegamento de madera
  • Pistola de silicona
  • Grapadora
  • Cable de núcleo trenzado con cubierta de silicona - 25 pies 26 AWG - Rojo, negro y azul
  • Raspberry Pi Zero W
  • Tarjeta micro SD
  • Cable USB blanco - o corte uno que tenga por ahí

Paso 3: corte las piezas

Imagen
Imagen

He incluido el archivo svg para recortarlos. Como ves hay 4 capas. Puede ver en el resto de la guía que tengo mis partes volteadas porque tuve un percance de corte en la capa superior y la volteé para ocultar la imperfección.

En la capa 2 y 4 debe haber una inserción de 1/8 de profundidad entre el camino interno y el camino del medio. Eso permitirá que el difusor y la placa posterior se empotren. Usé acrílico translúcido para el difusor y tableros duros para la placa posterior.

Imagen
Imagen

Esta fue la imagen de vista previa en mi Shapeoko3 antes de cortar las partes. Reutilizamos las nubes internas más adelante en la guía, así que no las deseche.

Imagen
Imagen

La forma de la nube utilizada fue de softicons.com ya que mis habilidades de dibujo no son tan buenas.

Paso 4: ensamblar la nube

Imagen
Imagen

Una vez que las partes están cortadas, puede pegarlas juntas, solo dos piezas necesitan el pegamento. Luego, se coloca la clavija de 1/8 en los orificios para ayudar a alinear. No utilicé pegamento en esos para poder quitarlos una vez que las capas estén pegadas.

Imagen
Imagen
Imagen
Imagen

Use algunas abrazaderas para mantener las piezas juntas mientras se seca. Limpia cualquier exceso de pegamento que se derrame de las costuras.

Imagen
Imagen

Mientras se secaba el pegamento, tomé las piezas sobrantes del interior y las lijé con grano 150 y luego con grano 220. Luego apliqué una toallita sobre la mancha. Usé Watco Danish Oil en Dark Walnut para algunos y Natural para otros. Con un paño limpio, ponga un poco de mancha y simplemente limpie las nubes. Reservar y dejar secar. Asegúrese de colgar el paño correctamente para que se seque para que no se queme con los aceites.

También es un buen momento para teñir la capa superior. De esta manera, no se manchará todo el difusor más adelante.

Mancha la nube principal

Una vez que el pegamento esté seco, puede lijar y teñir la nube principal con aceite danés natural.

Imagen
Imagen

Paso 5: agregue la tira de Neopixel

Imagen
Imagen

Para determinar la cantidad de tira necesaria, la coloqué dentro y me aseguré de que llegara a todas las partes. Terminé usando 19 tiras. Pero después de pegar me di cuenta de que debería haber usado 20.

Imagen
Imagen

Luego quité la funda de goma alrededor de la tira ya que no necesitaba esa parte. Ahora necesitaba agregar cables a la tira para unirlos al Pi Zero.

Imagen
Imagen

Descubrí que funciona mejor si sueldas previamente el extremo de la tira junto con los extremos del cable.

Imagen
Imagen

Ahora suelde los cables para pelarlos.

Imagen
Imagen

Con la placa insertada en la parte posterior, aplique un poco de pegamento caliente en algunos puntos para sujetar la tira de NeoPixel a los bordes de la nube. Trate de mantener la tira lo más cerca posible de la placa posterior. Como puede ver aquí, debería haber usado otro LED en la tira.

Paso 6: agregue el difusor y la capa superior

Imagen
Imagen

Coloque la capa difusora en el recuadro y aplique una pequeña cantidad de pegamento alrededor de la parte superior.

Imagen
Imagen

Ahora, igual que antes, coloque la capa superior y fíjela. Asegúrese de alinearlo con las otras capas lo mejor posible y limpie el exceso de pegamento.

Paso 7: Sueldelo

Imagen
Imagen

El cableado es bastante simple para esto.

GPIO 18 en Pi a Din Neopixel

5V de Pi a 5V Neopixel

GND de Pi a GND Neopixel

Imagen
Imagen

Antes de soldar el cable USB necesitamos perforar un agujero para ello. Mi cable era un poco menos de 3 mm, así que perforé un agujero con una broca de 3 mm asegurándome de no perforar la tira de neopixel.

Imagen
Imagen

Corte el extremo que no tiene el extremo macho que se conecta a la computadora. Luego retire parte del blindaje para acceder a los cables. Solo necesitamos los cables rojo (5V) y negro (GND).

Imagen
Imagen

Así es como debería verse todo soldado.

Paso 8: configura la Pi

Lo primero que se necesita es una tarjeta SD que cargó el sistema operativo. Usé Raspbian Jessie Lite.

Utilice un programa como etcher.io para grabar la imagen en la tarjeta SD. Una vez que esté completo, necesitaremos agregar dos archivos al directorio de arranque para que pi tenga habilitado ssh y la información wifi correcta.

Abra el archivo wpa_supplicant.conf con un editor de texto e ingrese su ssid wifi y contraseña. Luego agregue el archivo a la tarjeta SD. Para habilitar ssh solo necesitamos un archivo etiquetado como ssh sin extensiones colocadas en la tarjeta sd también.

También se puede encontrar una mejor explicación de esto en esta guía en adafruit.com

Conectarse a Pi

Utilizo un programa llamado putty y SSH en el Pi. Puede encontrar alguna documentación sobre cómo hacer esto en el sitio web de Raspberry Pi.

Una diferencia es que tienen que encontrar la IP del pi. Me ha resultado más fácil usar el nombre de host para conectar, que es raspberrypi.local

Instale las bibliotecas necesarias

Primero necesitamos pip así que ejecuta este comando

sudo apt-get install python-pip

Ahora podemos instalar solicitudes.

solicitudes de instalación de pip

A continuación, instalaremos los elementos necesarios para utilizar los NeoPixels. Estos pasos se toman de una guía titulada NeoPixels en Raspberry Pi del sitio web de Adafruit.

sudo apt-get install build-essential python-dev git scons swig

Después de eso, ejecutamos estos comandos.

clon de git

cd rpi_ws281x scons

Luego

cd python

sudo python setup.py instalar

Ahora se deberían instalar todas las bibliotecas necesarias.

Obtenga el programa en el Pi

Recomendaría obtener los archivos del repositorio de GitHub ya que el código puede cambiar o corregirse en algunos momentos.

Puede cortar y pegar el contenido en un nuevo archivo o usar WinSCP para transferir los archivos.

Si corta y pega, querrá crear un nuevo archivo usando este comando

sudo nano cloud.py

Luego pegue el contenido de cloud.py

Una vez allí, es posible que deba cambiar algunos valores. Si usó una cantidad diferente de NeoPixels o pin GPIO

Imagen
Imagen

Si la cantidad de NeoPixels utilizada es diferente, cambie LED_COUNT. Lo mismo si el pin GPIO utilizado es diferente, cambie LED_PIN

Imagen
Imagen

También en la línea 72 necesita cambiar la ubicación, a menos que desee el pronóstico para sheboygan.

Ejecuta el código

Una vez que haya realizado los cambios, puede probar el código.

sudo python cloud.py

Imagen
Imagen

La nube debería iluminarse ahora y en la ventana de la terminal debería ver la salida de lo alto y lo bajo de hoy junto con lo alto y lo bajo de mañana.

Establecer para que se ejecute automáticamente al inicio

Para configurar el inicio automático, seguí esta guía del sitio web de Raspberry Pi

Esta es la línea de código que agregué al archivo rc.local.

python /home/pi/cloud.py y

Paso 9: Finalizar el montaje

Imagen
Imagen

Usé un marcador para medir y tratar de encontrar el centro lo mejor que pude. Luego coloqué las perchas de dientes de sierra y luego dos parachoques de goma.

Imagen
Imagen

Para colocar el Pi, volví a mi confiable pistola de pegamento caliente y puse un poco de pegamento caliente en la parte posterior del Pi y lo pegué al panel posterior.

Imagen
Imagen

Usé un destornillador para crear un espacio en la grapa.

Imagen
Imagen

Luego doblo las grapas para sujetar la placa posterior.

Termina las nubes pequeñas

Imagen
Imagen

Cada una de las nubes pequeñas necesita una percha y dos parachoques.

Paso 10: Impresión 3D

También he incluido los archivos STL para si no tiene acceso a la máquina CNC de madera. También se incluye el archivo de diseño de Autodesk Fusion 360. De esa forma, puede modificar el diseño para optimizarlo para la impresión.

Paso 11: Pensamientos finales

Este proyecto salió bastante bien. Realmente me gusta el aspecto del roble en comparación con el MDF en otro proyecto que hice. Me hubiera gustado hacer esto con una placa esp8266, pero mis habilidades con Arduino IDE y JSON no son tan buenas como con Pi.

Algunas adiciones futuras a este proyecto serían una pantalla de 7 segmentos detrás del difusor para que también pudiera mostrar la temperatura actual.

También puse los archivos en GitHub y agregué código para si tiene un Pimoroni Blinkt, Pimoroni Unicorn PHAT o un Raspberry PI Sense Hat

Concurso de Internet de las cosas 2017
Concurso de Internet de las cosas 2017
Concurso de Internet de las cosas 2017
Concurso de Internet de las cosas 2017

Gran Premio en el Concurso de Internet de las Cosas 2017

Desafío intocable
Desafío intocable
Desafío intocable
Desafío intocable

Subcampeón del Desafío Intocable

Concurso de luces 2017
Concurso de luces 2017
Concurso de luces 2017
Concurso de luces 2017

Segundo premio en el Concurso de Luces 2017

Recomendado: