Sensors
1. Sensors
Sensors can either be proprioceptive (self-sensing) or exteroceptive (outward looking). Proprioceptive measure internal states as a function of the robot's state,
Touch, light & sonar sensors return a single value within a given range, but cameras or laser range-finders return an array of values.
1.1 Sensor Examples
- Touch: has a binary on/off state, no processing required.
- Light: detects intensity of passive light incident from a single forward direction.
- Sonar: measures depth / distance by emitting an ultrasonic pulse and timing the interval until the echo returns. Fairly accurate in one direction but can be noisy with complex shapes. Has a minimum range (few metres).
- Laser Range-Finder: like sonar but uses light pulses. More accurate and faster, but more expensive.
- Vision: cameras measure passive light intensity in many directions simultaneously, returning a large rectangular array of measurements.
A camera could be calibrated to observe a ground plane. In this case, we have a predefined relationship between points on the ground plane and pixels of the camera image, depending on the robot's pose, the camera's pose and the camera's intrinsic calibration parameters (e.g. FOV).
1.2 Stragies on Collision
When detecting collisions with a touch sensor, we can either reverse and try to go around or random bounce: rotate through random angle and head off straight again until next collision
2. Servoing
Servoing: control parameters (e.g. motor speed) are coupled directly to a asensor reading and updated regularly in a negative feedback loop. Also known as closed loop control.
This needs high frequirency sensor updates (or motion may oscillate). A control demand is set which over time aims to bring the currect value of a sesnor reading into agreement with a desired value.
With proportional control, we set the demant proportional to the negative error, e.g.
2.1 Control Steering
For a tricycle or car-type wheel configuration, we can use a steering law to guide robots to avoid obstacles at a safe radius:
Where
2.2 Wall Following
Here, we use a sideways-looking sonar to measure distance
3. Probabilistic Sensor Modelling
Sensors are fundamentally uncertain. Having characterized a sensor and understood the uncertainty in its measurements we can build a probabilistic model for how it works,
To mitigate errors due to noise, we can do:
- Temporal Filtering: smoothing or finding the median of the last few measurements of a sensor. This is good at reducing the effect of occasional large outliers.
- Geometric Fitting to data from a sensor which reports an array of measurements, where we might fit geometric shapes such as straight lines or corners to the measurements and output the parameters of those shapes rather than the raw measurements.