Questo tutorial è parte di: Matrice LED RGB ESP32-S3
Fantastico progetto da realizzare per applicazioni pratiche e divertenti utilizzando il modulo RGB Matrix ESP32-S3. I link ad altri video si trovano più avanti in questo articolo.
Progetto Matrice LED RGB ESP32-S3 5 - Freccia sempre verso l'alto
Progetto 5 - Freccia Sempre Su (Indicatore di Orientamento utilizzando QMI8658C)
Il Progetto 5 utilizza il sensore di movimento QMI8658C per rilevare l'orientamento della matrice LED RGB ESP32-S3 e visualizzare sempre una freccia che punta verso l'alto rispetto alla gravità. Non importa come ruoti la scheda - lato USB in alto, lato OUSB in alto, lato "15" o lato "34" - la freccia si gira automaticamente e punta verso la direzione fisicamente superiore.
Questa è una potente dimostrazione di rilevamento dell'orientamento in tempo reale utilizzando l'accelerometro integrato. Tutti e sei i progetti per questo modulo sono dimostrati in un video di YouTube, che è anche incorporato in questa pagina. Il codice completo per il Progetto 5 si carica automaticamente sotto l'articolo, e i link affiliati appaiono sotto la sezione del codice.

Panoramica del modulo matrice LED RGB ESP32-S3
Il modulo matrice LED RGB ESP32-S3 include diversi componenti che rendono possibile questo progetto:

- microcontrollore ESP32-S3- fornisce Wi-Fi, BLE e gestisce la logica LED/IMU.
- matrice LED RGB 8×8- visualizza la freccia in una delle quattro orientamenti.
- accelerometro QMI8658C- rileva inclinazione, movimento e orientamento.:contentReference[oaicite:0]{index=0}
- porta USB-Cper la potenza e la programmazione in Arduino IDE.
- Pulsanti di Reset e Avvioper caricare schizzi.
- Pini GPIOdisponibile per tutta la commissione per progetti aggiuntivi.
La direzione della freccia è determinata interamente dalle letture dell'accelerometro. Quando la scheda viene ruotata, il QMI8658C rileva i nuovi valori X/Y/Z e lo sketch sceglie quale modello di freccia (↑, ↓, ←, →) dovrebbe essere disegnato.

Progetti Coperti nel Video (Timestamp)
- 00:00- Introduzione
- 02:01- Installazione delle schede ESP32
- 03:32- Installazione delle librerie
- 05:32- Progetto 1: Punto in movimento
- 11:11- Progetto 2: Scorrimento Testo
- 12:59- Progetto 3: Testo HTTP
- 16:41- Progetto 4: Tilt Dot
- 18:55-Progetto 5: Freccia Sempre Su (questo progetto)
- 20:02- Progetto 6: Gioco di Mira
Il video mostra chiaramente come la freccia cambi direzione istantaneamente in base a come viene girato il modulo. Si consiglia vivamente di guardare questo segmento.:contentReference[oaicite:1]{index=1}

