circuitcellar.com
Magazine Support   Digital Library   Products & Services   Suppliers Directory 
 
 





 

May 2006, Issue 190

Image Processing for Robots
Renesas M16C Platform Design Contest 2005


Image processing has never been simpler. Jens’s small system combines basic robot sensors with a CMOS camera. You can use the system to locate and track small objects.


by Jens Altenburg

Years ago, image processing was in the domain of PC-based applications. Pattern recognition, object detection, and picture data analysis require a huge amount of computational power, plenty of memory space, and external equipment such as video cameras and a frame grabber. Today, excellent optical sensors driven by mobile phone technology are available.

The new CMOS picture sensors include the optical sensing area as well as the control logic. You can build a camera with only a few external components. Optical sensor hardware is as simple as your usual microcontroller board. But what’s with the complex software algorithms and the additional computational power? Depending on the frame rate and picture resolution, a common image sensor generates data in megabytes per second. Is it possible to combine image processing and small robot platforms?

Early PCs clocked in at speeds of 25 MHz and lower. Computational power shouldn’t be a bottleneck. The only serious limitation associated with a microcontroller-based system is the lack of memory space because of the volume of image data.

Using an M16C microcontroller overcomes some of the aforementioned limitations. The direct memory access (DMA) unit relieves the CPU from data transmission between the picture sensor and memory. Optimized software minimizes memory space.

In this article, I’ll describe my UniRoP system (see Photo 1). The mobile robot includes a Renesas Technology M30624 microcontroller, infrared distance sensors, a two-dimensional accelerometer, and optical wheel encoder (see Figure 1).

(Click here to enlarge)

Photo 1—The UniRoP has only a few mechanical components. The PCB works as an electronic and mechanical part. Small in size and weighing only 220 g, the robot is perfect for research projects.

 

(Click here to enlarge)

Figure 1—In addition to an infrared sensor and accelerometers, the UniRoP features a radio module and a CMOS image sensor. Software modules and a simple multitasking RTOS are available.

The most interesting part of the robot is the CMOS image sensor. The sensor board is based on an OmniVision OV6620 CMOS image sensor (newer boards use the OV7620). I attached the sensor to my board and connected it via a 20-pole flat cable to the main board.