USB-Ausgabekarte 12 Bit mit Framebuffer im Eigenbau
Moderatoren: nohoe, lightwave, adminoli
USB-Ausgabekarte 12 Bit mit Framebuffer im Eigenbau
Hallo Bastler,
nachdem ich mein Projekt vor einiger Zeit im Einsteigerforum erwähnt habe ist es mittlerweile so weit gediehen dass ich es hier mal offiziell vorstellen möchte.
Es handelt sich um eine USB-Ausgabekarte mit 12 Bit Auflösung für X/Y und 8 Bit für R/G/B. Maximale Scangeschwindigkeit liegt bei 70kpps. Dazu kommen 8 TTL-Ausgänge und DMX. Die Karte hat einen Framebuffer der exaktes Timing unabhängig vom steuernden Windows-Rechner gewährleistet.
Die Karte läuft zusammen mit HE-Laserscan und Mamba.
Ich denke speziell mit HE-Laserscan zusammen lassen sich für wenig Geld (dafür aber viel Lötarbeit) durchaus semiprofessionelle Ergebnisse erzielen.
Details, Bilder und Schaltplan liegen unter www.lumax.de
Viel Spaß beim lesen,
Tobias
nachdem ich mein Projekt vor einiger Zeit im Einsteigerforum erwähnt habe ist es mittlerweile so weit gediehen dass ich es hier mal offiziell vorstellen möchte.
Es handelt sich um eine USB-Ausgabekarte mit 12 Bit Auflösung für X/Y und 8 Bit für R/G/B. Maximale Scangeschwindigkeit liegt bei 70kpps. Dazu kommen 8 TTL-Ausgänge und DMX. Die Karte hat einen Framebuffer der exaktes Timing unabhängig vom steuernden Windows-Rechner gewährleistet.
Die Karte läuft zusammen mit HE-Laserscan und Mamba.
Ich denke speziell mit HE-Laserscan zusammen lassen sich für wenig Geld (dafür aber viel Lötarbeit) durchaus semiprofessionelle Ergebnisse erzielen.
Details, Bilder und Schaltplan liegen unter www.lumax.de
Viel Spaß beim lesen,
Tobias
- tschosef
- Beiträge: 7955
- Registriert: Mi 19 Nov, 2003 10:27 am
- Do you already have Laser-Equipment?: 7 Projektoren, Tarm Two und DS 2000
7 x ShowNET in einem Gehäuse incl Switch
zwei alte Eigenbaukisten liegen noch im Keller rum. - Wohnort: Steinberg
- Kontaktdaten:
halli hallo...
ich sag nur COOOOLLL... vorallem das Treiberkonzept mit der *.mld... das öffnet doch schon mal viele Möglichkeiten.
bin schon auf weitere Ergebnisse gespannt... wie kommst mit den dll sachen vorran? "DMX... Strahlschalter"....
gruß
Erich
ich sag nur COOOOLLL... vorallem das Treiberkonzept mit der *.mld... das öffnet doch schon mal viele Möglichkeiten.
bin schon auf weitere Ergebnisse gespannt... wie kommst mit den dll sachen vorran? "DMX... Strahlschalter"....
gruß
Erich
Schreibe nie etwas, was Du deinem Gegenüber nicht auch vor anderen Leuten ins Gesicht sagen würdest
Bin der Programmierer von Showeditor und HE-Laserscan
www.HE-Laserscan.de
Lasersoftware + Laserhardware
Bin der Programmierer von Showeditor und HE-Laserscan
www.HE-Laserscan.de
Lasersoftware + Laserhardware
-
- Beiträge: 2321
- Registriert: Di 25 Dez, 2001 12:00 pm
- Do you already have Laser-Equipment?: Selfmade 850mW RGB
- Wohnort: Düsseldorf / Germany
- Kontaktdaten:
Hi Tobias,
nicht schlecht, was de da auf die Beine gestellt hast - auch wenn man sich die anderen Projekte auf deiner HP anguckt
Alle Achtung !
Bei dem ganzen Kabelkram unter der Leiterplatte frag ich mich allerdings, warum du bei sochen aufwendig zu verdreahtenden Schaltungen keinen Fädelstift mit Fädeldraht verwendest ?
Dann gibt's ja jetzt vermutlich bald die 3. USB-Ausgabe-Karte nach der Riya !?
Bei der Riya war ja ursprünglich mal die Integration einer Abspielfunktion für ILDA-Files auf ner CF-Karte geplant, was allerdings nie fertig umgesetzt wurde.
Gibt zwar schon "externe" Lösungen, aber bastelt vielleicht schon jemand an einer Kombi-Karte, wie es die Riya-USB mal hätte werden sollen ?
Grüße
Achim
nicht schlecht, was de da auf die Beine gestellt hast - auch wenn man sich die anderen Projekte auf deiner HP anguckt

