Wie 300 PWM ausgänge?

OP #2918313
Lesenswert?

Hallo,

ich habe ein Projekt von jemanden gesehen und da würde es mich mal 
interessieren wie man 300 PWM ausgänge bekommt?

Also welchen Arten hierfür gibt es um 300 PWM ausgänge zu bekommen.

Es interessiert mich lediglich welche Arten es gibt.

Danke euch schonmal.
#2918353
Lesenswert?

Naja, wenn man mehrere Schieberegister über mehrere Spi-Schnittstellen 
betreibt, sollte das doch vielleicht auch mit einem AVR hinzubekommen 
sein, oder? Also ich habe es nicht genau durchgerechnet, aber wenn man 
einmal die Hardware-Spi und einmal in Software hat, da jeweils 18 
Schieberegister dran. PWM-Frequenz von 200Hz, 8 bit Auflösung, könnte 
vielleicht zu schaffen sein, habs aber nicht genau nachgerechnet, könnte 
auch knapp werden.


MfG Dennis
Gast #2918357
Lesenswert?

Ich denke auch eher an eine Matrix oder Schieberegister.

Wenn du schnell genug aktualisierst (dürfte kein Problem sein) dann hast 
du auch eine PWM.

Ich habe eine Matrix (8 x 16) aufgebaut und selbst ein pobliger Mega8 
mit 4MHz schafft ein paar hundert Hertz.
Gast #2918829
Lesenswert?

Für 100 RGB LEDs werden 300 PWM Kanäle (100 x (R + G +B)) benötigt. Um 
diese bereitzustellen, verwende ich 19x TLC5940 von TI. Der TLC5940 
besitzt 16x PWM Kanäle mit einer Auflösung von 12Bit, eine 6Bit Dot 
Korrektur und lässt sich kaskadieren. Die Ansteuerung erfolgt über SPI. 
Auf eine Matrix-Schaltung wollte ich bewusst verzichten.
Kosten Punkt pro TLC5940 ca. 3,50€.
#2918886
Lesenswert?

Oder 100 Dyco LEDs die über SPI gesteuert werden.
Ich habe ein ähnliches projekt vor. Ich baue mir auch ein Feld mit 8x12 
Elementen, die einzeln angesteuert werden können und ihre Farbe 
veränderen können. Zur Steuerung werde ich ein RaspberryPi nehmen, damit 
ich das ganze über eine Weboberfläche (PHP server mit PaspberryPi) 
steuern kann.

Sammelbestellung:
Beitrag "[Sammelbestellung] "Dyco LED" LEDs mit integriertem seriellem Controller"
(Firma: fritzler-avr.de) #2918986
Lesenswert?

Ne mit Tinys kostets mehr, vor allem Arbeitszeit ;)
Der TLC hat schon ne Konstantstromquelle integriert und bei dne Tinys 
musste noch 300 Widerlinge einlöten.
Braucht vor allem Platz.
Nicht zu vergessen: jeden einzelnen noch zu flashen, muhahaha.

Odern paar größere ATmegas und dann Bit Angle Modulation.
Da kannste dann alle Ausgänge für nehmen.
OP #2919006
Lesenswert?

das müsste doch auch mit software pwm gehen, oder? dann würden doch auch 
mega128 in frage kommen, oder?

auf jedenfall eine cool sache. auch das "selbstgebaute" touchscreen wo 
ich nicht verstehe wie das klappt, also irgendwie eine ir diode und dann 
irgendwie ein "empfänger" der merkt ob da was drauf liegt aber ich 
verstehe nicht so ganz wie das klappen soll.
Gast #2919016
Lesenswert?

Tobias N. schrieb:
> das müsste doch auch mit software pwm gehen, oder? dann würden doch auch
> mega128 in frage kommen, oder?
>
> auf jedenfall eine cool sache. auch das "selbstgebaute" touchscreen wo
> ich nicht verstehe wie das klappt, also irgendwie eine ir diode und dann
> irgendwie ein "empfänger" der merkt ob da was drauf liegt aber ich
> verstehe nicht so ganz wie das klappen soll.

Nein, das kriegst du nicht mit einem Atmega hin.
Zum "Touch": Das läuft über die Reflexion.
OP #2919031
Lesenswert?

also hat man z.b. den PWM Controller und den steuert man dann mittels 
spi, bzw. werden die alle dann mittels spi gesteuert!?

das farben mischen würde mich auch mal interessieren, am besten kaufe 
ich mir gleich mal eine RGB LED zum spielen :)

wie über reklektion? was/wie refektiert da denn was? das "licht" scheint 
doch nur auf die scheibe und z.b. eine hand rekletiert ja kein licht.
#2919084
Lesenswert?

Ich habe mal einen Lichtvorhang gebaut mit 100x20x3 PWM Ausgängen und 
dann den WS2801 getestet und verwendet. Das war sehr einfach 
realisierbar. Heute würde ich den WS2811 als Treiber einsetzen oder 
gleich den WS2811 inintergriert in RGB LEDs verwenden:

http://shop.soda-light.de/gx2/product_info.php?info=p35_rgb-led-mit-integrierter-ws2811-ksq.html&XTCsid=2rtt9ot1qnlj0jdo64gmhraca6

Gruß
Gast #2919359
Lesenswert?

m.n. schrieb:
>> Die 64 Kanäle haben aber nur 8bit Auflösung, das ist für RGB Anwendung
>> etwas wenig.
>
> 8 bit/farbe ergibt 24 bit/pixel. Das reicht nicht?

Es reicht, um die Farbe genau genug zu beschreiben, aber nicht für den 
Tastgrad des PWM-Signals. Das liegt daran, dass das Auge die Helligkeit 
nicht linear wahrnimmt. Wenn man den PWM-Wert verdoppelt, sieht die LED 
nicht doppelt so hell aus. Damit die 256 Helligkeitsstufen linear 
wirken, braucht man entsprechend einen größeren PWM-Wertebereich.

>> 10 bit solltens sein und dann sins ganz scnell nurnoch 16 Kanäle.
> 8 -> 10 == 64 -> 16? Das verstehe ich nicht.

Ich habe mir nicht angeschaut, wie es in dem Fall implementiert ist. 
Aber allgemein verdoppelt sich der Wertebereich mit jedem Bit (8 Bit = 
256 Werte, 9 Bit = 512 Werte, 10 Bit = 1024 Werte). Kann also sein, dass 
der Prozessor mit jedem zusätzlichen Bit doppelt so viel zu tun bekommt.
OP #2919474
Lesenswert?

naja, den tisch kriege ich schon hin. einfach leuchten lassen auch. per 
touch (wenn ich genau wüsste wie das mit der refektion funktioniert) 
auch aber das "farbenspiel" die ganzen effekte etc da muss ja dann pwm 
und da wird dann schwer. naja bei einem kleinen projekt vll. z.b. nur 4 
felder aber mit 100 oder mehr wird schon kompliziert (also für MICH)
#2919485
Lesenswert?

Für erweiterten Spaß nimmt man dafür natürlich einen FPGA. Schönen 
Spartan3  XC3S700A (S6 brauchts nicht) im BGA484 Package. 300 Kanäle 
kann man noch ganz schön sequentiell abarbeiten, dann spart man sich die 
300 12bit Komparatoren, also 480Byte Blockram für einen Screenbuffer 
reservieren, dann kann man die Daten mit guten 120MHz raustakten, dabei 
mit dem aktuellen Zählerstand vergleichen und das entsprechende IO 
Flipflop setzen/löschen.

--

Ist natürlich quatsch, mach doch einfach eine Matrix draus. Dann 
brauchst du keine 300 IOs sondern genau 65 (60x5 Matrix). Dann reicht 
auch n kleiner TQFP144 FPGA für nen geschätzten 5er und ein paar 
Transistoren. Was spricht dagegen?
Gast #2919535
Lesenswert?

xfr schrieb:
> Es reicht, um die Farbe genau genug zu beschreiben, aber nicht für den
> Tastgrad des PWM-Signals.

Wenn ich heute nicht völlig blind bin, löst der o.g. WS2801 auch mit 8 
Bit/Farbe linear per PWM erzeugt auf. Ich denke es soll "alles so schön 
bunt hier" werden und kein analoger Bildschirmersatz.

Irgendwie reizt es, die PWM-Erzeugung einem STM32F4 zu übertragen. Er 
würde mehr Kanäle, mit höherer Wiederholrate und auch höherer Auflösung 
ermöglichen. Mal sehen, wie es draußen mit dem Herbstnebel weitergeht 
:-)
(Firma: fritzler-avr.de) #2919538
Lesenswert?

xfr schrieb:
> m.n. schrieb:
>>> Die 64 Kanäle haben aber nur 8bit Auflösung, das ist für RGB Anwendung
>>> etwas wenig.
>>
>> 8 bit/farbe ergibt 24 bit/pixel. Das reicht nicht?
>
> Es reicht, um die Farbe genau genug zu beschreiben, aber nicht für den
> Tastgrad des PWM-Signals. Das liegt daran, dass das Auge die Helligkeit
> nicht linear wahrnimmt. Wenn man den PWM-Wert verdoppelt, sieht die LED
> nicht doppelt so hell aus. Damit die 256 Helligkeitsstufen linear
> wirken, braucht man entsprechend einen größeren PWM-Wertebereich.

So siehts aus, es reichen 256 LINEARE Farbstufen locker aus, aber diese 
müssen nichtlinear abgebildet werden.
Link dazu: http://www.mikrocontroller.net/articles/LED-Fading
Also 10Bit PWM brauchts schon.

>>> 10 bit solltens sein und dann sins ganz scnell nurnoch 16 Kanäle.
>> 8 -> 10 == 64 -> 16? Das verstehe ich nicht.
>
> Ich habe mir nicht angeschaut, wie es in dem Fall implementiert ist.
> Aber allgemein verdoppelt sich der Wertebereich mit jedem Bit (8 Bit =
> 256 Werte, 9 Bit = 512 Werte, 10 Bit = 1024 Werte). Kann also sein, dass
> der Prozessor mit jedem zusätzlichen Bit doppelt so viel zu tun bekommt.

Genau mit jedem Bit mehr verdoppelt sich der Wertebereich und der 
Prozessor hat doppelt so viele Abstufungen, bei 2 bit mehr also 4 mal 
mehr zu tun.
Also muss man mit den Kanälen runter (oder mit der PWM Frequenz), wobei 
die 80Hz die das Projekt bereitstellt auch nich grade das gelbe vom Ei 
sind, das könnt noch schön flimmern.
Wobei die Frequenz bei dem Ding je nach PWM Wert zwischen 80Hz und 8kHz 
schwankt, was fürn sch**ss.
(Firma: fritzler-avr.de) #2919602
Lesenswert?

m.n. schrieb:
> Martin Wende schrieb:
>> Wobei die Frequenz bei dem Ding je nach PWM Wert zwischen 80Hz und 8kHz
>> schwankt, was fürn sch**ss.
>
> Sag doch einfach, dass Du es nicht begriffen hast.

Begreif eher grad dein Posting nich ;)
Dann erklär mir mal was ich ned Begriffen habe, binn imemr wissbegierig!
(Firma: guloshop.de) #2920149
Lesenswert?

Frank M. schrieb:
> Hier das andere Extrem:
>
> Es geht auch mit 100 ATtiny45, ebenfalls mit 12Bit-PWM. Bei 0,60 EUR
> Einzelpreis kosten diese insgesamt dasselbe wie 19 x TLC5940.
>
> Beispiel (mit 60 Stk., aber weiter skalierbar, inkl. Video) siehe hier:
>
>   Beitrag "Equinox-Uhr mit 60 ATtinys"

Schon verrückt, was es alles gibt. :-)

Ich dachte zuerst an 20 ATtiny4313, jeder davon steuert 5 RGB-LEDs. Dann 
bleiben je Mikrocontroller noch zwei I/O-Pins, die man dazu verwendet, 
um die 20 Controller per Dasy-Chain aneinander zu hängen und von einem 
Mastercontroller (kann dann sogar ein ATtiny13 sein) steuert.

Auf allen ATtiny4313 läuft das gleiche Programm, weil sich die 
Adressierung automatisch aus der Position in der Steuerkette ergibt.

Wäre also eine relativ einfach Lösung, die zudem nicht so arg teuer ist.
Gast #2921400
Lesenswert?

>und da würde es mich mal
>interessieren wie man 300 PWM ausgänge bekommt?
Wenn PWM über Software (für LED-Zeiten dürfte das kein Problem sein):
-Shifts über  1 SPI-Kanal (langsam)
-Shifts über mehrere SPI-Kanäle  (evtl SerData als einzelne Bits von
  par. geschriebenem Byte ausm AVR nutzen) (schneller)
-mit 39x '573 (zus ULN..) über ParallelBus gesteuert (am schnellsten),
   (ggfs mehrere Busse nebeneinander, damit Laufzeit nicht zu lange)

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren