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.