Archive for September, 2008

Project Laserpong – A review

Sunday, September 21st, 2008

Within project weeks of our electronics class at my old school, me and a really good friend of mine were in search of some cool, impressive and challenging project which could be realised in circa 25 hours of work. Ideas where to build some POV (persistence of vision) toy just like SpokePOV, for example, but it probably had been too much focussed on programming the software for the µC. And it probably would have been way too cool for school 😉 An other idea was a laser-based plotter for writing stuff on wooden pieces. But our teacher had reservations about laser safety. And a simple pen would have been way to uncool. You see, choosing the right project is mainly a question of coolness! But in the end we found the right project.
Perhaps you already have heard of “Wall of Pong“, a really nice and -like text an video let assume- perfect working real-life conversion of the Pong video game. The concept is to project a circle/point with a modified laser pointer on a wall of your choice and the players have to catch the ball with controllers (which are equipped with photodiodes). The project was perfect for school because pretty all topics we had in class were useful for developing the soft- and hardware for the game. For keeping our game unique, and because we did some things different from the original Wall of Pong, we called our project “Laserpong”.

Just like the “Original” we wanted to drive our laser with two stepper motors. One drives the turret in x-axis, the other in y-axis. For achieving highest possible precission of laser movement on the wall the motors (especially the motor for vertical movement) are attached to a gear reduction. One step of the vertical motor makes the point moving about 1.5 cm on the wall when the projection unit stands about 1 m from the wall.
The motors are controlled via a relativelly simple IC circuit with a L297 and a L293D for each motor. So we didn’t have to spend much time on implementing the motor control in our software, we just set the direction of rotation and applied a clock and it worked!

The projection was achieved by using a simple 5 mW lasermodule out of an old laserpointer. First we tried to create a circle out of the point by using a slightly decentrally attached mirror on a computer fan. It looked pretty cool while the projection was standing still, but it looked like spirograph when moving on the wall – the solution would have been to increase the rpm of the fan – but then the whole construction was vibrating like hell. So we decided to directly project ball on the wall. Tweaking the lens of the lasermodule made a big (not so bright) point out of the little laserpoint. But enough for playing in a room with normal light conditions on a wall without direct sun radiation.

Another big part of the project was the design of the receiving units, the “controllers” if you want. We already knew that we would have to think about this part a lot. Normal photodiodes or light sensitive resistors are sensitive on the whole visible spectrum of light (and even a little more). So every light source and even a simple movement of the controller which causes a change of incident light would have been captured. First idea was to find a diode which is only light-sensitive for the wavelength of our laser or attaching some kind of wavelength filter in front the receivers. But nothing affordable equipment was available!
Fortunately we are tricky kids, and so we applied an electrotechnical solution. Two utilities: a band-pass filter and a function generator.
We built up a Sallen-Key Bandpass filter with f=1.3 kHz and built it behind the photodiodes. The function generator drives the laser module with a frequency of 1.3 kHz. Ok…i think you know what happens. The light signals with a low frequency (just like the ones caused by changing the orientation of the controllers, for example) and the signals with high frequency like…perhaps the room lighting or something, you never know. We chosed the band-pass for being on the safe side, a low-pass probably would have been enough.

Ta-dah! Finished!
No. Not yet, because somewhere has to be the brain of the system, which checks the controllers and controls the motors based on the gathered information. The professional way is to use a µC for this task, but we wanted to try it with a LabView program and a National Instruments DAQ because we already collected some experience in school with that software (and it has become some kind of favorite way for me  making things more user-friendly oder automating something, I really recommend to take a look at it).
So, I don’t want to explain the programm in depth here and now, I think most people can easily figure out how the programm has to work. One important thing is the routine for controlling the stepper motors, the other thing is to recognise a “hit” at the paddle. The rest is pure brainwork (virtual “borders” for the ball, tweaking the sample rate and so on).

After several tests our project was presentable to the public at open house of our school, and it was a real success. Surely, it’s not perfect, but considering the amount of time we were really content with the result.

Don’t bother asking things if you are interested in details or if you have problems building this project or a similar one!

Last but not least some interesting links:
The original “Wall of Pong”
Steppermotors at roboternetz.de

And our Project report “Laserpong” (german)

Have fun!

The Gossen Konstanter – a piece of history

Wednesday, September 10th, 2008

Today, we found a really interesting piece of electronics in the box where all electrotechnical things have to go at the end of their life…
A DC power source from Gossen with 80 V, 12 A maximum ratings. Nice piece of engineering. Perhaps it’s the definition of old-fashioned with it’s non-smd components, some logic chips and an excessive use of analog stuff. We can’t definitely tell how old it is, but we think it’s about 20-25 years old.
First, we just wanted to take it with us for exploiting purposes (yeah, the analog displays and so on), but then we disassembled it completely, just for fun.
I don’t want to talk much about the components, just have a look at the biiiiig transformers and the row of capacitors (each 1.5 F).

After 30 minutes of hard work, we had a cool (but definitely not small) case for building some tube amplifier or media computer and some analog gauges, switches and plug sockets =)