Tabla de contenido:

Reloj de pared de matriz LED O-R-A RGB y más ** actualizado en julio de 2019 **: 6 pasos (con imágenes)
Reloj de pared de matriz LED O-R-A RGB y más ** actualizado en julio de 2019 **: 6 pasos (con imágenes)

Video: Reloj de pared de matriz LED O-R-A RGB y más ** actualizado en julio de 2019 **: 6 pasos (con imágenes)

Video: Reloj de pared de matriz LED O-R-A RGB y más ** actualizado en julio de 2019 **: 6 pasos (con imágenes)
Video: Reloj LED Hora Minutos Temperatura Video 1 de 3 - www.LEDFACIL.com.ar 2024, Noviembre
Anonim
Image
Image
Reloj de pared de matriz LED O-R-A RGB y más ** actualizado en julio de 2019 **
Reloj de pared de matriz LED O-R-A RGB y más ** actualizado en julio de 2019 **
Reloj de pared de matriz LED O-R-A RGB y más ** actualizado en julio de 2019 **
Reloj de pared de matriz LED O-R-A RGB y más ** actualizado en julio de 2019 **
Reloj de pared de matriz LED O-R-A RGB y más ** actualizado en julio de 2019 **
Reloj de pared de matriz LED O-R-A RGB y más ** actualizado en julio de 2019 **

Hola. Aquí estoy con un nuevo proyecto llamado O-R-A

Es un reloj de pared de matriz LED RGB que muestra:

  • hora: minuto
  • temperatura
  • humedad
  • icono de condición meteorológica actual
  • Eventos de Google Calendar y notificaciones de recordatorio de 1h

en un momento específico muestra:

  • Lista de eventos de hoy y mañana de Google Calendar
  • pronóstico del tiempo
  • noticias de última hora

Funcionalidades adictivas:

  • fecha actual
  • Bola mágica 8
  • Temporizador de cocina

Para cualquier funcionalidad, el dispositivo reproduce una alarma de audio diferente. Para todo tipo de condiciones meteorológicas, hay un archivo de audio correspondiente que se reproducirá cuando se llame a la función.

Las funcionalidades como la lista de Google Calendar, el pronóstico del tiempo, las noticias de última hora de RSS comienzan a la hora preseleccionada cuando el dispositivo está en "modo reloj", también se pueden llamar operando directamente los interruptores. Otra funcionalidad durante el "modo reloj" muestra el día / mes / año actual. Se puede ejecutar presionando el botón ENTER. Presionando el botón CAMBIAR ESTADO y luego el botón ENTRAR dentro de los 3 segundos en "modo reloj", le permite ingresar al menú de opciones. El botón CAMBIAR ESTADO está configurado para desplazarse dentro del menú, el botón ENTRAR es para confirmar la opción seleccionada.

Este proyecto es una evolución de mis anteriores LEGOLED y TEMPO. El panel de matriz de led RGB tiene ahora una resolución de 32x64, por lo que es posible mostrar gráficos más intelegibles, texto fijo y desplazable al mismo tiempo. Usando las funcionalidades TEMPO, el dispositivo se enciende y apaga automáticamente sin ningún botón o temporizador externo. Un módulo PIR detecta la presencia de personas, por lo que enciende / apaga la pantalla.

El pronóstico del tiempo y los datos del calendario se recopilan cada minuto proporcionados por Google Calendar y Open Weather Map.

Este proyecto es totalmente personalizable a partir de una Raspberry PI B +, matriz de led rgb de 2 módulos 16x64 y fuente de alimentación. Se puede expandir, como hice yo, agregando tarjetas de sonido USB, parlantes, circuito de encendido / apagado.

Paso 1: lo que necesita

  • Raspberry Pi B + (con wifi integrado o dongle)
  • Matriz de led RGB 2 x 16x64 o 2 x 32x32
  • marco genérico (40x50 cm y 3 cm de profundidad aproximadamente)
  • hoja de plástico esmerilado
  • película solar para ventana
  • PS 5V 10A
  • cables
  • vaina termoendurecible (*)
  • módulo de relés (*)
  • PS extra para amplificador de audio (*)
  • Módulo amplificador de audio de 3W (*)
  • Altavoces (*)
  • Tarjeta de sonido USB (*)
  • 2 x microinterruptor (*)
  • PIR (*)
  • Attiny85 (*)
  • DS3231 (*)
  • Mosfet IRF540 (*)
  • Resistencias: 3x1K, 2x10K, 1x2K (*)
  • bloque de terminales (*)
  • regleta de cabecera hembra (*)
  • encabezado tiras macho (*)

