Adding vision to your projects needs not be a difficult task. Whether its machine vision for robot control or the sampling and storage of images for security, CMOS images sensors can offer many advantages over traditional CCD sensors. Just some of the technical advantages of CMOS sensors are,
There are two different categories of CMOS Sensors based on their output. One type will have a analog signal out encoded in a video format such as PAL, NTSC, S-Video etc which are designed for camera on a chip applications. With these devices you simply supply power and feed the output straight into you AV Equipment. Others will have a digital out, typically a 4/8 or 16 bit data bus. These 'digital' sensors simplify designs, where once a traditional 'analog' camera was feed into a video capture card for conversion to digital. Today, digital data can be pulled straight from the sensor.
The main components to a Digital Video Camera design are
Once you have completed the above, you have yourself a imaging system which constantly spits out a pixel data stream synchronised to a pixel, frame and/or line clocks. Connecting this directly to a microcontroller/processor system will cause headaches. Trying to clock this raw data in will use up great amounts of CPU time, if your uC could do it in the first place. If you drop a pixel because an ISR is doing some thing more privileged, then you have no ability to sample that location again, and thus no method of error correction.
While the frame rate on many devices can be slowed down by using internal divisors, it still doesn't reach an acceptable speed nor allow random access to pixels. Reducing the master clock rate of the device will effect exposure times and other time dependent settings, thus is not an option. Clearly some additional circuitry will need to be designed.
By using a CPLD/FPGA and RAM, you can program the CPLD to dump the data straight into RAM. Your micro could then read this RAM through the PLD which could be memory mapped. If you really want performance (And budget is not a problem), you could use Dual Port RAM. If however you only want to capture one frame, then the PLD could copy one frame into memory and ignore subsequent pixel data until an event such as when your device has read all the data out of RAM. Other options are to use a LVDS (Low Voltage Differential Signalling) serial bus, to relay your data over a few metres or more. At a high enough clock rate, you won't wait all day for a frame.
The other thing you must not forget is how to control the sensor. Most of it's internal parameters are controlled by a serial bus, typically I2C for the majority of sensors. This can either be controlled through a memory mapped Register programmed into your PLD or via an I2C port straight from your uC. All up this makes quite a cheap way to capture video. Ideal for your Embedded Linux Systems.OmniVision Technologies
OmniVision not only develops CMOS Image Sensors, but also support device ICs such as the OV-511 & OV-518 Advanced Camera to USB Bridge. OmniVision is one of the more popular manufacturers with devices such as the OV7910 NTSC/PAL Camera on a Chip being used in many small analog camera modules around the world. This would be the recommended starting point if you are starting out designing with CMOS Image Sensors.
DIY Electronics (http://www.kitsrus.com) are just one outlet which sells the third party evaluation boards.
In August 2001 Kodak launched it's first two CMOS Images to its Kodak Digital Science range of image sensors. Kodak has been in the game of CCD Sensors for twenty plus years with a wealth of imaging expertise and research.
Mitsubishi have broken the pack, to produce smaller resolution sensors. These sensors can typically be used for a range of applications such as finger print sensing, motor detection, gaming, tracing of moving parts etc. Just one application is the new optical mice flooding the market place. They use a low resolution Image Sensor to track movement on a wide variety of surfaces.
Also unique to these sensors is in-built image processing. Both sensors can output edge enhanced or extracted data, making them ideal for tracking on small robots, industrial control etc. The sensors can also process 2D images into 1D. The output of each pixel is by the means of a analog potential, thus this must be fed into an ADC to return digital image data.
Micron Imaging has aquired Photobit Corporation and inherited its IP and Image Sensors. CMOS APS (CMOS active pixel sensor) was first created by a team of JPL engineers lead by Dr Eric Fossum. Dr Fossum is now Fellow at Micron Tecnology Inc. Micron's Product range can be sought from Micron's Product Matrix
ST Microelectronics Imaging Division
Spectronix have used the ST Sensors in their RoboCam Series. ST also offer a couple of CoProcessors, a STV0657 Digital CoProcessor, a STV0672 USB CoProcessor and a STV0680 DSC (Digital Still Camera) CoProcessor. The DSC CoProcessor offers an RS-232 / USB Interface and on board SDRAM Storage.