Laserharfe für den Mittelstand

Selbstbau-Projekte aller Art.

Moderators: nohoe, lightwave, adminoli

Post Reply
stoppi
Posts: 227
Joined: Fri 17 Feb, 2006 11:33 am
Location: Graz, Austria

Laserharfe für den Mittelstand

Post by stoppi » Sat 17 Mar, 2012 11:16 am

Hallo!

Obwohl dieses Thema hier schon mehrmals präsentiert wurde, stelle ich dennoch meine Ergebnisse kurz vor. Seit rund 1 Woche im Besitz eines Arduino Uno ging ich gleich an die praktische Umsetzung einer Laserharfe. Eine simple Ausführung mittels Lichtschranken und Orgel-Platine habe ich bereits vor rund 2 Jahren umgesetzt; preislich gesehen sozusagen die Laserharfe für die "Unterschicht".

Einen Aufbau mit einem richtigen Galvo wollte ich mir auch nicht antun, da dies auch in Hinblick auf eine zukünftige Umsetzung durch einen Schüler preislich aus dem Rahmen fallen würde. Also schnell mehrere Teile aus der berühmten Bastelkiste hervorgekramt und versucht, damit ein funktionsfähiges Gerät zu erstellen.

Die verwendeten Teile sind:

* Arduino Uno: Preis ca. 15 Euro über ebay
* Schrittmotor 12V, 3.6°, 5-polig: 5 Euro im Elektroladen (einen alten Drucker hatte ich im Moment keinen...)
* grüner DPSS-Laser mit rund 20 mW: Preis ca. 20 Euro über ebay (hatte ich aber bereits)
* TTL-Lasertreiber: Preis ?, bei TTL-Laser auf ebay ja inkludiert (hatte ich auch noch über)
* LM317, 7805, Potis, LDR, Platine: ca. 10 Euro
* ULN2003 als Treiber für den Schrittmotor: ca. 2 Euro (bei Conrad)
* Holzplatte, Winkel, Schrauben: ca. 4 Euro

Macht in Summe also rund 55 Euro inkl. Arduino aus

Zum Programmieren: Auf der Uni hatte ich in Fortran77, C und ein wenig C++ programmiert, dies liegt aber schon etwas länger zurück. Das Programm für den Arduino zu schreiben, ging aber wirklich sehr einfach, zumal der Programmablauf ja auch alles andere als komplex ist und zwar:

* stepper library einbinden; befindet sich schon im Arduino-Unterordner libraries
* Laser an; kurze und variable Verzögerungszeit
* LDR an einen Analog-In Pin nach der Helligkeit abfragen
* Liegt eine Spannung über einer einstellbaren Schwelle an, sprich fällt Laserlicht auf den LDR, so wird die erste Note gespielt (Befehl tone).
* Liegt die Spannung unter der Schwelle, wird die Tonausgabe beendet (Befehl noTone)
* Laser aus
* Schrittmotor einen Schritt weiter (Befehl step(1))
* variable Verzögerungszeit, damit der Laser nicht zu früh wieder leuchtet
* Laser an, kurze und variable Verzögerungszeit
* usw. mit der 2-ten, 3-ten... Note

Der Befehl tone läßt leider nur die Ausgabe einer Note zu. Wenn nun z.B. die 3-te Note gespielt wird, sprich die Hand sich im 3-ten Laserstrahl befindet, möchte ich natürlich nicht, dass durch die fehlende Hand im 4-ten, 5-ten usw. Laserstrahl die 3-te Note beendet wird. Dies würde aber laut obigen "Flussdiagramm" passieren mit der Abfrage * Liegt die Spannung unter der Schwelle, wird die Tonausgabe beendet.

Die Folge wäre eine völlig zerhackte Tonausgabe... Deshalb habe ich noch if-Befehle eingeführt und eine array-Variable, die mir zeigt, welcher Ton nun gerade gespielt wird. In die Abfrage Spannung vom LDR an Analog-In-Pin kommt man demnach nur bei der Note die gerade gespielt wird (um sie weiterhin zu spielen oder eben zu beenden) oder bei allen anderen Noten unter der Voraussetzung, dass im Moment keine einzige andere Note gespielt wird. Langer Rede kurzer Sinn: Es wird immer nur eine Note gespielt und zwar durchgehend so lange, bis die Hand aus dem jeweiligen Laserstrahl gezogen wird. In der Zwischenzeit kann keine andere Note gespielt werden und während der Abfrage bzgl. der anderen Noten wird die gespielte Note auch nicht unterbrochen, sondern spielt kontinuierlich weiter.