Installazione delle schede ESP32 nell'IDE Arduino
Se hai completato un progetto precedente, la configurazione della scheda è già stata completata. Altrimenti:
File > Preferences→ Aggiungi URL della scheda ESP32Tools > Board > Boards Manager…→ Installa "ESP32"- Seleziona la scheda ESP32-S3 sotto
Tools > Board - Seleziona la porta USB COM corretta sotto
Tools > Port
Installazione delle librerie necessarie
Il Progetto 5 utilizza:
Adafruit NeoMatrixAdafruit NeoPixelAdafruit GFXQMI8658(sensore di movimento)
Sketch > Include Library > Manage Libraries…- Cerca:NeoMatrix→ Installa
- Installa le dipendenze:NeoPixel+GFX
- Cerca e installaQMI8658dal suo autore
Come funziona il Progetto 5
Il QMI8658C misura la gravità sugli assi X, Y e Z. Confrontando questi valori, il circuito determina quale lato fisico della scheda è rivolto verso l'alto:
- USB rivolto verso l'alto
- Lato OUSB rivolto verso l'alto(opposto USB)
- Lato "15" in su
- Lato "34" in su
Ogni orientamento corrisponde a un diverso schema di frecce nella matrice 8×8. La mappatura segue la logica di orientamento confermata nelle precedenti sessioni di debug. La rotazione della scheda viene letta continuamente e la freccia si aggiorna non appena il lato superiore cambia.
Progetto 5 - Impostazioni Codice (Freccia Sempre Su)
Di seguito ci sono i valori regolabili dall'utente nell'area di configurazione. Il codice completo del progetto appare automaticamente sotto l'articolo.
Configurazione della matrice
// Matrix configuration
const int MATRIX_PIN = 14; // fixed for this module
const int MATRIX_WIDTH = 8;
const int MATRIX_HEIGHT = 8;
// Recommended orientation: Top-Left origin, progressive mode
// (actual constructor is inside the code loaded below)
Questo progetto utilizzaNEO_MATRIX_PROGRESSIVElayout per assicurarsi che la freccia punti correttamente in base al movimento reale.
Luminosità
uint8_t matrixBrightness = 40; // 0–255
Puoi aumentare questo valore per ambienti più luminosi. Per l'uso interno, 30-60 è confortevole.
Colore della freccia
// Arrow color
uint8_t arrowRed = 255;
uint8_t arrowGreen = 0;
uint8_t arrowBlue = 0;
Cambia questi valori per modificare il colore della freccia. Ad esempio:
- Freccia verde:
(0, 255, 0) - Freccia blu:
(0, 0, 255) - Freccia bianca:
(255, 255, 255)
Sensibilità e Lisciatura
Per evitare il jitter, il codice include logica di smoothing e soglia. Nelle impostazioni potresti trovare qualcosa come:
// Sensitivity / smoothing adjustment
float tiltThreshold = 0.30f; // adjust if arrow changes too easily
- Se la tua freccia si capovolge troppo facilmente →aumentosoglia.
- Se la freccia è troppo lenta a cambiare →diminuiresoglia.
Modelli di Frecce
Il disegno include modelli di bitmap con frecce per:
- su
- giù
- ← sinistra
- → destra
Non è necessario modificare questi, ma puoi cambiare le forme all'interno del codice se desideri uno stile diverso.
Riepilogo
Il Progetto 5 dimostra come il Matrix LED RGB ESP32-S3 e l'accelerometro QMI8658C lavorino insieme per rilevare l'orientamento e visualizzare una freccia che punta sempre verso l'alto. Questo progetto si basa sul Tilt Dot (Progetto 4) e ti prepara per il gioco interattivo finale nel Progetto 6.
Il disegno completo "Arrow Always Up" è disponibile sotto questo articolo (caricato automaticamente). Si consiglia vivamente di guardare la parte corrispondente del video per vedere come l'arrow risponde istantaneamente alla rotazione della scheda. Se desideri realizzare questo progetto a casa, i link affiliati per il modulo ESP32-S3 RGB LED Matrix appaiono sotto la sezione del codice.
Immagini
Questo tutorial è parte di: Matrice LED RGB ESP32-S3
- Progetti con Matrice LED RGB ESP32-S3 (Gioco Inclinazione, Testo, Freccia, Demo WiFi)
- Progetto Matrice LED RGB ESP32-S3 2 - Testo Scorrevole
- Progetto ESP32-S3 Matrice LED RGB 3 - Testo da telefono cellulare
- Progetto Matrice LED RGB ESP32-S3 4 - Punta inclinata
- Progetto 6 della matrice LED RGB ESP32-S3 - Gioco Cible
- Progetto orologio di base ESP32-S3 Matrice LED RGB Wi-Fi + Orologio NTP -1
- Progetto Orologio Internet con Matrice LED RGB ESP32-S3 - Orologio a colori multipli con visualizzazione di Ora e Data
- Progetto Orologio Internet con Matrice LED RGB ESP32-S3 - Colore Notte 3 con Data
- Progetto di orologio Internet con matrice LED RGB ESP32-S3 - 5 colori arcobaleno
- Progetto Orologio Internet con Matrice LED RGB ESP32-S3 - 4 Colori casuali
- Test della matrice LED RGB ESP32-S3 per impostazione RGB, GRB
Cose di cui potresti avere bisogno
-
Amazon
-
eBay
-
AliExpressAcquista ESP32-S3 RGB Matrix su AliExpress (2)s.click.aliexpress.com
-
AliExpressAcquista la matrice RGB ESP32-S3 da AliExpresss.click.aliexpress.com
Risorse e riferimenti
-
Interno🎨 Strumento selettore di colorerobojax.com
File📁
File Fritzing
-
esp32-S3-supermini-tht fritzing part
esp32-S3-supermini-tht.fzpz0.02 MB