loading
We are a generation that love sound and light – can’t do without them really. Our most preferred time of day is night, or what we would call evening. We are particularly well acquainted with technology; doesn’t hurt these days. Our prerequisite for everything is that it be ‘cool’. Put it all together and in a stroke of brilliance, and a little help from our friend the internet, we have the ideal solution – a laser harp.

A laser harp, what on earth is that? Sounds kind of fancy doesn’t it? Well, it is basically what it says it is. The laser harp is an electronic instrument where a motor, a light sensor, a microprocessor Arduino, and, I’m sure you’ve guessed, a laser collaborate to produce beams, each representing a note (we will elaborate for those who care to read on). This harp though doesn’t have a frame: its strings stretch out infinitely into space – we know no boundaries.

Our inspiration was a video we had watched online and found rather fascinating. Apart from the fact that the prospect of creating it without too much expenditure, mental or monetary, was exciting, it seemed a project providing scope for learning in different areas, especially since we wanted to present it as a complete product. Part research, part reverse engineering led us to figure out its functioning. Admittedly, we have not contributed any addition to the original creation, but to achieve it was in itself gratifying. And there’s always room for originality and improvement in the future. 

If you like our instructable please vote for it at the top  right corner of the page!

For making this laser harp you will require basic soldering skills, and some experience working with the arduino.

Word of caution: Lasers are very harmful for the eyes, make sure you wear appropriate eye protection.

Our Video will be ready in another 12 hours! Do come back and check it out!


Here's the link to the video that inspired us :

Step 1: Overview of the harp

The basic outline of the harp:
A laser beam is shone. A stepper motor with a mirror divides it into nine beams. When one or more of the beams are cut, the light sensor (Light Detecting Resistor, LDR) detects it. According to the corresponding motor positions, it sends signals to the Arduino, which in turn produces the respective notes through a computer or keyboard.

How the beam is created:
A mirror is attached to the motor. The laser beam is directed to the mirror. The motor rotates in steps, hence stepper motor. With every step the motor takes, the position of the mirror changes, deflecting the beam in a different direction every time. The steps take place fast enough for the beams to appear as if they are simultaneously present.

