Hi,
in den letzten Wochen ist so unglaublich viel schönes und trauriges passiert in Sachen Kugelrechner, dass ich erstmal die Kurzfassung schreibe: Die Elektronik wurde beinahe fertig, ist aber bei der Generalprobe fast völlig zerstört worden. Wie das geht? Dazu komme ich später noch. Hier erstmal die Ereignisse in Text, Bild und Video …
Kurz vor Beginn meines Urlaubs Ende Juli hatte ich alle Pläne ausgearbeitet für die einzelnen Komponenten des Kugelrechners. So begann ich mit den Platinen für die ganzen Leuchtdioden (144 für die Außenbeleuchtung). Aufgrund der schieren Masse an Arbeit hatte ich diesen Schritt an den Anfang gesetzt. Wie sich zeigte, war diese Entscheidung wohl gewählt, denn die komplette Dauer der Montage betrug fast 2 Wochen (incl. Redesign der ersten Platinenversion, ätzen, bohren, schleifen, Kabel verzinnen, löten, und chrimpen).

Wurde so nur 8 mal aufgebaut und wird zum testen von neuen Animationen und Effekten verwendet.

Die Flachbandkabel sind eine gute Idee gewesen. Nicht zu steif und nicht zu weich
Video: Testlauf der Testplatinen für die DycoLeds
Video: Und nochmal die Testplatinen im Kreis angeordnet. Getestet bei Tageslicht!
Damit war ich schon sehr zufrieden. Diese Konstruktion erlaubt es die Leds flexibel im Gehäuse von Innen zu montieren und das Licht nach Außen strahlen zu lassen. Aber es gibt ein entscheidendes Problem: Was, wenn eine – im schlimmsten Falle die erste – Led ausfällt? Damit wären viele Leds funktionslos! Dazu muss ich sagen, dass die Leds die Daten vom Controller von einer Led zu Nächsten weiterreichen (serielle Übertragung, ähnlich SPI). Im schlimmsten Fall würden so durch eine defekte Led oder einen Kabelbruch bis zu 24 Leds ausfallen, und die Reparatur würde sich als sehr schwierig erweisen (komplette Demontage des Strangs). Daher kam ich zu dem Entschluss, allen 144 Led-Platinen einen Stecker und eine Stiftleiste zu verpassen. Durch diese modulare Bauweise könnte man im Fehlerfall zügig die defekte Platine tauschen.
Also ran ans Werk und neue Platinen entwerfen und herstellen. Hier die Baufortschritte in einer Bilderfolge:

Es wurden immer gleich 5 * 7 Platinen auf einer Leiterplatte erstellt.

Die Ruhe vor dem Bohr- und Lötsturm. Eine Sichkontrolle erleichtert das spätere Aussondern von nicht korrekt geätzten Platinen.

Scheinbar endlose Arbeit wartet.

Bei dieser Arbeit haben sich die teuren Spezialbohrer bewährt. NIE WIEDER OHNE!

Wo vorher die 0,8mm für die Litzen der Flachbandkabel reichten, mussten die Löcher für die Pfostenstecker auf 1mm aufgebohrt werden.

Mit der neuen Säge ging das Trennen der gebohrten Platinen deutlich schneller!

Bohren, trennen, entgraten und reinigen. Alles an einem langen Abend *ächz*

Hier habe ich die meiste Zeit des Urlaubs verbracht und vor mich hin gelötet.

Die Platzierung der Leds auf den Platinen erfolgte manuell. Das Löten im Reflowofen brachte keine befriedigenden Ergebnisse.
Irgendwann nach schier endlosen Tagen waren dann die ersten 72 Leds, später die übrigen Leds verlötet, mit Steckern und Kabeln versehen und warteten auf ihren ersten Testlauf. Aber eine Sache fehlte noch, die Treiberplatinen, die die Leds mit den benötigten Daten und Spannung versorgen sollten. Innerhalb von ein paar Tagen wurde der Schaltplan und das Platinenlayout gefertigt. Folgende Aufgaben haben diese Treiber:
- Led-Spannung (5V) ein- und ausschalten
- Daten von anderen Treibern/Platinen erhalten und verarbeiten
- Animationen und Farbübergänge berechnen
- je 24 Leds mit Daten versorgen

Erste Version des Treibers (2 Platinen für je 24 Leds). Wieder wie die Led-Platinen gebohrt und verlötet.

Um spätere Reparaturen zu vereinfachen wurden (bis auf den AVR) alle Teile in bedrahteter Ausführung verbaut. Hier ist die Welt noch in Ordnung ... (siehe weiter unten)

Geschafft! Knapp eine Woche dauerte es von der Planung bis zur Fertigstellung der Treiber.
Video: Erster Testlauf der Leds.
Video: Premiere der Leds, noch ohne Treiber (und alle Stränge parallel mit Daten versorgt).
Soweit verliefen die Bauarbeiten gut vorran. Knapp die Hälfte des Urlaubs war vorbei und ich hatte bereits alle Leds und Treiber fertig. Zu diesem Zeitpunkt hatte ich aber schon einen SEHR SCHWERWIEGENDEN Fehler gemacht. Um ein Netzteil zu sparen hatte ich die Klemmen der Leds und der Spannungsregler für die Controller GEBRÜCKT… So musste ich nur ein Netzteil mit 5V anklemmen, die 12V für die Spannungsregler konnte ich mir so sparen. Hätte ich zu diesem Zeitpunkt gewusst, was diese Entscheidung anrichten würde!
Auf jeden Fall wurde erstmal eifrig weitergebaut und programmiert. Das Endergebnis da dann so aus:

Mitte August waren alle Leds und Treiber bereit zum Einbau.
Video: Alle Treiber und Leds im Testbetrieb.
Ich war stolz wie Oscar und machte mit dieser bewährten Methode weiter. Als nächstes nahm ich das Problem mit den Servomotoren in Angriff. Hier wurde wie bei den Led-Treibern eine Platine entworfen und verbaut:

Es wurden, wie bei den Led-Treibern, 2 Platinen auf eine Leiterkarte gebracht. Da ich aber dieses Mal nur eine Platine benötigte, habe ich die schönere verbaut

In der Mitte links kann man eine Drahtbrücke sehen. Diese und eine weitere Brücke, die später folge, sorgten für das folgenreiche Chaos.

Fertige Treiberkarte für alle Servos. Die orangenen Leitungen sind die Taktleitungen für die Motorenstecker. Das Layout der Platine wurde vom Led-Treiber abgeleitet.

Hat doch was, so ein Kraken aus Elektronik und Motoren
Video: Erster Lauf des Servotreibers mit allen Motoren (Stresstest).
Video: Alle Servos in Reihenfolge geklebt und seperat angesteuert.
Mit den Motoren und den Leds hatte ich nun fast alles zusammen, um den Rechner komplett zu montieren. Ich fing noch eine Hauptplatine an, die aber im Urlaub nicht mehr fertig gestellt wurde, denn …
es kam der 15. August.
Ich stand unter Zeitdruck und wollte an diesem Tag die komplette Elektronik mit der neuen Firmware testen, die die Busfunktion der Controller aktiviert und so die Kommunikation über RS-485 erlaubt. Also habe ich alle Netzteile (5 und 12V!), alle Busleitungen und Platinen miteinander verbunden. Ich schaltete die Netzteile ein und es passierte … nicht viel, aber schnell bemerkte ich, dass etwas nicht stimmen kann.
Alle Leds liefen sofort auf voller Helligkeit, zumindestens für einen kurzen Moment. Schnell wurden ein paar Leds farbig, aber völlig ungeplant. Die Servos zucken unkontrolliert umher. Noch ahnungslos über die Ursache schaltete ich alles ab und prüfte die Spannungen der Netzteile. Die 12V sorgen eigentlich nur für die Betriebsspannung der Controller, aber da waren ja noch diese verflixten Drahtbrücken unter den Platinen, die ich inzwischen völlig vergessen hatte. Also wieder 12V angeschaltet und gestaunt: Alle Leds leuchteten nur noch rot, was aber nicht dürfte, da die Leds ausschließlich vom anderen 5V-Netzteil versorgt werden sollten. Also wieder aus und den Fehler (immer noch ahnungslos, aber besorgt) weiter gesucht. Auch das 5V-Netzteil lieferte seine gewünschte Spannung, aber die Leds und Servos zeigten immer noch keine Besserung.
Plötzlich begriff ich, was geschehen war … die Brücken unter den Platinen hatten die 12V der Spannungsregler auch auf die angeklemmten Leds und Servos gejagt und damit zum Großteil gebraten!!!
Ich konnte nicht glauben, dass ich so eine offensichtliche Stolperfalle übersehen hatte! Die MOSFETs auf den Led-Treibern waren durchgesteuert und hatten so die Masse der Leds mit dem Betriebsnetz verbunden, bang!
Es folgte ein Wutausbruch meinerseits und ein Ragequit des kompletten Projekts. Alle Werkzeuge, Materialien und “Schrottplatinen” wurden eingetütet, ins Auto verfrachtet und nach Hause gefahren. Dort probierte ich am Abend nochmal alle Leds seperat aus mit dem Testboard der Leds. Nur 3 der 144 Leds haben die Aktion irgendwie überstanden, aber waren genauso wenig vertrauenderweckend wie der defekte Rest. Die Servos hatten zum Glück keine größeren Schäden davon getragen, was ein Glück. Bei den Treibern sah es ähnlich aus. Ein AVR ließ sich garnicht mehr programmieren oder auslesen und wurde abgeschrieben. Der Rest konnte noch über den Programmieradapter neu geflasht werden, aber wurden kurze Zeit später komplett ausgetauscht.
Ende vom Lied: Alles doppelt und dreifach prüfen!!! Lieber ein paar Stunden zu spät fertig werden als wochenlang und finanziell Ärger wegen kritischen Fehlern bekommen!
In den kommenden Wochen werde ich neue Treiberplatinen anfertigen, die gegen Überstrom und -spannung gesichert sind. Ebenfalls werden die MOSFETs getauscht und VOR die Leds und auch die Motoren platziert, um erst bei der richtigen Spannung durchzuschalten und im Fehlerfall nichts an die empfindliche Elektronik zu lassen. Es wird also weitergebaut nach dem großen Schreck
Soweit mein Bericht vom Urlaub 2012 und den gesammelten Erfahrungen. Bei Neuigkeiten folgen wieder Tweets und später auch Updates hier auf dem Blog.