Hi,
ich bin auch am entwickeln eines RGB Led Cubes.
Allerdings mit einem etwas anderen Ansatz als die meisten anderen.
Meine Lösung ist sehr PC basiert. Ich habe eine Serversoftware für den PC unter QT und C++ geschrieben.
Diese unterstützt folgende Funktionen:
-Pattern Editor (einzelne Pixel oder Gruppen können mit 256^3 verschiedenen Farben eingefärbt werden)
-Simulation des Würfel in OpenGL
-Bewegtbilder (einzelne Fixbilder können zu Bewegtbildern zusammengefügt werden und so eine Animation von Hand erstellt werden)
-Speichern von Bildern und Filmen
Für die Zukunft sind noch folgende Features geplant:
-Farbübergänge(wie weiß ich noch nicht so wirklich, aber da fällt mir sicher noch was ein)
-Anbindung an Winamp/iTunes etc. Visualisierung der Musik auf dem Würfel
-Verbindung zum Würfel über TCP/IP
-Kaskadierung von Würfeln. (Die Patterns werden aufgesplittet und an verschiedene IP Adressen verteilt. So können Kompakt gebaute Würfel nebeneinander gestellt werden und als ein großes 3D Display angesteuert werden)
-Komplexe Animationen, die automatisiert Ablaufen
-eventuell Ansteuerung über eine Software Midi Schnittstelle. Hier habe ich noch keine Ahnung wie ich das realisieren soll. Muss aber irgendwie gehen.
Der Würfel soll als Basisplatine das AVR Net IO von Pollin verwenden.
Darauf möchte ich eine modifizierte Arduino Version laufen lassen um die Programmierung zu vereinfachen.
Arduino unterstützt z.B. von Haus aus den ENC28J60.
Das Projekt möchte ich gerne als OpenSource veröffentlichen und hoffe bei späteren Funktionen auch auf Mithilfe.
Ich bin allerdings Informatiker und kein Elektroniker. Deshalb bräuchte ich beim Schaltplan und der Auslegung der Hardware ein wenig Hilfe.
Ich möchte Leds mit gemeinsamer Anode(-) verwenden.
Die Ansteuerung möchte ich über 16*3 Säulen realisieren.
Die führt dazu dass ich 48 Ausgangspins bräuchte. Recht einfach scheint eine Ansteuerung der 74HC595 zu sein. An diese kommt man auch sehr einfach. Ich steuere also die LED Kathoden aller LEDs in einer Säule gemeinsam an.
Um jede LED einzeln anzusteuern muss ich aber noch irgendwie durch die Ebenen Multiplexen. Dies würde z.B. über BC547 funktionieren. Um den Lötaufwand etwas geringer zu halten dachte ich an das Darlington Array ULN2803A. Hier möchte ich dedizierte Portpins pro Ebene verwenden.
Warum? weil ich sie zur Verfügung habe und es die schnellste Lösung ist.
Die ULN2803A haben soweit ich weiß interne Widerstände?
Ich denke dann benötige ich keine Vorwiderstände mehr für die LEDs.
Sehe ich das Richtig?
Wenn nein? Welche Werte benötige ich denn?
Ich nehme an zwischen den 74HC595 und den LEDs selbst?
Desweiteren Frage ich mich wie das mit den Strömen bei den LEDs aussieht. Durch das Multiplexing habe ich ja bei den normalen 20mA einen Helligkeitsverlust.
Nach meinem Verständnis müsste ich ein 1/4 Multiplexing haben, da ich ja die einzelnen Farben der einzelnen LEDs in jeder Ebene gleichzeitig Ansteuern kann.
Als LEDs möchte ich aufgrund des Preises diese hier verwenden:
http://cgi.ebay.de/100-RGB-Ultra-LED...item2556fd38c6
Laut Datenblatt sind 200mA für den kompletten Controller und 40mA pro Ausgangspin ok.
Das heißt als maximalen Strom pro Led kann ich 40mA festlegen. Das bedeutet beim 1:4 Multiplexing eine Helligkeit wie bei 10mA pro Led.
Ist das noch ausreichend von der Helligkeit?
Ich komme dann auf eine Belastung des Controllers mit 40*3mA also 120mA. Das dürfte Save sein.
Sind meine Überlegungen soweit korrekt?
Nun zu meinem Problem. Die 74HC595 haben soweit ich das verstanden habe keine Slave Select Leitung. Am SPI hängt aber der ENC28J60.
Demnach muss ich die 74HC595 ja über Software SPI ansteuern.
Reicht die Geschwindigkeit hier für PWM noch aus?
Ich dachte an 4bit PWM in Software? Das sollte für einen flüssigen Farbübergang doch ausreichen?
Wichtig: Das ganze sollte problemlos nachzubauen sein (auch auf Lochraster). Deshalb bitte keine SMD Bauteile empfehlen!
Außerdem habe ich ncoh eine Frage zur Auslegung des Netzteiles. Kann ich da auf dem 7805 bleiben? Der kann ja 1A Problemlos.
Sollte ich ja eigendlich nicht überschreiten wenn ich das richtig überlegt habe, oder?
Habe ich sonst noch irgendetwas wichtigs vergessen?
Im Anhang der Schaltplan, bei dem ich mir nicht sicher bin und ein Bilder der Software.
Viele Grüße,
Tim
Lesezeichen