This is the Revision A verion of the Laser2 Module.

Laser2 Module (Revision A)

Table of Contents

1. Introduction

The Laser2 module provides the basis for a two laser bearing finders. This module can detect reflected back laser beam energy at supstantial distances (10+ meters.) Both reflective tape and bicycle reflectors make an excellent laser reflector. Please check the references section for more information. In particular, [Ubersitzig1999] is the root series of articles that motivates the desire for this sensor.

This module uses a sensor which has a laser pointer and light sensor mounted on a servo. In addition, there is a linear taper potentiometer set up as a linear voltage divider that tracks the servo position. The voltage is converted into a 10-bit value through an analog to digital converter. When the laser beam hits a piece of reflective tape, enough energy is reflected back to be detectable by the sensor.

Each time a Quick Set command is sent to the servo, the first and last registers are set to 0xffff (i.e. -1.) As the servo sweeps to its new location it records the potentiometer reading of the first time it notices laser light reflected back into the sensor and it remembers the last potentiometer reading at which laser light was detected. These two values stored in first and last respectively. Presumably, the average of these two values corresponds to the center of the reflective tape.

2. Programming

The Laser2 module can control two laser/servo/sensor combinations. There are two banks of control registers, one for each laser/servo/sensor unit. The register for each unit are:

Name Description
Control Controls the enabling and disabling of both the servo and the laser. It also can reset the first and last register pairs.
Servo High/Low This pair of registers specifies the servo pulse width in units of .2µSec. Thus, 7500 corresponds to 1.5mSec.
First High/Low This pair of registers keeps track of the high and low of the potentometer settings when it first detect the laser light on the sensor.
Last High/Low This pair of registers keeps track of the high and low of the potentometer reading when it last detected the laser light on the sensor.
Potentiometer High/Low This pair of registers provides the current potentiometer reading as a value between 0 and 1023 inclusive.

The programming table lists all of the commands.

3. Hardware

The hardware consists of a circuit schematic and a printed circuit board.

3.1 Circuit Schematic

The schematic for the Laser2 Module is shown below:

Laser2 Schematic

The parts list kept in a separate file -- laser2.ptl.

3.2 Printed Circuit Board

The printed circuit board files are listed below:

laser2_back.png
The solder side layer.
laser2_front.png
The component side layer.
laser2_artwork.png
The artwork layer.
laser2.gbl
The RS-274X "Gerber" back (solder side) layer.
laser2.gtl
The RS-274X "Gerber" top (component side) layer.
laser2.gal
The RS-274X "Gerber" artwork layer.
laser2.drl
The "Excellon" NC drill file.
laser2.tol
The "Excellon" tool rack file.

4. Software

The following files are available:

laser2.ucl
The µCL source code for the Laser2 module.
laser2.asm
The Laser2 module assembly code file.
laser2.lst
The Laser2 module listing file.
laser2 .hex
The µCL Laser2 Intel® Hex file.

5. Issues

The following issues came up:

6. References

[Bertke1994]
Mobile Robot Localization Using Landmarks by Margrit Bertke and Leonid Gurvits in the proceedings of the 1994 International Conference on Intelligent Robots and Systems (IROS '94), pages 135-142.
[Borenstein1996]
"Where am I?" -- Systems and Methods for Mobile Robot Positioning by J. Borenstein, H. R. Everett, and L. Feng published by A. K. Peters, Ltd. ISBN: 156881058X. An on-line version of the paper is available at URL: http://www.eecs.umich.edu/~johannb/pos96rep.pdf. Note: There is a slightly different 1995 edition entitled Navigating Mobile Robots: Systems and Techniques that is out of print ASIN: 1568810660 .
[McGillem1989]
A Beacon Navigation Method for Autonomous Vehicles by Clare D. McGillem and Theodore S. Rappaport published in IEEE Transactions on Vehicular Technology Vol. 38 No. 3 August 1989, pages 132-139. Note: The algorithm proper can be found in equations (7) through (16). The derivation of the algorithm can be found in the appendix.
[Ubersitzig1999]
A Circular Navigation System written by Jim Ubersetzig, published in three parts in the September, October, and November 1999 issues of The Robot Builder newsletter of the Robotics Society of Southern California. URL: http://www.rssc.org/. Note: At the end of the third part of the series, there is mention of a continuation of the article (part 4) in the next month of "The Robot Builder"; to the best of our knowledge this continuation article has not actually been published.
[Vannoy2001]
Accurate Autonomous Robot Laser Navigation Using Only Passive Reflectors by Richard T. Vannoy II published in the September 2001 issue of the Seattle Robotics Encoder. URL: http://www.seattlerobotics.org/encoder/200109/lasernav.htm.


Copyright © 2006-2009 by Wayne C. Gramlich. All rights reserved.