Tabla de contenido:
Video: Bambú claro (lámpara conectada): 3 pasos
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:42
¡Hola y bienvenido!
Light bamboo es una lámpara conectada que se enciende cuando se recibe una notificación en el teléfono inteligente Android al que está conectado. El objetivo de este instructivo es mostrarle la etapa de diseño del proyecto: desde la arquitectura de hardware hasta la conexión Bluetooth Low Energy (BLE) y la construcción de la aplicación Android.
Para nuestra lámpara, elegimos una planta de plástico para un diseño de decoración genial. Para este proyecto, las notificaciones que se muestran son de las siguientes aplicaciones: llamadas, sms / mms, facebook, messenger, instagram, whatsapp y gmail. Se atribuye un color claro a cada tipo de notificación.
Para este proyecto, necesitará:
- Un uC con un módulo BLE integrado: nFR51822 RedBearLab
- 3 anillos NeoPixel (12 LED RGB)
- Un teléfono inteligente Android
- Estudio de Android
Cada notificación tiene una prioridad específica, según su importancia. Por ejemplo, una notificación de llamada entrante es más importante que una notificación de Facebook. En ese caso, el color de los LED se asociará a la notificación de llamada entrante.
El teléfono inteligente en el que desarrollamos la aplicación es un Samsung Galaxy A5.
Paso 1: Pieza de hardware
Nuestra arquitectura es bastante simple.
Conecte los pines del anillo NeoPixel a la placa nRF51822 de la siguiente manera:
- Inout Pin de datos del NeoPixel Ring al puerto 3 del uC.
- Vcc del NeoPixel Ring a los 3.3V del uC.
- GND del NeoPixel Ring al GND del uC.
Puede notar que no usamos el pin de datos de salida del anillo NeoPixel. Esto se debe a que los pines de datos de entrada de los tres anillos NeoPixel que usamos en este proyecto están todos conectados al mismo puerto de la placa nRF51822 (pin 3).
Paso 2: parte del software
1. La comunicación Bluetooth Low Energy:
En una comunicación BLE, el servidor (que en nuestro caso es uC) y el cliente (el teléfono inteligente) intercambian datos mediante transacciones GATT. En esas transacciones, los datos se organizan jerárquicamente en secciones llamadas servicios, que agrupan piezas de datos de usuario relacionadas conceptualmente llamadas características. En nuestro caso, la encapsulación de datos es simple ya que solo tenemos una información para pasar del cliente al servidor (ver la imagen de arriba).
- en el lado del servidor: Para poder utilizar la placa nrf51822 como servidor BLE, primero instale la biblioteca "BLEPeripheral.h" en el IDE de Arduino. Esta biblioteca proporciona funciones listas para usar para la creación de servicios y características y publicidad.
- en el lado del cliente: para iniciar una comunicación BLE en Android Studio, primero configure los permisos BLE en el archivo de manifiesto. Luego, en el archivo activity_main.xml, agregue 4 botones: escanear, detener el escaneo, conectar y desconectar que permitirán a la aplicación buscar dispositivos BLE cercanos, detener el escaneo, conectarse y desconectarse a un dispositivo. En el archivo main_activity.java, implemente las funciones que están asociadas con los botones anteriores: startScanning (), stopscanning (), connectToDeviceSelected (), desconectarDeviceSelected (). Finalmente, implemente las funciones de devolución de llamada que se llaman cuando cambia el estado del cliente.
2. Gestión de notificaciones
- en el lado del cliente (en Android Studio): para escuchar las notificaciones provenientes del teléfono inteligente, implemente un oyente de notificaciones que se activa cuando ocurre una notificación en la barra de estado. Este oyente de notificaciones enviará un "mensaje", llamado intención, a la actividad principal cuando se publique o elimine una notificación. Este "mensaje" contiene un código de notificación que ayuda a identificar la aplicación que publicó la notificación. Para procesar la notificación en la actividad principal, cree un receptor de transmisión que recibirá el mensaje del oyente de la notificación. Luego, dependiendo del código de notificación, se envía un carácter diferente al servidor.
- en el lado del servidor (en Arduino IDE): se muestra la notificación que tiene la mayor prioridad.
Paso 3: Paso 3: Anexos
Aquí encontrará todo el código fuente.
Recomendado:
Pulsera de orientación conectada: 6 pasos
Pulsera de orientación conectada: este proyecto académico, la pulsera de orientación conectada, fue realizado por cuatro estudiantes de la escuela de ingeniería Polytech Paris-UPMC: S é bastien Potet, Pauline Pham, Kevin Antunes y Boris Bras. ¿Cuál es nuestro proyecto? Durante un semestre
Controlar un televisor y una Raspberry Pi conectada con el mismo control remoto: 4 pasos
Controlar un televisor y una Raspberry Pi conectada con el mismo control remoto: para controlar una Raspberry Pi con control remoto por infrarrojos, solíamos poder usar LIRC. Eso solía funcionar hasta Kernel 4.19.X cuando se volvió mucho más desafiante lograr que LIRC funcionara. En este proyecto tenemos una Raspberry Pi 3 B + conectada a un televisor y nosotros
Sistema Ambilight para cada entrada conectada a su televisor. WS2812B Arduino UNO Raspberry Pi HDMI (actualizado 12.2019): 12 pasos (con imágenes)
Sistema Ambilight para cada entrada conectada a su televisor. WS2812B Arduino UNO Raspberry Pi HDMI (actualizado 12.2019): Siempre he querido agregar ambilight a mi televisor. ¡Se ve tan genial! ¡Finalmente lo hice y no me decepcionó! He visto muchos videos y muchos tutoriales sobre cómo crear un sistema Ambilight para su televisor, pero nunca encontré un tutorial completo para mi necesidad exacta
Maceta conectada para Micro: bit: 4 pasos
Maceta conectada para Micro: bit: esta maceta está hecha con impresión 3D y tiene una tarjeta de microbit. Esta maceta contiene una tarjeta de micro: bit alojada debajo del contenedor de tierra. Este recibe la información del sensor de humedad del suelo (conductividad) .Transcripción de la humedad del suelo va
Microscopios de campo claro y fluorescencia de bajo costo: 9 pasos (con imágenes)
Microscopios de fluorescencia y de campo claro de bajo costo: la microscopía de fluorescencia es una modalidad de obtención de imágenes que se utiliza para visualizar estructuras específicas en muestras biológicas y otras muestras físicas. Los objetos de interés en la muestra (por ejemplo, neuronas, vasos sanguíneos, mitocondrias, etc.) se visualizan porque son fluorescentes