How the harp knows which beam has been cut:
Every beam has a corresponding motor position. When a beam is cut, it reflects onto the sensor, which detects an increase in light intensity. The light sensor then looks for the position of the motor at the instant the beam was cut, and thus identifies the beam in question.
One of my dreams was to have a laser harp. The only thing I need now is to go buy some 2n222 ULN2003 and, uhm my question was: What kind of/ speed/ steps, steper motor can I use? Hacking some old printer or something, any idea will be appreciated :) <br>Thx, and btw, one of the greatest and really simplest instructable for a complicated stuff that everyone could be amazed with :) Keep it up !
<p>People who are scared of ULN2003: There are quite a few &quot;motor shields&quot; for Arduino that are often usable for steppers as long as you can work out the appropriate winding / connections.</p><p>Pushan: Nice project! Simple, neat, effective, elegant, and pretty. Might make one for a weekend project for my geeky 12-yr-old boys :-)</p>
:) <br>The motor ive used is actually salvaged from some old electronics, any kind of stepper will do the job, you might need to modify the code a bit. I would be happy to help, just send me a message.
Well, the problem isn't in the code really, now the problem is that I can't find ULN2003 here... Do you know anything compatible to that maybe? :) <br> <br>also it would be cool if there is a way to get 3 lasers and make em switch colors hahaha just sayin :)
<p>I know this is probably very late, instead of a ULN2003 you can you a stepper driver. Like for example the easyDriver.</p>
I was actually going to rewrite the code to work directly via usb, not through MIDI... Any ideas about that?
<p>I know this is probably very late, but you should look up loopMIDI, it creates a virtual MIDI port and lets you send MIDI over USB.</p>
<p>To be honest, I would LOVE to see you making a Youtube video creating one Laser Harp...it's just 'cause my mind really will have no chance if it is reduced to writing explanation. We are talking about a Laser Harp, it is a complex thing to do, and not everyone has the same talent to make a Laser Harp the easy way like you do. :)</p>
<p>Great Idea! Now that I'm done with college I'll try to make a video to clarify all the questions, and thanks! :)</p>
and, perhaps a positioning picture (where the circuit is, LDR and stuff would be good, cos I'm really planing to do a &quot;Laser Harp Shield&quot; for this one :)
I love how you've managed to simplify the hardware necessary for a laser harp. Well done! Since I already have most of these materials lying about, it looks like a fun project for an idle weekend. <br>I'm also curious how you would go about detecting the height at which a player was cutting the beam in an enhanced version of this instrument-care to share your thoughts? I would love to add that function.
Thank you! I would use an ultrasonic sensor to read the distance of the players hand, which in turn would control the pitch or volume of the midi notes.
Which version of fl studio is used? And can uplease help me with the motor, it isn't working
This is awesome, great instructable!!! If you plan on only using it with the computer, and don't need the midi out jack, couldn't you theoretically use only the arduino, and scrap the usb/midi converter cable? There are loads of arduino projects out there that output midi via the arduino's usb cable (and maybe some software on the computer side too).
You could even make it wireless :) http://www.ladyada.net/make/xbee/midibee.html
Yes, i just checked it out, and it isnt too hard too send MIDI signals over USB! <br>That's a wonderful idea! Thank you!
Great 'ible! I have most of these parts laying around, and have been looking for something to do with some spare laser diodes and steppers. I saw this (or one just like it) on Hack a Day recently, and though 'How cool would it be to make one of these.' Awesome, thanks!
Thank you! Do put up some pics after you are done!
Wow! This is like a visible version of a theremin, and it sounds better, too.
:) That's exactly what i thought i when first saw it!
<p>Pushan Panda, Is your motor step fast enough?! I'm half-way through this project. I'm not familiar with Arduino Uno controllers, but I did learn that the delay function is in milliseconds. A delay of 3 mS (333 Hz) for the motor pulse sequences was too slow for me. 1 mS delay was also too slow, and at the bottom limit of the delay function. When I took the delay out, the motor would just hum with no shaft movement at all. I'm using the A4988 stepper motor driver, so there may be no comparison. It does however simplify the code to one nested loop for the number of chords and the distance between the chords.</p><p>Then I discovered another function that uses microseconds, delayMicroseconds (). Now I'm down to 500 uS (2000 Hz) for the motor pulse delay with no loss in performance. https://www.arduino.cc/en/Reference/DelayMicroseconds</p><p>I also learned that delays shouldn't be used if you are trying to capture an event during a delay. Using timers allows for multiple events to occur simultaneously. I haven't tried that yet, because I'm still working on the upper limit of my stepper motor.</p>
<p>Correction, the pulse delay is one half the period, so delay(3) becomes 166 Hz, and delayMicroseconds(500) becomes 1000 Hz. It makes me wish I had the money for a 20Kpps galvo engine!!</p>
<p>What type of arduino are you using, does it matter what type your using and would an ardunio uno work in its place. </p>
<p>yes he's using a arduino uno</p>
<p>hey push panda! can you tell me or this motor is alright?</p><p>because i want a stepper motor so fast that you can't see that the motor is moving</p><p>can you please help me?</p><p>Thank you!</p><p><a href="https://www.conrad.nl/nl/velleman-stappenmotor-64-stappen-mots1-mots1-12-vdc-fasestroom-max-32-ma-92656.html" rel="nofollow">https://www.conrad.nl/nl/velleman-stappenmotor-64-...</a></p>
<p>can you use a Bluetooth module and have the sound come out of your phone to make it more portable? </p>
<p>I would LOVE to do this, and I have been for a really long time.... Sadly I don't have as much time on my hands as I wish I did to make this...</p><p> I'm guessing that would wouldn't build (more like commission) me one, huh? XD</p>
<p>is there any minimum requirements for the stepper motor? would a 4 way Arduino stepper motor work? many thanks,</p><p>Nick</p>
<p>Here is setup with 5v 28YBJ-48 Stepper Motor</p>
<p>Does it work well?</p><p>I'm using the same motor, but it makes a whole round instead of just one step.</p>
<p>Hello.. i'm having 3 big problems: the first is the LDR , infact i don't know how to position it because the harp doesn't give to it the signal</p><p>second i'm using a unipolar stepper motor is it ok or not?</p><p>third: i connected the midi output and the 13 led turned on , but if i want to connect the input and not the output the led doesn't turn on</p><p>please send me some pic or pubblish something that will help us, is very urgent :(</p>
<p>Please help me!</p><p>I'm using a motor like this: <a href="http://www.ebay.com/itm/DC-5V-Stepper-Motor-ULN2003-Driver-Test-Module-Board-28BYJ-48-for-Arduino-/181266971629?hash=item2a345a7bed:g:N2wAAOSwq7JUIT-B" rel="nofollow">http://www.ebay.com/itm/DC-5V-Stepper-Motor-ULN200...</a> </p><p>My problem is that the motor makes a whole circle in small steps instead of just one step. How should I modify the code to fix it?</p>
<p>I have most everything figured out about this project except where the LDR is relative to the laser/stepper combo. Typically a prism would be used to split the beam so the returned beam may be directed to the LDR but I cannot see such a device in any of the photos. </p>
<p>I think it is relying on reflected light from your hand. I don't know yet because I haven't built it. Does anyone have it working yet?</p>
I have a few different steppers and servos as well as driver boards that I plan on trying, as soon as my laser arrives. I also ordered a galvanometer as shown in this series of videos (<br>https://www.youtube.com/watch?v=izKsg4pgOQM) which I will try also. These videos contain lots of usefull info.
That I understand, a laser will reflect some light back to the source, which is the ideal place for the LDR but the source and LDR cannot occupy the same place. This is where the prism would come into play. The prism is placed close to the source and oriented so the laser beam passed directly through it. The orientation is such that the returning beam (much weaker now) is reflected (usuallys at ninety degrees)toward the LDR. My question was generated by the fact I do not see either a prism or the LDR. I have almost all of the parts required to build it and I plan on starting next week when my laser arrives.
<p>I read all of the comments. One version of this build shows the LDR on the motor shaft! And that build works! The LDR has to face up at all times to see reflected laser light. I will assume that while the sensor is over the motor shaft, that it is not fixed to the motor shaft. There is also a link to a new instructable (1 year ago) that demonstrates a working laser harp. You can see a lot of green light hitting the base of the assembly where the sensor is placed. I'm going to try using a phototransistor that is sensitive to 570 nm, simply because I have a few to spare, and I know they have a faster response time. What stepper motor did you get? It would appear that low resolution (48 steps per revolution) inherently moves faster. Specification of parts used for this build is lacking. Hyperlinks would also help.</p>
<p>Hi, there is no need for a prism.</p><p>The light reflected from your hand is scattered and the angular range of standard LDRs are enough to pick up a spike in light.</p><p>So you can basically put the LDR anywhere around the stepper motor.</p>
<p>What is the step resolution of the stepper motor that you used?</p><p>What is the dark resistance of the LDR and is the response time an issue?</p><p>ULN2003 is an old Sprague Semiconductor part. Did you look at new drivers made by the same company, now called Allegro Microsystems?</p>
The step resolution of the motor I used was 200/ rotation.<br>I do not remember the dark resistance or the response time.<br>Tweak the code and add a pot to control the resistance. <br>Just checked out the new chips, they look good! lots of new features.<br>If I was to redo this, I'd either use an easydriver or the A4988 based stepper driver.
<p>bipolar stepper motor drivers</p><p>Allegro Microsystems</p><p>http://www.allegromicro.com/en/Products/Motor-Driver-And-Interface-ICs/Bipolar-Stepper-Motor-Drivers.aspx</p>
I found some other videos and they confirm that. <br><br>https://www.youtube.com/watch?v=izKsg4pgOQM
<p>Nice project! There should be a current limiting resistor into the base of the 2N2222 or you run the risk of damage to the transistor. The gain on this transistor is about 100 and the drive output from the Arduino could be as high as 20ma. This means that if connected wrong the transistor could be expected to sink 2A! At that point it becomes a noise emitting diode! Why not just use one of the unused outputs from the ULN2003?</p>
<p>excellent idea!</p>
<p>Could you please provide a picture of the position of the light dependant resistor (lDR) i cant make sense of where it goes in relation to the laser beam. I've manages to order all the parts on ebay for under $40 AUD. </p>
<p>I have the same question. It is not clear how the LDR is connected. A second schematic (hand sketch?) would be helpful. What is the dark resistance of the LDR?</p>
<p>Please help me!<br>The stepper goes around in small steps nad after that stops for 1 sec, and the whole thing starts from the begining. And again and again...<br>How should I modify the Arduino code?</p>
<p>Wowww what was that ? its like dream .. go on man.</p>
<p>Hey, so me and some of my classmates are doing a school project for computer science/technology class, and our project is based around creating a laser harp or a similar mechanism. I came across your tutorial, but we have a very limited budget and minimal experience, so we were wondering whether there was an easier way to make a more watered down and more simplistic version of a laser harp type project. We have some budget, speakers, lego mindstorms, and makeymakey circuit boards. Any ideas and/or advice would be much appreciated! Thanks!</p>
<p>Hey, so me and some of my classmates are doing a school project for computer science/technology class, and our project is based around creating a laser harp or a similar mechanism. I came across your tutorial, but we have a very limited budget and minimal experience, so we were wondering whether there was an easier way to make a more watered down and more simplistic version of a laser harp type project. We have some budget, speakers, lego mindstorms, and makeymakey circuit boards. Any ideas and/or advice would be much appreciated! Thanks!</p>

About This Instructable

209,620views

1,224favorites

License:

Bio: I am interested in all aspects of design and technology, I take to pottery in times of uncertainty, it is my grounding. The piano is ... More »
More by Pushan Panda:Recover Exhaust Energy Projection mapping Frameless Laser Harp 
Add instructable to: