Sensors are essential parts of autonomous mobile robots, without such devices it could not gather information about the environment in which it activates and navigation would not be possible. These days a wide range of sensors is available, each of them with their own unique capabilities and designations, however information received from them can be in many cases inconsistent or even conflicting. In this article various categories of sensors are presented and we try to analyze and determine the advantages and shortcomings for each of them.
Generally speaking, the following assumptions can be made about all categories of sensors:
- Any sensor is affected by noise;
- Any sensor provides incomplete information about the environment it observes;
- No sensor can be completely numerically modeled.
In the numerical model of a sensor a modelling of the noise affecting it while performing certain operations should also be included. A sensor is considered unstable if for small variations of the observed parameter the output generated is very different between measurements.
Several types of errors can affect sensor measurements most common types being incidental, systematic and stochastic errors:
- Incidental errors occur occasionally and can alter provided information unpredictably, being caused mainly by improper measurement procedures;
- Systematic errors on the other hand have very predictable effects and are generated by erroneous information interpretation in employed algorithms or by incorrect sensor modelling;
- Stochastic errors appear in a completely random fashion and are completely different every time the same operation is executed.
All types of sensors can be defined by a series of attributes. The most common are:
- Sensitivity – the ratio between the output and input signals;
- Linearity – determines if the output to input ratio is constant;
- Measuring range – difference between minimum and maximum observed values;
- Response time – time difference between the moment the actual measurement is done and the generation of an output signal;
- Accuracy – difference between measured and real values of a parameter;
- Repeatability – difference between successive measurements of the same parameter value;
- Resolution – the smallest change detected in a measured parameter, also related to the measurement precision;
- Price of the sensor;
- Processing power required to interpret data provided by the sensor;
- Output signal format;
- Weight, size and energy requirements of the sensor.
As a very general classification sensors can be split into two categories:
- Internal status sensors, which provide information about the internal status of the robot, for instance battery level, wheel position, degree of tilt and so on;
- External status sensors gather information about the environment, thus helping the robot establish its position, navigate, avoid obstacles or dangerous areas or track items of interest.
A sensor can also be active or passive. An active sensor emits energy into the environment in order to observe certain characteristics while the passive sensors simply receive energy from the environment and translate it into an meaningful form for the control units or systems.
Based on the types of measurements performed the sensors can be classified in four categories:
- Distance sensors – sensors providing distance information between the robot and items in the environment;
- Positioning sensors – sensors providing information about the robot’s absolute position in the environment;
- Environment sensors – sensors measuring various parameters in the environment (e. g. pressure, temperature);
- Inertial sensors – sensors which measure differential properties of the robot’s position (e.g. tilt degree, acceleration).
This type of sensors is very basic, often represented by simple binary switches, and can determine whether or not a certain area of the robot is in contact with something or has hit an obstacle. While such sensors are extremely easy to implement and have a very low cost, their main disadvantage, compared to other types of sensors which can do readings from a certain distance, is that the robot must actually touch the targeted object, as implied by the name. This is a major disadvantage and can even be hazardous for the robot if it is capable of higher speeds, as it cannot stop the instant a contact is detected.
Infrared (IR) Sensors
This is probably the simplest type of distance-reading sensors employed in mobile robots. Two main components can be found in such a sensor, an IR emitter and a detector. The emitter generates IR light, usually at wavelengths between 880 and 990 nm, which propagates into the environment and is reflected by objects or terrain. The reflected light is captured by the IR detector which generates an output signal that can be easily interpreted by the system. Simple calculations can be made in order to estimate the distance between the sensor and the detected object.
Both, the emitter and the detector, have a certain field of view or range. Depending on an object’s position in the environment, this can be detected or not by the sensor. If the object is in the field of view of both components it will be detected, otherwise it will be invisible.
In order to simplify implementations of such sensors it can be assumed that all objects in the environment have the same color and the sensor can be calibrate to provide accurate distance readings to any object detected. In real life however, objects have different colors and do not reflect the same amount of light, the accuracy of the readings being diminished, for instance very dark colored objects are almost invisible to the IR sensors.
Readings can be also affected if the amount of natural light in the environment is above a certain threshold. For simplification it can be assumed that an object is present if IR light is emitted and its reflection is detected, thus object detection and avoidance being possible. It is very rare that the IR detector picks up light without it being generated by an emitter. IR sensors have a relatively small range, between 50 and 100 cm.
Despite all the shortcomings this type of sensors is widely used in mobile robotics, mainly because of their reduced cost and ease of implementation.
Another widely used type of distance sensors are the ultrasonic sensors, also known as sonars (SOund NAvigation and Ranging). Their principle of operation is somewhat similar to IR sensors but instead o light, sound waves are emitted. A sonar emitter sends an acoustic signal into the environment, its reflection being picked up by the sonar detector. Based on the time elapsed from emitting to receiving the signal and its attenuation various types of these sensors can be identified. The sound signals emitted by sonar sensors are usually of very high frequency, usually in the ultrasonic domain.
Sensitivity of a sonar sensor is not uniform, a main lobe can be identified, together with some smaller lateral lobes, this layout being different from one sensor to another. Below some sensitivity diagrams of various popular brand sensors can be observed.
Sonar sensors have a range defined by a minimum and a maximum distance that can be measured and a measurement resolution. These sensors also have disadvantages, for instance the exact position of a detected object cannot be determined and this is caused by the sensitivity layout, mentioned earlier. Accuracy is also affected by the fact that speed of the sound waves generated is not constant but rather medium-dependent, even altitude or air temperature can alter measurements. Another cause for erroneous readings is that the generated sound signal can be reflected somewhere else not back to the sensor. If an array of ultrasonic sensors is used, the sensors may interfere with each other if sound signals are emitted at the same time and are not distinctly coded.
These sensors still retain a good value for money, making them very common in the world of mobile robots.
One of the most accurate type of distance measuring sensors are the laser sensors, with reading errors not exceeding a few millimeters. These sensors can do distance measurements as well as speed and acceleration readings on certain objects with respect to the mobile robot. They operate by sending a pulse of light into the environment and measure the time until it is received back at the sensors, then distance is calculated.
The maximum range of a laser sensor can vary from hundreds of meters to hundreds of kilometers. This very same technology is used to do measurements between celestial objects with great accuracy.
These capabilities come at a cost, a laser sensor is very expensive so the need for such accuracy must be highly justifiable.
The Global Positioning System was developed since 1973 by the United States and currently relies on about 24 Earth-orbiting satellites which continuously broadcast positioning information, among other data. An equivalent system, the GLONASS (GLObal NAvigation Satellite System) developed since 1976, is employed by the Russian Federation and was made available for public use since 2007. Major modern global positioning data receivers support both, GPS and GLONASS information reception.
GPS sensors are essentially global positioning data receivers and establish their position by means of calculations based on information received from multiple satellites at a time.
There are various implementations of these services, for civilian use the precision being limited to several tens of meters. Although the information broadcasted by both systems can be combined for greater accuracy, the need for increased positioning precision still remains.
Several improvements can be made in order to make a more precise position reading. One method is to use a combination of GPS receivers that comunicate with each other and can compare received data. Such a system is called a Differential-GPS, with precision ranging from 1 to 10 meters, substantially better than default values. An even more precise reading can be made by using a Carrier Phase Differential-GPS solution, which can reach an accuracy of about 1 millimeter.
Prices for these sensors can range from low cost or good value devices to highly expensive systems in applications where increased precision is required.
Pyroelectric sensors or PIR sensors are essentialy transducers converting heat into an electrical signal. These sensors are usually sensitive to longer wavelengths found in the infrared spectrum, in which humans and animals emit radiation. In the basic sensor schematic is presented below it can be noticed that two detectors inside the actual sensor are linked in parallel, a Fresnel lens being used to focus the signal.
These sensors are used to detect movement or heat sources in the environment. Being motion detection sensors it is required for either the sensor, the robot or the target to move in order to obtain a reading. The output signal of such a sensor is given by the difference between the signals generated by the two parallel detectors inside the sensor.
To be noted that pyroelectric sensors are only sensitive to the most powerful heat source in their field of view, so a relevant target might be lost or not detected at all if a more powerful radiation source is detected by the sensors.
Such sensors are relatively low cost and accessible, making them popular among certain types of applications.
In mobile robotics such sensors are usually represented by video cameras. Although there’s a huge variety of video cameras, from a mobile roboticist’s standpoint no essential differences can be identified so that any video camera can be implemented successfully. Video cameras can gather a large quantity of information from their field of view and processing all the data can have high computing power requirements, especially if optimum performance is targeted.
One of the most common application for such sensor systems is targeting an object of a predefined color, i.e. blob tracking. Unlike the human eye, a camera is pretty sensitive to environment lighting variations and can fail in performing such a task. Likewise, if the chosen color is not unique in the environment, algorithms can fail in providing adequate information. However all shortcomings can me overcome by increasing the complexity of the system, from algorithms to processing power or hardware. Cost is also a factor in determining the precision level to be reached.
Internal Status Sensors
As the name implies these sensors provide information about the robot itself. They can provide information about the robot’s positioning over time (odometry), linear, angular speeds or accelerations (accelerometers or gyroscopes), torque at various measuring points and so forth.
Sensors providing positioning information are usually found at the robot’s wheels and are usually revolution counters. By performing a series of calculations robot can establish its distance traveled, heading, speed and acceleration. Theoretically the exact position of the robot can be determined only based on odometry information, however wheel counters are known to induce errors in their reading. Furthermore, if wheel slippage occurs for instance, it can be almost impossible to establish the robot’s position.
The accelerometer and the gyroscope are considered to be inertial sensors, meaning that they measure a robot’s position second derivative, linear and angular acceleration respectively. The robot’s position can also be determined theoretically by integrating the signal provided by the inertial sensors as a function of time, in real life however a low cost inertial system can provide very inaccurate results.
Two other types of sensors are the compass and the inclinometer or tilt meter. The tilt meter is a simple device which measures orientation with respect to the gravitational vector whereas the compass measures orientation with respect to the Earth’s magnetic field. Sensors which utilize the magnetic field for their measurements are susceptible to local variations caused by ambient magnetic fields. Various metal structures or even the robot itself can affect these sensors with non-pretictable results. Such sensors can be used as a local reference if external perturbations are constant with time.
For most tasks a mobile robot must perform, usage of a single type of sensors is not recommended as adequate results are rarely obtained. When navigating for instance, some objects can only be detected by certain types of sensors remaining invisible for others. Preliminary studies must be made in order to gather data about work conditions and minimum sensor requirements for a robot to be built.
Information from various types of sensors must also be combined, or fused, efficiently. Sensor data fusion must occur in three levels:
- Measurements from various types of sensors;
- Measurements from different positions;
- Measurements at various moments in time.
Various data fusion methods exist, a relatively simple form is interpolating and finding a mathematical function to characterize a certain data set. A more complex method is using neuronal networks to associate the system’s output signals, generated by sensors, with known input parameters, odometry data for instance, in order to obtain very precise control of the robot.