(*) Opcional

Paso 2: Configuración de Raspberry Pi

Esta guía se basa básicamente en Raspbian Jessie Lite, Python 2.7 y la biblioteca RGB LED MATRIX del usuario de Hzeller Github.

En primer lugar, actualice y actualice el RPI

Instalar git

~ $ sudo apt-get install git

Descargue la biblioteca RGB LED MATRIX de Github

~ $ git clon

~ $ cd rpi-rgb-matriz-led

~ $ sudo hacer

tarjeta de sonido interna RPI de lista negra

~ $ cat << EOF | sudo tee /etc/modprobe.d/blacklist-rgb-matrix.conf

lista negra snd_bcm2835

EOF

~ $ sudo update-initramfs -u

Configure los parámetros de la tarjeta de sonido externa si necesita capacidades de audio:

~ $ sudo nano /usr/share/alsa/alsa.conf

cambio:

defaults.ctl.card 0

defaults.pcm.card 0

para

defaults.ctl.card 1

defaults.pcm.card 1

luego reinicie.

Ahora instale la biblioteca de matrices

~ $ cd / home / pi / rpi-rgb-matriz-led

~ $ sudo apt-get update && sudo apt-get install python2.7-dev python-pillow -y

~ $ hacer build-python

~ $ sudo make install-python

e instalar otras bibliotecas necesarias:

~ $ sudo easy_install pip

~ $ sudo pip install

Copie el script samplebase.py de ~ / rpi-rgb-led-matrix / bindings / python / samples / al directorio de inicio

Obtenga la clave API registrándose gratis para Open Weather Map

Instalar ahora el contenedor OWM Python para PYthon 2.7 (gracias al usuario de CSPARPAGithub)

~ $ sudo pip install git +

Obtenga la credencial de Google Calendar siguiendo las instrucciones en la API de Google Calendar

Para reproducir audio, instale Pygame

~ $ sudo apt-get install python-pygame

Los feeds RSS necesitan Feedparser instalado

~ $ sudo pip install feedparser

copie mi script ORAeng_131.py (versión en inglés) o ORAita_131.py (versión en italiano) al directorio de inicio

crear carpetas para sonidos e imágenes:

mkdir dbsounds

mkdir owm

descargue y copie todos los archivos-p.webp

www.dropbox.com/sh/nemyfcj1a1i18ic/AAB1W7I6lg5EgqL1gJZPWVTxa?dl=0

agregue su credencial OWM a la línea 69 (API_key)

establezca la ciudad para el pronóstico del tiempo (verifique si está cubierta por OWM y si se acepta el nombre correcto) en las líneas 213, 215

obs = owm.weather_at_place ('Nápoles, IT')

fc = owm.three_hours_forecast ('Nápoles, IT')

********************************* ACTUALIZACIÓN 28/7/2019 ********** ******************

La nueva API de Google Calendar crea problemas. He resuelto la eliminación de algunos módulos:

~ $ sudo apt-get remove --purge python-setuptools

~ $ sudo apt-get autoremove python-pyasn1

prueba la secuencia de comandos en ejecución

~ $ sudo python ORAeng_150.py # o ORAita_150.py para la versión italiana

la primera vez, el guión solicitará la autorización de GCAL. Haga clic en el enlace a la credencial de API de Google. Dé permiso entonces, si todo está bien, verá que el reloj comienza.

Debido al uso excesivo de RAM después de varias horas, escribí un script que simplemente reinicia el script de Python cuando el uso de RAM supera un nivel de umbral. Luego copie en el directorio de inicio el script llamado memcheck cambiando el nombre a memcheck.sh y agréguelo a crontab -e junto con el script principal

* / 5 * * * * bash /home/pi/memcheck.sh@reboot sudo python /home/pi/ORAeng_150.py

Paso 3: los guiones

El script principal debe modificarse según sus necesidades. Suponiendo que las credenciales de OWM y Goggle Calendar se establezcan como sus respectivas instrucciones de API, los parámetros más importantes son:

Lista de eventos del calendario que se ejecutan cada hora en los minutos 2, 32 (consulte la línea de secuencia de comandos 65)

Las condiciones meteorológicas y el pronóstico se realizan cada hora en los minutos 7, 37 (consulte la línea de guión 66).

noticias de última hora que se presentan cada hora en el minuto 11 (ver línea de guión 67)

canal rss de noticias de última hora. El script interno está configurado como RSS Instructable, pero se puede cambiar. (vea la línea de guión 366)

Obviamente, el guión da prioridad a las notificaciones de recordatorios o eventos del calendario de entradas. A veces, el reloj no realiza sus funciones para evitar el cruce de funcionalidades.

El temporizador de encendido / apagado de Attiny85 debe programarse cargando el boceto Tempo_V1_9_1Mhz_bugfix.ino.

Esto permite encender el dispositivo a las 8 de la mañana y apagarlo a las 23. Consulte el tutorial para obtener más información.

Paso 4: el circuito

El circuito
El circuito
El circuito
El circuito
El circuito
El circuito

El circuito tiene básicamente 3 tramos

- temporizador de encendido / apagado manejado por el módulo DS3231, Attiny85 y Mosfet

- interruptor para el control manual de las funciones del reloj

- sección de conexión donde se encuentra el cableado para los datos y la potencia de la matriz LED RGB, amplificador de audio y Raspberry Pi

No se menciona un divisor de voltaje resistivo que permite que RPI lea una señal ALTA / BAJA de 5 V de Attiny85

Los interruptores están conectados al pin RPI y GND directamente usando resistencias internas

El temporizador Attiny85 proviene de mi proyecto anterior llamado TEMPO. Básicamente, DS3231 envía una señal BAJA al pin de interrupción Attiny85 que lo despierta del modo de suspensión. Al despertar, Attiny85 envía una señal ALTA al transistor Mosfet, activando el circuito de suministro de energía para RPI, matriz de LED y amplificador de audio (si no está conectado a PS adicional a través de un relé, como mi última configuración).

Para apagar el RPI, mi script contempla que el RPI escuche la señal digital en el pin 14, cuando está ALTO, se llama comando de apagado. Luego, RPI realiza un proceso de apagado correcto, luego, después de un minuto, Attiny85 vuelve al modo de suspensión y Mosfet recibe una señal BAJA que apaga todo el dispositivo. Este proceso es duro pero efectivo.

El módulo PIR es opcional y se conecta directamente a RPI GPIO.

Mi configuración requiere que los siguientes pines RPI GPIO estén conectados a:

15 a PIR

14 a Attiny85 pin 3 a través del divisor de voltaje

21 al módulo de relés

2 para cambiar (BOTÓN ENTER)

3 para cambiar (CAMBIAR BOTÓN DE ESTADO)

Cuestiones:

- Ruido debido a la fuente de alimentación LED Matrix, resuelto usando un pequeño PS solo para el amplificador de audio. Un relé opcional permite encender el amplificador solo cuando sea necesario. Esto puede causar un ruido de golpe cuando se enciende / apaga.

El circuito ha sido grabado con placa de cobre, impresora 3D, marcador y cloruro férrico.

Paso 5: Montaje

Montaje
Montaje
Montaje
Montaje
Montaje
Montaje
Montaje
Montaje

He adaptado un marco genérico de 40x50cm a este proyecto junto con piezas impresas en 3D y algunos extras opcionales.

El vidrio está protegido por una película solar de ventana y una lámina de plástico esmerilado. La matriz de leds debe mantenerse a aproximadamente 1cm del vidrio para evitar ver los leds blancos del interior. Se necesitan tornillos pequeños como tuercas y pernos M3. Obligatorios son cables y vaina termoendurecible.

Las matrices de led se atornillan en el panel trasero del marco.

Paso 6: ¿Y ahora?

Y ahora ?
Y ahora ?
Y ahora ?
Y ahora ?

El siguiente paso será agregar un sensor de temperatura, activación de las capacidades de bluetooth y, por qué no, un reproductor de radio por Internet hasta el máximo potencial de Raspberry Pi.

Adiós

Concurso de relojes
Concurso de relojes
Concurso de relojes
Concurso de relojes

Finalista en el Concurso de Relojes

Recomendado: