- Labornetzteil AliExpress         
Seite 1 von 3 123 LetzteLetzte
Ergebnis 1 bis 10 von 25

Thema: Mein RGB LED-Globe 192x96 SD-Card, IR, Laufschrift...

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    16.06.2013
    Ort
    Dresden
    Beiträge
    10

    Mein RGB LED-Globe 192x96 SD-Card, IR, Laufschrift...

    Anzeige

    Praxistest und DIY Projekte
    Hallo an die Bastler da draußen,
    Rotierende LED’s haben mich schon seit längerem in ihren Bann gezogen . Von den Videos bei YouTube inspiriert baute ich eine erste Version des LED-Globe mit 54 Weißen LED’s. Aufgeklebt auf einem in Form gebrachten Kohlefaserstab. Der Controller war ein Atmel Atmega328p mit 20Mhz. Mit Strom wurde die ganze Sache über zwei Kohlebürsten aus dem Modellbau versorgt. Das Highlight war die Funkübertragung von einem Arduino auf den Globe…

    Bild:
    https://www.dropbox.com/s/jeq8cnsgsf...75950.jpg?dl=0

    Von dem Projekt beflügelt, dachte ich, da geht doch mehr!
    Und das ist dabei herausgekommen:

    RGB LED-Globe V2

    techn. Daten:
    -Durchmesser 120mm
    -96 RGB-LEDs (1,4mmx1,6mm)
    -12 TLC5947 LED Treiber (12Bit PWM)
    -32Bit Atmel 32UC3B512
    -Micro SDCard 8Gb
    -Fat32
    -Wiedergabe von Bildern
    -Wiedergabe von Videos bis zu 20fps
    -max 40Hz (2400U/min mehr schafft der Serverlüfter nicht )
    -Stromversorgung über Luftspule (H-Brücke 64Khz)
    -Fernbedienung (induktive Datenübertragung)
    -Drehzahlregelung
    -Laufschrift mit 8 zusätzlichen LED’s

    Bilder:
    https://www.dropbox.com/sh/me2a68qdz...9bq-tA-Qa?dl=0



    Sorry, die Herzchenbilder sind dem geschuldet, dass ich in den letzten Monaten meine bessere Hälfte sehr vernachlässigt habe.
    Und so einiges wieder gut zu machen hatte...


    Projektbeschreibung:
    Der Weg zum Istzustand war lang und mühsam! Die Voraussetzungen eher bescheiden, da ich keine Erfahrung mit dem Entwerfen bzw. Herstellen von Platinen hatte. Die Letzte hatte ich noch mit meinem Vater per Hand gemalt (Nitrolack und Pinsel)

    Nach kurzer Recherche im Netz, nach einem passenden Tool, fiel die Wahl auf KiCad. Nach langer Einarbeitungsphase und Studium der Atmel Datenblätter war die erste Schaltung entworfen. Der Weg zum fertigen Layout hat ebenfalls viel Zeit in Anspruch genommen, da viel in Handarbeit geroutet wurde (runden und nicht 45° Leiterzügen geschuldet). Irgendwann war das Layout fertig und es ging ans Ausdrucken und Ätzen.

    Gedruckt wurde mit einem Tintenstrahldrucker auf Overheadfolie, Vorder- und Rückseite zu einer Tasche verklebt und die Platine mit einem UV-Nageltrockner belichtet. Das ganze Entwickelt und mit Natriumsulfat geätzt… Also mit einfachsten Mitteln und Anleitungen siehe Google!
    Nach ersten Probeätzungen mit kleiner werdenden Konturen war ich selbst von dem Resultat überrascht und bestärkt weiterzumachen. Leiterzüge von 6mil, die ich benötigte, waren möglich .

    Die über 300 Durchkontaktierungen wurden mit Bungard Kupfernieten, einer kleinen Proxxon Ständerbohrmaschine, einem Körner und viel ruhiger Hand gesetzt. Danach konnte es ans Bestücken gehen. Dazu stand mir eine selbstgebaute Vorwärmplatte und eine Fernost-Heißluftstation zur Verfügung.

    Der Motor selbst stammt aus einem alten Fujitsu Server (die haben für die Größe jede Menge Power). Die orig. Welle wurde ausgetauscht und eine Messingbuchse angeflanscht. In dieser ist dann die Welle, welche die Platine aufnimmt, eingeklebt. Die Teile stammen alle aus ausgeschlachteten CD-Rom’s, Festplatten, Servern…Der Fuß besteht aus einem Sammelsurium alter Prozessorlüfter, welche nach vielem Probieren irgendwie zusammen gepasst haben.
    Die Drehzahl-Regelung übernimmt der Atmega 328p auf der Front-Platine. Ausgelegt als P-Regler, der das Tachosignal des Lüftermotors auswertet, und diesen über eine 10Bit PWM ansteuert.

    Mit Strom wird der Globus induktiv über zwei ineinander laufenden Wicklungen versorgt. Geschaltet wird die Primärwicklung mit einer H-Brücke, welche von zwei Dual-Mosfet Treibern angesteuert wird (hab ich in einer alten Xbox360 gefunden).
    Sekundärseitig wird die Spannung mittels 3A Step-Down Wandlers (MP2307) auf 5Volt stabilisiert. Bei der hohen Frequenz von 64Khz musste ich HF-Litze für die Wicklungen verwenden. Diese besteht aus 40 verdrillten 0,15mm Kupferdrähten.

    Die Signale der Fernbedienung werden ebenfalls vom Atmega 328p auf der Frontplatine ausgewertet. Um nicht noch ein Protokoll für die Datenübertragung zu entwickeln und kostbare Prozessorzeit zu verbrauchen, habe ich den USART missbraucht. Dabei werden die 8Bit des Fernbedienungsbefehls auf Tx gesendet und direkt ausgewertet. Abhängig vom Pegel wird das Tastverhältnis der H-Brücke geändert. Primärseitig lässt sich das Signal mittels Timer im Capture-Mode auswerten und die Pegel des USART’s reproduzieren. Diese auf den Atmel 32UC3b512 (Rx-Eingang des USART) geleitet und man hat die Fernbedienungsbefehle interruptgesteuert auf der rotierenden Scheibe zur Verfügung. Geht sicher eleganter, aber es funktioniert…

    Nun zur Software:
    Der Atmel 32UC3b512 war komplettes Neuland für mich. Die Komplexität und der Mangel an hardwarenahem Beispielcode musste ich schmerzlich erfahren. Also Wochen damit verbracht das ASF (Atmel Software Framework) zu studieren und Interrupt-Prioritäten, Interrupt-Gruppen, Powermanagement, Timer… zu verstehen. Wenn man so wie ich bisher nur mit 8Bit Atmegas zu tun hatte ist das eine komplett neue Welt .
    Aber jammern bringt einen nicht weiter und irgendwann leuchteten die ersten LED’s.

    Um die Datenmenge schnellgenug für die LED-Treiber zur Verfügung zu stellen, wird jeder der 12 Treiber einzeln seriell angesteuert. Dafür wird der jeweils anzuzeigende Teil des Bildes, welches im RAM liegt und vorher von der SD-Card geladen wurde, in das Portregister geladen um mit einem Takt alle 12 Treiber zu füllen. Soweit die Theorie, doch mit C# Mitteln war das deutlich zu langsam. Die Lösung, welche eine Verdoppelung der Geschwindigkeit brachte, war Inline-Assembler.
    Die Laufschrift, die in einem kleineren Radius als das Hauptbild läuft, wird von einem 8Bit Schieberegister generiert. Hauptbild und Laufschrift teilen sich einen frei laufenden 16Bit Timer und werden über jeweils einen Compare-Interrupt angezeigt. Grundlage dafür ist ein weiterer Timer welcher die Rundenzeit mittels Reflektions-Lichtschranke ermittelt.

    Die anzuzeigenden Bilder, welche Im RAW-Format (24Bit RGB) auf der SD-Card gespeichert sind, werden auf zwei Arten gelesen. Wenn es sich um ein Einzelbild handelt kommt die langsame blockweise Lesemethode zum Einsatz. Alternativ wird der DMA-Mode verwendet um Videos (Folge von Einzelbildern) schnell genug im RAM zu aktualisieren. Methode eins hat den positiven Nebeneffekt eines schönen Übergangs beim Umschalten der Bilder.

    Gruß
    Fritz
    Geändert von Hiedi (15.01.2015 um 19:15 Uhr)

  2. #2
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    61
    Beiträge
    5.799
    Blog-Einträge
    8
    WOW!

    Wirklich wunderschön, fast schon hypnotisierend. Danke für das tolle Video.

    Das kann man wohl schwer toppen. Hard- und Software sind super. Das würde ich auch gerne können. Weiter so und noch ein paar mehr Videos bitte.

    Gruß

    mic
    Bild hier  
    Atmel’s products are not intended, authorized, or warranted for use
    as components in applications intended to support or sustain life!

  3. #3
    Erfahrener Benutzer Lebende Robotik Legende Avatar von PICture
    Registriert seit
    10.10.2005
    Ort
    Freyung bei Passau in Bayern
    Alter
    73
    Beiträge
    11.077
    Hi Fritz!

    Ich als x-Profibastler kann deine tolle Arbeit wirklich als top beurteilen und nur weiterso bzw. noch besser wünschen.
    MfG (Mit feinem Grübeln) Wir unterstützen dich bei deinen Projekten, aber wir entwickeln sie nicht für dich. (radbruch) "Irgendwas" geht "irgendwie" immer...(Rabenauge) Machs - und berichte.(oberallgeier) Man weißt wie, aber nie warum. Gut zu wissen, was man nicht weiß. Zuerst messen, danach fragen. Was heute geht, wurde gestern gebastelt. http://www.youtube.com/watch?v=qOAnVO3y2u8 Danke!

  4. #4
    Neuer Benutzer Öfters hier
    Registriert seit
    16.06.2013
    Ort
    Dresden
    Beiträge
    10
    Danke für die positiven Kommentare! Es bestärkt einen noch weiter zu machen, denn an Ideen mangelt es nicht .

    Für die Interessierten hab ich noch etwas Beschreibung hinzugefügt...

    Gruß
    Fritz

  5. #5
    Erfahrener Benutzer Robotik Einstein Avatar von Andree-HB
    Registriert seit
    10.12.2004
    Ort
    Bremen
    Alter
    54
    Beiträge
    2.807
    ...Respekt - echt ein tolles Teil !!!

  6. #6
    Erfahrener Benutzer Robotik Einstein Avatar von Geistesblitz
    Registriert seit
    16.03.2011
    Ort
    Dresden
    Alter
    37
    Beiträge
    1.937
    Muss auch sagen, das Ding macht richtig was her und ist auch sehr sauber ausgeführt. Alle Achtung. Da steckt sicher auch ziemlich viel Arbeit hinter, oder?
    AI - Artificial Idiocy

  7. #7
    Erfahrener Benutzer Roboter Genie Avatar von HeXPloreR
    Registriert seit
    08.07.2008
    Ort
    Bad Bramstedt
    Alter
    45
    Beiträge
    1.369
    Hallo Fritz,

    Ich finde es einfach nur "richtig toll gemacht" =D> (<< Beifall Smiley!! - ??)

    Wie genau hast Du das TX Signal auf RX geleitet? Einfach per Schleiferkontakt? Oder IR? Was bedeutet in dem Zusammenhang die H-Brücke - ich kann mir das grade nicht richtig vorstellen. Wäre toll wenn Du dazu genauer was sagen könntest.

    ...ich werde mir mal deinen LED-Treiber den Du benutzt hast ansehen

    Viele Gruße
    Jörg
    Geändert von HeXPloreR (16.01.2015 um 21:36 Uhr)

  8. #8
    Neuer Benutzer Öfters hier
    Registriert seit
    16.06.2013
    Ort
    Dresden
    Beiträge
    10
    Hallo Jörg,
    Die IR-DATEN werden ganz konventionell von der Steuerungsplatine (feststehend) ausgewertet. Der empfangene 8Bit Wert muss nun irgendwie kontaktlos zu dem sich rotierenden Teil übertragen werden. Das naheliegendste ist die logischen Pegel durch unterschiedliche Frequenzen/ Tastverhältnisse der Trägerfrequenz, in dem Fall die Taktfrequenz der H-Brücke, darzustellen. Und da kommt der usart ins Spiel, da für die Übertragung noch ein passendes Protokoll notwendig ist. Die Steuerplatine sendet 8Bit mit dem usart und scannt den Ausgang gleichzeitig ab. Je nach Pegel wird die frequenz der H-Brücke geändert.

    Nun zum rotierenden Teil:
    Die aufmodulierten Pegel des Übertragungs-Protokolls werden durch Messung der Frequenz an der Primärwicklung zurückgewonnen. Und auf den Rx Eingang des usart (UC3B512) geleitet. Dieser kann die Daten decodieren und der gesendete 8 Bit Wert steht dem drehenden Teil zur weiteren Verarbeitung zur Verfügung.

    Schwer zu beschreiben, ich hoffe du weißt was ich meine...

    gruß
    fritz
    Geändert von Hiedi (16.01.2015 um 21:03 Uhr)

  9. #9
    Erfahrener Benutzer Robotik Einstein Avatar von Geistesblitz
    Registriert seit
    16.03.2011
    Ort
    Dresden
    Alter
    37
    Beiträge
    1.937
    Sehr interessant. Ich kann mir vorstellen, dass eine Datenübertragung auch optisch gut möglich wäre, indem man die Signale durch eine IR-LED ausgibt und über einen Fototransistor, der von allen Seiten beleuchtet werden kann, empfängt. Ich weiß aber nicht, ob da der Aufbau der Transistoren Probleme machen könnte und dann in gewissen Stellungen das Licht nicht an die wichtige Stelle kommt. Außerdem müssten bei mehreren Signalen Fremdsignale gut abgeschottet werden.
    AI - Artificial Idiocy

  10. #10
    Erfahrener Benutzer Roboter Genie Avatar von HeXPloreR
    Registriert seit
    08.07.2008
    Ort
    Bad Bramstedt
    Alter
    45
    Beiträge
    1.369
    Danke Fritz für die Erläuterung,

    ich habe es natürlich nicht verstanden mit der H-Brücke
    Dennoch... wenn es funktioniert ...ist die Lösung ganz sicher keinesfalls schlecht.

    Ich denke auch als Alternative wäre eine direkt gegenüberliegende IR-Diode/Empfänger Version im Zentrum der Welle konstruktiv machbar. Also eine 1:1 Weiterleitung des feststehenden Fernbedienungsempfänger-IR-Diode.

    Viele Grüße
    Jörg

Seite 1 von 3 123 LetzteLetzte

Ähnliche Themen

  1. Große LED Laufschrift
    Von Zwerwelfliescher im Forum Elektronik
    Antworten: 8
    Letzter Beitrag: 21.01.2012, 13:04
  2. LED Laufschrift mit Bascom
    Von rici35 im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 8
    Letzter Beitrag: 16.03.2008, 19:18
  3. LED werbe Laufschrift über RN control RS232???
    Von renard im Forum Schaltungen und Boards der Projektseite Mikrocontroller-Elektronik.de
    Antworten: 3
    Letzter Beitrag: 01.09.2007, 13:27
  4. LED Laufschrift - mit ATMega8 und Decodern
    Von zerush im Forum Elektronik
    Antworten: 2
    Letzter Beitrag: 14.02.2007, 23:14
  5. LED-Laufschrift-Kugel
    Von Amri im Forum Vorstellung+Bilder+Ideen zu geplanten eigenen Projekten/Bots
    Antworten: 10
    Letzter Beitrag: 07.09.2005, 15:49

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

LiFePO4 Speicher Test