Domanda:
Utilizzando un Raspi per controllare una striscia LED lunga (> 100 piedi) da 5 V.
puk
2014-02-24 11:20:44 UTC
view on stackexchange narkive permalink

Sto usando la striscia LED sottostante per l'illuminazione d'accento

enter image description here

  • Striscia LED digitale 5M WS2801 Blcak PCB 32LED 5050 RGB indirizzabile individualmente 5V
  • articolo: strisce led ws2801 pcb nere non impermeabili
  • Modello: 5050RGB WS2801
  • Tensione di lavoro: DC5V
  • Tipo LED: SMD5050 RGB
  • Qtà Led: 32 led per metro
  • Lunghezza d'onda (NM): R-650mcd, G-520mcd, B-460mcd
  • Potenza (W / M): 9W / M
  • CI: ogni led controllato da un chip CI WS2801
  • Scala: 256
  • Angolo di visione: 120 gradi
  • Durata: no meno di 50000 ore
  • Confezione: bobina da 5 M in busta antistatica
  • NON impermeabile

Devo controllare la luce in modo che tutti i 100 + piedi siano lavorare insieme (cioè lo stesso colore o transizioni di colore continue). Idealmente, li collegherei a una fonte di alimentazione, ma ciò porterà a una caduta di tensione. Potrei provare a collegarli in parallelo, ma alla fine ci saranno troppi amplificatori. Potrei collegare un alimentatore per ogni 5m, quindi collegare in rete tutti i raspis per dare l'aspetto di tutte le strisce che lavorano insieme, ma ciò richiede alimentatori per i raspis, e non voglio andare in giro per casa e nasconderli tutti .

Qualcuno potrebbe fornire una spiegazione per principianti di come posso sia alimentare che molti LED e controllarli da un singolo raspi.

MODIFICA : Volevo sapere come avrei dovuto collegarli, ad esempio se un adattatore 5v 2A a una striscia da 10 m non funziona, posso semplicemente usare un secondo adattatore 5V 2A e dividere la striscia in strisce da 2x5 m, quindi collegare il il primo adattatore alla prima striscia da 5 m e il secondo adattatore al secondo adattatore da 5 m (vedi sotto)?

  • Adattatore / Raspi -> [striscia da 10 m] FAILS
  • Adattatore / Raspi -> [5m strip] -> Adapter -> [5m strip] RIUSCITA?

E le connessioni DI e CI ? Posso semplicemente collegare il DI / CI fuori dalla prima striscia al DI / CI nella seconda striscia e poi sperare che i segnali inviati dal raspi alla prima la striscia verrà magicamente trasferita alla seconda striscia? Non posso fare a meno di scuotere la sensazione che non sia così semplice dal momento che l'alimentatore è così pignolo (cioè caduta di tensione, spessore del filo, serie v parallela ...) Ho la sensazione di essere jerry armando alimentatori qui tutto volentieri indifferentemente.

Dici `Potenza (W / M): 9W / M` quindi 30 m sarebbero 27 W. Non dovresti avere problemi a trovare un alimentatore adatto. Citi anche "WS2801" che utilizza un'interfaccia seriale a 2 fili. A condizione che non sia necessario indirizzare più di 100 indirizzi, non si dovrebbero avere problemi a interfacciarsi dall'interfaccia `I2C` sul Pi. Non ci dovrebbero essere problemi con la caduta di tensione, poiché il chip ha un driver di corrente costante per i LED.
@Milliways ... Potresti mettere questa come risposta con maggiori informazioni, non ti seguo rispetto a quanto segue: `Power (W / M): 9W / M`," 2 wire serial interface "," più di 100 "," I2C "," Driver corrente costante "
@ puk non ho risposto, perché in realtà non lo è. Francamente non fornisci abbastanza dettagli sulle strisce LED o su cosa vuoi fare con loro. La maggior parte di questo deriva dalle specifiche che hai citato (non fornisci un collegamento al prodotto reale). Le specifiche dicono che la striscia utilizza Power (W / M): 9W / M, quindi 30m richiederebbero 270W. (Ho sbagliato sopra) Ho cercato le specifiche per il WS2801 per vedere cosa faceva. Questo dovrebbe darti un inizio. Ti suggerisco di iniziare con 1 striscia, controllare l'interfaccia I2C e provare a scrivere del codice.
[Troverai parte della tua risposta qui] (http://diy.stackexchange.com/a/18236/2885) Stai sbagliando tutto ed espeiclaly è RGB è ancora più complicato.
@puk Inizialmente hai posto una domanda su RGB http://raspberrypi.stackexchange.com/q/13925/8697 poi hai copiato una specifica per un'interfaccia I2C, ora stai chiedendo di SPI. Questi sono totalmente diversi.
@milliways hai ragione. Ho acquistato accidentalmente 5 piedi rgb e stavo cercando di riconciliare il problema 12v 5v. Qui, invece, ho acquistato una striscia led completamente indirizzabile
Sei risposte:
#1
+3
Gerben
2014-02-24 20:41:22 UTC
view on stackexchange narkive permalink

Non dovresti alimentare la striscia led dalla linea 5V del Pi. Collegare solo le linee GND, CI e DI al Pi. Collegare i 5V e GND della striscia led all'alimentatore separato. Notare che il terreno è "interconnesso" qui.

Se l'adattatore non è abbastanza resistente per l'intera lunghezza, puoi effettivamente dividere la striscia led in sezioni. Proprio come sopra, collega DO a DI, CO a CI e GND a GND. Quindi collega il nuovo adattatore ai 5V e GND della nuova sezione.

Sì, questo ha più senso. Questa striscia può indirizzare individualmente ogni LED e i dati devono essere ben collegati
Ci sono molte etichette, puoi essere più specifico (es. Massa dell'adattatore a massa del led o massa del led a massa del raspi ...)
Tutti e tre i terreni sono collegati tra loro, quindi massa del Pi, massa dell'adattatore e massa della striscia led. Proprio come l'immagine nella risposta di Pumkin
#2
+3
Piotr Kula
2014-02-24 22:21:42 UTC
view on stackexchange narkive permalink

Il WS2801 è un driver LED a corrente costante a 3 canali. Hai bisogno di 1 di questi per ogni LED. Ci sono altri driver RGB ma il WS2801 è il più semplice e flessibile con cui lavorare.

La fonte di alimentazione DEVE essere separata dal Pi. Ma è facile come collegare un alimentatore a Vcc e GND sulla striscia LED.

enter image description here

Controllo

Il problema con questi LED WS2801 è che il livello del segnale di ingresso uscita dipende dalla tensione di ingresso. (0,8 * Vcc) Quindi, per farlo funzionare direttamente sul GPIO Raspberry Pi, puoi fornire solo un massimo di 4,1 volt, che ti dà un livello di dati di 3,2 Volt sicuro per il Pi. Ma alcune persone dicono che anche se i LED funzionano a 5 Volt, funziona ancora, potrebbe essere una versione diversa del chip.

La scheda tecnica che puoi fornire da 3,3 a 5,5 volt . Il WS2801 utilizza effettivamente un protocollo a 2 fili

  1. CKI - Input clock dati a 25 Mhz
  2. SDI - Dati in scala di grigi seriali.

Fortunatamente non devi scrivere alcun codice perché esiste qualcosa chiamato PixelPi che sa già come parlare con questi ragazzi.

Alimentazione

Lunghi pezzi di strisce LED richiedono più potenza di quanto potresti pensare.

  • Dopo 2 ~ 4 metri puoi tagliare la linea Vcc sulla striscia LED e collegare un nuovo alimentatore . Lascia GND, DO, DI così com'è. In questo modo puoi alimentare una lunga striscia LED in sezioni.
  • Un altro modo è utilizzare un potente alimentatore regolato. Come un alimentatore per computer. Quindi collegare l'inizio dell'alimentazione LED e far passare il cavo di rame accanto alla striscia LED e collegarlo ogni 3 metri. Non è necessario sezionare il LED perché l'alimentazione utilizza sempre il percorso meno resistivo, in questo caso il filo di rame in più dallo stesso alimentatore.
Utilizzando un alimentatore per computer e cavi di rame in esecuzione, non ci sarebbe caduta di tensione nei fili stessi su lunghe distanze (cioè 100 piedi)
Inoltre qual è il limite fisico del numero di led che il raspi può controllare (NON potenza)? 1.000.000?
Il limite è solo sul dispositivo che lo controlla. Quindi puoi avere 1 milione ma controllarli tutti allo stesso tempo non è possibile! Poiché non è possibile scrivere dati diversi su un milione di oggetti contemporaneamente (a meno che non sia informatica quantistica), inoltre, ogni IC è indirizzato in modo univoco a livello globale. Il limite è la distanza tra gli IC Non dovrebbe essere superiore a 1 metro ma può essere fino a 6 metri se lo si termina con una resistenza da 50 Ohm per bilanciare l'impedenza.
Grazie, ma stavo facendo una domanda più semplice. 1 raspi può controllare 64 LED? 100? 200? 1000? Presumo che l'assorbimento di corrente sia direttamente proporzionale al numero di LED controllati. Oppure è sequenziale tale da inviare un segnale al LED 1, quindi al LED2, quindi al LED3 ...
Inoltre, cos'è un "IC". Inutile dire che tutto ciò che è iniziato con "Also Each IC ..." non ho capito
Dovrei anche menzionare per il software che * attualmente * lo sto utilizzando come base https://github.com/adammhaile/RPi-LPD8806
"IC" significa "Circuito integrato" - Stai facendo nuove domande nei commenti. Potresti avere più fortuna su Electronics Exchange per specifiche domande elettroniche. Per scoprire la quantità massima di LED è necessario capire quanti dati è possibile inviare a 25 Mhz, quindi quanti dati vengono effettivamente inviati. Devi scoprirlo. Potrebbe essere 255. Ma usando estensori SPI può essere 255 x 16. Questo è tutto diverso da quello che stai chiedendo. Szwagier esce.
"Un altro modo è utilizzare un potente alimentatore regolato. Come un alimentatore per computer. Quindi collega l'inizio dell'alimentazione LED, fai passare il cavo di rame accanto alla striscia LED e collegalo ogni 3 metri. Non è necessario separare LED perché l'alimentazione utilizza sempre il percorso meno resistivo, in questo caso il filo di rame in più dallo stesso alimentatore. " ** Il problema degli elettroni è che girano in un circuito - penso che dovrai anche rinforzare la linea GND! **
Alcune strisce non puoi semplicemente collegarle a 30 metri di altezza e accenderle su un'estremità. I primi 3 metri di traccia PCB si bruceranno. Legge di Ohm.
#3
+3
Shockwave
2014-08-12 00:41:10 UTC
view on stackexchange narkive permalink

Come costruttore che ha costruito un dispositivo con 480 WS2801 in serie, consentitemi di sottolineare i problemi che incontrerete.

Il primo è il ritardo di propagazione. Il segnale di clock che esce dal chip è .6ns più lungo di quello che è entrato. Ciò significa che quando si superano i 250 pixel, il clock scompare completamente a meno che non si scenda a una frequenza di clock inferiore. Oppure costruisci un monopulse per rigenerare un buon orologio per continuare la corda. Per far funzionare la mia configurazione completa a 480 pixel, ho dovuto passare da una frequenza di clock di 2 Mhz a 1 Mhz. Se trovi una patch di pixel che va fuori di testa e nulla sui pixel in seguito, la tua frequenza è così alta che il clock sta svanendo a causa del ritardo di propagazione.

Il secondo è l'iniezione di energia. Non è possibile accendere tutte le luci e alimentarle da un'estremità e da un alimentatore. Stiamo parlando di 60A di alimentazione 5V! Avrai bisogno di collegare l'alimentazione da un bel filo 18 o 16ga stellato da una singola alimentazione da 5 V e collegato ogni 16 piedi circa. Fondamentalmente ogni bobina deve avere il succo che arriva da entrambe le estremità se ogni luce sarà piena.

#4
+1
Milliways
2014-02-25 06:25:13 UTC
view on stackexchange narkive permalink

Hai alcuni buoni commenti sopra, ma nessuno ha risposto esplicitamente alla tua domanda sul potere. Questo è un semplice problema di ingegneria elettrica. La specifica che hai copiato dice "Potenza (W / M): 9 W / M", quindi una lunghezza di 5 m richiederebbe 45 W, ovvero 9 A a 5 V.

Presumibilmente questo è il consumo con tutti i 160 LED a piena luminosità . Funziona a ~ 50 mA per LED, il che sembra corretto. Ovviamente hai avuto un certo successo con un alimentatore da 2 A, ma questo non sarebbe adeguato in tutti i casi. L'alimentazione del plug pack non è propriamente adatta per questo tipo di applicazione. Oltre agli alimentatori per computer, presumo che ci siano alimentatori progettati specificamente per questo tipo di applicazione.

C'era qualche problema sulla tensione sui cavi di controllo. Questo utilizza I2C , che è un driver open collector. Ha bisogno di resistori di pull-up: il Pi ha resistori da 1.8k sulla scheda. A condizione che non ci siano altre resistenze di pull-up a 5V questo dovrebbe essere abbastanza sicuro. Si potrebbe facilmente verificare misurando la tensione, con il Pi collegato.

La risposta di @ ppumkin mostrava la connessione al bus SPI , che potrebbe avere problemi di tensione, ma se solo il MOSI viene utilizzato - pilotato dal Pi come bus master, questo non dovrebbe.

Sono riuscito a capire l'intero problema dell'alimentazione acquistando un adattatore con più amplificatori, ma poi c'è il problema della caduta di tensione. Proverò un adattatore da 10 A e, se fornisce energia sufficiente, lo collegherò a intervalli di 1 o 2,5 m, quindi testerò il numero di LED che un raspi può controllare
#5
-1
chuda
2014-02-24 13:05:31 UTC
view on stackexchange narkive permalink

non analizzi di quanti voltaggi hai bisogno per accendere tutti i LED?

  1. prova a combinarli con raspberry pi + driver relay. raspberry pi usa per firmare e inviare al driver tramite gpio pin.
  2. dal pin gpio in raspberry pi, puoi attivare il relè del driver e inviare al LED l'alimentazione di cui hai bisogno ..
Grazie per la risposta, ma non capisco.
Il relè NON funzionerà! È RGB.
@ppumpkin è una striscia rgb ma da sottolineare è la versione led 5v non quella base 12v
#6
-1
nagyben
2014-02-24 14:46:43 UTC
view on stackexchange narkive permalink

Per chiarire la risposta di chuda:

Puoi ottenere una scheda relè da 5 V per controllare correnti più grandi utilizzando il Pi. Il Pi non ha abbastanza per alimentare tanti LED, ma puoi usare un adattatore di rete. Se unisci i fili e li colleghi a una scheda relè, puoi controllare la rete usando il Pi senza danneggiarlo.

Guarda questo video di YouTube, fornisce una buona spiegazione

https://www.youtube.com/watch?v=3Pikhq99q5E&feature=youtube_gdata_player

Questi sono RGB. Non funzionerà
Sì, sono strisce led 5v, ma per chiarezza puoi elaborare esattamente cosa implica lo "splicing", anche cosa è una scheda relè e cosa significa "rete" qui. Saluti
Video molto informativo, tuttavia, non penso che sarebbe mai applicabile alle strisce led. Qualcuno può confermarlo per me per favore.


Questa domanda e risposta è stata tradotta automaticamente dalla lingua inglese. Il contenuto originale è disponibile su stackexchange, che ringraziamo per la licenza cc by-sa 3.0 con cui è distribuito.
Loading...