Sommario:
Video: Bambù chiaro (lampada collegata): 3 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:02
Ciao e Benvenuto!
Light bamboo è una lampada connessa che si accende quando viene ricevuta una notifica sullo smartphone Android a cui è connesso. L'obiettivo di questo tutorial è mostrarti la fase di progettazione del progetto: dall'architettura hardware, alla connessione Bluetooth Low Energy (BLE) e alla creazione dell'applicazione Android.
Per la nostra lampada, abbiamo scelto una pianta di plastica per un design decorativo accattivante. Per questo progetto, le notifiche che vengono visualizzate provengono dalle seguenti applicazioni: chiamate, sms/mms, facebook, messenger, instagram, whatsapp e gmail. Ad ogni tipo di notifica viene attribuito un colore chiaro.
Per questo progetto avrai bisogno di:
- Un uC con un modulo BLE integrato: nFR51822 RedBearLab
- 3 anelli NeoPixel (12 LED RGB)
- Uno smartphone Android
- Android Studio
Ogni notifica ha una priorità specifica, a seconda della sua importanza. Ad esempio, una notifica di chiamata in arrivo è più importante di una notifica di Facebook. In tal caso, il colore dei LED sarà associato alla notifica della chiamata in arrivo.
Lo smartphone su cui abbiamo sviluppato l'applicazione è un Samsung Galaxy A5.
Passaggio 1: parte hardware
La nostra architettura è abbastanza semplice.
Collegare i pin NeoPixel Ring alla scheda nRF51822 come segue:
- Inout Data pin del NeoPixel Ring alla porta 3 dell'uC.
- Vcc del NeoPixel Ring ai 3.3V dell'uC.
- GND del NeoPixel Ring al GND dell'uC.
Puoi notare che non usiamo il pin Output Data del NeoPixel Ring. Questo perché i pin Input Data dei tre NeoPixel Ring che utilizziamo in questo progetto sono tutti collegati alla stessa porta della scheda nRF51822 (pin 3).
Passaggio 2: parte software
1. La comunicazione Bluetooth Low Energy:
In una comunicazione BLE, il server (che è nel nostro caso l'uC) e il client (lo smartphone) si scambiano dati utilizzando transazioni GATT. In tali transazioni, i dati sono organizzati gerarchicamente in sezioni chiamate servizi, che raggruppano parti di dati utente concettualmente correlate chiamate caratteristiche. Nel nostro caso, l'incapsulamento dei dati è semplice poiché abbiamo solo un'informazione da passare dal client al server (vedi l'immagine sopra).
- lato server: per poter utilizzare la scheda nrf51822 come server BLE, installare prima la libreria "BLEPeripheral.h" sull'IDE Arduino. Questa libreria fornisce funzioni pronte all'uso per la creazione dei servizi, delle caratteristiche e della pubblicità.
- lato client: per avviare una comunicazione BLE in Android Studio, configurare prima i permessi BLE nel file manifest. Quindi, nel file activity_main.xml, aggiungi 4 pulsanti: scansione, arresto scansione, connessione e disconnessione che consentiranno all'applicazione di cercare dispositivi BLE nelle vicinanze, interrompere la scansione, connettersi e disconnettersi a un dispositivo. Nel file main_activity.java, implementa le funzioni associate ai pulsanti precedenti: startScanning(), stopscanning(), connectToDeviceSelected(), disconnettereDeviceSelected(). Infine, implementa le funzioni di callback che vengono chiamate quando lo stato del client cambia.
2. Gestione delle notifiche
- lato client (su Android Studio): Per ascoltare le notifiche provenienti dallo smartphone, implementare un listener di notifiche che si attiva quando si verifica una notifica nella barra di stato. Questo ascoltatore di notifiche invierà un "messaggio", chiamato intento, all'attività principale quando una notifica viene pubblicata o rimossa. Questo "messaggio" contiene un codice di notifica che aiuta a identificare l'applicazione che ha pubblicato la notifica. Per elaborare la notifica nell'attività principale, creare un ricevitore di trasmissione che riceverà il messaggio dall'ascoltatore della notifica. Quindi, a seconda del codice di notifica, viene inviato al server un carattere diverso.
- lato server (su Arduino IDE): viene visualizzata la notifica con la priorità più alta.
Fase 3: Fase 3: Allegati
Qui troverai tutto il codice sorgente.
Consigliato:
Lampada Stencil - Una Lampada Molte Sfumature: 5 Passaggi
Stencil Lamp - One Lamp Many Shades: questo tutorial ti mostrerà come realizzare una semplice lampada con paralumi commutabili (è un paralume)
Microscopi a fluorescenza e a campo chiaro a basso costo: 9 passaggi (con immagini)
Microscopi a fluorescenza e a campo chiaro a basso costo: la microscopia a fluorescenza è una modalità di imaging utilizzata per visualizzare strutture specifiche in campioni biologici e altri campioni fisici. Gli oggetti di interesse nel campione (es. neuroni, vasi sanguigni, mitocondri, ecc.) sono visualizzati perché fluorescenti
La lampada della mummia - Lampada intelligente controllata da WiFi: 5 passaggi (con immagini)
The Mummy Lamp - Lampada intelligente controllata da WiFi: Circa 230 mila anni fa l'essere umano ha imparato a controllare il fuoco, questo porta a un grande cambiamento nel suo stile di vita poiché ha iniziato a lavorare di notte anche usando la luce del fuoco. Possiamo dire che questo è l'inizio dell'illuminazione per interni. Adesso io
Cornice digitale per foto, collegata a WiFi – Raspberry Pi: 4 passaggi (con immagini)
Cornice per foto digitali, collegamento WiFi – Raspberry Pi: questo è un percorso molto semplice ed economico per una cornice per foto digitali, con il vantaggio di aggiungere/rimuovere foto tramite WiFi tramite "clic e trascinamento" utilizzando un programma di trasferimento file (gratuito) . Può essere alimentato dal piccolo Pi Zero da £ 4,50. Puoi anche trasferire
Fai crescere il tuo monopiede pieghevole in bambù: 15 passaggi
Fai crescere il tuo monopiede pieghevole in bambù: questo è un monopiede pieghevole in bambù a 3 segmenti da utilizzare con fotocamere leggere, piccoli cannocchiali e qualsiasi altra cosa tu voglia tenere fermo senza dover portare un treppiede. È un prodotto semplice, un bastone cavo tenuto insieme ad una bici