Full Version : Laser Morse code tutor
avr >>LIGHT & VISION PROJECTS >>Laser Morse code tutor


AVR_Admin- 04-24-2006
Laser Morse code tutor

In this project we design and construct an interactive Morse code trainer which converts hand movements into Morse code characters via laser beam interruption.

Core components include a laser diode, a PIN photodiode, a Mega32 microcontroller, and a small black-white TV with speaker. The user initiates Morse code by signaling the laser beam using one finger or an open hand; the interruption of the beam adjusts the bias on the output of a bipolar amplifier from the PIN photodiode to be fed into the Analog-Digital Converter (ADC) of the Mega32. A Finite State Machine (FSM) parses the finger counts based on voltage thresholds and converts the Morse code into characters as a Morse code character tree is accessed. On the software side, the TV with speaker instructs the user the basics and smoothly carries the user along through a tutorial in the beginning. An empty panel is available for the user to practice and experiment with Morse code entry. The user finally enters into a series of gaming levels where the user's knowledge of Morse code will be tested and score tabulated.

In effect, this project is a showcase of retro and modern technology, combining light-based Morse signaling, old school typing software, Missile Command, together with laser diodes, microcontrollers, and high-speed PIN photodiodes. It is one of the few non-contact, serial electronic communication trainers in existence that does not require speech. Moreover, we hope that the user will be able to learn rudimentary Morse code from this experience.

..--- High Level Design

Project Rationale

Initially, we decided to create a laser window listener using the same core components as this project. However, due to problems with the power of the budget laser diode to pick up vibrations off glass, we redirected our focus towards reusing the core components to create something much more reliable and suitable at the level of complexity that is required. We felt that by reusing the parts from the preliminary project, the best project was one that had to be educational, comprehensive, and based on laser communications. Hence, after some consideration, we found that interrupting the laser by hand would simulate old-school Morse code light generation at a great distance, thus enabling smooth incorporation with the MCU and TV as a trainer.

Morse code, one of the earliest serial communication systems, is the foundation for many binary data interchange codes including ASCII and barcodes. Our decision to use Morse code stems from the fact that Morse code is the easiest serial code to implement as well as for ham radio beginners to learn the code in a more engaging manner. By engaging, we mean interactively participating in a frenetic, carpal-tunnel-syndrome-inducing hand waving (with standard Morse code sounds) to pass the tutorials and game levels on TV.

Logical Structure

As mentioned previously, the core input components of our laser-based Morse code trainer are an infrared laser diode emitter and a PIN photodiode for reception. The idea is to use a finger or multiple fingers/open hand to interrupt the laser beam at periodic intervals to generate the so-called dits, or "shorts", and dahs, or "longs" based on standard Morse code requirements. An amplifier picks up the difference in voltages, outputting a voltage to the ADC at given intervals. The intervals define the number of fingers that cross the beam - in our case, one finger indicates dit and multiple fingers dah. A Morse code character FSM in the MCU accesses a Morse code tree to based on the dits and dahs and constructs a character.

The software component is a large FSM composed of a tutorial, a game, and a test sketch. Since it is difficult for the user to understand what to do on the first time through, we decided to lower the learning curve by introducing basic instructions to tell the user to wave a finger to progress. A tutorial allows the user to learn basic signaling methods, characters/numbers in Morse and thus be able to select the two options on the main menu: (1) sketch (2) game. Sketch is merely an empty panel for practicing Morse code entry, while the game is loosely based on retro-typing games and Missile Command. In the game, the user must be able to signal the destruction of a character before the character bombards parts of a futuristic city. Finally, all sound and video information is sent out through the MCU ports to the TV



Link: http://instruct1.cit.cornell.edu/courses/e...yl245/index.htm


Forumer™ is Voted #1 Free Forum Hosting provider
Build your own community today with the largest message board hosting company.