Hello all!
My name is Tom and I'm an engineering student at Texas A&M University. Some background info: Lasers have interested me since the first time I saw one at the Fort Davis Observatory many years ago. The continuous green beam that appeared to extend on forever as it pointed to the stars was a surreal moment for me. About a year ago I purchased my first laser (50mw 532nm from China) and I was hooked. Somewhere in the mix of reading-about/studying lasers, I realized that the beam visualization is what really interested me. Once I learned about the numerous visual effects that could be utilized, I began planning my first build. I've got some programming experience so I bought an Arduino Uno starter kit and worked through the projects to get a feel for circuitry. I designed and re-designed my prototype system countless times on paper. The first designs were way to complex for my current knowledge so I had to simplify certain components. I am motivated to create a control board for different laser visualizations and my main focus on my first prototype is going to be the galvanometer for beam effects and not necessarily designs on a wall. I plan to control the effects manually as music is being played. In a later design I may try to make the effects "play" autonomously. I have dedicated a month this summer to focus solely on this project and am about to begin ordering parts.
I am about to purchase DT 30s for $380 from either lasershow parts or stanwax. I plan on combining rgb lasers with dichrotic mirrors and sending them into the galvo. I plan on using an external power supply to power the lasers and galvo, and I hope to be able to control the input voltage using an arduino. The control board is my main concern and focus. I want to be about to have preset buttons corresponding to specific frequencies that I want the galvo to "play". I might try and use a mini keyboard for this if I can map each key to a specific output voltage. I also want to have preset buttons for a sequence of frequencies that I wish to be played while blanking in between for added effect. Is there a preferred code for this type of functionality. Any advice will be greatly appreciated!