Vision Command

The LEGO camera is
really a Logitech QuickCam that has been repackaged into a special translucent
brick. It has regular LEGO studs on the top and bottom as well as Technic style
mounting holes on the sides. It is the same camera used by LEGO Studios except
the plastic color is different. It has a built-in microphone for recording
sound, a push button for taking still photos, and a ring for manually adjusting
the focus.
The recognition software
runs entirely on the PC. The incoming video image is divided into a predefined
pattern of regions. There are 20 predefined patterns that can have up to 8
regions. In each of the regions you select a condition that will trigger an
event. The conditions include movement, light level, or the presence of a
color. When an event is triggered, a stack of instructions executes to make
sounds, capture images or send motor commands to your RCX. There are over 25
different instructions you can put into the stack.
Programming is
reminiscent of stripped down RCX Code. There are no variables, subroutines, or
conditional statements. Everything executes inline with the exception of a loop
type instruction. Once an event is triggered no other processing occurs until
that stack of instructions completes. There are provisions for a single
background activity like simply scanning the camera back and forth.
Vision Command interacts
with your RCX through the IR tower. In an immediate mode it can send commands
to the RCX one-at-a-time to turn on motors, set power levels or play sounds.
When running a Vision Command program, a small control program is downloaded to
the RCX that contains all the instructions for each event. From then on it only
sends a single number to indicate which event has occurred. The sensor inputs
on the RCX are not used by Vision Command and the RCX can't be easily
programmed independently.
Vision Command Links:
How to
use Vision Command as a Smart Sensor.
How to
make your own Vision Command Patterns.
Bob Fay has building
instructions for a Power Focus Attachment.
Wauters Kris has developed a Vision Command ActiveX Module that allows you to program in other
languages like Visual Basic. If you have trouble loading this page, just keep
refreshing, eventually it will work.
You can read my review of
Vision Command in Robot Science and Technology magazine.
Rainer Balzerowski shows plans
for a Night Vision Adapter for Vision Command.
Lugnet has a special interest
group for Vision Command at http://news.lugnet.com/robotics/vc/ .
The Logitech Software Development Kit allows you to write programs for
the camera in Visual Basic and C++.
A very handy program for
editing the video files you make with VC is AVIedit from AM-Soft.
Don't forget the official LEGO MindStorms page.