laserprojector
laserprojector Release status: experimental [box doku] | |
---|---|
Description | Projektor der 2 sich drehende Spiegel zur Ablenkung eines modulierten Laserstrahls nutzt |
Author(s) | siro |
Last Version | 0.3 |
Platform | lpc2103 / STM32F405 |
Danksagungen
Vielen Dank an folgenden Personen
Besonderen Dank an das Labor eV für die Bereitstellung der Räume und des Werkzeuges.
DIY Laser Projector
Idee : Einen Projector (neuDeutsch: Beamer) welcher das Bild ähnlich einer braunschen Röhre zeilenweise abfährt und dabei den Lichtstrahl so moduliert, das ein Bild ensteht.
- Zeilenraster.jpg
Funktionsprinzip eines zeilenweisen Bildaufbaus
Project im Trac
laserproj
Übersicht
Auflösung:128x32 (max mit lpc2103)
Refreshrate:30Hz
Farben:1 (blau)
Farbtiefe: 256 (8-bit)
Interfaces: RS232, ??
Ablenkung:2x Spiegelräder, Asyncronmotor + Gleichstrommotor
benutzte ControllerLPC2103
Konzept
Ein Mikrocontroller steuert den horizontal angebrachten schnellen Motor und einen vertikal angebrachten, sich langsam drehenden Motor, Keyboard, GLCD, Power-Supply.
An den Motoren sind Spiegelräder befestigt. Der Laserstrahl trifft auf den ersten Spiegel und wird von dort zur zweiten reflektiert. Der erste sorgt für die horizontale Ablenkung, der zweite für die vertikale. Durch digitale Ansteuerung des Lasers kann ein Bild projektiert werden.
Neue Idee zur Datenanbindung
VGA Eingang
Controller IC muss mit H-Motor und V-Motor syncronisieren
Übersicht
Syncsensor/Lichtschranke
Beschreibung
Ein 5mW roter Laserpointer leuchtet dauerhaft auf den rotierenden Spiegel gerichtet. Sobald der reflektierte Lichtstrahl auf die Phototransistoren fällt, wird ein Interrupt am Mikrocontroller ausgelöst.
Generell ist es auch möglich eine IR-LED zu verwenden, diese haben aber einen sehr großen Abstrahlwinkel und eine geringe Leuchtdichte. Dadurch sind diese nur für sehr niederfrequente Anwendungen geeigenet.
Bilder
Schaltplan
Schaltplan & EAGLE layout im SVN: light barrier
STATUS: getestet
Horizontaler Motor
Beschreibung
Aus einem Drucker der Marke "Epson" 24000 U/min mit 7 Seitenflächen. 400*7 = 2800 Ablenkungen pro Sekunde.
Liegt die Ablenkeinheit wie auf den Fotos (unten) ist Pin 1 der unterste und Pin 5 der oberste.
Stecker
Pin | Funktion |
---|---|
5 | +24V |
4 | GND |
3 | Eingang: 5V TTL 0Khz = 0 U/s, 1 Khz = 400U/s (nichtlineare Kennkurve) |
2 | Ausgang: 7*U/sek ??? sehr instabil, besser nicht nutzen! |
1 | ?? |
Laserstromversorgung
- Version 1 laserprojector/lasercurrentsource
- Version 2 laserprojector/lasercurrentsourcev2
Bildverarbeitung
Allgemein
Aufgaben
- Messung der Zeitspanne zwischen 2 Sync-pulsen
- Mittelwert berechnung x,y mit der Real-Time-Clock
- Phasenschiebung p mit (p <= x), o mit (o <= y)
- Gammakorrektur g mit lookup-table
- PC-Kommunikation über UART0/USB
- Darstellung bei >500k MSps bei 150mA Amplitude
- CTC für Synchronmotor
Gammakorrektur
nächstes mal in Hardware...
uint8_t gamma_ar052={ 0, 2, 3, 4, 4, 5, 6, 6, 7, 8,
9, 10, 11, 12, 13, 15, 16, 17, 19, 20,
22, 24, 26, 28, 30, 32, 34, 37, 39, 42,
45, 48, 51, 54, 57, 61, 65, 68, 72, 77,
81, 86, 91, 96,101,107,112,118,125,131,
138,145,152,160,168,176,185,194,203,213,
223,234,244,256};
uint8_t gamma_ar075={ 0, 1, 2, 2, 2, 2, 3, 3, 3, 4
4, 5, 5, 6, 6, 7, 8, 8, 9, 10
11, 12, 13, 14, 15, 17, 18, 20, 21, 23
25, 27, 29, 31, 34, 36, 39, 42, 45, 49
53, 57, 61, 65, 70, 75, 81, 87, 93,100
107,114,123,131,140,150,161,172,183,196
209,224,239,255};
LPC2103
Aufgaben
- Messung der Zeitspanne zwischen 2 Sync-pulsen -> Timer0 / 1
- Mittelwert berechnung x,y mit der Real-Time-Clock
- Phasenschiebung p mit (p <= x), o mit (o <= y)
- Gammakorrektur g mit lookup-table
- PC-Kommunikation über UART0/USB
- Darstellung bei >500k MSps bei 150mA Amplitude
- Soft-CTC für Synchronmotor
- Programm im SRAM -> 0-Wait Instructions
- 72 Mhz Core Clock
Bauteile
Experimentierboard MP2103:
MP2103-Stick
lpc210x Datasheet
NXP LPC2103
Software
Das MP2103 Board kann einfach mit dem Programm Flash Magic (Windows/Linux mit WINE) oder lpc21isp (Linux) programmiert werden. Um den Source-code zu kompilieren braucht man Ride7 mit Compiler von Raisonance.com für Windows, ARM Gcc toolchain für Linux.
Den Quelltext gibts hier: source-code
Die Software ist noch experimentell, theoretisch sind Auflösungen bis 128x32 Pixel möglich, begrenzt durch den SRAM und die Geschwindigkeit des LP2103.
Die Soft-CTC Methode liefert (fehlerhafterweise) eine variable Frequenz, die gegen die Anzeigeroutine arbeitet. Der Motor regelt sich einiger Zeit auf eine konstante Drehzahl.
STM32F405
Aufgaben
- Messung der Zeitspanne zwischen 2 Sync-pulsen ->
- Mittelwert berechnung x,y mit der Real-Time-Clock
- Phasenschiebung p mit (p <= x), o mit (o <= y)
- Gammakorrektur g mit lookup-table
- PC-Kommunikation über USB
- Darstellung bei >500k MSps bei 150mA Amplitude
- Hardware CTC für Synchronmotor
- DMA Transactions
- 168 Mhz Core Clock
STATUS:lpc2103@72Mhz, läuft/STM32F405 experimentell
Laserdiode
Datei:ALI-Laserwarn445nm1000mw small.jpg
Beschreibung
WARNUNG !
Dies ist ein Klasse 4 Laser ! Er verbrennt innerhalb von Sekunden Papier,Holz,Fleisch,... selbst in einigen Metern Entfernung !
Schutzbrille tragen
Nicht in den Strahl blicken !
Ich projektiere auf eine große Fläche > 1 qm, dadurch sind die Lichtpunkte an der Wand nicht so hell, dass man sich die Augen verbrennt !
Nie auf den Lichtpunkt blicken, wenn der Laser "steht". Verbrennungsgefahr !
Laserschutzbestimmungen einhalten !
1000mW (1W) Laserdiode 445nm Blau 5,6mm
Pinbelegung der Laserdiode
Die Laserdiode sollte immer kurzgeschlossen sein, wenn diese nicht benutzt wird, um ESA entgegen zu wirken. Ich habe einen 1 MegaOhm Widerstand direkt zwischen Anode und Kathode der Diode gelötet, dies sollte evt. auftretende Spannungen langsam reduzieren.
Anschlusskabel an meiner Diode: ROT -
Anschlusskabel an meiner Diode: SCHWARZ +
Bauteillieferanten
- http://www.dealextreme.com/p/200mw-532nm-green-laser-module-3v-11-9mm-26891
- http://www.dealextreme.com/p/100mw-red-laser-module-5v-input-10008
- http://www.dealextreme.com/p/genuine-new-wish-5v-red-stage-laser-module-100mw-10095
- http://hightechdealz.com/product_info.php?cPath=21&products_id=39
- http://www.insaneware.de/epages/61714203.sf/de_DE/?ObjectPath=/Shops/61714203/Categories/Laser/Laserdioden
Optik
Beschreibung
TODO:
4x RC-CAR KUGELLAGER 4X10X3 Gleichstrommotor MABUCHI RS-360SH
Dieser Teil beschreib die optischen Aspekte.
Die gesamte Hardware und Optik wird auf die Grundplatte montiert. Diese besteht aus Plexiglas und wurde von http://www.formulor.de hergestellt. Die einzelnen Bauteile lassen sich zusammenstecken.
Auf dem H-Motor ist ein sich drehendes 16-Eck.
Demnach sind 360° : 16 = 22,5°, von denen sich etwa 20° nutzen lassen.
Strahlbreite in Laufabstand vom H-Motor (Achse + SpiegelradRadius)
Abstand a
Breite b
b(a) := tan(20°) * a * 2 = a * 0,73
Vertikaler Spiegel
gibts hier zu kaufen
Maße:
Länge: 82mm
Radius-Außen: 80mm
Radius-Innen: 58mm
Spiegelfacetten:18,5 (eine halbe....)
Sehr schlechte Verarbeitung, keine Oberflächenspiegel !
Laufabstand H-Spiegel zu V-Spiegel:
ca. 5 cm
Breite des Spiegels am V-Spiegelrad:
ca. 3,63 cm
Horizontaler Spiegel
Kupferspiegelrad 400*16 = 6400 Ablenkungen pro Sekunde.
Achse des Motors ist zu kurz, nächstemal flacher, aus Aluminium und Speichen verwenden !
Durchmesser Loch 12mm Höhe Speichen 2mm
STATUS:neue Version, nicht getestet!
Plexiglas Platine
bei formulor.de bestellt:
Kosten
Bauteile Kontroller: 30€ + 15€
Bauteile Stromversorgung: 15€
Laser: 100€
Spiegel: 100€ + 13€
Motoren: 10€ (aus alten Laserdruckern)
Gehäuse: 40€
Status: TODO
Links
- Laser Projektoren
- Laser-Projektor selbstgebaut
- http://elm-chan.org/works/vlp/report_e.html
- Horizontal Laser Deflector
- AVR Laser Projector
- AVR laser projector
- the laserbeamer
- Laser video projector
- Mechanically scanned laser display
- RGB Laser Projector
- VGA Signal, Timings, Accessing VGA-graphiccard registers
- boomerssupply.net first surface mirror shop
- www.scientificsonline.com first surface mirror shop
- http://shop.optik-mechanik.de/
- LaserTV
FPGA