Con la ayuda de pxlBlck, puede estar informado sobre eventos de diferentes maneras. Una de estas opciones es poder mostrar iconos configurados previamente.
Desafortunadamente, esta opción solo funciona en matrices de LED con una altura superior a uno, es decir, no en los pxlBlcks que "solo" usan una tira de LED o una matriz de LED de 1 × 60.
Por lo tanto, además de la opción de mostrar iconos, también existe la opción de mostrar animaciones. Estas animaciones funcionan en todas las matrices LED compatibles con el complemento pxlBlck.
Conceptos básicos de animación
Las animaciones solo se pueden mostrar mediante el comando correcto. Esto significa que estos solo se llevan a cabo de manera relacionada con el evento.
Por ejemplo, puede activar una animación cuando se envía un determinado mensaje al pxlBlck a través de MQTT, un sensor conectado ha asumido un determinado estado, pero también, por ejemplo, cuando el pxlBlck se ha iniciado o ha perdido la conexión a la WLAN. Recopilaré algunos ejemplos bajo la etiqueta pxlBlckUsecase. Puede encontrar una lista de estos casos de uso en https://nerdiy.de/tag/pxlblckusecase/
A continuación se presentan algunos conceptos básicos sobre la estructura básica del comando para activar animaciones en pxlBlck. Cómo puede enviar este comando al pxlBlck también se encuentra en el artículo ESPEasy: ejecuta comandos y acciones a través de HTTP, MQTT, UDP y directamente descrito. También puede leer información básica sobre la estructura de los comandos pxlBlck en este artículo pxlBlck - Comandos para configurar el pxlBlck
nombre de comando
pbani
Resumen de comandos
pbani,[animation_type 1-6],[color_on_red 0-255],[color_en_verde 0-255],[color_en_azul 0-255],[color_apagado_rojo 0-255],[color_apagado_verde 0-255],[color_apagado_azul 0-255],[animación_retraso 0-500],
Descripción de parámetros
nombre del parámetro | Descripción | Rango de valores permitido |
---|---|---|
tipo_animación | Este parámetro establece el tipo de animación. Puede encontrar una descripción general de las posibles animaciones en la siguiente tabla. | 1-6 |
color_en_rojo | Este parámetro determina el brillo del color rojo en la animación de entrada. | 0-255 |
color_en_verde | Este parámetro determina el brillo del color verde en la animación de entrada. | 0-255 |
color_en_azul | Este parámetro determina el brillo del color azul en la animación de entrada. | 0-255 |
color_apagado_rojo | Este parámetro determina el brillo del color rojo en la animación inicial. | 0-255 |
color_apagado_verde | Este parámetro determina el brillo del color verde en la animación inicial. | 0-255 |
color_apagado_azul | Este parámetro determina el brillo del color azul en la animación inicial. | 0-255 |
animación_retraso | Aquí puede establecer la duración de la animación. Se especifica en milisegundos y describe el tiempo de visualización por píxel. | 0-500 |
Descripción general de la animación
IDENTIFICACIÓN | Descripción |
---|---|
1 | La matriz de LED se llena con el color de entrada de la derecha y luego se sobrescribe con el color de salida de la izquierda. |
2 | La matriz de LED se llena con el color de entrada de la izquierda y luego se sobrescribe con el color de salida de la derecha. |
3 | Una línea vertical (en color de entrada) se mueve de izquierda a derecha (en color de salida). |
4 | Una línea vertical (en el color de origen) se mueve de izquierda a derecha (en el color de origen). |
5 | La matriz de LED se llena desde ambos lados hacia el centro y luego se disuelve nuevamente. |
6 | La matriz de LED se llena desde el centro y luego se disuelve nuevamente. |
Información de implementación
La ejecución de la animación se implementa de tal manera que no se pueden realizar otras tareas mientras se muestra la animación. Como resultado, la carga del menú web de pxlBlck, por ejemplo, no puede continuar mientras se muestra una animación. Además, no se procesan otros comandos mientras se ejecuta la animación. Sin embargo, estos deben ejecutarse después de que la animación haya terminado.
"Tiempo de enfriamiento"
La edición de animaciones está limitada en el tiempo. Esto significa que después de recibir un comando de visualización de animación, pxlBlck ignora otros comandos de visualización de animación durante un tiempo.
Este período de tiempo se define en el código fuente y no se puede cambiar durante la operación. Si quieres cambiar esto: Se define con el #define PXLBLCK_ANIMATION_COOLDOWN_TIME.
ejemplos
El siguiente párrafo muestra algunos comandos de ejemplo y cómo se muestran en los distintos pxlBlcks.
Información:
- Tipo de animación: 1
- Retardo: 50ms
- Color de entrada (valor RGB): 150,0,0
- Color de salida (valor RGB): 0,0,150
dominio:
pbani,1,150,0,0,0,0,150,50
Información:
- Tipo de animación: 2
- Retardo: 50ms
- Color de entrada (valor RGB): 50,50,50
- Color de salida (valor RGB): 0,50,0
dominio:
pbani,2,50,50,50,0,0,50,50,
Información:
- Tipo de animación: 3
- Retardo: 150ms
- Color de entrada (valor RGB): 50,50,50
- Color de salida (valor RGB): 0,50,0
dominio:
pbani,3,50,50,50,0,50,0,150,
Información:
- Tipo de animación: 4
- Retardo: 50ms
- Color de entrada (valor RGB): 50,50,50
- Color de salida (valor RGB): 0,50,0
dominio:
pbani,4,50,50,50,0,50,0,50,
Información:
- Tipo de animación: 5
- Retardo: 50ms
- Color de entrada (valor RGB): 50,50,50
- Color de salida (valor RGB): 0,0,50
dominio:
pbani,5,50,50,50,0,0,50,50,
Información:
- Tipo de animación: 6
- Retraso: 20ms
- Color de entrada (valor RGB): 50,50,50
- Color de salida (valor RGB): 0,50,0
dominio:
pbani,6,50,50,50,0,50,0,50,
Información:
- Tipo de animación: 5
- Retraso: 20 ms (20 ms es el retraso predeterminado utilizado si este parámetro se establece en cero)
- Color de entrada (valor RGB): 150,0,0
- Color de salida (valor RGB): 0,0,0
dominio:
pbani,5,150,0,0,0,0,0,
Información:
- Tipo de animación: 1
- Retraso: 20 ms (20 ms es el retraso predeterminado utilizado si este parámetro se establece en cero)
- Color de entrada (valor RGB): 100,100,100
- Color de salida (valor RGB): 0,0,0
dominio:
pbani,1,100,100,100,0,0,0,
Información:
- Tipo de animación: 1
- Retardo: 50ms
- Color de entrada (valor RGB): 150,0,0
- Color de salida (valor RGB): 0,0,150
dominio:
pbani,1,150,0,0,0,0,150,50
Información:
- Tipo de animación: 3
- Retardo: 150ms
- Color de entrada (valor RGB): 50,50,50
- Color de salida (valor RGB): 0,50,0
dominio:
pbani,3,50,50,50,0,50,0,150
Información:
- Tipo de animación: 4
- Retardo: 50ms
- Color de entrada (valor RGB): 50,50,50
- Color de salida (valor RGB): 0,50,0
dominio:
pbani,4,50,50,50,0,50,0,50
Diviértete con el proyecto.
Espero que todo te haya funcionado como se describe. Si no es así, o si tiene alguna pregunta o sugerencia, hágamelo saber en los comentarios. Si es necesario, lo añadiré al artículo.
Las ideas para nuevos proyectos siempre son bienvenidas. 🙂
PS Muchos de estos proyectos, especialmente los proyectos de hardware, cuestan mucho tiempo y dinero. Por supuesto que hago esto porque lo disfruto, pero si crees que es genial que comparta la información contigo, me encantaría hacer una pequeña donación al fondo del café. 🙂