Einzig die Empfindlichkeit des LDR's macht im Moment kleinere Probleme. Der Abstand der in den Laserstrahl gehaltenen Hand zum LDR ist mir noch zu gering. Habe aber auch noch keine weißen Michael Jackson-Handschuhe in Verwendung, durch welche die Helligkeit des Laserreflexes natürlich noch erhöht werden würde. Der Aufbau funktioniert aber soweit... Bis zur nächsten Bastelei, stoppi :wink:

P.S.: Die größte Anstrengung war das händische Ausfeilen des Lochs am Schrittmotorhalter :freak:
You do not have the required permissions to view the files attached to this post.
Der größte Idiot kann mehr Fragen stellen als der Schlaueste je zu beantworten vermag.

User avatar
thomasf
Posts: 1262
Joined: Sun 06 Oct, 2002 12:00 pm
Do you already have Laser-Equipment?: YES
Location: Berlin
Contact:

Re: Laserharfe für den Mittelstand

Post by thomasf » Sat 17 Mar, 2012 11:51 am

Hi,

um das Verhalten der LDR zu verbessern würde ich dir vorschlagen einen offset stets abzufragen und entsprechend die schwelle dynamisch anzupassen. soll heißen, immer dann wenn der laser aus ist holst du dir einen wert und vergleichst dann ob der wert bei laser on größer ist. natürlich noch einen kleinen schwellwert einstellen, der dann drauf summiert wird.
zudem ist es evt. ratsam das "sichtfeld" der LDR einzuengen um den fokus auf die reflexion der laserstrahlen zu legen.

Schönes Projekt

Thomas

tsfdb
Posts: 337
Joined: Mon 11 Dec, 2006 6:00 pm
Do you already have Laser-Equipment?: MiniCarbo RGB Laser mit K25n 150mW CNI 532nm mini grün, 250mW rot, 150mW 445nm blau
easylase 2, Dynamics HE-Laserscan 4 , MambaBlack
Location: Augsburg/Friedberg

Re: Laserharfe für den Mittelstand

Post by tsfdb » Sat 17 Mar, 2012 12:13 pm

Hey,
sehr cooles Projekt :-)
Vielleicht kannst du noch ein kleines Video davon machen, würde mich interessieren.
Mir gefällt das, mit "wenigen" Mitteln viel zu machen, das ist wieder mal ein sehr cooles Bastelprojekt wie ich finde.
MfG
Thomas

goamarty
Posts: 1488
Joined: Fri 05 Sep, 2008 10:15 am
Do you already have Laser-Equipment?: 190mW RGY + einige Module
Location: Wien

Re: Laserharfe für den Mittelstand

Post by goamarty » Sat 17 Mar, 2012 12:48 pm

Ein LDR ist auch relativ langsam. Es könnte sein, daß ergar nicht die volle Änderung der Lichtintensität weitergeben kann. Um das festzustellen mußt du dir die Spannung mit einem Oszi ansehen. Alternativ könntest du auch den ADC des µC in einer deutlich schnelleren Folge abfragen und die Werte an den PC schicken und grafisch darstellen - billig Speicheroszi sozusagen.

stoppi
Posts: 227
Joined: Fri 17 Feb, 2006 11:33 am
Location: Graz, Austria

Re: Laserharfe für den Mittelstand

Post by stoppi » Sat 17 Mar, 2012 3:35 pm

Danke euch allen für die Hinweise und Tipps! :D

Ad Thomasf: Den "Trick" mit der automatischen Schwellwertanpassung werde ich gleich ausprobieren. Super und merci!

Ad tsfdb: Danke fürs Lob. Ich schaue wirklich bewußt drauf, dass es 1.) günstig und 2.) nicht zu komplex wird, da ich selbst nicht in Geld schwimme und ich es wie schon gesagt auch für meine Schulprojekte benötige. Und Schülern möchte ich auch nicht Unsummen an Ausgaben zumuten.

