Laserprojector: Unterschied zwischen den Versionen

Aus LaborWiki
Wechseln zu: Navigation, Suche
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
 
(131 dazwischenliegende Versionen von 5 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
{{ProjektInfoBox
{{ProjektInfoBox
|name       = laserprojector
|name=laserprojector
|status     = experimental  
|status=experimental
|image       = LaborLogo2.png
|image=laser.jpg
|description = projector using laser and 2 mirrors for deflection
|description=Projektor der 2 sich drehende Spiegel zur Ablenkung eines modulierten Laserstrahls nutzt
|author      = siro
|username=siro
|username    = siro
|author=siro
|version     = 0.1
|version=0.3<br>
|update     = 13.04.2010
|update='''[[Benutzer:Siro|Siro]] 11 Dez. 2011 (CET)'''
|platform   =  
|platform=lpc2103 / STM32F405
|license    =  
|download=https://www.das-labor.org/trac/browser/microcontroller/src-atmel/laserproj
|download    =  
|tags=Leistungselektronik,
}}
}}
<b>[[Laserprojector_en|english version (outdated)]]</b>


== DIY Laser Beamer ==


<b>Idee :</B> Mit möglichsten einfachen Mitteln ein LaserProjector bauen.<br />


<h1>Theorie</h1>
== Achtung ==
<br>
<br>
<br>
== Projekt liegt auf EIS ==
<br>
<br>
<br>
<br>
== Danksagungen ==
<b>Vielen Dank an folgenden Personen</b><br>
* [[Benutzer:Kiraz|Kiraz]]
* Tixiv
* Tesla
* MadEngineer
* [[Benutzer:Zaolin|Zaolin]]
* [[Benutzer:Sauron|Sauron]]
<b>Besonderen Dank an das Labor eV für die Bereitstellung der Räume und des Werkzeuges.<br></b>
 
== DIY Laser Projector ==


<h2>Konzept</h2>
<b>Idee :</B> 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.<br />
Atmega steuert 2 schnelle Motoren und einen Laser.<br>
<gallery>
Die Motoren beinhalten spezielle <i>Discs</i> und sind orthogonal zueinander angebracht. Der Laserstrahl trifft auf die erste Disc und wird von dort zur zweiten gespiegelt. Die erste Disc sorgt für die vertikale Ablenkung, die zweite für die horizontale. Durch Pulsung des Lasers kann ein Bild projektiert werden.<br />
Datei:Zeilenraster.jpg|Funktionsprinzip eines zeilenweisen Bildaufbaus
</gallery>
<br>
<br>
=Übersicht=
<b>Momentan möglich mit lpc2103</b>
* <b>Auflösung</b>:128x32<br>
* <b>Refreshrate</b>:30Hz<br>
* <b>Farben</b>:1 <br>
* <b>Farbtiefe</b>: 64 (6-bit)<br>
* <b>Interfaces</b>: RS232<br>
* <b>Ablenkung</b>:2x Spiegelräder, Asyncronmotor + Gleichstrommotor<br>
<br>
<b>Momentan möglich mit STM32F4</b>
* <b>Auflösung</b>:256x128<br>
* <b>Refreshrate</b>:30Hz<br>
* <b>Farben</b>:3 <br>
* <b>Farbtiefe</b>: 256 ^ 3 (8-bit)<br>
* <b>Interfaces</b>: USB<br>
* <b>Ablenkung</b>:2x Spiegelräder, Asyncronmotor + Gleichstrommotor<br>


<h2>Bauteile verwendet</h2>
* Compaq PC Gehäuse
* CD Laufwerk
* Atmega64 + Atmega48 + ein wenig Hardware (4x fet für Laser (4 bit Farbe), Motorregler vom CD Laufwerk)<br>
* GLCD
* Laser 50mW grün (dealextreme.com)<br>


<h2>Zahlenspielerei</h2>
= Konzept =
CD Laufwerk für y-Ablenkung<br>
Ein Mikrocontroller steuert den horizontal angebrachten schnellen Motor und einen vertikal angebrachten, sich langsam drehenden Motor,<s> Keyboard, GLCD, Power-Supply.</s><br>
CD Drive 52× Geschwindigkeit<br>
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.<br />
rotations per minute: 10.400<br>
<gallery>
 
</gallery>
<br>
Controller IC muss mit H-Motor und V-Motor syncronisieren<br>
==Übersicht==
<gallery>
  Datei:Overview.jpg|Übersicht Laserprojector ICs & IOs
</gallery>


Laserdruckerspiegel für x-Ablenkung<br>
= Syncsensor/Lichtschranke =
rotations per minute: ~13.000<br>
==Beschreibung==
Spiegel: 4<br>
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.
<br>
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.


rotations per second: 13000 / 60 = 216,67<br >
==Bilder==
Ablenkungen pro Sekunde: 4 * 216 1/3 = 866,67<br>
<gallery>
  Datei:LaserprojlightbarrierA.jpg| Lichtschranke A
  Datei:LaserprojlightbarrierB.jpg| Lichtschranke B
</gallery>


Lines pro Sekunde: 866,67<br>
==Schaltplan==
Schaltplan & EAGLE layout im SVN: [https://www.das-labor.org/trac/browser/microcontroller/src-atmel/laserproj/light%20barrier light barrier]


Pulsung des Lasers: 1 Mhz (10MHz von Atmega möglich)<br>
<b>STATUS:</b><i> getestet</i>
Pixel pro Sekunde: 1/1Mhz = 1 000 000<br>
fps: 25 hz<br>
Pixel pro frame: 1 000 000/25 = 40 000<br>
//Vertikale Auflösung: 866,67 / 25Hz = 34,6<br />
//Horizontale Auflösung: 40 000 / 34,6 = 1156<br>
<br>
<br>
//360x111@25 Hz
<b>success!</b>


<h2>1. Idee zum gewelltem Spiegel</h2>
=Horizontaler Motor=
==Beschreibung==
Aus einem Drucker der Marke "Epson" 24000 U/min mit 7 Seitenflächen. 400*7 = 2800 Ablenkungen pro Sekunde.<br>
Liegt die Ablenkeinheit wie auf den Fotos (unten) ist Pin 1 der unterste und Pin 5 der oberste.<br>


<b>Die Discs</b> sind modifizierte CDs, die unter Hitze verformt wurden und so eine periodische sinusförmige Vertiefung aufweisen.
==Stecker==
(genaueres zur Verformung weiß ich noch nicht).<br>
<table border=1 size='100%' Width='90%'>
[[Datei:Idee_def_cd.JPG]]
<tr><th width='20%'>Pin<th>Funktion</tr>
<tr><td>5<td>  +24V<br>
<tr><td>4<td>  GND<br>
<tr><td>3<td>  Eingang: 5V TTL 0Khz = 0 U/s, 1 Khz = 400U/s (nichtlineare Kennkurve)<br>
<tr><td>2<td>  Ausgang: 7*U/sek ??? sehr instabil, besser nicht nutzen!<br>
<tr><td>1<td>  ??
</table>
 
<gallery>
  Datei:Laserunit_epson.JPG|Laserunit eines Epsondruckers
  Datei:Hmotorfronttop.jpg|laserprinter mirror front top view label: FL-EGP3901
  Datei:Hmotorbacktop.jpg|laserprinter mirror back top view Controler: AN44000A label: YG-F1G 36
  Datei:Hmotorback.jpg|laserprinter mirror back view label: MASQ7DF19LM DC24V 23304min⁻1 2234ZA3 PbF
</gallery>
<br>
<br>
<b>Pro:</b><br>
 
* Kostengünstig
= Laserstromversorgung =
* einfach Herzustellen
* Version 1 [[laserprojector/lasercurrentsource]]
<b>Contra:</b><br>
* Version 2 [[laserprojector/lasercurrentsourcev2]]
* Stabilität ?
 
* Gleichmäßigkeit der Verformung
= Bildverarbeitung =
* Reflektionsvermögen ausreichend ?
 
== 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 ==
Wird noch per Software berechnet. Da der STM32F4 in Hardware floats berechnen kann, wird auf eine Lookuptable verzichtet. Die nächste Version des [[laserprojector/lasercurrentsourcev2]] wird Hardware-Gammakorrektur unterstützen.
 
== 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:
[http://www.mikrocontroller.net/articles/MP2103-Stick:_Ein_Mini-Mikrocontroller-Board_mit_USB_und_bis_zu_4MB_Datenspeicher MP2103-Stick]<br>
[http://www.nxp.com/documents/user_manual/UM10161.pdf lpc210x Datasheet]<br>
NXP [http://www.nxp.com/pip/LPC2103FBD48.html LPC2103]
<h3>Software</h3>
Das MP2103 Board kann einfach mit dem Programm [http://www.flashmagictool.com/ Flash Magic (Windows/Linux mit WINE)] oder [http://sourceforge.net/projects/lpc21isp/ lpc21isp (Linux)] programmiert werden. Um den Source-code zu kompilieren braucht man [http://www.mcu-raisonance.com/mcu_downloads.html Ride7 mit Compiler von Raisonance.com für Windows], [http://embdev.net/articles/ARM_GCC_toolchain_for_Linux_and_Mac_OS_X ARM Gcc toolchain für Linux]. <br>
Den Quelltext gibts hier: [https://www.das-labor.org/trac/browser/microcontroller/src-atmel/laserproj/laservideo/ARM7 source-code]
<br>
<br>
Gute Idee ?????<Br>
Die Software ist noch experimentell, theoretisch sind Auflösungen bis 128x32 Pixel möglich, begrenzt durch den SRAM und die Geschwindigkeit des LP2103.
<br><b>Nein</b> - Test warten nicht erfolgversprechend<br>
<br>
Lötlampe zu heiß<br>
Die Soft-CTC Methode liefert (fehlerhafterweise) eine variable Frequenz, die gegen die Anzeigeroutine arbeitet. Der Motor regelt sich einiger Zeit auf eine konstante Drehzahl.
Heißluftfön - OK aber Cd bildet Blasen und Risse, Verformung nicht gleichmäßig<br>


<h2>2. Idee zum gewelltem Spiegel</h2>
== STM32F405 ==
Turbine (oder runde polierte Scheibe)<br>
<h3>Aufgaben</h3>
Sternförmig Schlitze einschneiden, dann biegen<br>
* 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


<h2>3. Idee zum gewelltem Spiegel</h2>
<b>STATUS:</b><i>lpc2103@72Mhz, läuft</i><b>/</b><i>STM32F405 experimentell</i>
Spiegel oder polierte Metallstreifen auf CD kleben<br>


<b>Pro:</b>
<br>
* Gutes reflektionsvermögen<br>
<b>Contra:</b>
* Zu hohe Zentrifugalkräfte ? (1100 faches der Gewichtskraft -- ja)
<br />


<h1>Umsetzung</h1>
<h1> Laserdiode </h1>
<h2>Done:</h2>
[[Datei:ALI-Laserwarn445nm1000mw small.jpg]]
* CD Motor ausgebaut und lässt sich einfach ansteuern (Spannung (0-5V) an Pin 24, Vdd an Pin 23), außerdem gibt der Controller ein TTL Signal an Pin 21 aus (rpm in Hz) (Datenblatt: [http://www.datasheetcatalog.org/datasheet/rohm/bd7907fs.pdf]):
<h3>Beschreibung</h3>
[[Datei:Laserproj p1.jpg|200px]]
<b>WARNUNG !<br>
*Case besorgt, alter PC Gehäuse:
Dies ist ein Klasse 4 Laser ! Er verbrennt innerhalb von Sekunden Papier,Holz,Fleisch,... selbst in einigen Metern Entfernung !<br>
[[Datei:Laserproj p3.jpg|200px]]
Schutzbrille tragen<br>
* CD Motor und Laserdrucker-Ablenkeinheit in das Case eingebaut:
Nicht in den Strahl blicken !<br>
[[Datei:Laserproj p2.jpg|200px]]
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 !<br>
Nie auf den Lichtpunkt blicken, wenn der Laser "steht". Verbrennungsgefahr !<br>
Laserschutzbestimmungen einhalten !<br></b>


* Programm geschrieben:
[http://www.insaneware.de/epages/61714203.sf/de_DE/?ObjectPath=/Shops/61714203/Products/445-1w 1000mW (1W) Laserdiode 445nm Blau 5,6mm]
* zum ansteuern des Controllers
* anzeigen der rpms
* pulsen des Laseres mittels SPI
* messen der H/V-Syncs
* testbild ausgeben


* GLCD an den ATMEGA angeschlossen
[http://www.insaneware.de/WebRoot/Store20/Shops/61714203/MediaGallery/PHR803Tpins%5B1%5D.gif Pinbelegung der Laserdiode]<br>
<br>
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.<br>
<br>
<gallery>
Datei:Laserproj 1W blue Laserdiode.jpg|Laserdiode im Kühlkörper
</gallery>
Anschlusskabel an meiner Diode: ROT -<br>
Anschlusskabel an meiner Diode: SCHWARZ +<br>
<br>
'''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
 
<h1> Optik </h1>
<h3>Beschreibung</h3>
TODO:
4x RC-CAR KUGELLAGER 4X10X3
Gleichstrommotor MABUCHI RS-360SH


Dieser Teil beschreib die optischen Aspekte.<br>
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.<br>
Auf dem H-Motor ist ein sich drehendes 16-Eck.
Demnach sind 360° : 16 = 22,5°, von denen sich etwa 20° nutzen lassen.<br><br>
Strahlbreite in Laufabstand vom H-Motor (Achse + SpiegelradRadius)<br>
Abstand <i>a</i><br>
Breite <i>b</i><br>
<i>b</i>(a) := tan(20°) * <i>a</i> * 2 = <i>a</i> * 0,73<br>
<br>
<h2>Vertikaler Spiegel</h2>
[http://www.lighting24.de/Spiegelwalze-fuer-TB-5::52631.html gibts hier zu kaufen]<br>
<b>Maße:</b><br>
Länge: 82mm<br>
Radius-Außen: 80mm<br>
Radius-Innen: 58mm<br>
Spiegelfacetten:18,5 (eine halbe....)<br>
<br>
<b>Sehr schlechte Verarbeitung, keine Oberflächenspiegel !</b><br>
Laufabstand H-Spiegel zu V-Spiegel:<br>
ca. 5 cm<br>
<br>
Breite des Spiegels am V-Spiegelrad:<br>
ca. 3,63 cm<br>
<gallery>
  Datei:Laserproj_spiegelwalzeB.jpg|Spiegelwalze TB-5 für Disco-Lichtshow Effektmaschine</b>
  Datei:Laserproj_spiegelwalzeA.jpg|Spiegelwalze TB-5 für Disco-Lichtshow Effektmaschine</b>
</gallery>
<br>
<br>
<h2>TODO:</h2>
<h2>Horizontaler Spiegel</h2>
* Laser kaufen (bestellt)
Kupferspiegelrad 400*16 = 6400 Ablenkungen pro Sekunde.<br>
* Laser ansteuern mit FETs (bestellt)
Achse des Motors ist zu kurz, nächstemal flacher, aus Aluminium und Speichen verwenden !<br><br>
* Disc besorgen
<gallery>
* Sync-Fotodioden anschließen/testen
  Datei:Laserproj_spiegelrad_a.jpg|Spiegelrad Kupfer, hochglanzpoliert, Spezialanfertigung der <b>AnKoSy GmbH</b>
* 2Controllerboard bauen(ATMEGA64 hat zu wenig Timer, zu langsam, etc)
  Datei:Laserproj_spiegelrad_b.jpg|Spiegelrad Kupfer, hochglanzpoliert, Spezialanfertigung der <b>AnKoSy GmbH</b>
* Programm schreiben für Laserdrucker-einheit ansteuern
  Datei:Hmotor spiegelrad kupfer.jpg|Spiegelrad Kupfer, hochglanzpoliert, Spezialanfertigung der <b>AnKoSy GmbH</b>
* Programm schreiben für kommunikation mit anderen ICs
</gallery>
 
Durchmesser Loch 12mm
Höhe Speichen 2mm
 
<b>STATUS:</b><i>neue Version, nicht getestet!</i>
<h2>Plexiglas Platine</h2>
bei formulor.de bestellt:
<gallery>
Datei:P2 laserproj.ai.gz|gzip autodesk illustrator
Datei:Laserproj_assembled1.jpg|Zusammenbau des Laserprojectors
Datei:Laserproj case parts.jpg|Teilelieferung von Formulor
</gallery>
 
<h1>Kosten</h1>
Bauteile Kontroller: 30€ + 15€<br>
Bauteile Stromversorgung: 15€<br>
Laser: 100€<br>
Spiegel: 100€ + 13€<br>
Motoren: 10€ (aus alten Laserdruckern)<br>
Gehäuse: 40€<br>
<b>Status:</b> <i>TODO</i>
<h1> Links </h1>
*[http://www.projektoren-datenbank.com/laser.htm Laser Projektoren]
*[http://www.spaceflakes.de/index.php?index=691 Laser-Projektor selbstgebaut]
*[http://elm-chan.org/works/vlp/report_e.html http://elm-chan.org/works/vlp/report_e.html]
*[http://www.electronics-lab.com/blog/wp-content/uploads/2007/11/proj5.png Horizontal Laser Deflector]
*[http://www.circuitlake.com/avr-laser-projector.html AVR Laser Projector ]
*[http://www.embedds.com/avr-laser-projector/ AVR laser projector]
*[http://www.flickr.com/photos/kap4001/3093974218/ the laserbeamer]
*[http://heim.ifi.uio.no/haakoh/avr/ Laser video projector]
*[http://www.luberth.com/help/Mechanically_scanned_laser_display_microchip_pic/Mechanically_scanned_laser_display_microchip_pic.htm Mechanically scanned laser display]
*[http://www.microsyl.com/index.php/2010/03/30/rgb-laser-projector/ RGB Laser Projector]
*[http://www.osdever.net/FreeVGA/home.htm VGA Signal, Timings, Accessing VGA-graphiccard registers]
*[http://boomerssupply.net/shopexd.asp?id=364 boomerssupply.net first surface mirror shop]
*[http://www.scientificsonline.com/first-surface-flat-mirror-10031.html?&cm_mmc=Mercent-_-Google-_-NULL-_-3052324&mr:trackingCode=A56E1735-DB81-DE11-8C0A-000423C27502&mr:referralID=NA www.scientificsonline.com first surface mirror shop]
*[http://shop.optik-mechanik.de/ http://shop.optik-mechanik.de/]
*[http://laser-tv.ideenbuero-dittrich.de/ LaserTV]
'''FPGA'''
*[http://www.lothar-miller.de/s9y/categories/48-Code-Schnipsel VHDL Code Beispiele]
*[http://www.asic-world.com/examples/vhdl/ram_dp_ar_aw.html VHDL Code Beispiele]

Aktuelle Version vom 7. April 2017, 23:21 Uhr

         
laserprojector

Release status: experimental [box doku]

Laser.jpg
Description Projektor der 2 sich drehende Spiegel zur Ablenkung eines modulierten Laserstrahls nutzt
Author(s)  siro
Last Version  0.3
Platform  lpc2103 / STM32F405
Download  https://www.das-labor.org/trac/browser/microcontroller/src-atmel/laserproj



english version (outdated)


Achtung[Bearbeiten | Quelltext bearbeiten]




Projekt liegt auf EIS[Bearbeiten | Quelltext bearbeiten]





Danksagungen[Bearbeiten | Quelltext bearbeiten]

Vielen Dank an folgenden Personen

Besonderen Dank an das Labor eV für die Bereitstellung der Räume und des Werkzeuges.

DIY Laser Projector[Bearbeiten | Quelltext bearbeiten]

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.



Übersicht[Bearbeiten | Quelltext bearbeiten]

Momentan möglich mit lpc2103

  • Auflösung:128x32
  • Refreshrate:30Hz
  • Farben:1
  • Farbtiefe: 64 (6-bit)
  • Interfaces: RS232
  • Ablenkung:2x Spiegelräder, Asyncronmotor + Gleichstrommotor


Momentan möglich mit STM32F4

  • Auflösung:256x128
  • Refreshrate:30Hz
  • Farben:3
  • Farbtiefe: 256 ^ 3 (8-bit)
  • Interfaces: USB
  • Ablenkung:2x Spiegelräder, Asyncronmotor + Gleichstrommotor


Konzept[Bearbeiten | Quelltext bearbeiten]

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.


Controller IC muss mit H-Motor und V-Motor syncronisieren

Übersicht[Bearbeiten | Quelltext bearbeiten]

Syncsensor/Lichtschranke[Bearbeiten | Quelltext bearbeiten]

Beschreibung[Bearbeiten | Quelltext bearbeiten]

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[Bearbeiten | Quelltext bearbeiten]

Schaltplan[Bearbeiten | Quelltext bearbeiten]

Schaltplan & EAGLE layout im SVN: light barrier

STATUS: getestet


Horizontaler Motor[Bearbeiten | Quelltext bearbeiten]

Beschreibung[Bearbeiten | Quelltext bearbeiten]

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[Bearbeiten | Quelltext bearbeiten]

PinFunktion
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[Bearbeiten | Quelltext bearbeiten]

Bildverarbeitung[Bearbeiten | Quelltext bearbeiten]

Allgemein[Bearbeiten | Quelltext bearbeiten]

Aufgaben[Bearbeiten | Quelltext bearbeiten]

  • 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[Bearbeiten | Quelltext bearbeiten]

Wird noch per Software berechnet. Da der STM32F4 in Hardware floats berechnen kann, wird auf eine Lookuptable verzichtet. Die nächste Version des laserprojector/lasercurrentsourcev2 wird Hardware-Gammakorrektur unterstützen.

LPC2103[Bearbeiten | Quelltext bearbeiten]

Aufgaben[Bearbeiten | Quelltext bearbeiten]

  • 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[Bearbeiten | Quelltext bearbeiten]

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[Bearbeiten | Quelltext bearbeiten]

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

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

FPGA