Alle Achtung !
Bei dem ganzen Kabelkram unter der Leiterplatte frag ich mich allerdings, warum du bei sochen aufwendig zu verdreahtenden Schaltungen keinen Fädelstift mit Fädeldraht verwendest ?
Dann gibt's ja jetzt vermutlich bald die 3. USB-Ausgabe-Karte nach der Riya !?
Bei der Riya war ja ursprünglich mal die Integration einer Abspielfunktion für ILDA-Files auf ner CF-Karte geplant, was allerdings nie fertig umgesetzt wurde.
Gibt zwar schon "externe" Lösungen, aber bastelt vielleicht schon jemand an einer Kombi-Karte, wie es die Riya-USB mal hätte werden sollen ?
Grüße
Achim
- jojo
- Beiträge: 1939
- Registriert: Fr 21 Dez, 2001 12:00 pm
- Do you already have Laser-Equipment?: -
- Wohnort: Germany
- Kontaktdaten:
Zu der Beschreibung:
Hast Du die 70K auch als Laserausgabe erreicht, oder nur als "Testdatenstrom", ohne die richtige Ausgaberoutine XYRGB?
Bei 70K mit mindestens 6 (oder 8 ) Bytes pro Punkt benötigst Du mindestens 420KB bis 560KB /Sek.
Das ist zwar nichtmal 50% des USB, aber wenn man die Zeit für das "Abholen" der Daten vom USB und die Zeit der Punktausgabe (schreiben X,Y,R,G,B usw.) einbezieht, muss der Atmel da schon ganz schön ackern. Du hast 14 Mikrosekunden zum Rausschreiben der DACs und must in der Zwischenzeit Daten nachladen. Hast Du mal gemessen, wie lange Du für die reine Ausgaberoutine brauchst, also vermutlich Deine Timer-Interruptroutine? Wäre interessant. Wenn man diese Zeit hat, kann man sich anhand der Restzeit ausrechnen, was maximal nachzuladen geht.
Eventuell mal bei Beginn und Ende Routine einen freien Port setzen/löschen und mal messen.
Vom USB bekommst Du maximal 1 Byte/Mikrosekunde. Bei 70K müsstest Du also je Punkt 6x nachladen = 6 Mikrosekunden. Eher mehr, weil Du den FTDI vermutlich über Port pollen tust.
Da ich auch mit AVR arbeite, bin ich schon etwas überrascht, dass Du auf Anhieb soviel rausbekommst.
Also sind die 70K "echte Laserausgabe", oder nicht?
Joachim
Hmm, also Hut ab, wenn Du wirklich auf Anhieb 70K mit dieser Architektur hinbekommen hast. Nur Deine Testangaben mit dem Soundfile macht mich jetzt etwas stutzig. Wie genau hast Du das mit einem Wavefile ermittelt? Einfach gemessene KBytes/Sek durch 8?Allein mit einer kontinuierlich hohen Punktrate lässt sich noch keine gute Ausgabequalität sicherstellen. Die Framedaten müssen vom Steuerrechner auch schnell genug empfangen werden können. Es wäre eine Mogelpackung, Frames mit 70000 PPS zu scannen, wenn dabei die Framerate in die Knie geht, weil die Daten für den nächsten Frame nur noch langsam hereintröpfeln. Meine Angabe von 70000 Frames ist also so zu verstehen, dass dabei keine Frames wiederholt werden.
Ich habe das getestet, indem ich die Ausgabekarte als Soundkarte zum Abspielen von Wave-Dateien missbraucht habe. Dabei würde es sofort auffallen, wenn die Ausgabe ins Stocken gerät.
Hast Du die 70K auch als Laserausgabe erreicht, oder nur als "Testdatenstrom", ohne die richtige Ausgaberoutine XYRGB?
Bei 70K mit mindestens 6 (oder 8 ) Bytes pro Punkt benötigst Du mindestens 420KB bis 560KB /Sek.
Das ist zwar nichtmal 50% des USB, aber wenn man die Zeit für das "Abholen" der Daten vom USB und die Zeit der Punktausgabe (schreiben X,Y,R,G,B usw.) einbezieht, muss der Atmel da schon ganz schön ackern. Du hast 14 Mikrosekunden zum Rausschreiben der DACs und must in der Zwischenzeit Daten nachladen. Hast Du mal gemessen, wie lange Du für die reine Ausgaberoutine brauchst, also vermutlich Deine Timer-Interruptroutine? Wäre interessant. Wenn man diese Zeit hat, kann man sich anhand der Restzeit ausrechnen, was maximal nachzuladen geht.
Eventuell mal bei Beginn und Ende Routine einen freien Port setzen/löschen und mal messen.
Vom USB bekommst Du maximal 1 Byte/Mikrosekunde. Bei 70K müsstest Du also je Punkt 6x nachladen = 6 Mikrosekunden. Eher mehr, weil Du den FTDI vermutlich über Port pollen tust.
Da ich auch mit AVR arbeite, bin ich schon etwas überrascht, dass Du auf Anhieb soviel rausbekommst.
Also sind die 70K "echte Laserausgabe", oder nicht?
Joachim
Hallo und danke für das Feedback!
@Erich
Du kannst es wohl schon nicht mehr erwarten dass Arbeit auf dich zukommt
Ich arbeite weiter an der DLL, wenn auch nicht mit höchster Priorität, denn mit dem MLD-Treiber geht ja immerhin schon was.
@Achim
Wenn dann eher mit SD-Karte als CF, das sind viel weniger Pins, und Verdrahtung gehört nicht so zu meinen Stärken wie du festgestellt hast
Der Bauteilaufwand wäre minimal, aber dafür viel Firmware, und ich persönliche habe momentan nicht so den Bedarf an Stand-Alone-Geräten.
@Joachim
Fühle mich geehrt ein Lob vom Easylase-Entwickler zu kriegen. Deine Formulierung "auf Anhieb" ist allerdings nicht ganz zutreffend. Hat mich schon viel Zeit gekostet bis die Sache am laufen war... Bin mir nicht sicher ob ich deine Frage mit dem Testdatenstrom richtig verstehe. Aber es ist schon so gemeint dass die 70k sich auf echte Laserausgabe XYRGB TTL beziehen, wäre sonst ja irgendwie sinnlos? Also die Karte empfängt 7*70000=490kB pro Sekunde und nebenher werden die Punkte natürlich auch ausgegeben mit 70k. Es ist richtig dass der Atmel dabei ganz schön ackern muss. Bei den Optimierungen habe ich um jeden eingesparten Clock-Zyklus gekämpft. Aber ein leistungsfähigerer Prozessor wäre für mich nicht in Frage gekommen, ich kenne mich halt nur mit den AVR's aus.
Schönen Abend,
Tobias
@Erich
Du kannst es wohl schon nicht mehr erwarten dass Arbeit auf dich zukommt

@Achim
Wenn dann eher mit SD-Karte als CF, das sind viel weniger Pins, und Verdrahtung gehört nicht so zu meinen Stärken wie du festgestellt hast

@Joachim
Fühle mich geehrt ein Lob vom Easylase-Entwickler zu kriegen. Deine Formulierung "auf Anhieb" ist allerdings nicht ganz zutreffend. Hat mich schon viel Zeit gekostet bis die Sache am laufen war... Bin mir nicht sicher ob ich deine Frage mit dem Testdatenstrom richtig verstehe. Aber es ist schon so gemeint dass die 70k sich auf echte Laserausgabe XYRGB TTL beziehen, wäre sonst ja irgendwie sinnlos? Also die Karte empfängt 7*70000=490kB pro Sekunde und nebenher werden die Punkte natürlich auch ausgegeben mit 70k. Es ist richtig dass der Atmel dabei ganz schön ackern muss. Bei den Optimierungen habe ich um jeden eingesparten Clock-Zyklus gekämpft. Aber ein leistungsfähigerer Prozessor wäre für mich nicht in Frage gekommen, ich kenne mich halt nur mit den AVR's aus.
Schönen Abend,
Tobias
kann man post auch wieder löschen? anscheinend nicht...
Zuletzt geändert von schobi am So 08 Jan, 2006 7:05 pm, insgesamt 2-mal geändert.
Hallo Schobi,
sehr nette Arbeit. Ehrlich gesagt hätte ich nicht gedacht, dass der kleine AVR dafür ausreicht. Doch offensichtlich hast Du es hinbekommen.
Noch ein TIP: Nicht beschaltete Eingänge verursachen einen höheren Stromverbrauch und evt. auch Störungen. Deshalb die Eingänge von IC3A und IC15A/B beschalten. Z.B. alles auf Masse legen. Einen der Gleichrichter hättest Du zudem sparen können. Das sind aber nur Feinheiten ohne Einfluss auf die Funktion der Schaltung.
Viel Erfolg bei den weiteren Tests,
Andi F.
sehr nette Arbeit. Ehrlich gesagt hätte ich nicht gedacht, dass der kleine AVR dafür ausreicht. Doch offensichtlich hast Du es hinbekommen.
Noch ein TIP: Nicht beschaltete Eingänge verursachen einen höheren Stromverbrauch und evt. auch Störungen. Deshalb die Eingänge von IC3A und IC15A/B beschalten. Z.B. alles auf Masse legen. Einen der Gleichrichter hättest Du zudem sparen können. Das sind aber nur Feinheiten ohne Einfluss auf die Funktion der Schaltung.
Viel Erfolg bei den weiteren Tests,
Andi F.
Wer ist online?
Mitglieder in diesem Forum: Ahrefs [Bot] und 5 Gäste