» elettronica » Arduino »Effetti di fuoco su strisce LED e Arduino

Effetti di fuoco su strisce LED e Arduino

saluti gli abitanti del nostro sito!
In questo articolo, prenderemo in considerazione alcuni effetti molto utili per l'interno che possono essere creati utilizzando una striscia LED. Parleremo anche di algoritmi, di come i calcoli matematici consentono ai LED di creare l'illusione di calore e comfort, vale a dire una fiamma, una vera fiamma digitale.

Tutti i codici sorgente che verranno analizzati in seguito possono scaricare dalla pagina del progetto autore (AlexGyver).

Per prima cosa, affrontiamo elettronico componente. A te stesso fallo da solo fare tanta bellezza a casa Sono richiesti i seguenti componenti:
- Driver per nastro RGB;
- nastro RGB;
- Alimentazione 12V per nastro RGB;
- Arduin® Nano.



Chiunque può scaricare e scaricare il firmware e ottenere il proprio focolare digitale. In questo esempio controlleremo le strisce LED dal microcontrollore Arduino Nano.

Cominciamo con la dimensione zero più semplice: un punto (o un intero nastro di punti).


Questa è la striscia LED RGB più comune, che è alimentata da 12V e ha un controllo a tre canali per ogni colore.


Usando il segnale PWM (lo abbiamo a 8 bit), puoi impostare la luminosità di ogni colore e ottenere così 16,7 milioni di colori e sfumature. Ma siamo interessati al fuoco, o meglio alla sua imitazione. Per simulare una fiamma, si è deciso di lavorare nello spazio colore hsv (colore, saturazione, luminosità).

Questi 3 parametri consentono di ottenere 255 tonalità di base, più ciascuna tonalità per ottenere 255 gradazioni di saturazione, ad es. si mescola con il colore bianco. Bene, il terzo parametro è la luminosità, in un linguaggio semplice - una miscela di tonalità con il colore nero.

Esistono diversi algoritmi per la conversione da un comodo spazio hsv a RGB, basta usarne uno.

Successivamente, è necessario specificare il comportamento dell'incendio. Supponiamo che l'intensità della fiamma sia una certa quantità, che nel valore minimo dà ai LED un colore rosso saturo e una bassa luminosità, e nel valore massimo dà il bianco-giallo e il massimo colore brillante.

Per ottenere l'effetto fiamma, dobbiamo fare in modo che questo valore comporti movimenti oscillatori casuali, i movimenti devono essere casuali, ma allo stesso tempo abbastanza fluidi, cioè qualcosa di simile a una luce tremante. Seguendo questo valore, rispettivamente, il colore e la luminosità della fiamma lungo il gradiente cambieranno.



L'autore propone di risolvere questo problema nel modo seguente: esiste un algoritmo di filtraggio molto semplice, con la media corrente, che trasforma un brusco cambiamento di valore in un processo regolare, solo un coefficiente e un calcolo abbastanza semplice.

L'idea è questa: è necessario, diciamo 5 volte al secondo, impostare una nuova posizione casuale per il valore del fuoco e da qualche parte circa 50 volte al secondo per filtrare questo valore, cambiandolo gradualmente. Di conseguenza, si forma un tale processo casuale.

In un esempio di vita reale, tutto funziona come previsto.

Ora dobbiamo tradurre il nostro valore nel colore della fiamma secondo la legge sopra menzionata e ottenere un fuoco unidimensionale.


La striscia LED programmata in questo modo può essere nascosta, ad esempio, dal battiscopa o da una sporgenza. Inoltre, un tale nastro può fornire un'illuminazione di sfondo, sembra abbastanza interessante e insolito.

Inoltre, il nastro può essere inviato a terra da una breve distanza e quindi ottenere un effetto piuttosto interessante.

E, naturalmente, un pezzo di nastro adesivo può essere utilizzato per illuminare un camino o simularlo. E se rimuovi il colore brillante dal giallo all'arancio, ottieni un'imitazione dei carboni fumanti.

Dato che abbiamo un nastro RGB, possiamo produrre qualsiasi colore di fuoco da solo. Vuoi un verde morto - così facilmente!

Abbiamo bisogno di un fuoco magicamente blu - nessun problema!

Quindi installare il programma e i driver, come scritto nelle istruzioni su pagina del progetto, scarica ed esegui il firmware.
All'inizio ci sono tutte le impostazioni necessarie. Con il loro aiuto, puoi personalizzare completamente il fuoco per te stesso, vale a dire: colore, comportamento e simili.


In realtà, questo è stato il modo più semplice per "bruciare" la striscia LED. Ora diamo un'occhiata ad esempi più interessanti. Per ulteriore lavoro avrai bisogno indirizzo led strip.

Questo nastro consente di controllare individualmente ciascuno dei suoi LED e ciascuno include uno di 16,7 milioni di tonalità di colore.
Tutto è collegato in modo molto semplice, secondo questo schema:

Non sono necessari driver, ma si consiglia una resistenza. Puoi farne a meno, ma c'è una possibilità di esaurimento del primo LED e, in questo caso, anche i successivi non funzioneranno.
Con l'illuminazione diretta, ad esempio, da sotto il divano, ottieni un eccellente divano infernale con l'effetto di carboni ardenti.


Inoltre, un tale nastro può essere inserito in un normale profilo leggero e utilizzare come elemento indipendente degli interni.

Sembra abbastanza buono, d'accordo, ma proviamo ancora a raggiungere fiamme individuali.

Lasceremo l'algoritmo lo stesso. Rompiamo il nastro in zone di diversa larghezza, ogni zona avrà il suo processo casuale. Per rendere questo processo ancora più simile a una vera fiamma, riempiremo le zone dai bordi al centro, aumentando gradualmente il nostro valore casuale al suo valore attuale. Anche nel processo di "masterizzazione", anche la dimensione delle zone dovrebbe cambiare casualmente.

Ecco come appare:


Ora diamo un'occhiata a un altro interessante processo casuale chiamato rumore Perlin, che Ken Perlin ha inventato nel 1983.

Il rumore di Perlin ti consente di creare una distribuzione uniformemente levigata della grandezza in qualsiasi numero di dimensioni. Il noto filtro cloud in Photoshop è un esempio di rumore Perlin bidimensionale.

Ma il rumore tridimensionale di Perlin rende possibile generare, ad esempio, un paesaggio montuoso, inoltre, per generarlo in modo molto casuale e infinito e allo stesso tempo praticamente senza creare un carico sui componenti del computer, poiché l'algoritmo non è molto costoso dal punto di vista computazionale.

Il piano d'azione è il seguente: in primo luogo, creare una regione di rumore Perlin bidimensionale e spostarla lungo in un certo modo, scansionando la linea di pixel e distribuendola ai LED.

L'algoritmo di cui sopra non è molto complicato e Arduino trattare con calma con lui.Il risultato è un effetto molto interessante, il più fluido possibile, casuale e già molto simile alla fiamma reale con l'illuminazione finale.

Con l'illuminazione diretta, si presenta così:

Ma tutti questi erano algoritmi di fuoco per un nastro. E che dire di attaccare il nastro a zigzag e provare a fare fuoco bidimensionale sulla matrice?


Tali matrici possono essere acquistate dai cinesi. Sopra la matrice posizioniamo un diffusore e un vetro colorato con pellicola automobilistica, cioè questo è un vero display a bassissima risoluzione amolead.




A proposito, sembra piuttosto realistico. Guarda il video originale dell'autore per maggiori dettagli:



Tutto qui. Grazie per l'attenzione. A presto!
1
1
1

Aggiungi un commento

    • sorrideresorrisiXaxabeneDONTKNOWyahoonea
      capozeroimbrogliaresìSì-sìaggressivosegreto
      scusaballaredance2dance3perdonoaiutobevande
      arrestoamicibuonogoodgoodfischiodeliquiolinguetta
      fumobattimanicraydeclarederisoriodon-t_mentionscaricare
      caloreadiratolaugh1mdaincontromoskingnegativo
      not_ipopcornpunireleggerespaventarespaventacerca
      schernirethank_youquestoto_clueumnikacutoconcordare
      cattivobeeeblack_eyeblum3arrossirevanterianoia
      censuratospiritosagginesecret2minacciarevittoriayusun_bespectacled
      ShokRespektlolPrevedbenvenutoKrutoyya_za
      ya_dobryiaiutantene_huliganne_othodiFludbandovicino

Ti consigliamo di leggere:

Passalo per lo smartphone ...