Tutorial Navigation
Choosing Sensors for Your Robot
Sensors are devices that turn worldly events into electric signals. Choosing sensors for a robot can be one of the hardest tasks in the entire build process.

A typical robot needs more than just one sensors. Even with the world's best mechanics and programming, a robot with a poor sensor suite will be severely handicapped. Sensors are hands-down the most important part of an autonomous robot, and also typically the most expensive part.

Throughout this tutorial I'll discuss issues that affect the performance of various sensors. I'll also go into more detail about the more common sensors, possibly only providing links for some of the less common or more complex or advanced sensors.

Basic Categories of Sensors
We can break the world of sensors into several categories:

  • Proximity sensors, such as bumpers tell us if something is hitting the robot. They give a simple yes/no answer.
  • Range sensors, such as IR and sonar rangers tell us how far away an object is.
  • Global navigation sensors, such as compasses, GPS, and encoders.
  • Proprioceptive sensors which measure internal systems.
  • Other sensors such as Cameras, UV sensors, and heat detectors.

Sensor Characteristics to Evaluate
Not all sensors are created equally. Understanding how your sensor works, and what it tells you, are important to utilizing a sensor correctly. There are several key characteristics to evaluate when choosing sensors:

  • How does it interface with your controller?
  • What is it's resolution, repeatability and overall accuracy?
  • What is it's range?
  • What is the voltage level and power consumption?

There are a multitude of ways to interface sensors to a controller. The most common would be:

  • Analog sensors, put out an analog voltage related to some measurement they make. Requires an Analog-to-Digital converter.
  • Digital sensors may be either TTL (5 volts) or low voltage (3.3 Volts)
  • Serial connections are quite common
  • I2C is a multi-device bus that is often found on sensors
  • RS-485 or bus-style serial connections may also be found on higher end sensors.

The first characteristic to consider for a sensor, is it's resolution. Digital sensors have only two modes: on and off. An analog, serially or bus connected sensor may have many values. For instance, there are compasses available that give one of four directions N,W,S,E, but there are also compasses that have a serial connection and give readings of headings down to 0.1 degrees.

There is also a question of accuracy and repeatability. While our compass may have readings down to 0.1 degrees, it may only be accurate to +/- 2 degrees. Similar problems occur with GPS, as many GPS sensors will give a reading on the centimeter scale, but only have an accuracy of +/- 2meters, this causes the values to jump around wildly and requires you to filter the incoming signals. Understanding how a particular sensor really works, and when its data may be tainted, is extremely important in building a robot.

A final important consideration when choosing sensors is thier voltage level and current draw. Matching the voltage level of a sensor to your onboard battery or already existing regulators can greatly save in energy loss. Low current draw is especially important for mobile robots.