Ad goamarty: Werde mit verschiedenen LDR's und auch Phototransistoren herumspielen. Durch die automatische Schwellwertanpassung wird es aber wohl viel besser funktionieren, da ja die Reflexionen den Eingangsspannungswert dann ja wirklich nur minimal erhöhen müssen. Und für dies reicht dann wohl auch eine billige Jacko-Handschuhkopie aus. Das Glitzer-Original wird wohl auch außerhalb meiner finanziellen Möglichkeiten liegen... 8)

Halte euch aber am Laufenden... Lg stoppi
Der größte Idiot kann mehr Fragen stellen als der Schlaueste je zu beantworten vermag.

User avatar
thomasf
Posts: 1262
Joined: Sun 06 Oct, 2002 12:00 pm
Do you already have Laser-Equipment?: YES
Location: Berlin
Contact:

Re: Laserharfe für den Mittelstand

Post by thomasf » Sat 17 Mar, 2012 8:16 pm

Hi,

Versuch mal mit Photodiode oder Transistor, die sind um zehnerpotenzen schneller!

Kein Problem für die Hilfe, wer etwas dem Forum gibt dem wird immer gern geholfen!

Thomas

stoppi
Posts: 227
Joined: Fri 17 Feb, 2006 11:33 am
Location: Graz, Austria

Re: Laserharfe für den Mittelstand

Post by stoppi » Sat 17 Mar, 2012 9:43 pm

Hallo thomas!

Danke nochmals für deine Tipps. Werde mir nächste Woche einige PD und PT besorgen, habe im Moment nichts passendes in meiner "Kiste". Sooo viel habe ich dem Forum aber noch gar nicht gegeben... :roll: Wer den Programmcode haben möchte, kann mich natürlich jederzeit per pm kontaktieren. :wink:

Eine Frage hätte ich aber noch an die Veranstaltungsprofis: Im Moment gebe ich ja nur völlig unverzerrte Töne mit den Tonleiterfrequenzen an meine Boxen aus. Würde es aber gerne über Midi an den PC senden und dort mit einem möglichst günstigen Programm (vielleicht freeware) bearbeiten (verzerren etc.). Da ich mit Midi (leider) absolut nichts am Hut habe, könnte mir vielleicht jemand hierzu einen Tipp geben? Auf ebay gibt's ja z.B. sehr günstige (mMn zu günstige, aber das ist eine andere Geschichte) Midi-to USB-Adapter. Mit denen könnte es doch funktionieren?

Bei der derzeitigen Ausgabe mit den Befehlen tone und noTone habe ich ja auch nicht die Möglichkeit, mehrere Töne gleichzeitig zu spielen bzw. muss auch lange (unschöne) if-Abfragen benutzen, um herauszufinden, welcher Ton gerade gespielt wird. Könnte ich dann über Midi die Töne separat über einzelne Adressen ein- und ausschalten?

Danke im voraus für eure Bemühungen, lg und bis bald, Christoph :)
Der größte Idiot kann mehr Fragen stellen als der Schlaueste je zu beantworten vermag.

goamarty
Posts: 1488
Joined: Fri 05 Sep, 2008 10:15 am
Do you already have Laser-Equipment?: 190mW RGY + einige Module
Location: Wien

Re: Laserharfe für den Mittelstand

Post by goamarty » Sun 18 Mar, 2012 12:07 am

Midi ist im Prinzip eine serielle Verbindung mit ca. 31kbit/s und galvanischer Trennung über einen Optokoppler (Stromschleife). Das kostet auch nur ein paar Cent in der Produktion eines USB-Midi-Adapters, der muß also nicht mehr kosten als ein USB-RS232 Adapter. Wegen der kleinen Stückzahl kann er etwas teurer sein.
Uber diese Leitung werden Note-On und Note-Off befehle mit Angabe der Tonhöhe (oder Nummer) übertragen. Es ist daher kein Problem, damit mehrere Töne gleichzeitig wiederzugeben. Aber ich denke du solltest dir Literatur zu MIDI besorgen. Leider kann ich dir aber keinen Titel empfehlen.

Post Reply

Return to “Allgemeine Selbstbau-Projekte”

Who is online

Users browsing this forum: No registered users and 10 guests