[Dave] wanted to show off a project at his 4th-grade son’s school during their family science night. We haven’t heard of an event like this before but it sounds like a fabulous idea! He had a new laser he wanted to include in the project, and noticed that his son was learning about how ASCII maps letters to binary number when the idea struck. He ended up building an optical data transfer system that demonstrates binary code.
This presents a fantastic learning opportunity as the project invited the school kids to select encoded strips like the ones seen above to form a secret message. The laser is pointed at a photosensor which is being read by a Raspberry Pi board. The Python code looks for a baseline and then records increases and decreases in intensity. Since the translucent tokens have either holes or black lines for 0 and 1 the baseline approach does away with the need to clock in the data. [Dave] reports that everyone who tried out the experiment was fully engaged at the prospect of pushing pieces of tape through the sensor and watching their secret message appear on a monitor.
He was motivated to write about this project after reading about data transfer using an LCD screen and photosensor.
The kid’s in 4th grade and he’s learning to convert binary to ASCII? Maybe humanity isn’t doomed after all.
Yeah – I’m impressed by this project too. And the kids get to see hands on how encoding works. That’s got to be worth first place. It’s why I say we should be teaching kids how to code. The ability to code brings together disciplines – in mathematics, physics, chemistry, and a whole bunch of other subjects.
Paper programmed robot came to mi mind http://www.oocities.org/davidvwilliamson/robot.html
4th grade? Heck, I would have been happy to do this in High School! I love to see programming and stuff like this in schools.
I remember programming CNC machines that received their programs by ascii encoded punched tape.
There were 8 holes in a row for the data bits and a 9th smaller hole which was used to indicate that a byte could be read.
I think that is the standard way of arranging most flexwriter and other types of punched tape as well.
It functions in in place of the “baseline” stuff here.
I remember hooking 9 receiver/transmitter pairs to the parallel port on a Commodore 128 and reading in the ascii letter of a cnc program, years ago.
This article needs this implementation as well.
http://hackaday.com/?s=voice+over+laser
(This will fix needing physical punch-out stripes, and use the modulation of amplification)
THANK YOU!
This just completed my groups long-range optical communications system.
Now ANYONE can have a cheap asynchronous optical communications platform.
Wow, what school teaches 4th graders binary/ASCII conversions and computer theory? That is friggin’ awesome. I wish my school was that cool.
Well, but you can be cool as that when you have kids.
On bigger scale, there is Ronja – http://hackaday.com/2005/06/13/ronja-optical-data-link/ No lazors needed.